Algunos scripts de configuración para herramientas de investigación en seguridad.
Esta es una colección de scripts de configuración para crear una instalación de varias herramientas de investigación en seguridad. Por supuesto, esto no es un problema difícil, pero es realmente agradable tenerlas todas en un solo lugar que sea fácilmente desplegable en nuevas máquinas y demás. Los scripts de instalación para estas herramientas se revisan de vez en cuando, por lo que idealmente deberían tener una probabilidad decente de funcionar.
Se incluyen instaladores para las siguientes herramientas:
| Categoría | Herramienta | Descripción |
|---|
| binaria | angr | |
| binaria | angr-management | |
| binaria | beef | |
| binaria | crosstool | |
| binaria | cross2 | |
| binaria | decomp2dbg | |
| binaria | elfkickers | |
| binaria | elfparser | |
| binaria | evilize | |
| binaria | gdb | |
| binaria | gef | |
| binaria | ghidra | |
| binaria | honggfuzz | |
| binaria | ida | Herramienta de descompilación e ingeniería inversa (requiere que la descargues a ~/Downloads por tu cuenta!). |
| binaria | manticore | |
| binaria | one_gadget | |
| binaria | preeny | |
| binaria | pwninit | |
| binaria | pwndbg | |
| binaria | pwnsh | |
| binaria | pwntools | |
| binaria | qemu | |
| binaria | qiling | |
| binaria | qira | |
| binaria | rappel | |
| binaria | ropper | |
| binaria | rp++ | |
| binaria | seccomp-tools | |
| binaria | shellnoob | |
| binaria | taintgrind | |
| binaria | valgrind | |
| binaria | villoc | |
| binaria | xrop | |
| forense | firmware-mod-kit | |
| forense | pdf-parser | |
| forense | peepdf | |
| forense | scrdec18 | |
| forense | volatility | |
| forense | volatility3 | |
| crypto | codext | |
| crypto | cribdrag | |
| crypto | fastcoll | |
| crypto | foresight | |
| crypto | featherduster | |
| crypto | galois | |
| crypto | hashpump-partialhash | |
| crypto | hash-identifier | |
| crypto | libc-database | |
| crypto | msieve | |
| crypto | nonce-disrespect | |
| crypto | pemcrack | |
| crypto | pkcrack | |
| crypto | reveng | |
| crypto | rsactftool | |
| crypto | ssh_decoder | ruby1.8 de https://launchpad.net/~brightbox/+archive/ubuntu/ruby-ng para ejecutarlo. Ejecuta con ssh_decoder --help para obtener ayuda, ya que ejecutarlo sin argumentos provoca un fallo. |
| crypto | sslsplit | |
| crypto | xortool | |
| crypto | yafu | |
| web | burpsuite | |
| web | commix | |
| web | mitmproxy | |
| web | subbrute | |
| web | webgrep | grep para páginas web, con desofuscación de JS, desminificación de CSS y OCR en imágenes. |
| esteganografía | steganabara | |
| esteganografía | stegano-tools | |
| esteganografía | stegdetect | |
| esteganografía | stegsolve | |
| esteganografía | stegosaurus | |
| esteganografía | zsteg | |
| misc | jdgui | |
| misc | python2 | |
| misc | social-analyzer | |
| misc | veles | |
| misc | xspy |
También hay algunos instaladores para cosas no relacionadas con CTF para romper la monotonía.
| Categoría | Herramienta | Descripción |
|---|---|---|
| juego | df | |
| web | tor-browser |
Para usarlo, ejecute:```bash
/path/to/ctf-tools/bin/manage-tools setup source ~/.bashrc
manage-tools list
manage-tools -s install gdb
manage-tools install pwntools
manage-tools -n install qemu
manage-tools uninstall gdb
manage-tools uninstall all
manage-tools search preload
Donde sea posible, las herramientas mantienen las instalaciones muy autocontenidas (es decir, en el directorio tool/), y la mayoría de las desinstalaciones son solo llamadas a `git clean` (**NOTA**, esto **NO** es cuidadoso; todo lo que está debajo del directorio de la herramienta, incluido aquello en lo que estabas trabajando, se elimina durante una desinstalación).
Las herramientas de Python y Ruby se instalan en un entorno virtual específico para cada herramienta.
Si deseas agregar otros paquetes a este entorno, mira en los directorios `ctf-tools/TOOL/pipx` o `ctf-tools/TOOL/gems`.
## ¡Ayuda!
¿Algo no funciona?
No escribí (casi) ninguna de estas herramientas, pero visita [el discord](https://discord.gg/KRcjyn4pBH) si estás desesperado.
¡Quizás algún alma bondadosa te ayude!
## Herramientas en Docker
### Contenedores de herramientas preconstruidas
Puedes obtener la mayoría de estas herramientas en contenedores preconstruidos desde [https://hub.docker.com/r/ctftools](https://github.com/zardus/ctf-tools/blob/master/dockerhub).
Por ejemplo:```console
$ echo hi | docker run -i ctftools/taintgrind taintgrind --taint-stdin=yes /bin/cat
/home/ctf/tools/taintgrind/valgrind-3.21.0/build/bin/valgrind --tool=taintgrind --taint-stdin=yes /bin/cat
==8== Taintgrind, the taint analysis tool
==8== Copyright (C) 2010-2018, and GNU GPL'd, by Wei Ming Khoo.
==8== Using Valgrind-3.21.0 and LibVEX; rerun with -h for copyright info
==8== Command: /bin/cat
==8==
0xFFFFFFFF: _syscall_read | Read:3 | 0x0 | 4a5a000_unknownobj
hi
==8==
Puedes construir una imagen docker con:```bash git clone https://github.com/zardus/ctf-tools cd ctf-tools docker build -t ctf-tools --build-arg PREINSTALLED=some-tool .
Y ejecútalo con:```bash
docker run -it ctf-tools
La imagen construida tendrá ctf-tools clonado y listo para usar y tu herramienta instalada.
Kali Linux (Sana y Rolling), debido a que se configuran manualmente ciertas bibliotecas para no usar la versión más reciente disponible (a veces desactualizadas por años), provoca que algunas herramientas no se instalen en absoluto o fallen de formas extrañas. Sobrescribir estas bibliotecas rompe otras herramientas incluidas en Kali, por lo que tu única solución es vivir con algunas herramientas de Kali rotas, usar docker o ejecutar otra distribución por separado, como Ubuntu.
Para añadir una herramienta (por ejemplo, llamada nombreherramienta), haz lo siguiente:
nombreherramienta.install.uninstall.El script de instalación se ejecutará con $PWD siendo nombreherramienta. Debe instalar la herramienta en este directorio, de la manera más contenida posible.
Idealmente, la desinstalación completa debería ser posible con un git clean.
El script de instalación debe crear un directorio bin y colocar sus ejecutables allí.
Estos ejecutables se enlazarán automáticamente al directorio bin principal del repositorio.
Pueden ejecutarse desde cualquier directorio, ¡así que no asumas la ubicación de $0!
Las herramientas individuales tienen sus propias licencias. En cuanto a ctf-tools en sí, está licenciado bajo la Licencia BSD de 2 Cláusulas. Si te resulta útil, dale una estrella en GitHub (https://github.com/zardus/ctf-tools).
¡Buena suerte!
Hay una lista curada de herramientas CTF, pero sin instaladores, aquí: https://github.com/apsdehal/aWEsoMe-cTf.
Hay una configuración de Vagrant con muchos de los marcos más grandes aquí: https://github.com/thebarbershopper/epictreasure.
A medida que las herramientas se empaquetan oficialmente, pasamos a sugerir que las instales con apt.
| Categoría | Fuente | Herramienta | Descripción |
|---|---|---|---|
| binario | apt | aflplusplus | Fuzzer de última generación. |
| binario | apt | checksec | Verifica la configuración de endurecimiento de binarios. |
| binario | apt | radare2 | Algo loco que le gusta a crowell. |
| binario | apt | rr | Marco de depuración de grabación y reproducción |
| binario | apt | wcc | La Colección de Compiladores Witchcraft es un conjunto de herramientas de compilación para realizar magia negra binaria en plataformas GNU/Linux y otras POSIX. |
| forense | apt | binwalk | Herramienta de análisis de firmware (y archivos arbitrarios). |
| forense | apt | foremost | Tallador de archivos. |
| forense | apt | dislocker | Herramienta para leer particiones cifradas con Bitlocker. |
| forense | apt | origami-pdf | Manipulador de PDF. |
| forense | apt | testdisk | Testdisk y photorec para recuperación de archivos. |
| web | apt | dirb | Escáner de rutas web. |
| web | apt | dirsearch | Escáner de rutas web. |
| web | apt | sqlmap | Motor de automatización de inyección SQL. |
Anteriormente, este repositorio incluía algunos scripts que eran envoltorios alrededor de docker pull.
Confiamos en que puedes hacerlo tú mismo :-)
| Categoría | Fuente | Herramienta | Descripción |
|---|---|---|---|
| binario | docker | panda | Plataforma para análisis dinámico neutral en arquitectura. |
| esteganografía | Docker | stego-toolkit | Una imagen docker con docenas de herramientas de esteganografía. |
Anteriormente, este repositorio incluía instaladores de bibliotecas. Debido a lo personalizadas que son las preferencias de instalación de bibliotecas (por ejemplo, a diferencia de una herramienta, no está claro si los venvs por biblioteca son algo deseable), hemos dejado de incluirlos y los enlazamos aquí para la posteridad.
| Categoría | Fuente | Herramienta | Descripción |
|---|---|---|---|
| binario | Biblioteca | capstone | Marco de desensamblaje multiarquitectura. |
| binario | Biblioteca | keystone | Marco de ensamblador ligero multiarquitectura. |
| binario | Biblioteca | lief | Biblioteca para instrumentar formatos ejecutables. |
| binario | Biblioteca | miasm | Marco de ingeniería inversa en Python. |
| binario | Biblioteca | unicorn | Marco de emulador de CPU multiarquitectura. |
| binario | Biblioteca | virtualsocket | Una buena biblioteca para interactuar con binarios. |
| criptografía | Biblioteca | cryptanalib3 | El núcleo superviviente de la herramienta de criptoanálisis featherduster, actualizado para python3. |
| criptografía | Biblioteca | python-paddingoracle | Automatización de ataque de oráculo de relleno. |
| esteganografía | apt | pngtools | Herramienta de análisis de PNG. |
| esteganografía | apt | sonic-visualizer | Visualización de archivos de audio. |
| redes | apt | dsniff | Captura contraseñas y otros datos de pcaps/flujos de red. |
| redes | apt | bettercap | Navaja suiza de travesuras de red. |
| varios | apt | z3 | Demostrador de teoremas de Microsoft Research. |
| osint | apt | sherlock | Herramientas para encontrar cuentas de redes sociales por nombre de usuario en más de 400 redes sociales. |