畢業(yè)設計So Easy:基于C++實(shí)現網(wǎng)絡(luò )掃描器
很多計算機專(zhuān)業(yè)大學(xué)生經(jīng)常和我交流:畢業(yè)設計沒(méi)思路、不會(huì )做、論文不會(huì )寫(xiě)、太難了......
針對這些問(wèn)題,決定分享一些軟、硬件項目的設計思路和實(shí)施方法,希望可以幫助大家,也祝愿各位學(xué)子,順利畢業(yè)!
項目專(zhuān)欄:https://blog.csdn.net/m0_38106923/category_11085518.html?spm=1001.2014.3001.5482
對計算機技術(shù)感興趣的小伙伴請關(guān)注公眾號:美男子玩編程,公眾號優(yōu)先推送最新技術(shù)博文,創(chuàng )作不易,請各位朋友多多點(diǎn)贊、收藏、關(guān)注支持~
目前主流的網(wǎng)絡(luò )掃描器,大多數采用的是命令行界面,用戶(hù)使用的門(mén)檻相對較高,可視化的圖形界面旨在提供給用戶(hù)一個(gè)友好的使用環(huán)境,這種用戶(hù)—界面的體系結構深受廣大喜愛(ài)。它不需要用戶(hù)去熟記過(guò)多的參數,只需要填入相應的關(guān)鍵信息,通過(guò)鼠標點(diǎn)擊選擇即可完成,大大降低了操作使用的難度。
1
系統目標
本設計的最終目標是打造一個(gè)具有多種掃描功能的網(wǎng)絡(luò )掃描器。該掃描器具有以下功能:
可視化的圖形界面,旨在為用戶(hù)提供友好的使用環(huán)境。
實(shí)現一些基本的掃描任務(wù),如讀取到目的主機的軟硬件信息,開(kāi)放的端口等等。
幫助用戶(hù)去自動(dòng)生成符合用戶(hù)心理的掃描結果報告,并將掃描結果以文件的形式展現出了。
其對應的整體層次設計圖如下圖所示:
項目工程資源下載請參見(jiàn):https://www.syjshare.com/res/40V489VZ
2
系統原理
管理員站在攻擊者的角度去看網(wǎng)絡(luò )掃描器的工作原理,一切都變得清晰易懂。作為一個(gè)攻擊者,管理員會(huì )考慮首先去搜索網(wǎng)絡(luò )上存活的主機,選擇其中某一些主機作為管理員攻擊的目標,管理員再通過(guò)向目標主機發(fā)送數據包,通過(guò)分析反饋的數據包,尋找可能存在的安全隱患,通過(guò)利用這些安全隱患去模擬嘗試攻擊,找到修復該安全隱患的解決方案,從而達到修復漏洞的目的。網(wǎng)絡(luò )掃描器的工作原理如下圖所示:
3
系統設計
3.1、主機掃描模塊
主機掃描就是掃描網(wǎng)絡(luò )中可能存在的主機,主要是通過(guò)向特定的主機或者目的 IP 發(fā)送構造的 ICMP 協(xié)議包來(lái)確定目標網(wǎng)絡(luò )上的主機是否可達。其流程圖如下圖所示:
3.2、端口掃描模塊
對某一 IP 段目標主機 IP 的一段端口逐個(gè)連接,通過(guò)發(fā)送數據包對目標主機進(jìn)行通信,根據反饋回來(lái)的數據包信息判斷該主機的開(kāi)放狀態(tài),根據其開(kāi)放端口所對應的主機服務(wù)去有針對性的發(fā)起相關(guān)的服務(wù)缺陷攻擊。其流程圖如下圖所示:
3.3、NetBIOS 掃描模塊
對網(wǎng)上基本輸入輸出系統 NetBIOS 協(xié)議而言,它作為應用層上的一種特殊的協(xié)議,它常常被用來(lái)管理局域網(wǎng)上的主機,通過(guò)該協(xié)議的相關(guān)約定,管理員可以很方便的讀取到局域網(wǎng)上相關(guān)目標主機可擁有的相關(guān)屬性的詳細信息。其流程圖如下圖所示:
3.4、SNMP掃描模塊
簡(jiǎn)單網(wǎng)絡(luò )管理協(xié)議 SNMP 是對智能終端設備做簡(jiǎn)單管理,管理員可以利用該協(xié)議的相關(guān)約定去獲取支持該協(xié)議的各種設備的詳細的信息。其流程圖如下圖所示:
3.5、弱密碼掃描模塊
弱密碼掃描是逐個(gè)對目標主機的用戶(hù)名和密碼進(jìn)行掃描,依次窮舉遍歷所有的用戶(hù)名和密碼的組合,用遍歷生成的密碼去逐次嘗試驗證。通過(guò)密碼驗證系統給出的正確或錯誤的反饋來(lái)判斷是否成功獲取到了用戶(hù)的信息。其流程圖如下圖所示:
3.6、****器掃描模塊
****器掃描是對所接收到的所有數據包進(jìn)行實(shí)時(shí)監聽(tīng),然后依次與監測關(guān)鍵字進(jìn)行匹配,篩選出那些關(guān)鍵信息。其流程圖如下圖所示:
3.7、DOS攻擊模塊
DOS 攻擊是對目標 IP 的特定端口采用指定的線(xiàn)程數去發(fā)送大量的數據和連接請求,不斷的消耗目標主機的資源,從而造成目標主機連接資源耗盡,導致其它主機無(wú)法使用這些連接資源。其流程圖如下圖所示:
3.8、注入檢測模塊
由于程序員及軟件設計師在編寫(xiě)程序或設計相關(guān)軟件模型的過(guò)程中出現了設計缺陷,導致非法用戶(hù)可以通過(guò)構造一系列特殊的字符串去拼接到軟件的缺陷部分,從而導致非授權用戶(hù)可以繞過(guò)系統驗證而讀取到數據庫中的隱私數據,從而造成信息的泄露,造成巨大的損失。其流程圖如下圖所示:
3.9、報告生成模塊
報告生成是網(wǎng)絡(luò )掃描器所提供的任意多種掃描功能對目標 IP 的掃描結果進(jìn)行匯總,最終以報告的形式打印出來(lái),提供了 html、txt 和 xml 三種打印格式。其流程圖如下圖所示:
4
系統實(shí)現
4.1、工作流圖
網(wǎng)絡(luò )掃描器主要工作流程圖如下圖所示:
4.2、界面設計
4.2.1、主界面
網(wǎng)絡(luò )掃描器主界面如下圖所示:
4.2.2、子界面
網(wǎng)絡(luò )掃描器共實(shí)現了九個(gè)功能模塊,下面管理員分別看看這九個(gè)功能模塊的子界面。
下圖的是主機掃描功能模塊的界面:
下圖展示的是端口掃描功能模塊的界面:
下圖展示的是 NetBIOS 掃描功能模塊的界面:
下圖展示的是 SNMP 掃描功能模塊的界面:
下圖展示的是弱密碼掃描功能模塊的界面:
下圖展示的是****器掃描功能模塊的界面:
下圖展示的是 DOS 攻擊功能模塊的界面:
下圖展示的是注入檢測功能模塊的界面:
下圖展示的是報告生成功能模塊的界面:
項目工程資源下載請參見(jiàn):https://www.syjshare.com/res/40V489VZ
*博客內容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀(guān)點(diǎn),如有侵權請聯(lián)系工作人員刪除。