2017-2018-2 20179216 《网络攻防与实践》 第四周总结
教材學習內容總結
網絡嗅探
網絡嗅探(sniff)是一種黑客常用的竊聽技術,利用計算機的網絡接口截獲目的地為其他計算機的數據報文,以監聽數據流中所包含的用戶賬戶密碼或私密通信等。實現網絡嗅探的工具稱為網絡嗅探器(Sniffer),嗅探器捕獲的數據報文是經過封包處理之后的二進制數據,因此通常會結合網絡協議分析技術來解析嗅探到的網絡數據,這樣才能恢復出TCP/IP協議棧上各層網絡協議的內容,以及實際發送出的應用層信息。網絡嗅探技術是一把雙刃劍,一方面,它是攻擊者的入侵手段,另一方面,它也是防御者必備的工具,網絡管理者可以利用網絡嗅探來捕獲與分析網絡的流量信息。
- 網絡嗅探的危害和作用:
- 網絡嗅探作為攻擊者經常使用的內網滲透技術,獲得主機訪問權后,能夠被動的、靜默嗅探網絡上傳輸的數據。
- 網絡嗅探利用計算機的網絡接口截獲目的地為其他計算機的數據報文,以監聽數據流中所包含的用戶賬戶密碼或私密信息。
在純交換網絡中可以采用如下手段使不應到達本地數據包到達本地,從而實現嗅探:
(1)MAC地址泛洪攻擊:通過填滿MAC地址表 (橋接表) 導致同一網段內設備之間通訊無法單播,只能通過未知單播泛洪來進行通訊。從而達到竊聽信息的目的。
(2)MAC欺騙:目的是假冒所要監聽的主機網卡,使交換機將本應發送給目標主機的數據包發送給攻擊者,從而達到數據嗅探的目的。
(3)ARP欺騙:利用IP地址與MAC地址之間進行轉化時的協議漏洞,達到MAC地址欺騙,從而達到在交換式局域網中嗅探的目的。- 網絡嗅探軟件:
- libpcap抓包開發庫:libpcap是一個網絡數據包捕獲函數庫,主要作用如下:
(1)捕獲各種數據包,例如:網絡流量統計
(2)過濾網絡數據包,例如:過濾掉本地上的一些數據,類似防火墻
(3)分析網絡數據包,例如:分析網絡協議,數據的采集
(4)存儲網絡數據包,例如:保存捕獲的數據以為將來進行分析 tcpdump:用簡單的話來定義tcpdump,就是:dump the traffic on a network,根據使用者的定義對網絡上的數據包進行截獲的包分析工具。作為互聯網上經典的的系統管理員必備工具,tcpdump以其強大的功能,靈活的截取策略,成為每個高級的系統管理員分析網絡,排查問題等所必備的工具之一。
它的命令格式為:wireshark嗅探器軟件:wireshark是網絡包分析工具。主要作用是嘗試捕獲網絡包, 并嘗試顯示包的盡可能詳細的情況。網絡管理員使用Wireshark來檢測網絡問題,網絡安全工程師使用wireshark中文版來檢查資訊安全相關問題,開發者使用Wireshark來為新的通訊協定除錯,普通使用者使用Wireshark來學習網絡協定的相關知識。
- libpcap抓包開發庫:libpcap是一個網絡數據包捕獲函數庫,主要作用如下:
如下所示:將tcpdump抓到的100個包,保存在test.cap文件里,然后用wireshark對抓到的包進行分析
- 網絡嗅探的檢測與防范
- 網絡嗅探的檢測:檢查網卡是否在混亂模式下,來發現正在監聽的嗅探器。
- 網絡嗅探的防范措施:
(1)采用安全的網絡拓撲,盡量將共享式網絡升級為交換式網絡。
(2)用靜態ARP或者MAC-端口映射表代替動態機制。
(3)重視網絡數據傳輸的集中位置點的安全防范。
(4)避免使用明文傳輸口令或敏感信息的網絡協議。
(5)采用安全的網絡拓撲,用靜態ARP或MAC端口映射表代替動態機制,重視網關、路由器和交換機的安全防范,避免明文傳輸敏感信息的網絡協議。
網絡協議分析
網絡協議分析是網絡嗅探器進一步解析與理解捕獲數據包必須的技術手段,需要識別出各個網絡層次上所使用的網絡協議類型。技術原理是對網絡上傳輸的二進制數據包進行解析,以恢復出各層網絡協議信息以及傳輸內容的技術方法。
- 網絡協議分析分析的典型步驟:
- 網絡嗅探得到的是原始數據鏈路層傳輸的二進制數據包,大多情況下是以太網幀數據;
- 對以太網進行幀結構分析,定位幀頭各字段結構,確定網絡層協議類型,大多數是IP(0800)協議,并提取數據幀中包含的網絡層數據內容;
- 進一步對IP數據包進行分析,根據IP協議頭中的Protocol字段,確定傳輸類型;
- 繼續根據TCP或UDP的目標端口確定具體的應用層協議;
- 根據相應的應用層協議對數據進行整合恢復,得到實際傳輸的數據。
網絡協議分析工具Wireshark
- WireShark基本功能:
(1)抓包(Capture):Capture Filter, BPF過濾器。
(2)分析(Analyze):自動協議解碼,支持數百種協議,顯示各層包頭和內容字段。靈活選擇協議對網絡流進行解碼。
(3)統計(Statistics):協議分類(Protocol Hierarchy)、會話列表(Conversations)、會話終端(EndPoints)、I/O Graph, 隨時間統計的流量曲線、會話重組(Follow TCP/UDP Stream)和會話圖(Flow Graph)。
- WireShark基本功能:
wireshark的使用
對抓包結果的說明
wireshark的抓包結果整個窗口被分成三部分:最上面為數據包列表,用來顯示截獲的每個數據包的總結性信息;中間為協議樹,用來顯示選定的數據包所屬的協議信息;最下邊是以十六進制形式表示的數據包內容,用來顯示數據包在物理層上傳輸時的最終形式。
使用wireshark可以很方便地對截獲的數據包進行分析,包括該數據包的源地址、目的地址、所屬協議等。
上圖的數據包列表中,第一列是編號,第二列是截取時間,第三列source是源地址,第四列destination是目的地址,第五列protocol是這個包使用的協議,第六列info是一些其它的信息,包括源端口號和目的端口號。
中間部分協議樹,通過此協議樹可以得到被截獲數據包的更多信息,如主機的MAC地址(Ethernet II)、IP地址(Internet protocol)、UDP端口號(user datagram protocol)以及UDP協議的具體內容(data)。
最下面是以十六進制顯示的數據包的具體內容,這是被截獲的數據包在物理媒體上傳輸時的最終形式,當在協議樹中選中某行時,與其對應的十六進制代碼同樣會被選中,這樣就可以很方便的對各種協議的數據包進行分析。
kali視頻(11-16)學習
漏洞分析之Openvas的使用
創建掃描目標Target,作為要掃描的目標
創建掃描任務Task
點擊“start”開始任務
查看掃描結果,包含漏洞詳細信息
- 導出掃描結果報告文件
使用Quick Start快速掃描
Kali漏洞分析之掃描工具
除了綜合漏洞掃描器OpenVAS,Kali下還有其他一些漏洞分析掃描工具,包括WEB漏洞掃描器Golismero與Nikto,以及系統信息掃描收集工具Lynis與unix-privesc-check。
(1)Golismero
Golismero是一款開源的Web掃描器,它不但自帶不少的安全測試工具,而且還可導入分析市面流行的掃描工具的結果,比如Openvas,Wfuzz, SQLMap, DNS recon等,并自動分析。Golismero采用插件形式的框架結構,由純python編寫,并集成了許多開源的安全工具。根據插件功能,可以分為四類,每個類別的插件接口都不同,在編寫自定義插件的時候,要選擇好相應的插件類型。
- importplugin:導入插件
導入插件主要是用來加載其他安全工具的掃描結果 - testingplugin:測試插件
測試插件主要是用來測試或者滲透入侵的插件 - reportplugin:報表插件
報表插件主要是對測試結果生成報表 - UIPplugin:界面插件
主要是用于和用戶交互的,顯示當前系統的運行狀況。
查看插件列表命令golismero plugins
掃描虛擬機 golismero scan http://192.168.200.6
(2)Nikto.pl
nikto是一款掃描指定主機的web類型,主機名。特定目錄,cookie,特定cgi漏洞,xss漏洞,sql漏洞,返回主機允許的http方法等安全問題的工具。
掃描特定主機 :nikto -h 目標IP地址
掃描多個指定的端口:nikto -h 目標IP地址 -p 端口1,端口2...
更新插件和數據庫:nikto -h 目標IP地址 -update
(3)lynis
lynis系統信息收集整理工具,對Linux操作系統詳細配置等信息進行枚舉收集,生成易懂的報告文件。測試者可根據報告文件信息找到漏洞。
- lynis --check-all -Q自動枚舉一些信息,默認枚舉當前系統的信息
(4) nuix-privesc-check 信息收集工具
unix-privesc-check與Lynis類似,也是信息收集工具,使用命令./unix-privesc-check > log.txt
- unix-privesc-check standard
kali漏洞分析之web爬行
web爬行工具,用于對網站路徑、頁面、賬戶的枚舉。kali下將所有字典均存放在目錄/usr/share/wordlists/下
(1)apache-users:用戶枚舉腳本
- apache-users -h 目標IP地址 -l 用戶名字典 -p 端口號 -s 是否有SSL支持,1是有0是沒有 -e 403(返回的狀態碼) -t 線程數(數字)
(2)cutycapt:網站截圖工具
- cutycapt --url=目標網站 --out=圖片名.png
(3)DIRB:強大的目錄掃描工具
- dirb 目標IP地址 (可以支持指定后綴名掃描)
(4)Dirbustor:Kali下的圖形化目錄掃描器,擁有直觀的掃描結果
- dirbuster 輸入目標的網站地址http://192.168.88.129/,設置要掃描的字典,點擊“start”查看結果
Kali漏洞分析之WEB漏洞掃描
(1) cadaver
一個用來瀏覽和修改WebDAV共享的Unix命令行程序,使用cadaver就像使用命令行的FTP程序,因此它很適合基本的WebDAV調試。它可以以壓縮的方式上傳和下載,也會檢驗屬性、拷貝、移動、鎖定和解鎖文件。
(2)DAVTest
測試支持WebDAV的服務器上傳文件等。
(3)Deblaze
針對FLASH遠程調用等的枚舉
(4)Fimap
遠程和本地文件包含的掃描器,文件包含漏洞利用工具
(5)grabber
web應用漏洞掃描器,可以指定掃描漏洞類型結合爬蟲對網站進行安全掃描。
掃描漏洞,如果需要爬蟲,加上-spider;要爬多深,接個數字;爬蟲爬到的url需要做哪些漏洞的檢測,后面可以接比如-sql,后面再接url與目標地址。
(6)Joomla Scanner
類似于Wpscan的掃描器,針對特定CMS(Joomla)的漏洞掃描工具。
- ./joomscan.pl -u 網站地址
(7)skipfish
google出品的一款自動化的網絡安全掃描工具,谷歌工程師Michal Zalewski稱,盡管Skipfish與Nikto和Nessus等其他開源掃描工具有相似功能,但Skipfish還具備一些獨特的優點。Skipfish通過HTTP協議處理且占用較低的CPU資源,因此它的運行速度比較快。
skipfish -o /tmp/1.report http://url/ /* -o是output即生成文件,后面跟生成的目錄*/
- skipfish -o ~/report123 http://baidu.com/掃描百度,在home目錄下生成名為“report123”的報告
(8)uniscan-gui
有圖形界面的工具,簡單易用,信息收集和web掃描結合的工具。
- 對靶機進行掃描
(9)w3af
w3af是一個web應用程序攻擊和檢查框架,該項目已超過130個插件,其中包括檢查網站爬蟲,SQL注入(SQL Injection),跨站(XSS),本地文件包含(LFI),遠程文件包含(RFI)等。該項目的目標是建立一個框架,以尋找和開發web應用安全漏洞,所以很容易使用和擴展。
(10)wapiti
wapiti的工作方式與nikto類似,也采用黑盒的方式主動的對被測web應用進行掃描,尋找其中潛在的安全缺陷,但不像nikto提供測試用例庫,而是實現了內置的匹配算法,包括Windows、MAC OS/X和類Unix系統。支持的協議有http/https 1.0/1.1,HTTPS要求安裝SSL庫。支持生成多種格式的安全測試驗證報告。它可以實現以下功能:
- 文件處理錯誤(本地和遠程打開文件,readfile)
- 數據庫注入(PHP/JSP/ASP,SQL和XPath注入)
- XSS(跨站點腳本)注入
- LDAP注入
- 命令執行檢測(eval(),system(),passtru()...)
- CRLF注射入(HTTP響應,session固定...)
wapiti 目標IP地址 -v 2
(11)webshag-gui
集成調用框架,調用nmap,uscan,信息收集、爬蟲等功能,使掃描過程更易。
(12)WebSploit
一個開源項目,主要用于遠程掃描和分析系統漏洞。使用它可以非常容易和快速發現系統中存在的問題,并深入分析。
轉載于:https://www.cnblogs.com/jmjm/p/8653954.html
總結
以上是生活随笔為你收集整理的2017-2018-2 20179216 《网络攻防与实践》 第四周总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基础补充:使用xlrd模块读取excel
- 下一篇: flask第十八篇——模板【2】