ataque de degradación de SSLv3 - evitando alertas de retroceso

1

Sé que no funcionará en todos los servidores porque algunos no permiten SSLv3 pero probé muchos servidores y mi ataque no parece funcionar.

Por ahora, intento bajar a TLS 1.0 (también reconocido por el número 769 en el protocolo).

Tengo una configuración completa de MITM con la capacidad de interceptar paquetes como deseo. Ahora tengo un script que filtra paquetes y por eso cada vez que la víctima (aunque solo sea mi propio dispositivo personal) intenta enviar un ClientHello reviso la versión de la conversación que intenta iniciar, si el número es más grande que 769 (TLS 1.0) Envío un mensaje FIN, ACK en el nombre del servidor.

Ahora, el cliente intenta conectarse nuevamente, pero esta vez con una versión inferior y así sucesivamente, hasta alcanzar TLS 1.0 (769) y luego acepto el paquete y dejo que la conexión continúe.

El problema es que el servidor envía Alert (Level: Fatal, Description: Inappropriate Fallback) en respuesta. ¿Tiene esto que ver con el servidor que no admite TLSv1? Porque me cuesta creer que un servidor decente en estos días no sea compatible con TLSv1.

Ahora, en el artículo que cité, muestran que bajaron la calificación de Facebook. Por alguna razón, no funciona en mi configuración, aquí está mi configuración (estoy usando libnfqueue y scapy ):

def print_and_accept(pkt):
    spkt = IP(pkt.get_payload())

    if re.search('\x16\x03\x01.{2}\x01', str(spkt), flags=0): #Checking for TLS Client Hello
        if spkt[TLSClientHello].version > 769: #tlsv1 - although should actually be sslv3, not tlsv1
            new_packet = IP(dst=spkt[IP].dst, src=spkt[IP].src)/TCP() #FIN, ACK packet
            new_packet[TCP].sport = spkt[TCP].sport
            new_packet[TCP].dport = spkt[TCP].dport
            new_packet[TCP].seq = spkt[TCP].seq
            new_packet[TCP].ack = spkt[TCP].ack
            new_packet[TCP].flags = 'FA' #Setting flags to fin, ack
            pkt.set_payload(str(new_packet))
    pkt.accept()
    
pregunta Zach P 02.11.2016 - 15:01
fuente

0 respuestas

Lea otras preguntas en las etiquetas