OneForAll 使用手冊

OneForAll 使用手冊

一、概述

OneForAll 是一款功能強大的子域名收集工具,旨在幫助安全測試人員和網絡管理員全面發現目標域名的所有子域名,為后續的安全評估和漏洞測試提供基礎支持。它集成了多種子域名發現方法,包括搜索引擎查詢、DNS 枚舉、API 調用等,能夠高效地獲取目標域名的子域名信息,并支持結果的導出和分析。

核心功能

  1. 多源子域名收集:支持從多種來源收集子域名,包括但不限于搜索引擎(Google、Bing 等)、證書透明度日志、DNS 記錄查詢、API 接口(如 Shodan、Censys 等)以及爆破枚舉等方式,確保盡可能全面地發現目標域名的子域名。
  2. 智能結果處理:自動對收集到的子域名進行有效性驗證,排除無效或不存在的子域名,提高結果的準確性。同時,支持對子域名進行分類統計,如按 IP 地址、響應狀態碼等進行分組,方便用戶快速了解子域名的分布情況。
  3. 靈活的輸出格式:支持將結果以多種格式輸出,如 CSV、JSON、TXT 等,滿足不同場景下的使用需求。用戶可以根據需要選擇合適的輸出格式,以便進一步分析或導入到其他工具中使用。
  4. 自定義配置:提供豐富的配置選項,允許用戶根據實際需求調整收集策略,如設置線程數、超時時間、是否使用爆破等。此外,還支持自定義字典文件,用于子域名爆破,提高發現隱藏子域名的概率。

二、安裝與配置

安裝環境準備

OneForAll 基于 Python 開發,安裝前需確保系統已安裝 Python 環境(建議 Python 3.6 及以上版本),同時安裝pip包管理工具(一般 Python 安裝時會默認安裝)。

安裝步驟

  1. 通過 GitHub 倉庫安裝
    • 打開終端(Linux 或 macOS 系統)或命令提示符(Windows 系統),使用git命令克隆 OneForAll 的 GitHub 倉庫:

    bash

    git clone https://github.com/shmilylty/OneForAll.git
    
    ?
    • 進入克隆后的目錄:

    bash

    cd OneForAll
    
    ?
    • 使用pip安裝依賴庫:

    bash

    pip install -r requirements.txt
    
  2. 直接下載源碼安裝
    • 若無法使用git,也可從 GitHub 倉庫頁面直接下載源碼壓縮包,解壓后進入解壓目錄,執行上述pip install -r requirements.txt命令安裝依賴庫。

配置 API 密鑰(可選)

OneForAll 支持使用多種 API 接口來獲取子域名信息,如 Shodan、Censys 等。為了獲得更全面的結果,建議配置相關 API 密鑰:

  1. 打開 OneForAll 目錄下的config/api_config.yaml文件。
  2. 根據文件中的注釋,填寫相應的 API 密鑰信息,如 Shodan 的 API Key、Censys 的 API ID 和 Secret 等。
  3. 保存文件即可完成 API 密鑰的配置。

三、基本使用方法

簡單掃描示例

使用 OneForAll 進行子域名掃描的基本命令格式如下:

bash

python3 oneforall.py --target example.com run

其中,--target參數指定要掃描的目標域名,run表示執行掃描操作。執行上述命令后,OneForAll 會自動從多種來源收集example.com的子域名信息,并在掃描完成后顯示結果。

指定輸出格式

OneForAll 支持多種輸出格式,可通過--fmt參數指定:

bash

python3 oneforall.py --target example.com --fmt csv run

上述命令將掃描結果以 CSV 格式輸出,常見的輸出格式還包括jsontxt等。

保存結果到文件

使用--output參數可以將掃描結果保存到指定文件:

bash

python3 oneforall.py --target example.com --output result.csv run

執行后,掃描結果將保存到result.csv文件中。

四、高級功能與參數詳解

子域名爆破

