Kali Ctf tools setup
| #!/bin/bash | |
| # ============================================================================== | |
| # Kali Linux Ultimate CTF & Red Team Master Setup Script | |
| # Includes: Steganography Arsenal (stegseek, steghide, zsteg, stegoveritas), | |
| # Impacket, NetExec, Ligolo-ng, Chisel, Active Directory Suite, Python Pwn, | |
| # Reverse Engineering, Advanced Crypto, OSINT, & Android Lock Crackers | |
| # ============================================================================== | |
| set -e | |
| echo "[+] Starting Kali Linux Master CTF Setup..." | |
| # ------------------------------------------------------------------------------ | |
| # 0. RESOLVE APT LOCKS IF PRESENT | |
| # ------------------------------------------------------------------------------ | |
| if pgrep -x "apt" > /dev/null || pgrep -x "dpkg" > /dev/null; then | |
| echo "[!] APT/DPKG process detected running in background. Waiting for lock to release..." | |
| while pgrep -x "apt" > /dev/null || pgrep -x "dpkg" > /dev/null; do | |
| sleep 2 | |
| done | |
| fi | |
| echo "[+] Updating system packages..." | |
| sudo apt update && sudo apt upgrade -y | |
| # ------------------------------------------------------------------------------ | |
| # 1. ESSENTIAL BUILD TOOLS & DEPENDENCIES | |
| # ------------------------------------------------------------------------------ | |
| echo "[+] Installing Core Dependencies & Build Tools..." | |
| sudo apt install -y build-essential git curl wget python3 python3-pip python3-venv \ | |
| python3-dev libssl-dev libffi-dev cmake pkg-config p7zip-full jq tmux \ | |
| sqlite3 libsqlite3-dev npm nodejs awscli docker.io docker-compose kubectl ruby-full | |
| # ------------------------------------------------------------------------------ | |
| # 2. STEGANOGRAPHY & FORENSICS ARSENAL | |
| # ------------------------------------------------------------------------------ | |
| echo "[+] Installing Steganography & Forensics Tools..." | |
| # APT Package Installations | |
| sudo apt install -y steghide outguess stegsnow qsstv openstego ffmpeg \ | |
| pngcheck audacity sonic-visualiser libimage-exiftool-perl exiftool \ | |
| wireshark tshark tcpdump binwalk foremost volatility3 sleuthkit autopsy \ | |
| hashcat john | |
| # Ruby-based Stego Tools (zsteg for PNG/BMP LSB analysis) | |
| sudo gem install zsteg | |
| # Python-based Stego Tools (stegoveritas, stegpy) | |
| pip3 install stegoveritas stegpy --break-system-packages 2>/dev/null || true | |
| stegoveritas_install_deps 2>/dev/null || true | |
| # Install Stegseek (Lightning fast Steghide cracker) | |
| if ! command -v stegseek &> /dev/null; then | |
| echo "[+] Installing Stegseek..." | |
| STEGSEEK_URL=$(curl -s https://api.github.com/repos/RickdeJager/stegseek/releases/latest | jq -r '.assets[] | select(.name | ends_with(".deb")) | .browser_download_url') | |
| if [ -n "$STEGSEEK_URL" ]; then | |
| wget -q "$STEGSEEK_URL" -O /tmp/stegseek.deb | |
| sudo dpkg -i /tmp/stegseek.deb || sudo apt install -f -y | |
| rm -f /tmp/stegseek.deb | |
| else | |
| sudo apt install -y stegseek 2>/dev/null || true | |
| fi | |
| fi | |
| # Install Stegsolve GUI | |
| if [ ! -f "$HOME/stegsolve.jar" ]; then | |
| echo "[+] Downloading Stegsolve..." | |
| wget http://www.caesum.com/handbook/Stegsolve.jar -O "$HOME/stegsolve.jar" | |
| chmod +x "$HOME/stegsolve.jar" | |
| fi | |
| # ------------------------------------------------------------------------------ | |
| # 3. IMPACKET & ACTIVE DIRECTORY / PIVOTING SUITE | |
| # ------------------------------------------------------------------------------ | |
| echo "[+] Installing Impacket, NetExec, Active Directory & Pivoting Tools..." | |
| sudo apt install -y python3-impacket impacket-scripts bloodhound bloodhound-python \ | |
| evil-winrm responder ldap-utils kerberoast nbtscan enum4linux-ng \ | |
| chisel socat certipy-ad bloodyad rubeus crackmapexec | |
| # Ensure Impacket library & NetExec are available via pip | |
| pip3 install impacket netexec --break-system-packages | |
| # Install Ligolo-ng (Modern Subnet Pivoting Tool) | |
| if ! command -v ligolo-proxy &> /dev/null; then | |
| echo "[+] Installing Ligolo-ng Proxy & Agent..." | |
| LIGOLO_VER=$(curl -s https://api.github.com/repos/nicocha30/ligolo-ng/releases/latest | jq -r '.tag_name' | tr -d 'v') | |
| wget -q "https://github.com/nicocha30/ligolo-ng/releases/download/v${LIGOLO_VER}/ligolo-ng_proxy_${LIGOLO_VER}_Linux_64-bit.tar.gz" -O /tmp/ligolo_proxy.tar.gz | |
| wget -q "https://github.com/nicocha30/ligolo-ng/releases/download/v${LIGOLO_VER}/ligolo-ng_agent_${LIGOLO_VER}_Linux_64-bit.tar.gz" -O /tmp/ligolo_agent.tar.gz | |
| sudo tar -xvf /tmp/ligolo_proxy.tar.gz -C /usr/local/bin proxy | |
| sudo mv /usr/local/bin/proxy /usr/local/bin/ligolo-proxy | |
| mkdir -p "$HOME/ctf/templates/ligolo" | |
| tar -xvf /tmp/ligolo_agent.tar.gz -C "$HOME/ctf/templates/ligolo/" agent | |
| mv "$HOME/ctf/templates/ligolo/agent" "$HOME/ctf/templates/ligolo/ligolo-agent-linux" | |
| rm -f /tmp/ligolo_*.tar.gz | |
| fi | |
| # Configure Ligolo TUN interface | |
| sudo ip tuntap add mode tun dev ligolo 2>/dev/null || true | |
| sudo ip link set dev ligolo up 2>/dev/null || true | |
| # Clone PEASS-ng (LinPEAS / WinPEAS) | |
| sudo git clone https://github.com/carlospolop/PEASS-ng /opt/PEASS-ng 2>/dev/null || true | |
| # ------------------------------------------------------------------------------ | |
| # 4. PYTHON PWN & EXPLOITATION LIBRARIES | |
| # ------------------------------------------------------------------------------ | |
| echo "[+] Setting up Python Pwn & Exploitation Libraries..." | |
| pip3 install --upgrade pip --break-system-packages 2>/dev/null || true | |
| pip3 install pwntools ropper pwninit z3-solver ROPgadget pycryptodome xortool \ | |
| sympy gmpy2 ecdsa lockknife --break-system-packages | |
| # ------------------------------------------------------------------------------ | |
| # 5. PWN, REVERSE ENGINEERING & CROSS-ARCH | |
| # ------------------------------------------------------------------------------ | |
| echo "[+] Installing Pwn, RE & Cross-Architecture Tools..." | |
| sudo apt install -y gdb gdb-multiarch ghidra radare2 rizin strace ltrace checksec \ | |
| qemu-user qemu-user-static qemu-system elfutils patchelf \ | |
| gcc-arm-linux-gnueabi gcc-aarch64-linux-gnu gcc-mips-linux-gnu \ | |
| libc6-dev-arm64-cross libc6-dev-armel-cross libc6-dev-mips-cross | |
| sudo gem install one_gadget | |
| # Python Decompilers (.pyc RE) | |
| sudo apt install -y python3-decompyle++ | |
| pip3 install uncompyle6 pycdc --break-system-packages 2>/dev/null || true | |
| # Install pwndbg & GEF | |
| if [ ! -d "$HOME/pwndbg" ]; then | |
| echo "[+] Installing pwndbg..." | |
| git clone https://github.com/pwndbg/pwndbg "$HOME/pwndbg" | |
| cd "$HOME/pwndbg" && ./setup.sh | |
| cd "$HOME" | |
| fi | |
| if [ ! -d "$HOME/gef" ]; then | |
| echo "[+] Cloning GEF for GDB..." | |
| git clone https://github.com/hugsy/gef.git "$HOME/gef" | |
| fi | |
| # ------------------------------------------------------------------------------ | |
| # 6. WEB EXPLOITATION & WORDLISTS (SECLISTS) | |
| # ------------------------------------------------------------------------------ | |
| echo "[+] Installing Web Exploitation & Cracking Tools..." | |
| sudo apt install -y burpsuite sqlmap nikto ffuf gobuster dirsearch wpscan \ | |
| commix hydra john hashcat medusa wfuzz xsser seclists | |
| if [ -f /usr/share/wordlists/rockyou.txt.gz ]; then | |
| echo "[+] Extracting rockyou.txt..." | |
| sudo gunzip -f /usr/share/wordlists/rockyou.txt.gz 2>/dev/null || true | |
| fi | |
| # ------------------------------------------------------------------------------ | |
| # 7. OSINT (OPEN SOURCE INTELLIGENCE) | |
| # ------------------------------------------------------------------------------ | |
| echo "[+] Installing OSINT Frameworks & Scrapers..." | |
| sudo apt install -y theharvester maltego recon-ng osmedeus holehe spiderfoot | |
| pip3 install sherlock-project ghunt-osint --break-system-packages 2>/dev/null || true | |
| # ------------------------------------------------------------------------------ | |
| # 8. ADVANCED CRYPTOGRAPHY & MATH SOLVERS | |
| # ------------------------------------------------------------------------------ | |
| echo "[+] Installing Cryptography Tools..." | |
| sudo apt install -y sagemath hash-identifier pkcrack | |
| if [ ! -d "$HOME/RsaCftTool" ]; then | |
| echo "[+] Cloning RsaCftTool..." | |
| git clone https://github.com/RsaCftTool/RsaCftTool.git "$HOME/RsaCftTool" | |
| pip3 install -r "$HOME/RsaCftTool/requirements.txt" --break-system-packages 2>/dev/null || true | |
| fi | |
| # ------------------------------------------------------------------------------ | |
| # 9. ANDROID RE & PATTERN LOCK CRACKING | |
| # ------------------------------------------------------------------------------ | |
| echo "[+] Installing Android RE & Pattern Cracking Tools..." | |
| sudo apt install -y apktool jadx androguard google-android-platform-tools-installer \ | |
| android-tools-adb android-tools-fastboot | |
| if [ ! -d "$HOME/Android-Lock-Pattern-Finder" ]; then | |
| git clone https://github.com/dz-root/Android-Lock-Pattern-Finder.git "$HOME/Android-Lock-Pattern-Finder" | |
| cd "$HOME/Android-Lock-Pattern-Finder" && npm install 2>/dev/null || true | |
| cd "$HOME" | |
| fi | |
| if [ ! -d "$HOME/android-pattern-decoder" ]; then | |
| git clone https://github.com/bolisettynihith/android-pattern-decoder.git "$HOME/android-pattern-decoder" | |
| fi | |
| cat << 'EOF' > "$HOME/crack_pattern.py" | |
| #!/usr/bin/env python3 | |
| import hashlib, sys, itertools | |
| GRID = {0: 1, 1: 2, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9} | |
| def crack_gesture_key(target_hash_hex): | |
| target_hash = bytes.fromhex(target_hash_hex) | |
| for length in range(4, 10): | |
| for pattern in itertools.permutations(range(9), length): | |
| if hashlib.sha1(bytes(pattern)).digest() == target_hash: | |
| sequence = [GRID[p] for p in pattern] | |
| print(f"[+] PATTERN FOUND! Grid sequence: {sequence}") | |
| return sequence | |
| print("[-] Pattern not found.") | |
| if __name__ == "__main__": | |
| if len(sys.argv) < 2: sys.exit(1) | |
| crack_gesture_key(sys.argv[1]) | |
| EOF | |
| chmod +x "$HOME/crack_pattern.py" | |
| # ------------------------------------------------------------------------------ | |
| # 10. CTF WORKSPACE CREATOR & TEMPLATES GENERATOR | |
| # ------------------------------------------------------------------------------ | |
| echo "[+] Building Structured CTF Workspace Template (~/ctf)..." | |
| mkdir -p "$HOME/ctf/templates" | |
| mkdir -p "$HOME/ctf/web" | |
| mkdir -p "$HOME/ctf/pwn" | |
| mkdir -p "$HOME/ctf/reverse" | |
| mkdir -p "$HOME/ctf/crypto" | |
| mkdir -p "$HOME/ctf/forensics" | |
| mkdir -p "$HOME/ctf/stego" | |
| mkdir -p "$HOME/ctf/osint" | |
| mkdir -p "$HOME/ctf/active-directory" | |
| # Pwn Exploit Template | |
| cat << 'EOF' > "$HOME/ctf/templates/exploit.py" | |
| #!/usr/bin/env python3 | |
| from pwn import * | |
| context.binary = elf = ELF('./target', checksec=False) | |
| context.terminal = ['tmux', 'splitw', '-h'] | |
| HOST = 'challenge.ctf.site' | |
| PORT = 1337 | |
| def start(): | |
| if args.REMOTE: | |
| return remote(HOST, PORT) | |
| elif args.GDB: | |
| return gdb.debug(elf.path, gdbscript=''' | |
| continue | |
| ''') | |
| else: | |
| return process(elf.path) | |
| io = start() | |
| # payload = flat({40: elf.symbols['win']}) | |
| # io.sendlineafter(b'Input: ', payload) | |
| io.interactive() | |
| EOF | |
| # Generic Script Solver Template | |
| cat << 'EOF' > "$HOME/ctf/templates/solve.py" | |
| #!/usr/bin/env python3 | |
| import requests | |
| from Crypto.Util.number import * | |
| def solve(): | |
| print("[*] Solve script initialized...") | |
| if __name__ == "__main__": | |
| solve() | |
| EOF | |
| # Challenge Writeup Template | |
| cat << 'EOF' > "$HOME/ctf/templates/notes.md" | |
| # Challenge Name | |
| - **Category:** | |
| - **Points:** | |
| ## Description | |
| > Challenge details... | |
| ## Solution / Exploitation | |
| - Step 1: | |
| ## Flag | |
| `FLAG{...}` | |
| EOF | |
| # Helper script to initialize new CTF event | |
| cat << 'EOF' > "$HOME/ctf/new_ctf.sh" | |
| #!/bin/bash | |
| if [ -z "$1" ]; then | |
| echo "Usage: ./new_ctf.sh " | |
| exit 1 | |
| fi | |
| CTF_NAME="$1" | |
| TARGET_DIR="$HOME/ctf/$CTF_NAME" | |
| mkdir -p "$TARGET_DIR"/{web,pwn,reverse,crypto,forensics,stego,osint,active-directory} | |
| cp "$HOME/ctf/templates/exploit.py" "$TARGET_DIR/pwn/" | |
| cp "$HOME/ctf/templates/solve.py" "$TARGET_DIR/crypto/" | |
| cp "$HOME/ctf/templates/solve.py" "$TARGET_DIR/web/" | |
| cp "$HOME/ctf/templates/notes.md" "$TARGET_DIR/NOTES.md" | |
| echo "[+] Created CTF Workspace for '$CTF_NAME' at$TARGET_DIR" | |
| EOF | |
| chmod +x "$HOME/ctf/new_ctf.sh" | |
| # ------------------------------------------------------------------------------ | |
| # 11. CONFIGURE ENVIRONMENT VARIABLES & SHORTCUTS IN ~/.bashrc | |
| # ------------------------------------------------------------------------------ | |
| echo "[+] Setting up Environment Variables & Shortcuts in ~/.bashrc..." | |
| if ! grep -q "# CTF ENVIRONMENT VARIABLES" "$HOME/.bashrc"; then | |
| cat << 'EOF' >> "$HOME/.bashrc" | |
| # CTF ENVIRONMENT VARIABLES & WORDLIST PATHS | |
| export CTF_DIR="$HOME/ctf" | |
| export SECLISTS="/usr/share/seclists" | |
| export WORDLISTS="/usr/share/wordlists" | |
| export ROCKYOU="/usr/share/wordlists/rockyou.txt" | |
| export PEASS="/opt/PEASS-ng" | |
| # GDB Plugin Switcher Aliases | |
| alias gdb-pwndbg="gdb -q -ex 'source ~/pwndbg/gdbinit.py'" | |
| alias gdb-gef="gdb -q -ex 'source ~/gef/gef.py'" | |
| alias gdb-vanilla="gdb -nx" | |
| # Quick Tool Aliases | |
| alias nxe="netexec" | |
| alias stegsolve="java -jar $HOME/stegsolve.jar" | |
| alias ligolo-setup="sudo ip tuntap add mode tun dev ligolo && sudo ip link set dev ligolo up" | |
| # Quick Directory Navigation Shortcuts | |
| alias cd-ctf="cd $HOME/ctf" | |
| alias cd-seclists="cd /usr/share/seclists" | |
| alias cd-peass="cd /opt/PEASS-ng" | |
| alias new-ctf="$HOME/ctf/new_ctf.sh" | |
| EOF | |
| fi | |
| echo "" | |
| echo "==============================================================================" | |
| echo " [✔] MASTER INSTALLATION COMPLETE!" | |
| echo "==============================================================================" | |
| echo " Run 'source ~/.bashrc' to activate environment variables and aliases." | |
| echo "" | |
| echo " Steganography Arsenal Installed:" | |
| echo " - stegseek (ultra-fast steghide cracker using rockyou.txt)" | |
| echo " - steghide, outguess, stegsnow, openstego, stegpy" | |
| echo " - zsteg (PNG/BMP LSB analyzer), stegoveritas (all-in-one stego check)" | |
| echo " - Stegsolve GUI ('stegsolve' command alias)" | |
| echo " - qsstv (SSTV audio stego decoder), Audacity, Sonic Visualiser" | |
| echo "==============================================================================" |
评论
?
参与讨论