Sobre o projeto

ctf-tools é um flake Nix que empacota e gerencia um grande catálogo de ferramentas de pesquisa em segurança comumente usadas em competições Capture The Flag (CTF) e pesquisa de segurança. O repositório fornece uma fonte única e facilmente implantável para ferramentas que abrangem análise binária (angr, Ghidra, radare2, IDA, pwndbg, ropper), forense (Volatility, Autopsy, binwalk, SleuthKit, YARA), criptografia (hashcat, John the Ripper, RsaCtfTool, Z3, Sage), exploração web (Burp Suite, sqlmap, ffuf, mitmproxy, XSStrike), esteganografia (stegsolve, zsteg, steganabara), mobile (Frida, apktool, jadx), redes (nmap, bettercap, tshark) e OSINT (Sherlock). As ferramentas são divididas em dois grupos: aquelas empacotadas diretamente no repositório sob nix/pkgs/ e aquelas encaminhadas do nixpkgs. Cada ferramenta é exposta como uma saída do flake Nix, instalável via nix profile install, executável sem instalação via nix run, ou utilizável em um shell via nix shell. Um script wrapper manage-tools fornece uma CLI familiar para listar, instalar, desinstalar e pesquisar ferramentas, incluindo instalações agregadas para todas as ferramentas catalogadas ou todos os toolchains cruzados gerados. O CI avalia o catálogo e compila ferramentas x86_64 diariamente, detectando quebras rapidamente. As entradas dos pacotes são baixadas pelo Nix e fixadas por SHA-256, garantindo a integridade da cadeia de suprimentos. O conjunto de pacotes comum suporta tanto x86_64-linux quanto aarch64-linux, com pacotes não suportados omitidos no ARM em vez de falhar todo o perfil. Os toolchains de compilação cruzada gerados (cross2 e crosstool-ng) são exclusivos para x86_64, com 77 das 146 amostras do crosstool-NG pré-compiladas como saídas instaláveis independentes. O repositório também inclui um sistema de build baseado em Docker (evidenciado por URLs de badges Docker) e suporta operação offline para a maioria das ferramentas, com exceções documentadas para downloads do corpus libc-database, IDA Pro (fornecido pelo usuário) e downloads de fonte do crosstool-ng ao usar o driver ct-ng diretamente. O Nix é instalado ao lado do gerenciador de pacotes do sistema operacional host sem interferência, e as ferramentas são instaladas no perfil Nix do usuário para desinstalação limpa.