OneForAll 支持使用字典進行子域名爆破,以發現更多隱藏的子域名:

bash

python3 oneforall.py --target example.com --brute True run

默認情況下,OneForAll 會使用內置的字典文件進行爆破。若需要使用自定義字典,可通過--wordlist參數指定:

bash

python3 oneforall.py --target example.com --brute True --wordlist /path/to/wordlist.txt run

限制掃描范圍

可通過--level參數限制掃描的子域名層級:

bash

python3 oneforall.py --target example.com --level 2 run

上述命令將只掃描二級子域名(如sub.example.com),不掃描更深層級的子域名(如sub.sub.example.com)。

多目標掃描

若需要同時掃描多個目標域名,可使用--targets參數指定包含多個域名的文件:

bash

python3 oneforall.py --targets /path/to/targets.txt run

其中,targets.txt文件應包含一行一個的目標域名。

啟用 API 收集

若已配置 API 密鑰,可通過--api參數啟用 API 收集功能:

bash

python3 oneforall.py --target example.com --api True run

啟用后,OneForAll 會使用配置的 API 接口獲取子域名信息,提高掃描的全面性。

調整線程數和超時時間

通過--thread參數可以調整掃描線程數,提高掃描速度:

bash

python3 oneforall.py --target example.com --thread 50 run

使用--timeout參數可以設置請求超時時間(單位:秒):

bash

python3 oneforall.py --target example.com --timeout 10 run

五、實戰案例

案例一:全面掃描單個目標

需求:對example.com進行全面的子域名掃描,包括 API 查詢和爆破,并將結果保存為 JSON 格式。
命令:

bash

python3 oneforall.py --target example.com --api True --brute True --fmt json --output example_result.json run

執行該命令后,OneForAll 會先通過 API 接口獲取子域名信息,再使用字典進行爆破,最后將結果以 JSON 格式保存到example_result.json文件中。

案例二:批量掃描多個目標

需求:對多個目標域名進行批量掃描,并將結果統一保存到一個 CSV 文件中。
步驟:

  1. 創建一個文本文件targets.txt,包含要掃描的多個域名,每行一個域名,例如:

plaintext

example1.com
example2.com
example3.com

  1. 執行以下命令進行批量掃描:

bash

python3 oneforall.py --targets targets.txt --fmt csv --output batch_result.csv run

掃描完成后,所有目標域名的子域名信息將匯總到batch_result.csv文件中。

案例三:深度掃描特定層級子域名

需求:掃描example.com的三級子域名(如sub.sub.example.com),并使用自定義字典進行爆破。
命令:

bash

python3 oneforall.py --target example.com --level 3 --brute True --wordlist custom_words.txt run

其中,custom_words.txt是包含自定義子域名前綴的字典文件。

六、注意事項

  1. 法律合規:在使用 OneForAll 進行子域名掃描時,務必確保獲得目標系統所有者的明確授權。未經授權的掃描行為可能違反法律法規,引發法律風險。
  2. 掃描頻率控制:頻繁的掃描請求可能會觸發目標網站的防護機制(如 WAF),導致 IP 被封禁。因此,在掃描過程中,建議合理控制掃描頻率,避免對目標系統造成過大壓力。
  3. 結果驗證:盡管 OneForAll 會對收集到的子域名進行有效性驗證,但掃描結果仍可能存在誤報或漏報情況。對于重要的子域名信息,建議進行人工驗證,確保結果的準確性。
  4. API 使用限制:若使用 API 接口進行子域名收集,需注意各 API 提供商的使用限制和配額。過度使用可能導致 API 密鑰被封禁或限制訪問。
  5. 更新工具:OneForAll 會不斷更新和優化,定期檢查 GitHub 倉庫,及時更新工具,以獲取新功能和漏洞修復。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/907771.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/907771.shtml
英文地址,請注明出處:http://en.pswp.cn/news/907771.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

