999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Python的端口掃描技術(shù)研究

2021-01-15 08:48:14孟彬智云壘鐘翡
關(guān)鍵詞:計(jì)算機(jī)服務(wù)

◆孟彬 智云壘 鐘翡

基于Python的端口掃描技術(shù)研究

◆孟彬 智云壘 鐘翡

(96822部隊(duì) 云南 650000)

本文研究了計(jì)算機(jī)端口掃描技術(shù),介紹了常用端口掃描技術(shù)的原理,并利用Python的socket模塊實(shí)現(xiàn)遠(yuǎn)程計(jì)算機(jī)TCP端口的全連接掃描,通過掃描發(fā)現(xiàn)處于開放狀態(tài)的高危端口,提醒網(wǎng)絡(luò)運(yùn)維人員合理的關(guān)閉高危端口可提高計(jì)算機(jī)的安全性。

全連接掃描;Python;socket

端口在計(jì)算機(jī)中有非常重要的意義,端口是計(jì)算機(jī)與外界交互信息的通道??梢赃@樣理解,計(jì)算機(jī)端口在傳輸層上用來標(biāo)識同一臺計(jì)算機(jī)的不同進(jìn)程。客戶端通常對它使用的端口號不關(guān)心,只需要保障該端口在本機(jī)上是唯一的即可,客戶端與服務(wù)端通信時(shí)常用動態(tài)端口,服務(wù)端使用固定的知名端口,客戶端的端口號與服務(wù)端的端口號不需要一一對應(yīng)。IP地址和端口號的組合成為套接字Socket,在一個(gè)主機(jī)上是唯一的,一條連接由客戶端和服務(wù)器的套接字組成[1]。

計(jì)算機(jī)端口在網(wǎng)絡(luò)安全方面有極重要的意義,黑客和一些木馬程序會利用端口漏洞實(shí)施入侵活動。對目標(biāo)主機(jī)進(jìn)行掃描可以得到其端口的開放情況,根據(jù)主機(jī)運(yùn)行的業(yè)務(wù),合理的關(guān)閉不需要的高危端口,就可以防止木馬與黑客利用這些端口開展攻擊的活動,從而提高計(jì)算機(jī)的安全性。常見的高危端口有135、137、138、139、445等端口,135端口用于RPC(遠(yuǎn)程過程調(diào)用)服務(wù)、137端口用于NetBIOS名稱服務(wù),138和139端口用于局域網(wǎng)中的共享服務(wù),445用于文件夾和打印機(jī)共享服務(wù)[2]。

1 常見端口掃描技術(shù)

常見端口掃描技術(shù)有全連接掃描、半連接掃描、FIN掃描、ACK掃描和NULL掃描等。

TCP Connect掃描又稱全連接掃描,TCP connect()函數(shù)會調(diào)用系統(tǒng)提供的傳輸層接口API,嘗試通過三次握手與目標(biāo)的指定端口建立TCP連接,根據(jù)連接的建立情況判斷目標(biāo)端口是否開放。優(yōu)點(diǎn)是易于實(shí)現(xiàn),掃描速度快,可同時(shí)掃描多個(gè)用戶,無須管理員權(quán)限。缺點(diǎn)是會在目標(biāo)主機(jī)的日志中記錄大量的連接建立與關(guān)閉信息。

TCP SYN掃描又稱半連接掃描,掃描時(shí)與目標(biāo)機(jī)指定端口建立TCP連接時(shí)僅完成前兩次握手,在第三次握手時(shí)不發(fā)送確認(rèn)報(bào)文,使TCP連接無法確認(rèn)。優(yōu)點(diǎn)是目標(biāo)主機(jī)日志中記錄的連接信息較少,缺點(diǎn)是實(shí)現(xiàn)較為復(fù)雜且需要較高的權(quán)限。

FIN掃描,不依賴TCP的三次握手,向目標(biāo)端口發(fā)送一個(gè)設(shè)置了FIN標(biāo)記的報(bào)文,根據(jù)系統(tǒng)返回或不返回報(bào)文判斷端口的開放情況。缺點(diǎn)是掃描結(jié)果不準(zhǔn)確,容易得到錯(cuò)誤結(jié)論。

ACK掃描,發(fā)送的報(bào)文只設(shè)置ACK標(biāo)志位,若收到目標(biāo)主機(jī)返回的RST標(biāo)記的報(bào)文,只能判斷目標(biāo)主機(jī)未被防火墻保護(hù)不能判斷端口是否開放。若未收到任何報(bào)文或收到ICMP不可達(dá)報(bào)文,說明端口受到防火墻保護(hù)。ACK掃描判斷端口是否開放容易出錯(cuò),更適合確定目標(biāo)是否在線。

NULL掃描又稱空掃描,將發(fā)送的報(bào)文中所有標(biāo)記都置為0,若目標(biāo)返回RST報(bào)文表示端口關(guān)閉,若目標(biāo)沒返回報(bào)文,表示端口開放或被防火墻保護(hù)[3]。缺點(diǎn)是掃描結(jié)果不準(zhǔn)確。

綜上所述,TCP Connect掃描因具有掃描速度快、掃描結(jié)果準(zhǔn)確、權(quán)限要求低等優(yōu)點(diǎn),得到了較廣泛的應(yīng)用。

2 使用Python進(jìn)行端口掃描

計(jì)算機(jī)間通過IP地址與端口號進(jìn)行通信的方式稱為socket通信,HTTP、FTP、DNS等應(yīng)用都是通過socket通信實(shí)現(xiàn)的,socket通信中提供服務(wù)的一方稱為socket服務(wù)端,調(diào)用socket服務(wù)的一方稱為socket客戶端。Socket服務(wù)端用自己的IP地址、指定端口號和連接方式創(chuàng)建服務(wù)并啟動服務(wù)并等待客戶端的連接請求,socket客戶端向服務(wù)端發(fā)起連接請求,連接請求被服務(wù)端接受后,客戶端和服務(wù)端就可以進(jìn)行通信了。

Python可直接調(diào)用socket對象,通過socket套接字向目標(biāo)主機(jī)的端口發(fā)送TCP connect()請求,若目標(biāo)主機(jī)上的指定端口處于偵聽狀態(tài),就可以建立連接[4]。若目標(biāo)主機(jī)未開放該端口,則connect()操作失敗,產(chǎn)生異常。

2.1 建立TCP connect()

在掃描前要先建立TCP連接,關(guān)鍵代碼如下:

import socket #導(dǎo)入socket模塊

tcps=socket.socket(socket.AF_INET,socket.SOCK_STREAM) #建立TCP套接字

tcps.connect((ip,port))#連接指定主機(jī)的目標(biāo)端口

tcps.shutdown(2)

tcps就是建立的socket對象,利用socket對象tcps對目標(biāo)主機(jī)進(jìn)行connect連接,connect()函數(shù)只能接受一個(gè)參數(shù),ip地址與端口號要用元組表示,ip與端口號在函數(shù)調(diào)用時(shí)傳入。tcps.shutdown(2)表示tcps套接字不允許傳輸數(shù)據(jù),只能用于掃描端口。

若目標(biāo)主機(jī)指定端口未開啟,則返回connect refuse結(jié)果,會產(chǎn)生connect操作失敗異常,可以用try except捕捉connect異常,通過對連接異常的捕捉可判斷目標(biāo)主機(jī)端口的開啟情況。

2.2 實(shí)現(xiàn)程序

定義連接判斷函數(shù):

def TcpOpen(ip,port):

tcps=socket.socket(socket.AF_INET,

socket.SOCK_STREAM)

try:

tcps.connect((ip,int(port)))

tcps.shutdown(2)

result.insert('insert','TCP端口{}isopen!!! '.format(port))

tcps.close()

except Exception as e:

return None

連接判斷函數(shù)的主要功能是:根據(jù)ip和port參數(shù)指定的IP地址和端口號,去連接目標(biāo)主機(jī)的相應(yīng)端口,若連接成功在Text窗體result上顯示端口開放信息,表示端口是開放的,連接失敗的端口不顯示,表示端口未開放。

定義掃描函數(shù):

def scanport():

begin = input1.get() #變量begin表示起始掃描端口

end=input2.get() #變量end表示終止掃描端口

ip =show_ip.get() #變量ip是要掃描的目標(biāo)主機(jī)IP

for i in range(eval(begin), eval(end)):

TcpOpen(ip,i)

掃描主機(jī)的ip地址由用戶填寫,ip地址默認(rèn)為”127.0.0.1”,,既可以掃描遠(yuǎn)程計(jì)算機(jī)也可以掃描本地計(jì)算機(jī)。用戶可任意指定開始端口號和終止端口號,知名端口、注冊端口和動態(tài)端口號均可,但要注意的是端口范圍越大掃描的時(shí)間就越長。

2.3 顯示界面設(shè)計(jì)

界面設(shè)計(jì)采用Python自帶的Tkinter模塊,運(yùn)行的界面如下:

圖1 端口掃描器的界面

2.4 功能測試

指定掃描端口范圍是0-1024,指定目標(biāo)主機(jī)的ip是28.90.31.182,程序執(zhí)行完畢后就會輸出在1-1024范圍里的所有的開放的端口,如下圖2所示。

圖2 目標(biāo)主機(jī)的端口掃描結(jié)果

通過端口掃描可看到110、135、139、443、902、912等知名端口是處于開放狀態(tài)的,網(wǎng)絡(luò)運(yùn)維人員可以根據(jù)主機(jī)的實(shí)際運(yùn)行情況關(guān)閉部分開放的端口,可提高計(jì)算機(jī)的安全性。這里以掃描TCP知名端口為例,對于動態(tài)端口和注冊端口也同樣適用。

3 結(jié)語

