欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
使用PERL打造connect掃描器


writer:demonalex
email:demonalex@hackermail.com


    想不到現在的‘沖擊波’系列蠕蟲(chóng)蔓延得比‘SARS’(非典型肺炎)還要快,導致許多網(wǎng)絡(luò )的網(wǎng)管都把ICMP給禁止掉了。
在論壇里的網(wǎng)友們都在為找個(gè)‘小肉機’而弄得‘沸騰’起來(lái)。
“PING不到,怎么知道那臺機器在線(xiàn)哪臺機器不在線(xiàn)啊....?”
經(jīng)驗老到的網(wǎng)友就會(huì )‘祭’出X-SCAN,使用“無(wú)條件掃描’,噢,有‘東西’看了......
“為什么可以?huà)叩侥兀?#8221;筆者小神QQ里又有‘好友’的信息跳出來(lái)了......
    如果您是玩過(guò)SOCKET的人您當然不會(huì )問(wèn)我了。其實(shí)樓上問(wèn)的只是簡(jiǎn)單的SOCKET CONNECT掃描而已。
    說(shuō)說(shuō)SOCKET掃描吧,其實(shí)SOCKET掃描有很多種,主要有針對低層的IP掃描(PING就是其中一種,用的是ICMP包),和針對
高層的(TCP,UDP)。而我們通常掃TCP端口的就是connect掃描、SYN掃描、FIN掃描這三種了(connect掃描與SYN掃
描可以使用X-SCAN,FIN掃描可以使用NMAP)。
    說(shuō)說(shuō)最常用的connect掃描吧,它的原理就是調用SOCKET API(套接字應用程序接口)中的connect()直接向遠程
機器發(fā)送連接請求,并通過(guò)套接字是否能建立連接來(lái)辨別其端口的狀態(tài)。它的特點(diǎn)是:速度慢,容易被對方發(fā)現,但準
確性高。
    “不用掃描器能使用connect掃描嗎?”
    可以,不過(guò)不能光依賴(lài)系統,系統并沒(méi)有提供調用SOCKET API的程序,能操作SOCKET API就只能依賴(lài)有SOCKET API接口
的編程語(yǔ)言了。在筆者眼里玩SOCKET最方便的就莫過(guò)于PERL了?,F在示范一下如何使用Perl中的IO::Socket包寫(xiě)單端口CON-
NECT掃描器吧(樓下‘#‘符號后為注釋部分):

#!usr/bin/perl -w                                  #PERL程序開(kāi)頭標式
use IO::Socket;                                    #載入IO::Socket包
$remote_host=$ARGV[0];                             #程序后緊跟的第一個(gè)參數為遠程主機地址
$remote_port=$ARGV[1];                             #第二個(gè)參數為所要探測遠程主機的端口
$sock=IO::Socket::INET->new(PeerAddr=>$remote_host,PeerPort=>$remote_port,Timeout=>60);
#樓上一行為新建一個(gè)IO::Socket::INET對象$sock,其參數PeerAddr為遠程主機地址,參數PeerPort
#為需要探測的遠程主機端口,參數‘超時(shí)值’Timeout為60秒
if(defined $sock){                                 #進(jìn)入條件語(yǔ)句,辨別$sock對象是否已被定義
print("The $remote_host -> $remote_port is opened!\n");  #被定義了,屏幕提示此主機的此端口打開(kāi)
$sock->close;                                      #關(guān)閉SOCKET對象
}else{                                             #條件語(yǔ)句的值為‘非’時(shí)
print("The $remote_host -> $remote_port is closed!\n");  #提示此主機的此端口沒(méi)有打開(kāi)
}
exit 1;                                            #退出程序

講解:樓上程序的第一行與倒數最后兩行其實(shí)可以不寫(xiě),只是筆者為了程序的可移植性與寫(xiě)C程序的作風(fēng)而‘硬’加上去的,
大家可以不寫(xiě)。第二行載入IO::Socket包是必要的,不加載此包的話(huà)就無(wú)法定義IO::Socket::INET對象了。數組@ARGV為
PERL的保留數組,用于表示使用程序時(shí)后面緊跟的參數的。條件語(yǔ)句中使用‘是否定義了SOCKET對象’作為辨別條件是因
為建立SOCKET對象時(shí)其實(shí)已經(jīng)調用了connect()了,所以只要辨別樓上已建立的SOCKET對象變量$sock是否被定義了就可以
知道連接是否成功了。
    完成了。那如何做一個(gè)可以?huà)呙枰粋€(gè)IP段的端口或掃描同一IP的一個(gè)端口段的connect()掃描程序呢?聰明的您應該會(huì )
想到循環(huán)語(yǔ)句了吧?!由于本文的篇幅有限,小神就不再對此多說(shuō)了,如果您想知道更多的資料或了解更多關(guān)于PERL與PERL
SOCKET API的知識的話(huà),可以到小神的主頁(yè)http://demonalex.cnhacker.cn去看看哦:)
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
20 行代碼編寫(xiě)一個(gè)簡(jiǎn)單的端口掃描器
Perl IO::Socket簡(jiǎn)介
編寫(xiě)端口掃描器(C++)
用Python指定HTTPConnection的出口IP(specify outgoing ip)
用python實(shí)現網(wǎng)絡(luò )及端口掃描工具
python自動(dòng)化:使用socket做一個(gè)多進(jìn)程的端口掃描器!
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久