e起學丨WEB安全滲透測試基礎知識(四)

你值得收藏的技術乾貨:WEB安全滲透測試基礎知識再啟航!今天e小安和小夥伴們繼續來學習WEB安全滲透測試的基礎知識第四部分。

2.2 站點信息

● 判斷網站操作系統

Linux大小寫敏感

Windows大小寫不敏感

● 描敏感文件

robots.txt

crossdomain.xml

sitemap.xml

xx.tar.gz

xx.bak

● 確定網站採用的語言

如PHP / Java / Python等

找後綴,比如php/asp/jsp

● 前端框架

如jQuery / BootStrap / Vue / React / Angular等

查看源代碼

● 中間服務器

如 Apache / Nginx / IIS 等

查看header中的信息

根據報錯信息判斷

根據默認頁面判斷

● Web容器服務器

如Tomcat / Jboss / Weblogic等

● 後端框架

根據Cookie判斷

根據CSS / 圖片等資源的hash值判斷

根據URL路由判斷(如wp-admin)

根據網頁中的關鍵字判斷

根據響應頭中的X-Powered-By

● CDN信息

常見的有Cloudflare、yunjiasu

● 探測有沒有WAF,如果有,什麼類型的

有WAF,找繞過方式

沒有,進入下一步

● 掃描敏感目錄,看是否存在信息洩漏

掃描之前先自己嘗試幾個的url,人為看看反應

● 使用爬蟲爬取網站信息

● 拿到一定信息後,通過拿到的目錄名稱,文件名稱及文件擴展名瞭解網站開發人員的命名思路,確定其命名規則,推測出更多的目錄及文件名

2.3 端口信息

2.3.1. 常見端口及其脆弱點

● FTP 21

默認用戶名密碼 anonymous:anonymous

暴力破解密碼

VSFTP某版本後門

● SSH 22

暴力破解密碼

● Telent 23

暴力破解密碼

● SMTP 25

無認證時可偽造發件人

● DNS 53 UDP

測試域傳送漏洞

SPF / DMARC Check

DDoS(DNS Query Flood / DNS 反彈)

● SMB 137/139/445

弱口令

● SNMP 161

Public 弱口令

● LDAP 389

匿名訪問

注入

● Rsync 873

任意文件讀寫

● RPC 1025

NFS匿名訪問

● MSSQL 1433

弱密碼

● Java RMI 1099

RCE

● Oracle 1521

弱密碼

● NFS 2049

權限設置不當

● ZooKeeper 2181

無身份認證

● MySQL 3306

弱密碼

● RDP 3389

弱密碼

● Postgres 5432

弱密碼

● CouchDB 5984

● Redis 6379

無密碼或弱密碼

● Elasticsearch 9200

代碼執行

● Memcached 11211

● MongoDB 27017

無密碼或弱密碼

● Hadoop 50070

除了以上列出的可能出現的問題,暴露在公網上的服務若不是最新版,都可能存在已經公開的漏洞。

2.3.2. 常見端口掃描方式

2.3.2.1. 全掃描

掃描主機嘗試使用三次握手與目標主機的某個端口建立正規的連接,若成功建立連接,則端口處於開放狀態,反之處於關閉狀態。 全掃描實現簡單,且以較低的權限就可以進行該操作。但是在流量日誌中會有大量明顯的記錄。

2.3.2.2. 半掃描

在半掃描中,僅發送SYN數據段,如果應答為RST,則端口處於關閉狀態,若應答為SYN/ACK,則端口處於監聽狀態。不過這種方式需要較高的權限,而且部分防火牆已經開始對這種掃描方式做處理。

2.3.2.3. FIN掃描

FIN掃描是向目標發送一個FIN數據包,如果是開放的端口,會返回RST數據包,關閉的端口則不會返回數據包,可以通過這種方式來判斷端口是否打開。 這種方式並不在TCP三次握手的狀態中,所以不會被記錄,相對SYN掃描要更隱蔽一些。

2.3.3. Web服務

● Jenkins

● Gitlab

對應版本CVE

● Zabbix

權限設置不當

2.3.4. 批量搜索

● Censys

● Shodan

● ZoomEye

2.4 搜索信息收集

2.4.1. 搜索引擎利用

恰當地使用搜索引擎(Google/Bing/Yahoo/Baidu等)可以獲取目標站點的較多信息。

常見的搜索技巧有:

● site:www.agesec.com

返回此目標站點被搜索引擎抓取收錄的所有內容。

● site:www.agesec.com keyword

返回此目標站點被搜索引擎抓取收錄的包含此關鍵詞的所有頁面。

此處可以將關鍵詞設定為網站後臺,管理後臺,密碼修改,密碼找回等。

● site:www.ageec.com inurl:admin.php

返回目標站點的地址中包含admin.php的所有頁面,可以使用admin.php/manage.php或者其他關鍵詞來尋找關鍵功能頁面。

● link:www.agesec.com

返回所有包含目標站點鏈接的頁面,其中包括其開發人員的個人博客,開發日誌,或者開放這個站點的第三方公司,合作伙伴等。

● related:www.agesec.com

返回所有與目標站點”相似”的頁面,可能會包含一些通用程序的信息等。

● intitle:”500 Internal Server Error” “server at”

搜索出錯的頁面。

● inurl:”nph-proxy.cgi” “Start browsing”

查找代理服務器。

除了以上的關鍵字,還有allintile、allinurl、allintext、inanchor、cache等。

還有一些其他的tips

● 查詢不區分大小寫

● * 代表某一個單詞

● 默認用and

● OR 或者 | 代表邏輯或

● 單詞前跟+表強制查詢

● 引號引起來可以防止常見詞被忽略

● 括號會被忽略

搜索引擎的快照中也常包含一些關鍵信息,如程序報錯信息可以會洩漏網站具體路徑,或者一些快照中會保存一些測試用的測試信息,比如說某個網站在開發了後臺功能模塊的時候,還沒給所有頁面增加權限鑑別,此時被搜索引擎抓取了快照,即使後來網站增加了權限鑑別,但搜索引擎的快照中仍會保留這些信息。

另外也有專門的站點快照提供快照功能,如 Wayback Machine 和 Archive.org 等。

2.5 目標人員信息收集

針對人員的信息收集考慮對目標重要人員、組織架構、社會關係的收集和分析。其中重要人員主要指高管、系統管理員、運維、財務、人事、業務人員的個人電腦。

最容易的入口點是網站,網站中可能包含網站的開發、管理維護等人員的信息。從網站聯繫功能中和代碼的註釋信息中都可能得到的所有開發及維護人員的姓名和郵件地址及其他聯繫方式。

在獲取這些信息後,可以在Github/Linkedin等網站中進一步查找這些人在互聯網上發佈的與目標站點有關的一切信息,分析並發現有用的信息。

此外,可以對獲取到的郵箱進行密碼爆破的操作,獲取對應的密碼。

本文內容出於傳遞更多信息之目的,屬於非營利性的轉載。如無意中侵犯了某個媒體或個人的知識產權,請聯繫我們,我們將立即刪除相關內容。其他媒體、網絡或個人從本網下載使用須自負版權等法律責任。


分享到:


相關文章: