歡迎光臨
每天分享高質量文章

Sh00t:一個滲透測試管理工具

*參考來源:GitHub,FB小編secist編譯,來自FreeBuf.COM

 

Sh00t是一個高可定製的滲透測試管理工具,它強調讓測試人員手動進行安全測試,並讓你專註於執行安全測試任務的本身。此外,Sh00t還為我們提供了測試用例的待辦事項清單,以及可以使用自定義的漏洞報告模板來生成漏洞報告。

特性

動態任務管理器替換簡單的編輯器或任務管理工具

自動化,可定製的安全測試用例清單,用於替換Evernote,OneNote或其他工具

管理用於不同目的的自定義bug模板並自動生成漏洞報告

支援多個評估和專案,以邏輯分離你的不同需求

所有操作都將自動被儲存

將自動生成的漏洞報告匯出到Markdown,並提交HackerOne!

整合JIRA,ServiceNow集 – 即將推出

將漏洞報告匯出到Markdown – 即將推出

高可定製性

安裝

Sh00t安裝需要Python 3以及一些額外的軟體包。設定Sh00t的最簡單方法是使用Conda環境。但是,如果你安裝了Python 3和pip,Anaconda是可選的 – 你可以跳到下麵的第4步。

一次性設定

1、安裝最小的conda安裝環境Miniconda,並按照安裝說明進行操作。安裝完成後你需要重新載入bash配置檔案,或重啟終端以使conda命令生效。對於Windows,啟動Anaconda Prompt併在該視窗中執行以下所有命令。

2、建立一個新的Python 3環境:conda create -n sh00t python=3.6

3、啟用sh00t環境:conda activate sh00t。如果你看到類似CommandNotFoundError: Your shell has not been properly configured to use ‘conda activate’的錯誤訊息,則你必須手動啟用conda命令。按照顯示的說明和錯誤訊息進行操作。你可能需要重新載入bash配置檔案或重啟終端。嘗試再次啟用sh00t:conda activate sh00t。這次你應該可以在終端中看到(sh00t) XXXX$。

4、克隆或下載該專案的最新版本到你指定的位置:https://github.com/pavanw3b/sh00t。git clone需要安裝Git。

5、解壓縮sh00t檔案夾:cd sh00t。註意,這是專案檔案中最外層的sh00t目錄而不是sh00t/sh00t。

6、安裝Sh00t依賴包:pip install -r requirements.txt

7、設定資料庫:python manage.py migrate

8、建立使用者帳戶:python manage.py createsuperuser並按照UI建立帳戶。

9、可選但推薦:來自OWASP測試指南(OTG)和Web應用程式駭客手冊(WAHH)的Avail 174安全測試用例:python reset.py。

啟動Sh00t:

如果你的計算機上已安裝了Python 3,則可以直接跳轉到第3步。

1、如果是Linux/Mac,則開啟終端。如果是Windows,則開啟Anaconda Prompt。

2、如還未啟用sh00t環境:conda activate sh00t

3、如果不在sh00t目錄下,請則導航到該目錄:cd sh00t

4、啟動Sh00t server:python manage.py runserver

5、在你習慣的瀏覽器上訪問http://127.0.0.1:8000/。使用之前在設定中建立的使用者憑據登入。

6、歡迎來到Sh00t!

7、完成後,停止服務:Ctrl + C

8、(可選)關閉sh00t環境以繼續其他工作任務:conda deactivate。

更新升級:

1、導航到克隆sh00t的檔案夾:cd sh00t

2、如果服務正在執行,請停止服務:Ctrl + C

3、git pull最新的程式碼庫,或從github下載原始碼並替換檔案。

4、如果未啟用sh00t環境:conda activate sh00t

5、設定依賴項:pip install -r requirements.txt

6、遷移最新資料庫更改:python manage.py migrate

7、啟動server:python manage.py runserver

關於錯誤:

 

Sh00t是Python編寫的,並由Django Web Framework提供支援。如果出現任何錯誤問題,你可以透過谷歌搜尋錯誤資訊,在大多數情況下能解決你的問題。如果還是無法解決,那麼你也可以透過github issue反饋問題。

 

名詞解釋:

Flag:Flag就是一個標記的標的,即需要進行測試的測試用例。Flag是根據所選的測試方法自動生成的,其包含了測試的詳細步驟。如果漏洞被確認,那麼我們則稱它為sh0t。

Sh0t:Sh0ts即漏洞。通常,Sh0t會包含漏洞的技術說明,受影響的檔案/URL重現及修複建議。Sh0t的大部分內容都是一鍵生成的,只有像“受影響的引數”,“步驟”這樣的動態內容才能更改。

Assessment:評估,即測試評估。它可以是對一個應用或一個專案的評估 – 取決於使用者想要管理的方式,是Project的一部分。

Project:專案包含評估。專案可以邏輯分離你的工作。它可以是不同的工作,漏洞賞金,一切由你決定。

它是如何工作的?

首先建立一個新的評估。選擇你要測試的方法。當前有330個測試用例,分為86個Flags,屬於13個Modules,這些Modules是根據“Web應用程式駭客手冊”測試方法建立的。Modules和Flags可以手動選擇和定製。使用Flags建立評估後,現在測試人員必須手動來測試它們,或者在掃描器,工具的幫助下進行半自動化測試,在完成後將其標記為“Done”。在執行評估時,我們通常會提供特定於應用程式中某些場景的自定義測試用例。可以在任何時間點輕鬆建立一個新的Flag。

 

每當確認一個Flag為有效bug時,就會建立一個Sh0t。可以選擇最匹配的bug模板,sh00t將根據所選模板自動填充漏洞報告。

相關截圖

儀錶盤:

 

Flags:

 

在建立新評估時選擇方法及測試用例:

 

漏洞報告模板:

Sh00t適用人群

1、應用程式安全工程師:滲透測試和漏洞評估

2、Bug賞金獵人

3、獨立安全研究人員

4、藍隊,開發人員漏洞修複

5、任何的網路安全愛好者或從業人員

贊(0)

分享創造快樂