從前端工程化角度解析 Vite 打包策略:為何選擇 Rollup 而非 esbuild。

文章目錄 前言一、esbuild 與 Rollup 的技術特性對比(一)esbuild:極速開發利器,功能尚待完善(二)Rollup:專業打包工具,功能全面強大 二、Vite 打包策略的工程化考量因素(…

Chrome 通過FTP,HTTP 調用 Everything 瀏覽和搜索本地文件系統

【提問1】 Chrome調用本地 everything.exe, everything 好像有本地 FTP 服務器? 【DeepSeek R1 回答】 是的,Everything 確實內置了 HTTP/FTP 服務器功能,這提供了一種相對安全的瀏覽器與本地應用交互的方式。以下是完整的實現方案&#x…

Java八股文智能體——Agent提示詞(Prompt)

這個智能體能夠為正在學習Java八股文的同學提供切實幫助:不僅可以幫你優化答案表述,還能直接解答八股文相關問題——它會以面試者的視角,給出貼合求職場景的專業回答。 將以下內容發送給任何一個LLM,他會按照你提示詞的內容&…

Android 緩存應用凍結器(Cached Apps Freezer)

一、核心功能與原理 1. 功能概述 目標:通過凍結后臺緩存應用的進程,減少其對 CPU、內存等系統資源的消耗,優化設備性能與續航。適用場景:針對行為不當的后臺應用(如后臺偷偷運行代碼、占用 CPU)&#xff…

內存管理 : 06 內存換出

內存換出的重要性及與換入的關系 現在我們講第25講,主題是內存的換出(swipe out)。實際上,上一講我們講的是內存的換入,而這一節聚焦于內存的換出。 換入和換出必須合在一起工作,不能只有換入而沒有換出。…

第一節 51單片機概述

目錄 一、單片機系統組成 (一)、單片機硬件系統 (二)單片機的軟件系統 二、STC89C52單片機 (1)、基本信息 (2)、命名規則 (3)、單片機內部結構圖 &am…

前端面試準備-4

1.React Router的history模式中,push和replace有什么區別 都是用于頁面導航,但是他們對瀏覽器歷史記錄的處理不一樣。 ①:push是在瀏覽歷史棧里加入一條新的瀏覽歷史,點擊返回鍵會返回上一個頁面 ②;replace是替換當前歷史記錄…

【機器學習基礎】機器學習入門核心:Jaccard相似度 (Jaccard Index) 和 Pearson相似度 (Pearson Correlation)

機器學習入門核心:Jaccard相似度 (Jaccard Index) 和 Pearson相似度 (Pearson Correlation) 一、算法邏輯Jaccard相似度 (Jaccard Index)**Pearson相似度 (Pearson Correlation)** 二、算法原理與數學推導1. Jaccard相…

Unity3D仿星露谷物語開發57之保存庫存信息到文件

1、目標 保存下面庫存欄中信息到文件中。 2、修改SceneSave.cs腳本 添加2行代碼: 3、修改InventoryManager對象 添加Generate GUID組件。 4、修改InventoryManager.cs腳本 添加繼承自ISaveable 添加屬性信息: private string _iSaveableUniqueID;pub…

測量3D翼片的距離與角度

1,目的。 測量3D翼片的距離與角度。說明: 標注A 紅色框選的區域即為翼片,本示例的3D 對象共有3個翼片待測。L1與L2的距離、L1與L2的角度即為所求的翼片距離與角度。 2,原理。 使用線結構光模型(標定模式&#xff0…

深入理解 SQL 的 JOIN 查詢:從基礎到高級的第一步

在處理數據庫時,我們常常需要從多個表中提取數據。比如想知道一個城市的天氣情況,同時又想知道這個城市的具體位置。這就需要將 weather 表和 cities 表結合起來查詢。這種操作在 SQL 中被稱為 JOIN 查詢。 現在看下兩種表的情況 1.weather 表&#xff…

上傳頭像upload的簡易方法,轉base64調接口的

1.首頁使用el-image顯示數據&#xff0c;用的是轉base64后端返給的 <el-table-column prop"avatar" align"center" label"頭像"><template #default"scope"><el-image style"height: 40px;width: 40px;" :sr…

[AD] CrownJewel-1 Logon 4799+vss-ShadowCopy+NTDS.dit/SYSTEM+$MFT

QA QA攻擊者可以濫用 vssadmin 實用程式來建立卷影快照&#xff0c;然後提取 NTDS.dit 等敏感檔案來繞過安全機制。確定卷影複製服務進入運作狀態的時間。2024-05-14 03:42:16建立卷影快照時&#xff0c;磁碟區複製服務會使用機器帳戶驗證權限並列舉使用者群組。找到卷影複製過…

rtpmixsound:實現音頻混音攻擊!全參數詳細教程!Kali Linux教程!

簡介 一種將預先錄制的音頻與指定目標音頻流中的音頻&#xff08;即 RTP&#xff09;實時混合的工具。 一款用于將預先錄制的音頻與指定目標音頻流中的音頻&#xff08;即 RTP&#xff09;實時混合的工具。該工具創建于 2006 年 8 月至 9 月之間。該工具名為 rtpmixsound。它…

GitHub 趨勢日報 (2025年05月28日)

&#x1f4ca; 由 TrendForge 系統生成 | &#x1f310; https://trendforge.devlive.org/ &#x1f310; 本日報中的項目描述已自動翻譯為中文 &#x1f4c8; 今日獲星趨勢圖 今日獲星趨勢圖 2379 agenticSeek 1521 computer-science 841 n8n 577 langflow 351 qlib 282 skt…

threejsPBR材質與紋理貼圖

1. PBR材質簡介 本節課沒有具體的代碼&#xff0c;就是給大家科普一下PBR材質&#xff0c;所謂PBR就是&#xff0c;基于物理的渲染(physically-based rendering)。 Three.js提供了兩個PBR材質相關的APIMeshStandardMaterial和MeshPhysicalMaterial,MeshPhysicalMaterial是Mes…

Android 12系統源碼_多屏幕(四)自由窗口模式

一、小窗模式 1.1 小窗功能的開啟方式 開發者模式下開啟小窗功能 adb 手動開啟 adb shell settings put global enable_freeform_support 1 adb shell settings put global force_resizable_activities 11.2 源碼配置 copy file # add for freedom PRODUCT_COPY_FILES …

C# 將HTML文檔、HTML字符串轉換為圖片

在.NET開發中&#xff0c;將HTML內容轉換為圖片的需求廣泛存在于報告生成、郵件內容存檔、網頁快照等場景。Free Spire.Doc for .NET作為一款免費的專業文檔處理庫&#xff0c;無需Microsoft Word依賴&#xff0c;即可輕松實現這一功能。本文將深入解析HTML文檔和字符串轉圖片兩…

【HTML-15.2】HTML表單按鈕全面指南:從基礎到高級實踐

表單按鈕是網頁交互的核心元素&#xff0c;作為用戶提交數據、觸發操作的主要途徑&#xff0c;其重要性不言而喻。本文將系統性地介紹HTML表單按鈕的各種類型、使用場景、最佳實踐以及高級技巧&#xff0c;幫助開發者構建更高效、更易用的表單交互體驗。 1. 基礎按鈕類型 1.1…

吳恩達MCP課程(4):connect_server_mcp_chatbot

目錄 完整代碼代碼解釋1. 導入和初始化2. 類型定義3. MCP_ChatBot 類初始化4. 查詢處理 (process_query)5. 服務器連接管理6. 核心特性總結 示例 完整代碼 原課程代碼是用Anthropic寫的&#xff0c;下面代碼是用OpenAI改寫的&#xff0c;模型則用阿里巴巴的模型做測試 .env 文…