Amun
Amun fue el primer honeypot de baja interacción basado en Python, siguiendo los conceptos de Nepenthes pero extendiéndolos con una emulación más sofisticada y un mantenimiento más sencillo.
Requisitos
- Pyhon >= 2.6 (aún sin soporte para Python3)
- (opcional) Python Psyco (disponible en http://psyco.sourceforge.net/)
- (opcional) MySQLdb si se usa submit-mysql o log-mysql
- (opcional) psycopg2 si se usa log-surfnet
Instalación
- Clonar el repositorio Git:
git clone https://github.com/zeroq/amun.git
- Editar el archivo de configuración principal de Amun:
vim conf/amun.conf
- por ejemplo, establecer la dirección IP en la que Amun debe escuchar (0.0.0.0 para escuchar en todas)
- habilitar o deshabilitar los módulos de vulnerabilidad según sea necesario
- iniciar Amun ejecutando:
./amun_server
Consejos y trucos
En caso de que encuentres problemas con demasiados archivos abiertos debido a que muchos atacantes golpean tu honeypot al mismo tiempo, se pueden ajustar las siguientes configuraciones:
- Para aumentar el número máximo de archivos abiertos en Linux:
echo "104854" > /proc/sys/fs/file-max
ulimit -Hn 104854
ulimit -n 104854
- Para aumentar el número máximo de archivos abiertos en BSD:
sysctl kern.maxfiles=104854
ulimit -Hn 104854
ulimit -n 104854
Registro (Logging)
Toda la información de registro se almacena en el subdirectorio "logs" de tu instalación de Amun. Se crearán los siguientes archivos de registro:
- amun_server.log
- contiene información general, errores y mensajes de actividad del servidor amun
- amun_request_handler.log
- contiene información sobre exploits desconocidos y etapas de exploit no coincidentes
- analysis.log
- contiene información sobre el análisis manual de shellcode (realizado mediante la opción -a)
- download.log
- contiene información sobre todos los módulos de descarga (ftp, tftp, bindport, etc...)
- exploits.log
- contiene información sobre todos los exploits que fueron activados
- shellcode_manager.log
- contiene información y errores del gestor de shellcode
- submissions.log
- contiene información sobre descargas únicas
- successfull_downloads.log
- contiene información sobre todo el malware descargado
- unknown_downloads.log
- contiene información sobre métodos de descarga desconocidos
- vulnerabilities.log
- contiene información sobre ciertos módulos de vulnerabilidad
Parámetros
Amun se puede ejecutar con el parámetro -a para analizar un archivo dado en busca de shellcode conocido en lugar de ejecutar el honeypot.