Kali Linux滲透基礎知識整理系列文章回顧
漏洞掃描
- 網絡流量
- Nmap
- Hping3
- Nessus
- whatweb
- DirBuster
- joomscan
- WPScan
網絡流量
網絡流量就是網絡上傳輸的數據量。
TCP協議
TCP是因特網中的傳輸層協議,使用三次握手協議建立連接。當主動方發出SYN連接請求后,等待對方回答SYN+ACK ,并最終對對方的 SYN 執行 ACK 確認。這種建立連接的方法可以防止產生錯誤的連接,TCP使用的流量控制協議是可變大小的滑動窗口協議。
連接建立
TCP三次握手的過程如下:
(1)客戶端發送SYN(SEQ=x)報文給服務器端,進入SYN_SEND狀態。
(2)服務器端收到SYN報文,回應一個SYN (SEQ=y)ACK(ACK=x+1)報文,進入SYN_RECV狀態。
(3)客戶端收到服務器端的SYN報文,回應一個ACK(ACK=y+1)報文,進入Established狀態。
三次握手完成,TCP客戶端和服務器端成功地建立連接,可以開始傳輸數據了。
連接終止
建立一個連接需要三次握手,而終止一個連接要經過四次握手,這是由TCP的半關閉(half-close)造成的。
(1) 某個應用進程首先調用close,稱該端執行“主動關閉”(active close)該端的TCP于是發送一個FIN分節,表示數據發送完畢。
(2) 接收到這個FIN的對端執行 “被動關閉”(passive close),這個FIN由TCP確認。
注意:FIN的接收也作為一個文件結束符(end-of-file)傳遞給接收端應用進程,放在已排隊等候該應用進程接收的任何其他數據之后,因為,FIN的接收意味著接收端應用進程在相應連接上再無額外數據可接收。
(3) 一段時間后,接收到這個文件結束符的應用進程將調用close關閉它的套接字。這導致它的TCP也發送一個FIN。
(4) 接收這個最終FIN的原發送端TCP(即執行主動關閉的那一端)確認這個FIN。
UDP協議
UDP協議全稱是用戶數據報協議 ,在網絡中它與TCP協議一樣用于處理數據包,是一種無連接的協議。在OSI模型中,在第四層——傳輸層,處于IP協議的上一層。UDP有不提供數據包分組、組裝和不能對數據包進行排序的缺點,也就是說,當報文發送之后,是無法得知其是否安全完整到達的。UDP用來支持那些需要在計算機之間傳輸數據的網絡應用。包括網絡視頻會議系統在內的眾多的客戶/服務器模式的網絡應用都需要使用UDP協議。
ICMP協議
ICMP是(Internet Control Message Protocol)Internet控制報文協議。它是TCP/IP協議族的一個子協議,用于在IP主機、路由器之間傳遞控制消息。控制消息是指網絡通不通、主機是否可達、路由是否可用等網絡本身的消息。這些控制消息雖然并不傳輸用戶數據,但是對于用戶數據的傳遞起著重要的作用。
ping命令使用的就是ICMP協議
Nmap
Nmap在滲透測試中經常用到,它不僅可以用來確定目標網絡上計算機的存活狀態,而且可以掃描各個計算機的操作系統、開放端口、服務,還有可能獲得用戶的證書。熟練掌握Nmap的用法,可以極大的提高滲透測試技術。
命令結構
nmap -sS -T2 -p 1-500 192.168.1.1 -oN metscan.txt
nmap 命令后跟的是掃描類型,第一個參數sS代表隱蔽掃描,第二個參數T2是timing選項,設置了nmap掃描時的速度、流量;第三個參數-p設置了需要掃描的端口,后面的192.168.1.1是掃描目標,可以是ip地址,也可以設置為網段地址;掃描目標后跟著輸出選項,可以將掃描結果保存成文件,供測試人員分析。
實例應用識別系統、TCP掃描、SYN 掃描、ACK掃描、UDP 掃描… …
識別系統:
nmap -O -Pn URI (-Pn 禁用Nmap網絡發現功能,假定所有系統都是活動的)
圖中結果顯示為Windows操作系統
TCP掃描
端口掃描中最穩定的,利用的是TCP三次握手
TCP掃描通常用于收集有關目標的更多信息,但是會和目標主機建立一個完成的TCP連接。
nmap -sT -Pn URI
圖中結果顯示開放了telnet、http等服務
-sT TCP連接掃描(s=>哪種類型掃描? ==>t TCP類型)
SYN 掃描:
TCP兩次握手(隱藏掃描,速度快,nmap缺省參數)
nmap -sS -Pn URI
-sS (-s => 哪種掃描類型?S=> SYN)
ACK 掃描:
ACK掃描,用于確定TCP端口是否被防火墻過濾
nmap -sA -Pn URI
-sS (-s => 哪種掃描類型?A=> ACK)
UDP 掃描
DHCP,DNS,SNMP,TFTP等都使用了UDP協議
UDP掃描會評估目標系統上的UDP端口,可以確認UDP端口是開放還是被防火墻過濾。
nmap -sU URI
U=> UDP, V=>版本信息 (-sV UDP掃描中添加版本掃描信息)
不存在-PN參數(從UDP協議去理解,你發了就ok管他收沒收到)
Timing模板
timing參數可以指定nmap掃描的速度。其中各個選項如下:
T0:paranoid 慢速網絡掃描,串行掃描,兩次掃描間隔5分鐘。掃描速度極慢。
T1:Sneky 慢速網絡掃描,串行掃描,兩次掃描間隔15秒,掃描速度較慢。
T2:Polite 中速網絡掃描,串行掃描,兩次掃描間隔400毫秒,掃描速度慢。
T3:Normal 中速網絡掃描,并行掃描,兩次掃描間隔0秒,掃描速度正常。
T4:Aggressive 快速網絡掃描,并行掃描,兩次掃描間隔0秒,掃描速度較快。
T5:Normal 快速網絡掃描,并行掃描,兩次掃描間隔0秒,掃描速度極快。
掃描端口 -p Port
nmap -sS -p PORT URI
**
nmap -sS -p 80,135,3380-3389 192.168.1.1
上圖掃描80、135、3380-3389端口,結果只有80端口開放
掃描IP段
nmap 192.168.1.1-255 #掃描192.168.1.1-192.168.1.255所有IP
nmap 192.168.1.1/24 #掃描192.168.1.1-192.168.1.255所有IP
nmap -iL IPL.txt #掃描IPL.txt中保存的所有IP
輸出保存選項
-oN 保存為文本文件
-oX 保存為XML文件
-oG 保存為GREPable輸出
-oS 腳本輸出
nmap -oN metscan.txt 192.168.154.134 #將掃描結果保存到metscan.txt文件。
hping3
hping3是一款面向TCP/IP協議的免費的數據包生成和分析工具。Hping是用于對防火墻和網絡執行安全審計和測試的事實上的工具之一。hping3可使用Tcl語言編寫腳本,實施了一個引擎,可用于對TCP/IP數據包進行基于字符串、人可讀的描述等。
命令結構
hping3 -c 1000 -d 120 -S -w 64 -p 80 —flood —rand-source www.hdu.edu.cn
-c 1000 發送的數據包的數量。
-d 120 發送到目標機器的每個數據包的大小。
-S 只發送SYN數據包。
-w 64 TCP窗口大小。
-p 80 目的地端口。
–flood 盡可能快地發送數據包,不需要考慮顯示入站回復。洪水攻擊模式。
–rand-source 使用隨機性的源頭IP地址。還可以使用-a或–spoof來隱藏主機名。
www.hdu.edu.cn 目的地IP地址或目標機器的IP地址。
實例應用:SYN泛洪攻擊(DOS)
Nessus
Nessus 是目前全世界最多人使用的系統漏洞掃描與分析軟件 Nessus是安全漏洞自動收集工具,它可同時遠程或者在主機上進行檢測,掃描各種開放端口的服務器漏洞,是一款綜合性漏洞檢測工具。
由于Kali中沒有自帶Nessus,因此我們需要安裝。但是Nessus在Linux下的安裝比較復雜,因此我們選擇在Windows下安裝并且使用Nessus。
由于專業版的Nessus需要收費,所以我們選擇了家庭版。提出申請夠,Nessus會給你一個家庭版的序列號,輸入后就開始下載。
下載完成后,通過用戶名密碼進入nessus。然后添加一個漏洞診斷對象。
點擊start按鈕,開始漏洞診斷。
查看漏洞診斷結果。
導出報告:掃描完成后可以在在Export中將診斷結果導出為報告。其格式可以為Nessus、pdf、html、CSV、nessus DB。
whatweb
WhatWeb是一款網站指紋識別工具,主要針對的問題是:“這個網站使用的什么技術?”WhatWeb可以告訴你網站搭建使用的程序,包括何種CMS系統、什么博客系統、Javascript庫、web服務器、內嵌設備等。WhatWeb有超過900個插件,并且可以識別版本號、email地址、賬號、web框架、SQL錯誤等等。
簡單用法:whatweb URI
例如 whatweb www.sysorem.xyz
從返回的結果可以看到該網站Web服務器軟件為Apache 2.2.15,地區為US,郵箱為master@sysorem.xyz,支持Html5,服務器操作系統為Red Hat Linux,IP地址為52.91.79.239,網站也使用了Jquery庫,網站是基于Wordpress 4.5.3
DirBuster
DirButer是一個多線程的基于Java的應用程序設計蠻力Web/應用服務器上的模糊測試工具,主要用于掃描目錄和文件名。
運行在CLI
?
dirbuster -H -u https://www.target.com/ -l 字典文件
?
使用Gui
?
dirbuster -u https://www.target.com/
?
?
例如:
DirButer掃出的一些目錄和文件名。
joomscan
Joomla Security Scanner的特點
1.確切的版本探測(可以探測出使用的Joomla整站程序的版本)
2.常見的Joomla!基于web應用程序防火墻探測。
3.搜索已知的Joomla安全漏洞和它的組件。
4.文本和HTML格式的檢測報告.
5.立即的軟件更新能力
先隨便找個基于Joomla的網站,例如http://37.60.253.96/
?
joomscan -u http://37.60.253.96/
?
?
掃描結果,一堆漏洞及exp
wpscan
WPScan是一款針對wwordpress的安全掃描軟件;WPScan可以掃描出wordpress的版本,主題,插件,后臺用戶以及爆破后臺用戶密碼等。
簡單命令
wpscan —url URI —enumerate p #掃描插件
wpscan —url URI —enumerate u #掃描后臺用戶
通過用戶名爆破密碼
wpscan —url URI—wordlist DIC.lst —username USER?
例如執行 wpscan —url www.sysorem.xyz —enumerate u
參考文獻
https://github.com/sysorem/Kali-Linux-Pentest-Basic
*本文原創作者:sysorem,轉載須注明來自FreeBuf.COM