談論對滲透測試人員有用的工具。 在新文章中,我們將介紹用於分析 Web 應用程式安全性的工具。
我們的同事 我已經做過這樣的事情 大約七年前。 有趣的是,看看哪些工具保留並加強了它們的地位,哪些工具已經淡出背景並且現在很少使用。

請注意,這也包括 Burp Suite,但將有一個關於它及其有用插件的單獨出版物。
內容:
積累
- 用於搜尋和列舉 DNS 子網域以及映射外部網路的 Go 工具。 Amass 是一個 OWASP 項目,旨在向外人展示網路上的組織是什麼樣子。 Amass 透過多種方式取得子網域;該工具同時使用子網域的遞歸枚舉和開源搜尋。
為了發現互連的網段和自治系統編號,Amass 使用在操作期間獲得的 IP 位址。 找到的所有資訊都用於建立網路地圖。
優點:
- 資訊收集技術包括:
* DNS - 子網域的字典搜尋、暴力子網域、使用基於找到的子網域的突變的智慧搜尋、反向 DNS 查詢以及搜尋可以發出區域傳輸請求 (AXFR) 的 DNS 伺服器;* 開源搜尋 - Ask、百度、Bing、CommonCrawl、DNSDB、DNSDumpster、DNSTable、Dogpile、Exalead、FindSubdomains、Google、IPv4Info、Netcraft、PTRArchive、Riddler、SiteDossier、ThreatCrowd、Netcraft、PTRArchive、Riddler、SiteDossier、ThreatTorowd、VirusTo
* 搜尋 TLS 憑證資料庫 - Censys、CertDB、CertSpotter、Crtsh、Entrust;
* 使用搜尋引擎 API - BinaryEdge、BufferOver、CIRCL、HackerTarget、PassiveTotal、Robtex、SecurityTrails、Shodan、Twitter、Umbrella、URLScan;
* 搜尋網路網路檔案:ArchiveIt、ArchiveToday、Arquivo、LoCArchive、OpenUKArchive、UKGovArchive、Wayback;
- 與 Maltego 整合;
- 提供最完整的 DNS 子網域搜尋任務覆蓋。
缺點:
- 請小心 amass.netdomains - 它將嘗試聯絡已識別基礎架構中的每個 IP 位址,並從反向 DNS 查找和 TLS 憑證中取得網域名稱。 這是一種「高調」的技術,它可以揭露你在被調查組織中的情報活動。
- 高記憶體消耗,在不同的設定下可能會消耗高達 2 GB 的 RAM,這將不允許您在廉價的 VDS 上在雲端中運行此工具。

Altdns
— 用於編譯枚舉 DNS 子網域的字典的 Python 工具。 允許您使用突變和排列生成子域的許多變體。 為此,使用子域中經常出現的單字(例如:test、dev、staging),所有突變和排列都應用於已知的子域,這些子域可以提交到 Altdns 輸入。 輸出是可能存在的子網域變體的列表,該列表稍後可用於 DNS 暴力破解。
優點:
- 適用於大型資料集。
水生的
- 以前作為另一種搜尋子網域的工具而廣為人知,但作者本人放棄了它,轉而使用前面提到的 Amass。 現在aquatone已經用Go重寫了,更適合網站的初步偵察。 為此,aquatone 會遍歷指定的網域並搜尋不同連接埠上的網站,然後收集有關該網站的所有資訊並進行螢幕截圖。 方便快速對網站進行初步偵察,然後選擇優先攻擊目標。
優點:
- 輸出建立一組文件和資料夾,在進一步使用其他工具時可以方便使用:
* HTML 報告,其中包含收集的螢幕截圖和按相似性分組的回應標題;* 包含找到網站的所有 URL 的文件;
* 包含統計資料和頁面資料的文件;
* 一個資料夾,其中包含包含已找到目標的回應標頭的檔案;
* 一個資料夾,其中包含包含已找到目標的回應正文的檔案;
* 找到的網站截圖;
- 支援使用 Nmap 和 Masscan 的 XML 報告;
- 使用無頭 Chrome/Chromium 渲染螢幕截圖。
缺點:
- 它可能會引起入侵偵測系統的注意,因此需要進行配置。
截圖是aquatone的舊版(v0.5.0)之一,其中實作了DNS子網域搜尋。 舊版可以在以下位置找到 .

