最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python寫安全小工具之TCP全連接端口掃描器

 更新時間:2022年05月25日 14:26:42   作者:? okokabcd?  ?  
這篇文章主要介紹了Python寫安全小工具之TCP全連接端口掃描器,文章通過TCP connect來實現(xiàn)一個TCP全連接端口掃描器。具有一定的參考價值,需要的小伙伴可以參考一下

前言:

通過端口掃描我們可以知道目標主機都開放了哪些服務(wù),下面通過TCP connect來實現(xiàn)一個TCP全連接端口掃描器。

一個簡單的端口掃描器

#!/usr/bin/python3
# -*- coding: utf-8 -*-
from socket import *
def portScanner(host,port):
    try:
        s = socket(AF_INET,SOCK_STREAM)
        s.connect((host,port))
        print('[+] %d open' % port)
        s.close()
    except:
        print('[-] %d close' % port)
def main():
    setdefaulttimeout(1)
    for p in range(1,1024):
        portScanner('192.168.0.100',p)
if __name__ == '__main__':
    main()

說明:

  • 原理:對不同端口進行TCP連接,根據(jù)是否連接成功來判斷端口是否打開
  • AF_INET指定使用IPv4協(xié)議,SOCK_STREAM指定使用面向流的TCP協(xié)議
  • connect((host, port)),向指定的IP:端口發(fā)起連接
  • setdefaulttimeout(1),默認超時時間為1秒

多線程版本

#!/usr/bin/python3
# -*- coding: utf-8 -*-
from socket import *
import threading
lock = threading.Lock()
openNum = 0
threads = []
def portScanner(host,port):
    global openNum
    try:
        s = socket(AF_INET,SOCK_STREAM)
        s.connect((host,port))
        lock.acquire()
        openNum+=1
        print('[+] %d open' % port)
        lock.release()
        s.close()
    except:
        pass
def main():
    setdefaulttimeout(1)
    for p in range(1,1024):
        t = threading.Thread(target=portScanner,args=('192.168.0.100',p))
        threads.append(t)
        t.start()     

    for t in threads:
        t.join()
    print('[*] The scan is complete!')
    print('[*] A total of %d open port ' % (openNum))
if __name__ == '__main__':
    main()

說明:

  • 使用多線程,1、t = threading.Thread() 2、t.start() 3、t.join()
  • 多線程要保證線程安全(共享變量的一致性)就要對處理共享變量的代碼段加鎖

到此這篇關(guān)于Python寫安全小工具之TCP全連接端口掃描器的文章就介紹到這了,更多相關(guān)Python TCP端口掃描器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python飛機大戰(zhàn)游戲?qū)嵗v解

    python飛機大戰(zhàn)游戲?qū)嵗v解

    在本篇文章里小編給大家整理的是一篇關(guān)于python飛機大戰(zhàn)游戲?qū)嵗v解,有興趣的朋友們可以參考下。
    2020-12-12
  • Python7個爬蟲小案例詳解(附源碼)中篇

    Python7個爬蟲小案例詳解(附源碼)中篇

    這篇文章主要介紹了Python7個爬蟲小案例詳解(附源碼)中篇,本文章內(nèi)容詳細,通過案例可以更好的理解爬蟲的相關(guān)知識,七個例子分為了三部分,本次為中篇,共有二道題,需要的朋友可以參考下
    2023-01-01
  • python實現(xiàn)最速下降法

    python實現(xiàn)最速下降法

    這篇文章主要為大家詳細介紹了python實現(xiàn)最速下降法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • Python中的四種交換數(shù)值的方法解析

    Python中的四種交換數(shù)值的方法解析

    這篇文章主要介紹了Python中的四種交換數(shù)值的方法解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-11-11
  • python中pyplot基礎(chǔ)圖標函數(shù)整理

    python中pyplot基礎(chǔ)圖標函數(shù)整理

    在本篇文章里小編給大家整理的是一篇關(guān)于python中pyplot基礎(chǔ)圖標函數(shù)整理的相關(guān)知識點,有興趣的朋友們可以參考下。
    2020-11-11
  • python八種降維方法匯總

    python八種降維方法匯總

    在Python中,有多種降維方法可以使用,本文就來介紹八種降維方法以及使用場景,具有一定的參考價值,感興趣的可以一下,感興趣的可以了解一下
    2023-10-10
  • 解決django的template中如果無法引用MEDIA_URL問題

    解決django的template中如果無法引用MEDIA_URL問題

    這篇文章主要介紹了解決django的template中如果無法引用MEDIA_URL問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • Python Selenium操作Cookie的實例方法

    Python Selenium操作Cookie的實例方法

    在本篇文章里小編給大家整理的是一篇關(guān)于Python Selenium操作Cookie的實例方法,有需要的朋友們可以學習參考下。
    2021-02-02
  • Tensorflow限制CPU個數(shù)實例

    Tensorflow限制CPU個數(shù)實例

    今天小編就為大家分享一篇Tensorflow限制CPU個數(shù)實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • flask框架配置mysql數(shù)據(jù)庫操作詳解

    flask框架配置mysql數(shù)據(jù)庫操作詳解

    這篇文章主要介紹了flask框架配置mysql數(shù)據(jù)庫操作,結(jié)合實例形式詳細分析了flask框架配置mysql數(shù)據(jù)庫及連接訪問等相關(guān)操作技巧,需要的朋友可以參考下
    2019-11-11

最新評論

德惠市| 马公市| 永仁县| 潢川县| 昌宁县| 商河县| 伊金霍洛旗| 河北区| 彰武县| 永昌县| 道孚县| 木里| 册亨县| 漠河县| 徐闻县| 五常市| 高青县| 西乌| 申扎县| 永福县| 吴堡县| 松江区| 龙江县| 达日县| 伊春市| 嘉峪关市| 平武县| 福清市| 时尚| 且末县| 义马市| 上思县| 手游| 灌云县| 平昌县| 康马县| 杨浦区| 团风县| 柳河县| 乳山市| 波密县|