【技巧总结】Penetration Test Engineer[2]-Information gathering
2、信息收集
信息收集是屬于前期交互階段所需要了解的問題。
2.1、前期交互內(nèi)容
- 簽署授權(quán)文件:首要要和受測試方簽訂授權(quán)協(xié)議。
劃定范圍:指定了一個二級域名作為測試目標,那么其他二級域名在測試范圍內(nèi)。如果測試目標是在其他服務廠商,或者服務器上有其他額外的測試目標是否劃入范圍內(nèi)。
情報搜集:開放渠道情報、網(wǎng)絡踩點、識別目標防護機制(管理、網(wǎng)絡、主機、應用)。
2.2、開放渠道情報
- 數(shù)據(jù)來源:搜索引擎提供的開放情報、社交網(wǎng)站、地方性門戶、電子郵件服務提供商
- 關(guān)注點:企業(yè)情報、個人情報
2.3、網(wǎng)絡踩點
- 創(chuàng)建目標列表:存活主機/版本信息/識別補丁級別/搜索脆弱的Web應用/確定封禁閾值/出錯信息/可以攻擊的脆弱端口/過時系統(tǒng)/虛擬化平臺和虛擬機/存儲基礎設施
- 深度挖掘目標細節(jié):端口掃描/SNMP探查/區(qū)域傳送/SMTP反彈攻擊/解析DNS與遞歸DNS服務器
2.4、踩點工具與方式
- whois:查詢域名注冊信息庫、服務商、管理員郵箱地址、域名注冊日期和過期日期
- nslookup:查詢DNS解析信息
- GEOIP:根據(jù)IP定位經(jīng)緯度,通過Google地圖獲取位置信息。
- Netcraft:查詢DNS與IP信息分析,可以獲取子站點、地理位置、DNS服務器地址、操作系統(tǒng)類型、服務器運行狀況。
- IP反查:通過IP地址可以反查指向同一IP的DNS信息(旁站攻擊)。www.ip-adress.com/reverse_ip/、http://s.tool.chinaz.com/same
- Google:GHDB(GoogleHackingDatabase)http://www.exploit-db.com/google-dorks/
- 列目錄查找:Google搜索【intitle:parent directory】
- 查找敏感文件:Google搜索【Site:testfire.net filetype:xls】
- 登錄頁面:Google搜索【site:test.com login】
- 網(wǎng)絡空間搜索引擎:fofa.so、ZoomEye、netcraft等
- ping:測試主機是否活躍
- nmap:端口掃描工具
2.5、漏洞掃描工具
- 主機漏洞掃描器:Nessus、OpenVAS、Nexpose、nmap
- 應用漏洞掃描器:AppScan、Burpsuite、AcunetixAWVS、W3AF
- nmap腳本:nmap -p 445 --script smb-vuln-ms17-010 10.10.10.1/24
2.6、信息收集關(guān)注的常見端口(服務)
- WEB 80
- MSSQL 1433
- MySQL 3306
- Oracle 1521
- Microsoft SMB 445
- VNC 5900,5901
- Remote Desktop 3389
2.7 口令生成器
- cupp
2.8 常用工具用法
1)NMAP
nmap在kail中已經(jīng)安裝好了,直接調(diào)用就可以。
- 默認掃描
- 網(wǎng)段掃描
- 掃描多個目標
- 詳細描述輸出掃描
加上-v參數(shù)進行詳細的掃描日志輸出
nmap -v 172.18.0.0/24- 指定端口掃描
使用-p 端口可以進行指導的端口掃描。
nmap -p 80,22 172.18.0.0/24掃描端口的時候還可以指定端口的范圍進行掃描:
掃描同網(wǎng)段中開啟20-100端口范圍的的ip
- 從文件中讀取ip掃描
- 設置黑名單掃描ip
nmap可以設置黑名單掃描,不掃描敏感的ip,使用-exclude參數(shù),進行單個ip的排除掃描
nmap 172.18.0.0/24 -exclude 172.18.0.1- sP Ping掃描
使用-sP參數(shù),對內(nèi)網(wǎng)主機進行探測發(fā)現(xiàn)
nmap -sP 172.18.0.0/24- PN 不進行Ping掃描
使用-PN參數(shù),對內(nèi)網(wǎng)進行No Ping掃描,PN No Ping 掃描,常用來繞過防火墻的檢測。
- sS 半開放式掃描
使用-sS參數(shù),對內(nèi)網(wǎng)進行半開放式掃描。
若端口掃描沒有完成一個完整的TCP連接,在掃描主機和目標主機的一指定端口建立連接時候只完成了前兩次握手,在第三步時,掃描主機中斷了本次連接,使連接沒有完全建立起來,這樣的端口掃描稱為半連接掃描,也稱為間接掃描?,F(xiàn)有的半連接掃描有TCPSYN掃描和IP ID頭dumb掃描等。
- sT TCP掃描
使用-sT參數(shù),對內(nèi)網(wǎng)進行TCP掃描
- sU UDP掃描
使用-sU參數(shù),對目標靶機進行UDP掃描:
nmap -sU 172.18.0.16因為一般情況下這個-sU掃描是測試某個單獨的UDP端口是否正常通訊,所以一般-sU常與-P指定端口掃描參數(shù)配合使用:
nmap -sU -p 22,80 172.18.0.16- sF FIN標志的數(shù)據(jù)包掃描
使用-sF參數(shù),對內(nèi)網(wǎng)進行FIN標志的數(shù)據(jù)包掃描,探測防火墻的狀態(tài),收到RST回復說明該端口關(guān)閉,否則說明是open或filtered狀態(tài)。
nmap -sF 172.18.0.16- sV Version版本檢測掃描
- O OS操作系統(tǒng)類型的探測
這里還可以使用--osscan-guess參數(shù)來猜測匹配的操作系統(tǒng)
nmap -O --osscan-guess 172.18.0.16- traceroute 路由跟蹤掃描
如果對外圍的目標進行掃描的話,效果要好一點。
nmap -traceroute 172.18.0.2- A 綜合掃描
- 常見混合參數(shù)
探測同網(wǎng)段開著80端口的ip,并進行系統(tǒng)猜測掃描,并將過程-v詳細輸出。
nmap -v -p 80 -O --osscan-guess 172.18.0.0/24對內(nèi)網(wǎng)同網(wǎng)段的主機進行批量收集,只收集開了80和22端口的ip
nmap -sS -p 22,80 172.18.0.0/24FIN掃描出內(nèi)網(wǎng)中網(wǎng)段中開啟MySQL數(shù)據(jù)庫的所有主機
nmap -sF -p3306 172.18.0.0/24- oN 標準輸出
將標準輸出直接寫入指定的文件,對目標靶機的掃描結(jié)果以標準的形式導出為result.txt。
nmap -oN result.txt 172.18.0.3- oX XML輸出
XML提供了可供軟件解析的穩(wěn)定格式輸出.
nmap -oX result.xml 172.18.0.3- oS ScRipT KIdd|3 oUTpuT
腳本小子輸出類似于交互工具輸出,這是一個事后處理,適合于 'l33t HaXXorZ, 由于原來全都是大寫的Nmap輸出。這個選項和腳本小子開了玩笑,看上去似乎是為了 “幫助他們”。
nmap -oS result.xml 172.18.0.3- oG Grep輸出
Grep輸出是一種簡單格式,每行一個主機,可以 通過UNIX工具(如grep、awk、cut、sed、diff)和Perl方便地查找和分解。
nmap -oG result.txt 172.18.0.3- oA 輸出至所有格式
利用-oA選項 可將掃描結(jié)果以標準格式、XML格式和Grep格式一次性輸出。分別存放在 .nmap,.xml和 .gnmap文件中。
nmap -oA resut 172.18.0.3- NMAP設置時間參數(shù)模板
paranoid、sneaky 模式用于IDS躲避
Polite 模式降低了掃描 速度以使用更少的帶寬和目標主機資源。
Normal 為默認模式,因此-T3 實際上是未做任何優(yōu)化。
Aggressive 模式假設用戶具有合適及可靠的網(wǎng)絡從而加速掃描。
insane 模式假設用戶具有特別快的網(wǎng)絡或者愿意為獲得速度而犧牲準確性。
【-T0 paranodi】
用于躲避IDS進行掃描,耗時非常的長。
nmap -T0 172.18.0.3【-T1 sneaky】
用于躲避IDS進行掃描,耗時非常的長。
nmap -T1 172.18.0.3【-T2 polite】
降低了掃描速度以使用更少的帶寬和目標主機資源進行對目標靶機進行掃描
【-T3 normal】
默認模式,因此-T3 實際上是未做任何優(yōu)化的掃描目標靶機
【-T4 Aggressive】
假設用戶具有合適及可靠的網(wǎng)絡從而加速對目標靶機的掃描。
nmap -T4 172.18.0.3【-T5 insane】
假設用戶具有特別快的網(wǎng)絡或者愿意為獲得速度而犧牲準確性的對目標靶機進行掃描。
nmap -T5 172.18.0.3- NMAP調(diào)用腳本進行掃描
【nmap 腳本使用格式】
nmap具體的漏洞掃描腳本參考官方文檔 : https://nmap.org/nsedoc/
nmap --script='$類別/$具體的腳本'【腳本格式進階】
-sC 根據(jù)端口識別的服務,調(diào)用默認腳本 --script=”Lua scripts” 調(diào)用的腳本名 --script-args=n1=v1,[n2=v2] 調(diào)用的腳本傳遞的參數(shù) --script-args-file=filename 使用文本傳遞參數(shù) --script-trace 顯示所有發(fā)送和接收到的數(shù)據(jù) --script-updatedb 更新腳本的數(shù)據(jù)庫 --script-help=”Lua script” 顯示指定腳本的幫助嘗試對模板靶機進行-sC掃描,根據(jù)端口識別服務自動調(diào)用默認腳本。
nmap -sC 172.18.0.10【常用腳本掃描】
由于內(nèi)網(wǎng)靶機開啟的端口很少,服務也很少,腳本掃描沒有太多的用武之地。下面寫一些常見的調(diào)用腳本掃描以作了解使用。
對MySQL進行暴力破解
nmap --script=mysql-brute <target> 3306/tcp open mysql | mysql-brute: | Accounts | root:root - Valid credentials對MsSQL進行暴力破解
nmap -p 1433 --script ms-sql-brute --script-args userdb=customuser.txt,passdb=custompass.txt <host> | ms-sql-brute: | [192.168.100.128\TEST] | No credentials found | Warnings: | sa: AccountLockedOut | [192.168.100.128\PROD] | Credentials found: | webshop_reader:secret => Login Success | testuser:secret1234 => PasswordMustChange |_ lordvader:secret1234 => Login Success對Oracle數(shù)據(jù)庫進行暴力破解
nmap --script oracle-brute -p 1521 --script-args oracle-brute.sid=ORCL <host> PORT STATE SERVICE REASON 1521/tcp open oracle syn-ack | oracle-brute: | Accounts | system:powell => Account locked | haxxor:haxxor => Valid credentials | Statistics |_ Perfomed 157 guesses in 8 seconds, average tps: 19對PgSQL的暴力破解
nmap -p 5432 --script pgsql-brute <host> 5432/tcp open pgsql | pgsql-brute: | root:<empty> => Valid credentials |_ test:test => Valid credentials利用DNS進行子域名暴力破解
nmap --script dns-brute www.baidu.comStarting Nmap 7.50 ( https://nmap.org ) at 2017-07-25 13:12 ? Nmap scan report for www.baidu.com (180.97.33.108) Host is up (0.018s latency). Other addresses for www.baidu.com (not scanned): 180.97.33.10 Not shown: 998 filtered ports PORT STATE SERVICE 80/tcp open http 443/tcp open https Host script results: | dns-brute: | DNS Brute-force hostnames: | admin.baidu.com - 10.26.109.19 | mx.baidu.com - 61.135.163.61 | svn.baidu.com - 10.65.211.174 | ads.baidu.com - 10.42.4.225 ... ... Nmap done: 1 IP address (1 host up) scanned in 92.64 seconds查詢VMware服務器(vCenter,ESX,ESXi)SOAP API以提取版本信息。
nmap --script vmware-version -p443 10.0.1.4Starting Nmap 7.50 ( https://nmap.org ) at 2017-07-25 12:26 ?D1ú±ê×?ê±?? Nmap scan report for 10.0.1.4 Host is up (0.0019s latency).PORT STATE SERVICE 443/tcp open https | vmware-version: | Server version: VMware ESXi 6.5.0 | Build: 4887370 | Locale version: INTL 000 | OS type: vmnix-x86 |_ Product Line ID: embeddedEsx Service Info: CPE: cpe:/o:vmware:ESXi:6.5.0Nmap done: 1 IP address (1 host up) scanned in 6.28 seconds2)BurpSuite
Burp Suite是一個Web應用程序集成攻擊平臺,它包含了一系列burp工具,這些工具之間有大量接口可以互相通信,這樣設計的目的是為了促進和提高整個攻擊的效率。平臺中所有工具共享同一robust框架,以便統(tǒng)一處理HTTP請求,持久性,認證,上游代理,日志記錄,報警和可擴展性。 Burp Suite允許攻擊者結(jié)合手工和自動技術(shù)去枚舉、分析、攻擊Web應用程序。這些不同的burp工具通過協(xié)同工作,有效的分享信息,支持以某種工具中的信息為基礎供另一種工具使用的方式發(fā)起攻擊。
Proxy 提供一個直觀、友好的用戶界面,他的代理服務器包含非常詳細的攔截規(guī)則,并能準確分析HTTP 消息的結(jié)構(gòu)與內(nèi)容。
Spider 爬行蜘蛛工具,可以用來抓取目標網(wǎng)站,以顯示網(wǎng)站的內(nèi)容,基本結(jié)構(gòu),和其他功能。
Scanner Web 應用程序的安全漏洞進行自動發(fā)現(xiàn)工具。它被設計用于滲透測試,并密切與您現(xiàn)有的技術(shù)和方法,以適應執(zhí)行手動和半自動化的Web 應用程序滲透測試。
Repeater 可讓您手動重新發(fā)送單個HTTP 請求
Intruder 是burp 套件的優(yōu)勢,他提供一組特別有用的功能。它可以自動實施各種定制攻擊,包括資源枚舉、數(shù)據(jù)提取、模糊測試等常見漏洞等。在各種有效的掃描工具中,它能夠以最細化、最簡單的方式訪問它生產(chǎn)的請求與響應,允許組合利用個人智能與該工具的控制優(yōu)點。
Sequencer 對會話令牌,會話標識符或其他出于安全原因需要隨機產(chǎn)生的鍵值的可預測性進行分析。
Decoder 轉(zhuǎn)化成規(guī)范的形式編碼數(shù)據(jù),或轉(zhuǎn)化成各種形式編碼和散列的原始數(shù)據(jù)。它能夠智能識別多種編碼格式,使用啟發(fā)式技術(shù)。
Comparer 是一個簡單的工具,執(zhí)行比較數(shù)據(jù)之間的任何兩個項目(一個可視化的“差異”)。在攻擊一個Web 應用程序的情況下,這一要求通常會出現(xiàn)當你想快速識別兩個應用程序的響應之間的差異(例如,入侵者攻擊的過程中收到的兩種反應之間之間,或登錄失敗的反應使用有效的和無效的用戶名)之間,或兩個應用程序請求(例如,確定不同的行為引起不同的請求參數(shù))。
Burp Target 組件主要包含站點地圖、目標域2部分組成,他們幫助滲透測試人員更好地了解目標應用的整體狀況、當前的工作涉及哪些目標域、分析可能存在的攻擊面等信息。
3)SQLMAP
練習SQL注入可以使用sqli-labs。
- GET注入
- POST注入-自動獲取表單
- POST注入-從文件中加載HTTP請求
配置代理,使用BurpSuite抓取數(shù)據(jù)包,【Copy file】保存至桌面為xx.txt
GET /Less-1/?id=1 HTTP/1.1 Host: 172.18.0.10 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:55.0) Gecko/20100101 Firefox/55.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3 Accept-Encoding: gzip, deflate Connection: keep-alive Upgrade-Insecure-Requests: 1 Cache-Control: max-age=0使用-r文件中加載HTTP請求
sqlmap.py -r C:\Users\admin\Desktop\xx.txt- 繞過WAF
SQLMap下有一個名為tamper的目錄,里面為繞過waf的腳本,使用--tamper選項可以使用。
示例為:(寬字節(jié)注入)繞過,
sqlmap.py -u "http://172.18.0.2/Less-32/?id=1" --batch -v 3 --tamper "unmagicquotes.py"4)Metasploit
msfconsole進入界面,Metasploit的輔助模塊中提供了幾款實用的端口掃描器。在線手冊
https://www.offensive-security.com/metasploit-unleashed/
- 常用命令使用方法
- 主機掃描
Metasploit中提供了輔助模塊用于活躍主機的探測,這些模塊位于Metasploit源碼路徑的modules/auxiliary/scanner/discovery/目錄中,主要有以下幾個:
arp-sweep ipv6_multicast_ping ipv6_neighbonip ipv6_neighbor_router_advertisement udp_probe udp_sweep兩個常用模塊的說明如下:arp-sweep:使用ARP請求枚舉本地局域網(wǎng)絡中的所有活躍主機。 udp-sweep通過發(fā)送UDP數(shù)據(jù)包探查指定主機是否活躍,并發(fā)現(xiàn)主機上的UDP服務。在TCP/IP網(wǎng)絡環(huán)境中,一臺主機在發(fā)送數(shù)據(jù)幀前需要使用ARP(Address Resolution Protocol,地址解析協(xié)議)將目標地址轉(zhuǎn)換成MAC地址,這個轉(zhuǎn)換過程是通過發(fā)送一個ARP請求來完成的。如IP為A的主機發(fā)送一個ARP請求獲取IP為B的MAC地址,此時如果IP為B的主機存在,那么它會向A發(fā)出一個回應。因此,可以通過發(fā)送ARP請求的方式很容易地獲取同一子網(wǎng)上的活躍主機情況,這種技術(shù)也稱為ARP掃描。
- 口令嗅探爆破
msf中與嗅探相關(guān)的模塊可以通過sniffer搜索,
psnuffle 口令嗅探
>use auxiliary/sniffer/psnuffle >show options >runssh_login 口令爆破
>use auxiliary/scanner/ssh/ssh_login >set RHOSTS 172.18.0.6 >set THREADS 50 >set PASS_FILE /usr/share/wordlists/sqlmap.txt >set USERNAME root >run- Meterpreter
一個用于后滲透測試的輔助模塊,可以生成可執(zhí)行文件對目標主機進行一系列操作。
1、clearev命令:清除入侵痕跡 2、timestomp命令:改變文件的修改或訪問時間轉(zhuǎn)載于:https://www.cnblogs.com/17bdw/p/9723314.html
總結(jié)
以上是生活随笔為你收集整理的【技巧总结】Penetration Test Engineer[2]-Information gathering的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2018GDOI记
- 下一篇: python基础学习——函数和方法的区别