域名解析
是另一個尋找 DNS 子網域的工具。 它的主要區別在於它直接向許多不同的 DNS 解析器進行 DNS 查詢,而且速度相當快。
優點:
- 快速 - 每秒能夠解析超過 350 萬個名稱。
缺點:
- MassDNS 可能會對正在使用的 DNS 解析器造成巨大負載,這可能會導致這些伺服器被禁止或向您的 ISP 投訴。 此外,如果公司擁有 DNS 伺服器並且它們負責您嘗試解析的網域,那麼這會為公司的 DNS 伺服器帶來很大的負載。
- 解析器清單目前已過時,但如果您選擇損壞的 DNS 解析器並添加新的已知解析器,一切都會好起來的。

aquatone v0.5.0 截圖
奈秒3圖
是一個用於取得受 DNSSEC 保護的網域的完整清單的 Python 工具。
優點:
- 如果在區域中啟用了 DNSSEC 支持,則可以用最少的查詢次數快速發現 DNS 區域中的主機;
- 包括 John the Ripper 的插件,可用於破解產生的 NSEC3 雜湊值。
缺點:
- 許多 DNS 錯誤沒有被正確處理;
- 處理 NSEC 記錄沒有自動並行化 - 您必須手動劃分命名空間;
- 高記憶體消耗。
的Acunetix
— 一種 Web 漏洞掃描程序,可自動檢查 Web 應用程式的安全性。 測試應用程式是否有 SQL 注入、XSS、XXE、SSRF 和許多其他 Web 漏洞。 然而,與其他掃描程序一樣,各種 Web 漏洞並不能取代滲透測試程序,因為它無法發現複雜的漏洞鍊或邏輯漏洞。 但它涵蓋了許多不同的漏洞,包括各種 CVE,而滲透測試人員可能已經忘記了這些漏洞,因此非常方便地將您從例行檢查中解放出來。
優點:
- 誤報率低;
- 結果可以匯出為報告;
- 對各種漏洞進行大量檢查;
- 並行掃描多個主機。
缺點:
- 沒有重複資料刪除演算法(Acunetix 會將功能相同的頁面視為不同的頁面,因為它們會導致不同的 URL),但開發人員正在研究它;
- 需要安裝在單獨的 Web 伺服器上,這使得使用 VPN 連線測試用戶端系統以及在本機用戶端網路的隔離網段中使用掃描器變得複雜;
- 正在研究的服務可能會產生噪音,例如,透過向網站上的聯絡表單發送過多的攻擊向量,從而使業務流程大大複雜化;
- 它是一個專有的解決方案,因此不是免費的解決方案。

目錄搜索
— 一個用於暴力破解網站上的目錄和檔案的 Python 工具。
優點:
- 能夠區分真正的「200 OK」頁面和「200 OK」頁面,但帶有文字「找不到頁面」;
- 附帶一本方便的字典,在大小和搜尋效率之間取得了良好的平衡。 包含許多 CMS 和技術堆疊通用的標準路徑;
- 自帶的字典格式,可以讓你在枚舉檔案和目錄時獲得良好的效率和靈活性;
- 方便的輸出-純文字、JSON;
- 它可以進行限制——請求之間的暫停,這對於任何弱服務來說都是至關重要的。
缺點:
- 擴展名必須作為字串傳遞,如果您需要一次傳遞多個擴展名,這會很不方便;
- 為了使用您的字典,需要將其稍微修改為 Dirsearch 字典格式以獲得最大效率。

模糊
- Python Web 應用程式模糊器。 可能是最著名的網路移相器之一。 原理很簡單:wfuzz 允許您對 HTTP 請求中的任何位置進行階段化,這使得可以將 GET/POST 參數、HTTP 標頭(包括 Cookie 和其他驗證標頭)進行階段化。 同時也方便對目錄和檔案進行簡單的暴力破解,為此你需要一本好的字典。 它還具有靈活的過濾系統,您可以根據不同的參數過濾來自網站的回應,從而使您獲得有效的結果。
優點:
- 多功能-模組化結構,組裝僅需幾分鐘;
- 方便的過濾和模糊機制;
- 您可以對任何 HTTP 方法以及 HTTP 請求中的任何位置進行分段。
缺點:
- 正在開發中。

唷
— Go 中的Web 模糊器,以wfuzz 的「形象和相似性」創建,允許您暴力破解檔案、目錄、URL 路徑、GET/POST 參數的名稱和值、HTTP 標頭,包括用於暴力破解的Host標頭虛擬主機。 wfuzz 與它的兄弟的不同之處在於更高的速度和一些新功能,例如,它支援 Dirsearch 格式的字典。
優點:
- 過濾器與wfuzz過濾器類似,它們允許您靈活配置暴力破解;
- 讓您模糊 HTTP 標頭值、POST 請求資料和 URL 的各個部分,包括 GET 參數的名稱和值;
- 您可以指定任何 HTTP 方法。
缺點:
- 正在開發中。

戈巴斯特
- 一個用於探索的Go工具,有兩種操作模式。 第一個用於暴力破解網站上的檔案和目錄,第二個用於暴力破解 DNS 子網域。 該工具最初不支援檔案和目錄的遞歸枚舉,當然可以節省時間,但另一方面,網站上每個新端點的強力必須單獨啟動。
優點:
- 對於 DNS 子網域的強力搜索以及檔案和目錄的強力搜索,操作速度很高。
缺點:
- 目前版本不支援設定HTTP headers;
- 預設情況下,只有部分 HTTP 狀態碼 (200,204,301,302,307) 被視為有效。

阿瓊
- 用於暴力破解 GET/POST 參數以及 JSON 中隱藏 HTTP 參數的工具。 內建字典有 25 個單詞,Ajrun 在近 980 秒內檢查完畢。 訣竅在於 Ajrun 不會單獨檢查每個參數,而是一次檢查約 30 個參數並查看答案是否有變化。 如果答案發生了變化,它會將這 1000 個參數分成兩部分,並檢查哪一部分會影響答案。 因此,使用簡單的二分搜索,可以找到影響答案的一個或多個隱藏參數,因此可能存在。
優點:
- 由於二分查找而速度快;
- 支援GET/POST參數,以及JSON形式的參數;
Burp Suite 外掛程式的工作原理類似 - ,它也非常擅長尋找隱藏的 HTTP 參數。 我們將在即將發布的有關 Burp 及其外掛程式的文章中向您介紹更多相關資訊。

連結查找器
— 用於搜尋 JavaScript 檔案中的連結的 Python 腳本。 對於在 Web 應用程式中尋找隱藏或遺忘的端點/URL 很有用。
優點:
- 快速地;
- Chrome 有一個基於 LinkFinder 的特殊插件。
.
缺點:
- 不方便得出最終結論;
- 不隨時間分析 JavaScript;
- 搜尋連結的邏輯非常簡單 - 如果 JavaScript 被某種方式混淆,或者連結最初丟失並動態生成,那麼它將無法找到任何內容。

JS解析器
是一個Python腳本,使用 и 從 JavaScript 檔案解析相對 URL。 對於檢測 AJAX 請求和編譯與應用程式互動的 API 方法清單非常有用。 與 LinkFinder 結合使用可以有效地運作。
優點:
- 快速解析 JavaScript 檔案。

SqlMap的
可能是最著名的 Web 應用程式分析工具之一。 Sqlmap 會自動執行 SQL 注入的搜尋和操作,支援多種 SQL 方言,並且擁有大量不同的技術,從直接引用到用於基於時間的 SQL 注入的複雜向量。 此外,它還具有許多針對各種 DBMS 進行進一步利用的技術,因此它不僅可以用作 SQL 注入掃描器,而且還可以作為利用已發現的 SQL 注入的強大工具。
優點:
- 大量不同的技術和載體;
- 誤報率低;
- 大量的微調選項、各種技術、目標資料庫、繞過WAF的篡改腳本;
- 能夠創建輸出轉儲;
- 許多不同的操作能力,例如對於某些資料庫-自動載入/卸載檔案、取得執行命令的能力(RCE)等;
- 支援使用攻擊過程中取得的資料直接連接資料庫;
- 您可以提交一個文字文件,其中 Burp 結果作為輸入 - 無需手動編寫所有命令列屬性。
缺點:
- 由於文檔稀缺,很難進行定制,例如編寫自己的一些檢查;
- 如果沒有適當的設置,它會執行一組不完整的檢查,這可能會產生誤導。