端口掃描技術(shù)對于計(jì)算機(jī)安全有重要的意義,隨著計(jì)算機(jī)網(wǎng)絡(luò)的發(fā)展,計(jì)算機(jī)面臨的網(wǎng)絡(luò)攻擊與日俱增,端口掃描是網(wǎng)絡(luò)防御的重要環(huán)節(jié)。本文介紹了5種常用的端口掃描技術(shù),并編寫了端口掃描工具,實(shí)現(xiàn)了對目標(biāo)主機(jī)TCP端口的掃描功能,得到了開放的TCP端口列表,及時(shí)關(guān)閉不使用的高危端口可提高計(jì)算機(jī)的安全性。下一步,將重點(diǎn)研究如何快捷高效的掃描UDP端口,同時(shí)端口掃描工具有較強(qiáng)的可擴(kuò)展性,還需進(jìn)一步豐富掃描工具的功能、提高可用性。

[1]Brandon Rhodes John Goerzen. Python網(wǎng)絡(luò)編程[M].北京:人民郵電出版社,2016:18-19.

[2]裴志斌,李斌勇,王星程.IP及端口掃描體系的邏輯處理設(shè)計(jì)[J]. 網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2017(10):26-27.

[3]梁劍非.多線程端口掃描軟件設(shè)計(jì)與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2011

[4]趙宏,包廣斌,馬棟林.Python網(wǎng)絡(luò)編程(Linux)[M].北京:清華大學(xué)出版社,2018:108-111.

猜你喜歡
計(jì)算機(jī)服務(wù)
計(jì)算機(jī)操作系統(tǒng)
穿裙子的“計(jì)算機(jī)”
基于計(jì)算機(jī)自然語言處理的機(jī)器翻譯技術(shù)應(yīng)用與簡介
科技傳播(2019年22期)2020-01-14 03:06:34
計(jì)算機(jī)多媒體技術(shù)應(yīng)用初探
科技傳播(2019年22期)2020-01-14 03:06:30
服務(wù)在身邊 健康每一天
服務(wù)在身邊 健康每一天
服務(wù)在身邊 健康每一天
服務(wù)在身邊 健康每一天
服務(wù)在身邊 健康每一天
信息系統(tǒng)審計(jì)中計(jì)算機(jī)審計(jì)的應(yīng)用
主站蜘蛛池模板: 色欲国产一区二区日韩欧美| 嫩草国产在线| 国产成人一二三| 国产精品一线天| 伊人91视频| 国产美女无遮挡免费视频网站| 日本伊人色综合网| 3D动漫精品啪啪一区二区下载| 91亚洲国产视频| 久久久精品国产亚洲AV日韩| 国产精品13页| 在线观看国产精美视频| 欧美日本二区| 免费无码AV片在线观看国产| 国产免费福利网站| 日韩第九页| 亚洲欧洲天堂色AV| 欧美中出一区二区| 四虎免费视频网站| 亚洲手机在线| 欧美色图久久| 欧美午夜视频在线| 国产在线观看一区精品| 99久久亚洲精品影院| 亚洲AⅤ无码日韩AV无码网站| 四虎影视无码永久免费观看| 伊人精品视频免费在线| 亚洲高清无码久久久| 色综合a怡红院怡红院首页| 欧美国产日本高清不卡| 亚洲精品在线影院| 亚洲男人的天堂久久香蕉| 免费Aⅴ片在线观看蜜芽Tⅴ | 国产精品专区第1页| 毛片网站观看| 欧美在线网| 欧美伊人色综合久久天天 | 高清无码不卡视频| 久久国产精品电影| 亚洲免费人成影院| 日日摸夜夜爽无码| 午夜小视频在线| 免费全部高H视频无码无遮掩| 丰满人妻中出白浆| 97视频在线精品国自产拍| 久久人搡人人玩人妻精品一| 国产高清不卡视频| 永久在线精品免费视频观看| 91青青在线视频| 午夜少妇精品视频小电影| 亚洲国产成人精品一二区| 久久永久免费人妻精品| 亚洲欧美色中文字幕| 国产精品第一区在线观看| 国产综合另类小说色区色噜噜| 夜夜拍夜夜爽| 久久成人免费| 麻豆精品久久久久久久99蜜桃| 日韩第九页| 亚洲精品无码抽插日韩| 欧美人在线一区二区三区| 国产在线拍偷自揄拍精品| 男人天堂伊人网| 看av免费毛片手机播放| 国产精品无码在线看| 日韩天堂视频| 欧美色99| 欧美A级V片在线观看| 亚洲V日韩V无码一区二区| 国产精品冒白浆免费视频| 热久久这里是精品6免费观看| 一级毛片免费观看久| 国产精品视频猛进猛出| 亚洲精品777| 亚洲an第二区国产精品| 久久亚洲国产视频| 久久国产亚洲偷自| 亚洲欧美国产视频| 尤物在线观看乱码| 国产一区二区三区免费观看| 22sihu国产精品视频影视资讯| 久草中文网|