「應用教學」C語言程式設計教學:埠掃描工具+送原始碼|安全工具

「應用教學」C語言程式設計教學:埠掃描工具+送原始碼|安全工具

不關注《一碳科技》?那你會錯過很多幹貨哦!

你們的乾貨來了!

你們的乾貨來了!

小夥伴們聽到這句話是不是特別的激動吧?是的,小編也非常激動,因為又能跟你們分享新的知識啦,即使小編不是什麼大佬,但是或多或少都會對你們有所幫助。

「應用教學」C語言程式設計教學:埠掃描工具+送原始碼|安全工具

今天這篇文章會教大家制作一個埠掃描工具,

埠掃描工具

是什麼呢?

埠掃描

是駭客常用來檢測電腦漏洞的一項技術,而埠掃描工具就是用來快速掃描埠的工具。這個工具可以用來檢視自己電腦各個埠的開啟情況,並針對特定的情況加強電腦安全防護,避免不必要的損失,但凡事都有兩面性,如果這個工具用於掃描別人電腦的埠,就能發現對方電腦存在的漏洞。

程式不是很強大,但是夠用!各位大佬就不要調侃小編啦

上菜!

說到埠掃描,那麼肯定會涉及到socket程式設計,所以按照慣例,我們要引用stdio。h、WinSock2。h這兩個標頭檔案、並連結Ws2_32。lib。我們還需要構建一個函式,這個函式用來掃描指定IP的埠。

今天教你們的程式非常簡單,簡單到什麼程度呢?簡單到我們只需要構建一個函式,引用兩個標頭檔案,連結一個庫檔案

「應用教學」C語言程式設計教學:埠掃描工具+送原始碼|安全工具

廢話不多說,開始構建我們的函式——scan()

這個函式實現的原理很簡單,就是不斷地連線目標IP,並不斷的更換埠。我們先呼叫WSAStartup()函式進行初始化,在這之後我們先建立一個套接字,並申請一個SOCKADDR_IN結構體。

「應用教學」C語言程式設計教學:埠掃描工具+送原始碼|安全工具

我們先把目標IP輸入SOCKADDR_IN中的S_addr成員中,並使用ipv4協議族(

sin_family=AF_INET

),這裡跟之前不同,SOCKADDR_IN中sin_port成員的值將在迴圈中賦值。

「應用教學」C語言程式設計教學:埠掃描工具+送原始碼|安全工具

為什麼要在迴圈裡面賦值呢?

因為我們要進行埠掃描,所以我們掃描的IP和使用的協議族是不變的,唯一改變的是埠號,所以我們要在迴圈裡面將埠號進行累加,直到埠號為我們結束埠時退出迴圈。

「應用教學」C語言程式設計教學:埠掃描工具+送原始碼|安全工具

在這些步驟做完之後,我們要把建立的套接字關閉,並終止終止對

Ws2_32.dll

的使用。

「應用教學」C語言程式設計教學:埠掃描工具+送原始碼|安全工具

程式執行結果

小編對smtp。163。com進行了掃描,作為一個郵箱伺服器,smtp。163。com的25號埠肯定是開啟的,用於傳送郵件服務,所以透過掃描發現smtp。163。com的25號埠是開啟的↓

「應用教學」C語言程式設計教學:埠掃描工具+送原始碼|安全工具

相信有些小夥伴需要這個原始碼,但是有個條件!

什麼條件呢?這個條件就是,你們要把文章讀完並理解,要不然把原始碼發出來也學不會,不是嗎?

評論區前20名附送原始碼(留郵箱)!