diff --git a/Dockerfile b/Dockerfile
index f522ce2..924eb72 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -146,8 +146,6 @@ RUN git clone --depth 1 https://github.com/rastating/dnmasscan.git $TOOLS/dnmass
chmod a+x dnmasscan && \
ln -sf $TOOLS/dnmasscan/dnmasscan /usr/local/bin/dnmasscan
-# dnsprobe
-RUN go install -v github.com/projectdiscovery/dnsx/cmd/dnsx@latest
# exploitdb (searchsploit)
RUN git clone --depth 1 https://github.com/offensive-security/exploitdb.git $TOOLS/exploitdb && \
@@ -161,8 +159,6 @@ RUN go install github.com/ffuf/ffuf@latest
RUN go install github.com/lc/gau/v2/cmd/gau@latest && \
echo "alias gau='/go/bin/gau'" >> ~/.zshrc
-# httpx
-RUN go install -v github.com/projectdiscovery/httpx/cmd/httpx@latest
# interlace
RUN git clone --depth 1 https://github.com/codingo/Interlace.git $TOOLS/interlace && \
@@ -210,9 +206,8 @@ RUN mkdir $TOOLS/metasploit && \
chmod 755 msfinstall && \
./msfinstall
-# nuclei
-RUN go install -v github.com/projectdiscovery/nuclei/v2/cmd/nuclei@latest && \
- git clone --depth 1 https://github.com/projectdiscovery/nuclei-templates.git $ADDONS/nuclei
+# nuclei templates (nuclei itself installed via pdtm)
+RUN git clone --depth 1 https://github.com/projectdiscovery/nuclei-templates.git $ADDONS/nuclei
# pagodo
RUN git clone --depth 1 https://github.com/opsdisk/pagodo.git $TOOLS/pagodo && \
@@ -236,8 +231,6 @@ RUN git clone --depth 1 https://github.com/trustedsec/social-engineer-toolkit $T
python3 -m pip install --break-system-packages -r requirements.txt || : && \
python3 setup.py || :
-# subfinder
-RUN go install -v github.com/projectdiscovery/subfinder/v2/cmd/subfinder@latest
# subjs
RUN go install -v github.com/lc/subjs@latest
@@ -254,10 +247,7 @@ RUN git clone --depth 1 https://github.com/aboul3la/Sublist3r.git $TOOLS/sublist
# Note: it needs to be installed in /etc/ as there are absolute refs in the code
RUN git clone --depth 1 https://github.com/laramies/theHarvester /etc/theHarvester && \
cd /etc/theHarvester && \
- python3 -m pip install --break-system-packages pipenv && \
- python3 -m pip install --break-system-packages -r requirements/base.txt && \
- sed -i 's^#!/usr/bin/env python3^#!/usr/bin/python3^g' theHarvester.py && \
- chmod a+x theHarvester.py && \
+ python3 -m pip install --break-system-packages . && \
ln -sf /etc/theHarvester/theHarvester.py /usr/local/bin/theharvester
# unfurl
@@ -285,12 +275,26 @@ RUN git clone --depth 1 https://github.com/s0md3v/XSStrike.git $TOOLS/xsstrike &
chmod a+x xsstrike.py && \
ln -sf $TOOLS/xsstrike/xsstrike.py /usr/local/bin/xsstrike
+# pdtm - ProjectDiscovery Tool Manager
+# Install pdtm first, then use it to install all ProjectDiscovery tools
+RUN go install -v github.com/projectdiscovery/pdtm/cmd/pdtm@latest && \
+ pdtm -install-all && \
+ pip uninstall httpx --break-system-packages -y || true
+
+# feroxbuster
+RUN ARCH=$(uname -m) && \
+ curl -sL "https://github.com/epi052/feroxbuster/releases/latest/download/${ARCH}-linux-feroxbuster.zip" -o /tmp/feroxbuster.zip && \
+ unzip -o /tmp/feroxbuster.zip -d /usr/local/bin && \
+ chmod +x /usr/local/bin/feroxbuster && \
+ rm /tmp/feroxbuster.zip
+
# ------------------------------
# --- Wordlists ---
# ------------------------------
# seclists
-RUN git clone --depth 1 https://github.com/danielmiessler/SecLists.git $WORDLISTS/seclists
+RUN git clone --depth 1 https://github.com/danielmiessler/SecLists.git $WORDLISTS/seclists && \
+ ln -sf $WORDLISTS/seclists /usr/share/seclists
# rockyou
RUN curl -L https://github.com/praetorian-code/Hob0Rules/raw/db10d30b0e4295a648b8d1eab059b4d7a567bf0a/wordlists/rockyou.txt.gz \
@@ -298,7 +302,7 @@ RUN curl -L https://github.com/praetorian-code/Hob0Rules/raw/db10d30b0e4295a648b
gunzip $WORDLISTS/rockyou.txt.gz
# Symlink other wordlists
-RUN ln -sf $( find /go/pkg/mod/github.com/\!o\!w\!a\!s\!p/\!amass -name wordlists ) $WORDLISTS/amass && \
+RUN ln -sf $(find /go/pkg/mod/github.com -type d -name wordlists -path "*amass*" 2>/dev/null | head -1) $WORDLISTS/amass || true && \
ln -sf /usr/share/brutespray/wordlist $WORDLISTS/brutespray && \
ln -sf /usr/share/dirb/wordlists $WORDLISTS/dirb && \
ln -sf /usr/share/setoolkit/src/fasttrack/wordlist.txt $WORDLISTS/fasttrack.txt && \
@@ -345,6 +349,7 @@ RUN sed -i 's^ZSH_THEME="robbyrussell"^ZSH_THEME="bira"^g' ~/.zshrc && \
sed -i 's^# DISABLE_AUTO_UPDATE="true"^DISABLE_AUTO_UPDATE="true"^g' ~/.zshrc && \
sed -i 's^plugins=(git)^plugins=(tmux nmap)^g' ~/.zshrc && \
echo 'export EDITOR="nano"' >> ~/.zshrc && \
+ echo 'export PATH="$PATH:/root/.pdtm/go/bin"' >> ~/.zshrc && \
git config --global oh-my-zsh.hide-info 1
# Clean up space - remove version control
diff --git a/README.md b/README.md
index 35c191e..fcd0f1d 100644
--- a/README.md
+++ b/README.md
@@ -111,9 +111,11 @@ docker run -it mcnamee/huntkit
| [dirb](https://tools.kali.org/web-applications/dirb) | _Looks for existing (and/or hidden) Web Objects, by launching a dictionary based attack against a web server and analyzing the response._
`dirb https://kali.org $WORDLISTS/seclists/Discovery/Web-Content/CommonBackdoors-PHP.fuzz.txt` |
| [dnmasscan](https://github.com/rastating/dnmasscan) | _dnmasscan is a bash script to automate resolving a file of domain names and subsequentlly scanning them using masscan._
`dnmasscan listofdomains.txt dns.log -p80,443 - oG masscan.log` |
| [dnsx](https://github.com/projectdiscovery/dnsx) | _Allows you to run multiple probers using retryabledns library, that allows you to perform multiple DNS queries of your choice with a list of user supplied resolvers._
cat domains.txt | dnsx |
+| [feroxbuster](https://github.com/epi052/feroxbuster) | _A fast, simple, recursive content discovery tool written in Rust._
`feroxbuster -u https://example.com` |
| [ffuf](https://github.com/ffuf/ffuf) | _A fast web fuzzer._
- `ffuf -w /path/to/postdata.txt -X POST -d "username=admin\&password=FUZZ" -u https://target/login.php -fc 401` |
| [gau](https://github.com/lc/gau) | _getallurls (gau) fetches known URLs from AlienVault's Open Threat Exchange, the Wayback Machine, and Common Crawl for any given domain._
- `gau example.com` |
| [httpx](https://github.com/projectdiscovery/httpx) | _Take a list of domains and probe for working http and https servers._
cat domains.txt | httpx |
+| [katana](https://github.com/projectdiscovery/katana) | _A next-generation crawling and spidering framework._
`katana -u https://example.com` |
| [linkfinder](https://github.com/GerbenJavado/LinkFinder) | _Discover endpoints and their parameters in JavaScript files._
`linkfinder -i https://example.com -d -o cli` |
| [masscan](https://github.com/robertdavidgraham/masscan) | _An Internet-scale port scanner._
`masscan -p1-65535 -iL listofips.txt --max-rate 1800 -oG masscan.log` |
| [meg](https://github.com/robertdavidgraham/masscan) | _A tool for fetching lots of URLs but still being 'nice' to servers._
`meg paths.txt hosts.txt` |
@@ -128,6 +130,7 @@ docker run -it mcnamee/huntkit
| [sublist3r](https://github.com/aboul3la/Sublist3r) | _Enumerates subdomains using many search engines such as Google, Yahoo, Bing, Baidu and more._
`sublist3r -d kali.org` |
| [sqlmap](http://sqlmap.org/) | _Automates the process of detecting and exploiting SQL injection flaws and taking over of database servers_
`sqlmap -u https://example.com --forms --crawl=10 --level=5 --risk=3` |
| [theharvester](https://tools.kali.org/information-gathering/theharvester) | _Gather emails, subdomains, hosts, employee names, open ports and banners from different public sources like search engines, PGP key servers and SHODAN computer database._
theharvester -d kali.org -b "bing, certspotter, dnsdumpster, dogpile, duckduckgo, google, hunter, linkedin, linkedin_links, twitter, yahoo" |
+| [uncover](https://github.com/projectdiscovery/uncover) | _Quickly discover exposed hosts on the internet using multiple search engines._
`uncover -q "ssl.cert.subject.CN:example.com"` |
| [wafw00f](https://github.com/enablesecurity/wafw00f) | _Web Application Firewall Fingerprinting Tool._
`wafw00f resound.ly` |
| [whatweb](https://github.com/urbanadventurer/WhatWeb) | _Scans websites and highlights the CMS used, JavaScript libraries, web servers, version numbers, email addresses, account IDs, web framework modules, SQL errors, and more._
`whatweb kali.org` |
| [wpscan](https://github.com/wpscanteam/wpscan) | _WordPress Security Scanner._
`wpscan --url kali.org` |
@@ -158,6 +161,7 @@ docker run -it mcnamee/huntkit
| [NodeJS](https://nodejs.org/) | _Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine._ |
| [Oh My Zsh](https://ohmyz.sh/) | _Zsh is a framework for managing your zsh configuration, bundled with thousands of helpful functions, helpers, plugins, themes._ |
| [OpenVPN](https://openvpn.net/) | _Connect to a VPN._
Add `--cap-add=NET_ADMIN --device=/dev/net/tun` to the `docker run` to use OpenVPN. |
+| [pdtm](https://github.com/projectdiscovery/pdtm) | _ProjectDiscovery Tool Manager - install and manage all ProjectDiscovery tools._
`pdtm -install-all` |
| [Perl](https://www.perl.org/) | _Perl is a highly capable, feature-rich programming language with over 30 years of development._ |
| [PHP](https://www.php.net/) | _The PHP scripting language._ |
| [Proxychains](https://github.com/haad/proxychains) | _Redirects connections through SOCKS4a/5 or HTTP proxies._ |