以下列出的所有工具均在 cloud-init 佈建期間預先安裝,部署完成後無需手動安裝。
| 工具 | 安裝方式 | 範例指令 | 使用套件 |
|---|
| nikto | apt | nikto -h https://TARGET -maxtime 120s | web-app-attacks |
| sqlmap | apt | sqlmap --batch -u "https://TARGET/dvwa/vulnerabilities/sqli/?id=1" | web-app-attacks, api-attacks |
| nuclei | ghlatest | nuclei -u https://TARGET -severity medium,high,critical | web-app-attacks |
| dalfox | ghlatest | dalfox url "https://TARGET/search?q=test" --silence | web-app-attacks |
| ffuf | ghlatest | ffuf -u https://TARGET/FUZZ -w wordlist.txt -mc all -fc 404 | api-attacks |
| gobuster | ghlatest | gobuster dir -u https://TARGET -w /opt/SecLists/Discovery/Web-Content/common.txt | reconnaissance |
| feroxbuster | ghlatest | feroxbuster -u https://TARGET -w /opt/SecLists/Discovery/Web-Content/raft-medium-directories.txt | reconnaissance |
| dirb | apt | dirb https://TARGET /usr/share/dirb/wordlists/common.txt | reconnaissance |
| whatweb | apt | whatweb https://TARGET | reconnaissance |
| wfuzz | pip | wfuzz -c -z file,wordlist.txt -e urlencode,double_urlencode "https://TARGET/FUZZ" | waf-encoding-evasion |
| 工具 | 安裝方式 | 範例指令 | 使用套件 |
|---|
| gotestwaf | go install | cd /opt/gotestwaf && gotestwaf --url https://TARGET --noEmailReport --includePayloads=false | waf-encoding-evasion |
| waf-bypass | git clone + pip | waf-bypass --host TARGET:443 --timeout 10 --threads 10 | waf-encoding-evasion |
GoTestWAF(由 Wallarm 開發)是業界標準的 WAF 評估框架,可將 payload 透過多種編碼器(URL、Base64、JSUnicode)及放置區域(body、header、URL 參數、cookie)進行組合測試。waf-bypass(由 Nemesida 開發)則以 Base64、HTML-ENTITY 及 UTF-16 編碼方式,跨 ARGS、BODY、COOKIE 及 HEADER 區域發送 payload。
| 工具 | 安裝方式 | 範例指令 | 使用套件 |
|---|
| nmap | apt | nmap -sV -sC -p 80,443 TARGET_IP | reconnaissance |
| masscan | apt | masscan TARGET_IP -p 1-1000 --rate=1000 | reconnaissance |
| tshark | apt | tshark -i eth0 -c 100 -f "host TARGET_IP" | — |
| hping3 | apt | hping3 -S -p 443 -c 10 TARGET_IP | reconnaissance |
| tcpdump | apt | tcpdump -i eth0 -c 50 host TARGET_IP | — |
| netcat | apt | nc -zv TARGET_IP 80 443 | reconnaissance |
| ngrep | apt | ngrep -q -d eth0 "HTTP" host TARGET_IP | — |
| iperf3 | apt | iperf3 -c TARGET_IP -p 5201 -t 10 | traffic-generation |
| mtr | apt | mtr --report TARGET_IP | reconnaissance |
| 工具 | 安裝方式 | 範例指令 | 使用套件 |
|---|
| sslscan | apt | sslscan TARGET:443 | ssl-scanning |
| sslyze | uv | sslyze TARGET:443 | ssl-scanning |
| testssl.sh | git clone | /opt/testssl.sh/testssl.sh TARGET:443 | ssl-scanning |
| 工具 | 安裝方式 | 範例指令 | 使用套件 |
|---|
| mitmproxy | uv | mitmproxy --mode reverse:https://TARGET -p 8080 | — |
| socat | apt | socat TCP-LISTEN:8080,fork TCP:TARGET:443 | — |
| 工具 | 安裝方式 | 範例指令 | 使用套件 |
|---|
| playwright | npm + uv | playwright open https://TARGET | bot-simulation, javascript-exploits |
| puppeteer | npm | node -e "const b=await require('puppeteer').launch(); ..." | bot-simulation |
| puppeteer-extra-plugin-stealth | npm | 作為 Puppeteer 外掛程式用於隱匿瀏覽 | bot-simulation |
Playwright 透過 playwright install chromium 安裝其專屬的 Chromium 二進位檔。Puppeteer 則在可行時使用相同的系統 Chromium。
| 工具 | 安裝方式 | 範例指令 | 使用套件 |
|---|
| subfinder | ghlatest | subfinder -d example.com -silent | reconnaissance |
| httpx | ghlatest | `echo TARGET | httpx -status-code -title` |
| amass | ghlatest | amass enum -passive -d example.com | reconnaissance |
| dnsrecon | uv | dnsrecon -d example.com -t std | reconnaissance |
| fierce | uv | fierce --domain example.com | reconnaissance |
| whois | apt | whois example.com | reconnaissance |
| dnsutils (dig, nslookup) | apt | dig TARGET +short | reconnaissance |
| 工具 | 安裝方式 | 範例指令 | 使用套件 |
|---|
| hydra | apt | hydra -l admin -P /opt/SecLists/Passwords/Common-Credentials/10-million-password-list-top-100.txt TARGET https-post-form "/dvwa/login.php:..." | web-app-attacks |
| medusa | apt | medusa -h TARGET -u admin -P passwords.txt -M http | web-app-attacks |
| ncrack | apt | ncrack -vv --user admin -P passwords.txt TARGET:443 | web-app-attacks |
| 工具 | 安裝方式 | 範例指令 | 使用套件 |
|---|
| scapy | pip | python3 -c "from scapy.all import *; sr1(IP(dst='TARGET')/TCP(dport=443,flags='S'))" | reconnaissance |
| impacket | pip | python3 -m impacket.smbclient TARGET | reconnaissance |
| arjun | pip | arjun -u https://TARGET/endpoint | api-attacks |
| pwntools | pip | python3 -c "from pwn import *; r=remote('TARGET',443)" | — |
| hashid | pip | hashid 'HASH_VALUE' | — |
| theHarvester | uv | theHarvester -d example.com -b all | reconnaissance |
| 工具 | 安裝方式 | 位置 | 使用套件 |
|---|
| recon-ng | git clone | /opt/recon-ng/ | reconnaissance |
| spiderfoot | git clone | /opt/spiderfoot/ | reconnaissance |
| SecLists | git clone | /opt/SecLists/ | web-app-attacks, api-attacks, reconnaissance |
| PayloadsAllTheThings | git clone | /opt/PayloadsAllTheThings/ | waf-encoding-evasion |
| waf-bypass payloads | git clone | /opt/waf-bypass/ | waf-encoding-evasion |
SecLists 提供多種工具所使用的字典檔,包括 ffuf、gobuster、feroxbuster、dirb 及 hydra。PayloadsAllTheThings 提供依攻擊類別(XSS、SQLi、XXE)整理的精選多編碼攻擊 payload,涵蓋十六進位、八進位、Unicode、HTML 實體、雙重 URL 編碼及 JSFuck 等變體。
以下工具僅在 tool_tier = "full" 時安裝:
| 工具 | 安裝方式 | 範例指令 | 使用套件 |
|---|
| ZAP (OWASP Zed Attack Proxy) | ghlatest | zap-cli quick-scan -s all -r https://TARGET | web-app-attacks |
| Metasploit Framework | installer script | msfconsole -q -x "use auxiliary/scanner/http/http_version; set RHOSTS TARGET; run; exit" | reconnaissance |
| 方式 | 說明 |
|---|
| apt | 透過 apt-get install 從 Ubuntu 24.04 APT 套件庫安裝 |
| ghlatest | 使用 ghlatest.sh 與 install-release.sh 從 GitHub Releases 下載最新二進位檔 |
| uv | 使用 uv 套件管理器作為 Python 工具安裝 |
| pip | 使用 pip install 作為 Python 套件安裝至系統 Python 環境 |
| npm | 使用 npm install -g 作為全域 Node.js 套件安裝 |
| go install | 使用 go install 從原始碼編譯並安裝至 /usr/local/bin |
| git clone | 將儲存庫複製至 /opt/ 目錄 |
| git clone + pip | 複製儲存庫並安裝 Python 相依套件 |
| installer script | 在 cloud-init 期間執行廠商提供的安裝腳本 |