NoSQL映射
— 一個用於自動搜尋和利用 NoSQL 注入的 Python 工具。 它不僅可以方便地在NoSQL資料庫中使用,而且在審計使用NoSQL的Web應用程式時也可以直接使用。
優點:
- 與 sqlmap 一樣,它不僅發現潛在的漏洞,還檢查其對 MongoDB 和 CouchDB 的利用可能性。
缺點:
- Redis、Cassandra不支援NoSQL,正在朝這個方向開發。
oxml_xxe
— 將 XXE XML 漏洞嵌入到以某種形式使用 XML 格式的各種類型檔案中的工具。
優點:
- 支援多種常見格式,如 DOCX、ODT、SVG、XML。
缺點:
- 對 PDF、JPEG、GIF 的支援尚未完全實現;
- 僅建立一個文件。 為了解決這個問題,你可以使用該工具 ,它可以在不同的地方創建大量的有效負載檔案。
當載入包含 XML 的文檔時,上述實用程式在測試 XXE 方面做得很好。 但也要記住,XML 格式處理程序可以在許多其他情況下找到,例如,XML 可以取代 JSON 用作資料格式。
因此,我們建議您關注以下儲存庫,其中包含大量不同的有效負載: .
tpl映射
- 一個用於自動識別和利用伺服器端模板注入漏洞的Python工具;它具有類似sqlmap的設定和標誌。 使用多種不同的技術和向量,包括盲注入,並且還具有執行程式碼和載入/上傳任意檔案的技術。 此外,他還擁有十幾種不同模板引擎的技術,以及一些在 Python、Ruby、PHP、JavaScript 中搜尋類似 eval() 的程式碼注入的技術。 如果成功,它將打開一個互動式控制台。
優點:
- 大量不同的技術和載體;
- 支援多種模板渲染引擎;
- 操作技巧很多。
西華
- Ruby 中的字典生成器,創建用於從指定網站提取唯一單詞,追蹤網站上的連結到指定深度。 編譯後的唯一單字字典稍後可用於暴力破解服務上的密碼或暴力破解同一網站上的檔案和目錄,或使用 hashcat 或 John the Ripper 攻擊產生的雜湊值。 在編譯潛在密碼的「目標」清單時很有用。
優點:
- 便於使用。
缺點:
- 您需要小心搜尋深度,以免捕捉額外的網域。
弱通行證
- 包含許多具有唯一密碼的字典的服務。 對於與密碼破解相關的各種任務非常有用,從目標服務上帳戶的簡單線上暴力破解,到使用接收到的雜湊值的離線暴力破解 或 。 它包含大約 8 億個密碼,長度從 4 到 25 個字元不等。
優點:
- 包含特定字典和最常用密碼字典-您可以根據自己的需求選擇特定字典;
- 字典更新並補充新密碼;
- 字典依效率排序。 您可以選擇快速線上暴力破解和從最新洩露的大量字典中詳細選擇密碼的選項;
- 有一個計算器可以顯示在您的裝置上破解密碼所需的時間。

我們希望將 CMS 檢查工具納入一個單獨的群組:WPScan、JoomScan 和 AEM hacker。
AEM_駭客
是一種用於識別 Adobe Experience Manager (AEM) 應用程式中的漏洞的工具。
優點:
- 可以從提交給其輸入的 URL 清單中識別 AEM 應用程式;
- 包含透過載入 JSP shell 或利用 SSRF 來取得 RCE 的腳本。
Joom掃描
— 一個用於在部署過程中自動偵測漏洞的 Perl 工具 Joomla CMS。
優點:
- 能夠發現配置缺陷和管理設定問題;
- 列出版本 Joomla 以及相關的漏洞,各個組件的漏洞也類似;
- 包含超過 1000 個組件漏洞程序 Joomla;
- 以文字和 HTML 格式輸出最終報告。

WPScan
— 一款用於掃描網站的工具 WordPress其武器庫中存在漏洞,包括引擎本身的漏洞。 WordPress以及一些插件。
優點:
- 不僅能夠列出不安全的項目,還能列出其他項目。 WordPress-外掛程式和主題,但也會收到使用者清單和 TimThumb 檔案;
- 可以對……進行暴力破解攻擊 WordPress-站點。
缺點:
- 如果沒有適當的設置,它會執行一組不完整的檢查,這可能會產生誤導。

一般來說,不同的人喜歡不同的工作工具:它們各有各的優點,一個人喜歡的東西可能根本不適合另一個人。 如果您認為我們不公平地忽略了一些好的實用程序,請在評論中寫下來!
來源: www.habr.com
