網絡信息收集
0.總體結構
本次作業屬於哪個課程 | 網絡攻防實踐 |
---|---|
這個作業要求在哪里 | 網絡信息收集技術 |
我在這個課程的目標是 | 學習網絡攻防相關技術和原理 |
這個作業在哪個具體方面幫助我實現目標 | 學習網絡信息收集相關技術和原理 |
1.實踐內容
第三章的內容主要是學會收集網絡信息,以及防御者相應的防范和應對措施,學會使用相關的工具以及原理。我將分為以下幾個部分先介紹和回顧本章的主要內容。
- 網絡踩點:Web搜索與挖掘、DNS和IP查詢、網絡拓撲偵察
- 網絡掃描:主機掃描、端口掃描、網絡/系統類型探查、漏洞掃描
- 網絡查點:網絡服務旗標抓取、通用網絡服務查點
網絡踩點:Web搜索與挖掘、DNS和IP查詢、網絡拓撲偵察
網絡踩點是指攻擊者有計划的對目標的信息手機,了解目標的信息安全狀況。其目標是掌握目標的一些個人信息,為實施入侵做好准備。網絡踩點最為常見的手段包括以下三種。
- Web搜索與挖掘:利用Web搜索的強大能力對目標公開的信息進行挖掘。包括基本的Web搜索、高級Web搜索、元搜索等。基本的Web搜索技巧如使用Google和百度進行簡單搜索。高級Web搜索即使用這些搜索引擎的高級功能,以便更精確的查詢信息。元搜索引擎就是整合多個搜索引擎的結果從而更方便的查詢信息。對於個人來說,最重要的是防范措施,一定要注意瀏覽網頁時的信息保密。
- DNS和IP查詢:DNS與IP是互聯網中的兩大最重要的基礎設施環境。互聯網看似是一套完全分布式的信息網絡系統,但是如DNS域名,IP地址,通信協議的參數等基礎設施是由ICANN負責協調工作的。DNS和IP查詢主要有以下幾個步驟:DNS注冊信息WHOIS查詢,DNS到IP的映射,IP WHOIS查詢,最后是從DNS與IP到真實世界中的地理位置查詢。
- 網絡拓撲偵察:網絡拓撲偵察是為了進一步得到獲得目標的網絡拓撲結構
網絡掃描:主機掃描、端口掃描、網絡/系統類型探查、漏洞掃描
網絡掃描的目的是探測目標網絡,以找出盡可能多的連接目標,再進一步探測可能存在的安全弱點。主要分為以下幾個部分。
- 主機掃描:也稱ping掃描,主要是找出網段內活躍的主機。分為ICMP Ping掃描、使用TCP協議的主機掃描、使用UDP協議的主機掃描。目前使用最為廣泛的主機掃描軟件是nmap。主機掃描沒有特別有效的防止方法,可以采用例如nsort之類的網絡入侵檢測系統進行探測。
- 端口掃描:在主機掃描確定活躍主機之后,用於探查活躍主機上開放了哪些TCP/UDP端口的技術方法。TCP端口掃描包括Connect掃描、SYN掃描兩種基本類型。UDP端口掃描是對UDP開放端口與監聽網絡進行探測發現。最著名的端口掃描工具還是nmap。和主機掃描一樣,也可以使用nsort之類的網絡入侵檢測系統進行防范,同時也可以記錄端口掃描行為。
- 網絡/系統類型探查:目的是探查活躍主機的系統及開放的網絡服務類型。系統類型探查的主要技術包括:操作系統主動探測技術、操作系統被動辨識技術。網絡服務類型探查主要是尋找開放端口綁定的網絡應用服務,分為網絡服務主動探測技術、網絡服務被動辨識技術。同樣的,對比系統類型探查並沒有好的防范方法。
- 漏洞掃描:目的是探測發現目標網絡中特定操作系統、網絡服務與應用程序中存在的安全漏洞,是網絡掃描最關鍵也是最重要的一個步驟。漏洞掃描的基本原理是:存在安全漏洞的操作系統、網絡服務、應用程序對某些網絡請求的應答,會和安全的實例存在一定的差別,利用差別來識別目標是否存在安全漏洞。目前最為著名的漏洞掃描軟件是Nessus。避免漏洞掃描最重要的就是管理員利用漏洞掃描工具定期掃描,修補漏洞。
網絡查點:網絡服務旗標抓取、通用網絡服務查點
網絡查點是對是對識別出來的弱點進行更具體和充分的探查,來尋找真正可以攻擊的入口,以及攻擊工程中需要的關鍵數據。網絡查點是對目標主機的主動連接,會被記錄日志。網絡服務查點的主要防范措施還是應該主動放棄使用不安全的網絡協議,把不必要的網絡服務關閉,以及加強安全配置。常用的網絡查點技術如下:
- 網絡服務旗標抓取:利用客戶端工具連接遠程網絡服務並觀察輸出(明文傳輸協議的網絡服務)(手動工具:telnet、netcat)。
- 通用網絡服務查點:SMTP電子郵件發送協議:VRFY、EXPN。
- 類UNIX平台網絡服務查點:遠過程調用RPC(工具:rpcinfo、nmap)。
- Windows平台網絡服務查點:netbios(netview查點域、nltest查點域控制器、nbtstart查netbios名字表)、smb(net view查點主機共享資源、regdmp注冊表查點、nltest/server查點受信任域、usrstat,local等)、ad、ldap。
2.實踐過程
DNS與IP查詢
任務一:從google.com、g.cn、baidu.com、sina.com.cn中選擇一個DNS域名進行查詢,獲取如下信息:
- DNS注冊人及聯系方式
- 該域名對應IP地址
- IP地址注冊人及聯系方式
- IP地址所在國家、城市和具體地理位置
Solution
- 首先:訪問whoisSoft.com網址(個人感覺這個查詢稍微信息豐富一點)查詢baidu.com的相關信息。我們可以得到DNS注冊人及聯系方式等(見下圖一)。
- 利用
nslookup baidu.com
查詢IP地址(見下圖二)。 - 在whoisSoft.com網址輸入IP(
220.181.28.148
),得到具體的國家城市位置信息(見下圖三)。
任務二:嘗試獲取BBS、論壇、QQ、MSN中某一好友的IP地址,把那個查詢獲取該好友所在的具體地理位置。
Solution
首先打開Wireshark,選擇本地網卡。之后CRTL+F
進行搜索,選擇字符串、分組詳情,輸入020048
。利用電腦的QQ給好友打電話,這里我用的是自己的小號(小號用手機登陸,開移動網絡,電腦是家里的Wi-Fi)。然后店家查詢就能夠得到對方的IP地址,如下圖所示。給大家分享一個網址,可以精確查詢IP地址對應的地理位置。可惜只查到了我在合肥,沒有精確定位我的位置。
nmap
任務:使用nmap開源軟件對靶機環境進行掃描,回答以下問題並給出操作命令。
- 靶機IP地址是否活躍
- 靶機開放了哪些TCP和UDP端口
- 靶機安裝了什么操作系統,版本是多少
- 靶機上安裝了哪些服務
Solution
首先通過指令nmap -sP 172.16.245.128
查詢靶機IP地址是否活躍,發現提示Host is up
說明靶機處於活躍狀態。由於TCP SYN掃描是對TCP Connect掃描的一種改進,本文僅用指令nmap -sS 172.16.245.128
對靶機進行TCP SYN掃描。使用nmap -sU 172.16.245.128
對UDP端口進行掃描。使用nmap -O -sV 172.16.245.128
對操作系統類型和網絡服務進行掃描,可以發現對nmap對可能的操作系統類型進行了排序以及可能性估計。通過對網絡服務的掃描,我們發現系統開放了ftp,ssh,http
等網絡狀態,具體的網絡服務可以參考下面的表格。
針對上面掃描出來的活躍的TCP和UDP端口,對部分端口進行簡要的解釋和說明(詳細的可以參考常見著名端口)。
名稱 | 說明 |
---|---|
ftp | 文件傳輸協議(FTP)端口;有時被文件服務協議(FSP)使用 |
ssh | 安全 Shell(SSH)服務 |
telnet | Telnet 服務 |
smtp | 簡單郵件傳輸協議(SMTP) |
domain | 域名服務(如 BIND) |
netbios-ssn | 在紅帽企業 Linux 中被 Samba 使用的NET BIOS 會話服務 |
netbios-ns | 在紅帽企業 Linux 中被 Samba 使用的 NETBIOS 名稱服務 |
rpcbind | RPC服務 |
Nessus
任務:使用Nessus開源軟件對靶機環境進行掃描,回答以下問題並給出操作命令。
- 靶機上開放了哪些端口
- 靶機各個端口上網絡服務存在哪些安全漏洞
- 你認為如何攻陷靶機環境,以獲得系統訪問權
由於選擇的攻擊機kali中沒有安裝Nessus,所以我們首先需要安裝Nessus。由於安裝部分不是本文的重點,可以參考kali安裝Nessus詳細過程,本文只做簡要的介紹。
- 進入Nessus下載地址下載deb版安裝包,並利用
dpkg -i *.deb
安裝Nessus。 - 利用指令
/etc/init.d/nessusd start
啟動Nessus,並使用netstat -ntpl | grep nessus
查看啟動狀態。 - 注冊賬號,獲得激活碼。
- 離線安裝Nessus插件(虛擬機內沒有掛代理,在線下載很慢,經常下載失敗),在主機下載離線安裝,離線安裝的具體步驟參考我給的博客,很簡單。
- 訪問https://kali:8834/進入Nessus控制界面,至此安裝Nessus完成,每次開機都需要重新啟動Nessus。(不知道為什么,我重啟的時候重新complie了一遍,很慢很慢,等編譯完了就可以進了,第二次開機的時候再進入就很快了)
下面開始利用Nessus完成我們的任務啦!!!
基本步驟:
-
首先需要新建一個
scan
,一般選擇Advanced Scan
。 -
如圖所示,在Target里面填上你的靶機地址,在Name填上命名就可以進行掃描了。
-
點擊右側的Launch按鈕啟動掃描。
-
完成之后查看報告,可以導出為pdf。
為了完成我們的實踐部分,首先新建了一個主機發現的scan
,記住在setting里面選擇所有端口,然后就可以開始掃描了。查看結果,發現與nmap掃描基本對應。主機是活躍的,也看到了許多開放的端口如ftp,ssh,telnet等(僅展示部分),端口掃描結果與nmap掃描基本類似。同時我們可以將報告導出為custom
模式,里面包括了每個端口的具體介紹,很詳細。
對端口掃描完畢,我們需要觀察主機上存在哪些安全漏洞,此時新建一個高級掃描。掃描結束后可以看到主機存在的一些漏洞,以及對漏洞的危險程度進行的一個划分。通過導出的報告可以看到每個漏洞的具體描述以及解決方法。
下面以 32314 - Debian OpenSSH/OpenSSL Package Random Number Generator Weakness
漏洞為例簡要的介紹下其報告格式。這個漏洞主要是遠程SSH密鑰是脆弱的。主要原因是因為Debian打包程序刪除了遠程版本的OpenSSL中幾乎所有的熵源,攻擊者可以輕松地獲取遠程密鑰的私有部分,並使用它來解密遠程會話或建立中間攻擊。解決方法是所有SSH,SSL和OpenVPN密鑰等都應重新生成。同時,該報告還給出了其他的可供參考的部分。詳細情況請閱讀報告。
實踐作業
1.通過搜索引擎搜索自己在網上的足跡,並確認自己是否又隱私和信息泄漏問題。
首先我去百度了一下我的名字,誰知道這么有這么一位帥哥把我的風頭完美的掩蓋了_(可能這就是大眾名字的好處了)。
好吧,看來只能加修飾詞才能百度出的我了。
不出所料,博客是最容易找到的信息,可見得我的學號姓名都在博客上泄漏了。這里一定要注意,各位寫博客就別用真實名字啦!!換個大學的定語吧。
這個好像有點多啊,連參加夏令營的信息都被查到了,不過總體來說,個人並沒有在公開的網站上泄漏相關的隱私信息。希望人人有意識,事事要仔細。
2.使用nmap掃描特定靶機,並給出靶機環境的配置情況。
3.使用Nessus掃描特定靶機,並給出靶機環境上的網絡服務及安全漏洞情況。
重要說明:這兩道題在前面的實踐都已經完成並且進行了詳細的分析,可以參考前面的實踐內容,這里不再贅述。
3.學習中遇到的問題及解決
- 問題一:對很多工具的指令還不熟悉
- 問題一解決方案:多實踐
- 問題二:Nessus在線安裝插件很慢,容易失敗
- 問題二解決方案:離線安裝,具體內容參考正文
4.學習感悟、思考
- 第一次接觸網絡攻防的這些工具,很有新鮮感,實踐了之后也很有成就感。
- 在會用工具的同時,應該掌握工具背后的基本原理,這是作為一名研究生的必備素質。
- 熟能生巧,只有不斷練習才能有所進步。