HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование_OLD > PHP, PERL, MySQL, JavaScript
   
 
 
Опции темы Поиск в этой теме Опции просмотра

[PERL] Сканер портов. Требуется помощь
  #1  
Старый 03.11.2008, 20:44
Sharky
Познавший АНТИЧАТ
Регистрация: 01.05.2006
Сообщений: 1,021
Провел на форуме:
3424739

Репутация: 921


Отправить сообщение для Sharky с помощью ICQ
Post [PERL] Сканер портов. Требуется помощь

Есть сканер портов на перле...сканит диапазон ипов на один открытый порт...скорость откровенно крейсерная... поправьте ошибки и помогите прикрутить многопоточность
Код:
#!/usr/bin/perl

use IO::Socket;
use threads;
use threads::shared;
print "Enter Start Host: ";
my $startip=<STDIN>;
print "Enter End Host: ";
my $endip=<STDIN>;

checkrange();
sub checkrange 
{
print "\n Start scaning...\n\n";
my @flist=split(/\./, $startip);
my @tlist=split(/\./, $endip);
my $fip=$flist[0]*256*256*256+$flist[1]*256*256+$flist[2]*256+$flist[3];
my $tip=$tlist[0]*256*256*256+$tlist[1]*256*256+$tlist[2]*256+$tlist[3];


for (my $i=$fip; $i<=$tip; $i++) {
	my $tmp=$i;
	my $d1=int($tmp / (256*256*256)); $tmp=$tmp-$d1*(256*256*256);
	my $d2=int($tmp / (256*256)); $tmp=$tmp-$d2*(256*256);
	my $d3=int($tmp / 256); $tmp=$tmp-$d3*256;
	my $d4=$tmp;
	my $ip="$d1.$d2.$d3.$d4";  
	sock($ip);
} 
	sub sock {	
	my $sock = new IO::Socket::INET 
		(
		PeerAddr => $_[0],
   		PeerPort => '80', 
   		PeerProto => 'tcp', 
   		t => '5',
		);
		if($sock) { 
		           print "$_[0] is Good\n"; 
				  }else{ 
				   print"$_[0] is Bad\n"
				  } 
				  }
				  
			}
print "Scaning finished. Press Enter to exit.";
 $exit = <STDIN>;
 
 





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