Pentmenu
Una escritura del golpe inspirado por pentbox.
Diseñado para ser una forma sencilla de implementar diversas funciones Pentesting red, incluyendo ataques a la red, utilizando siempre que sea posible fácilmente disponible el software comúnmente instalado en la mayoría de las distribuciones de Linux sin tener que recurrir a múltiples herramientas especializadas.
Sudo se implementa en necesssary.
Probado en Debian y Arch.
requisitos:
intento
sudo
rizo
netcat (debe ser compatible con la opción ‘-k’, variante de OpenBSD recomendado)
hping3 (o Nping puede ser utilizado como un sustituto de los ataques de inundación)
openssl
stunnel
nmap
whois (no esencial, pero preferido)
nslookup (o ‘huésped’)
¿Cómo utilizar?
Descargar el script:
$ wget https://raw.githubusercontent.com/GinjaChris/pentmenu/master/pentmenu
Hacerlo ejecutable:
$ chmod +x ./pentmenu
Ejecutarlo:
$ ./pentmenu
Como alternativa, utilizar git clone, o descargar la última versión de https://github.com/GinjaChris/pentmenu/releases , extraerlo y ejecutar el script.
detalle del módulo
MÓDULOS RECON
Mostrar IP – rizo utiliza para realizar una búsqueda de su IP externa. Se ejecuta una ip o ifconfig (según el caso) para mostrar la interfaz local de IP.
Recon DNS – recon pasivo, realiza una búsqueda DNS (adelante o atrás según sea apropiado para entrada de destino) y una búsqueda whois del objetivo. Si no se dispone de whois se llevará a cabo una búsqueda contra ipinfo.io (sólo funciona para los IP y no nombres de host).
Ping Sweep – utiliza nmap para llevar a cabo un eco ICMP (ping) contra el anfitrión o red de destino.
Quick Scan – Escáner de puertos TCP usando nmap para escanear los puertos abiertos que utilizan sondeo TCP SYN. Nmap no llevará a cabo un barrido de ping antes de realizar el escaneo TCP SYN. Este módulo analiza los 1.000 puertos más comunes. Este módulo puede, por supuesto, ser utilizado para escanear un único host o una red completa. Esta exploración puede llevar mucho tiempo para terminar, por favor sea paciente.
Detallada Scan – Nmap utiliza para identificar los anfitriones en vivo, puertos abiertos, los intentos de identificación OS, agarra banners / identifica que ejecuta la versión de software y los intentos de detección de sistema operativo. Nmap no llevará a cabo un barrido de ping antes como parte de esta exploración. cadena de agente de usuario por defecto de Nmap se cambia a la de IE11 en este modo, para ayudar a evitar la detección a través de HTTP. Todos los puertos TCP en el objetivo (nombre de host / IP / subred) se escanean. Esta exploración puede llevar mucho tiempo para terminar, por favor sea paciente.
UDP escanear – Nmap utiliza para escanear los puertos UDP abiertos. Todos los puertos UDP se escanean.
Comprobar servidor de tiempo de actividad – estima el tiempo de actividad de la diana mediante la consulta de un puerto TCP abierto con hping. La exactitud de los resultados varía de una máquina a otra; esto no funciona contra todos los servidores.
TCP SYN Flood – envía una inundación de paquetes TCP SYN utilizando hping3. Si no se encuentra hping3, intenta utilizar la utilidad nmap-Nping lugar. Hping3 se prefiere ya que envía paquetes tan rápido como sea posible. Se proporcionan opciones para usar una fuente IP de su interfaz, o especificar (spoof) una fuente IP, o falsificar una fuente aleatoria IP para cada paquete. Opcionalmente, se puede añadir datos al paquete SYN. Todos los paquetes SYN tienen el bit de fragmentación y utilizan hpings MTU virtual de 16 bytes, lo que garantiza la fragmentación. La caída de nuevo a nmap-Nping significa enviar un número X de paquetes por segundo hasta que Y número de paquetes es enviada y sólo permite el uso de IP de la interfaz o un (falso) Fuente de IP especificada.
Una inundación TCP SYN es poco probable que romper un servidor, pero es una buena manera de probar enrutador infraestructura de servidor de seguridad del interruptor / / y tablas de estado. Tenga en cuenta que mientras hping reportará la interfaz de salida e IP que podría hacer pensar script no funciona como se espera, la IP de origen se puede ajustar como se especifica; revisar una captura de paquetes del tráfico en caso de duda! Desde el puerto de origen es definible, es simple para lanzar un ataque por tierra, por ejemplo. La capacidad de fijar el puerto de origen también permite, por ejemplo, el envío de paquetes SYN a un objetivo y obligando a las respuestas SYN-ACK a una segunda diana.
TCP ACK inundación – ofrece las mismas opciones que la inundación SYN, pero establece el indicador TCP ACK (acuse de recibo) en su lugar. Algunos sistemas pasarán ciclos excesivas CPU de procesamiento de tales paquetes. Si la IP de origen se ajusta a la de una conexión establecida, es posible que una conexión estabished puede ser interrumpido por esta ‘ciego’ TCP ACK inundación. Este ataque se considera ‘a ciegas’, ya que no tiene en cuenta todos los detalles de cualquier conexión establecida (como secuencia o de acuse de recibo). Para obtener más información, véase https://www.staminus.net/a-ddos-attack-explained-tcp-ack/ por ejemplo.
TCP RST inundación – ofrece las mismas opciones que la inundación SYN, pero establece el indicador TCP RST (Reset) en su lugar. Tal ataque podría interrumpir las conexiones establecidas si el IP de origen se ajusta a la de una conexión establecida. Ver https://en.wikipedia.org/wiki/TCP_reset_attack por ejemplo.
Inundación UDP – al igual que el TCP SYN Flood, sino que envía paquetes UDP al host especificado: puerto. Al igual que la función de TCP SYN Flood, hping3 se utiliza, pero si no se encuentra, se intenta utilizar nmap-Nping lugar. Todas las opciones son las mismas que TCP SYN Flood, excepto puede especificar los datos a enviar los paquetes UDP. Una vez más, esta es una buena manera de comprobar conmutador / enrutador rendimiento o para probar los sistemas de VoIP.
SSL DOS – utiliza OpenSSL para intentar DOS un host de destino: puerto. Esto se logra mediante la apertura de muchas conexiones y hacer que el servidor para realizar los cálculos de apretón de manos caros. Esto no es una pieza muy elegante o de código, no esperan que se detenga inmediatamente después de pulsar ‘Ctrl C’, pero puede ser brutalmente eficaz.
La opción de renegociación cliente se le da; si el servidor de destino admite cliente iniciada renegociación, esta opción debe ser elegido. Incluso si el servidor de destino no admite renegociación cliente (por ejemplo CVE-2011-1473), todavía es posible para impactar / DOS al servidor con este ataque.
Es muy útil para ejecutar esto en contra de los servidores / proxies loadbalancers / SSL habilitado (no sólo HTTPS!) Para ver cómo hacer frente bajo la tensión.
Slowloris – netcat utiliza para enviar lentamente encabezados HTTP al host de destino: el puerto con la intención de morir de hambre que de los recursos. Esto es eficaz contra muchos, aunque no todos, los servidores HTTP, siempre y cuando las conexiones se pueden mantener abierta durante el tiempo suficiente. Por lo tanto este ataque sólo es eficaz si el servidor no limita el tiempo disponible para enviar una petición HTTP completa. Algunas implementaciones de este ataque utilizan encabezados claramente identificables que no es el caso aquí. El número de conexiones a abrir hasta el objetivo es configurable. El intervalo entre el envío de cada línea de cabecera es configurable, con el valor predeterminado es un valor aleatorio entre 5 y 15 segundos. La idea es enviar cabeceras lentamente, pero no tan lento que el tiempo de espera inactivo servidores cierra la conexión. La opción de utilizar SSL (SSL / TLS) está dada, que requiere stunnel y permite el ataque para ser utilizado en un servidor HTTPS. No se utiliza la opción SSL en un servidor HTTP plano.
Defensas contra este ataque incluyen (pero no se limitan a):
Limitar el número de conexiones TCP por cliente; esto evitará una sola máquina de hacer que el servidor no está disponible, pero no es eficaz si digamos, 10.000 clientes a lanzar el ataque al mismo tiempo. Además, esta medida defensiva puede influir negativamente en múltiples clientes (legítimos) que operan detrás de un servidor proxy de reenvío.
La limitación del tiempo disponible para enviar una petición HTTP completa; esto es efectivo desde el ataque se basa en el envío de las cabeceras lentamente al servidor (el servidor debe esperar a todas las cabeceras del cliente antes de responder). Si el servidor limita el tiempo para recibir todas las cabeceras de una petición a los 10 segundos (por ejemplo) que limitará severamente la eficacia del ataque. Es posible que esta medida evitará que los clientes legítimos a través de conexiones lentas / con pérdida de acceso al sitio.
La distracción Scan – esto no es realmente un ataque DOS sino que simplemente lanza múltiples escaneos TCP SYN, utilizando hping, desde una IP falsificadas de su elección (como la IP de su peor enemigo). Está diseñado para ser una exploración obvia con el fin de desencadenar cualquier LDS / IPS el objetivo puede tener y lo que esperamos cubrir ninguna exploración real o cualquier otra acción que pueda estar llevando a cabo.
módulos de extracción
Enviar archivo – Este módulo utiliza netcat para enviar datos con el protocolo TCP o UDP. Puede ser muy útil para extraer los datos. Una suma de control MD5 y SHA512 se calcula y se muestra antes de enviar el archivo. El archivo se puede enviar a un servidor de su elección; el oyente está diseñado para recibir estos archivos.
Listener – netcat utiliza para abrir un oyente en un puerto TCP o UDP configurable. Esto puede ser útil para probar la conectividad de syslog, recibir archivos o la comprobación de exploración activa en la red. Cualquier cosa recibida por el oyente está escrito a ./pentmenu.listener.out o un archivo de su elección. Al recibir archivos a través de UDP, el oyente debe cerrarse manualmente con ‘Ctrl C’. Esto se debe a que tenemos que forzar netcat para permanecer abierto para recibir múltiples paquetes, ya que UDP es un protocolo sin conexión. Al recibir archivos a través de TCP, la conexión se cierra automáticamente después de que el cliente cierra su conexión (una vez que el archivo se transfiere) y MD5 y SHA512 sumas de comprobación se calculan para el archivo recibido.
Renuncia
Este script es sólo para, el uso responsable autorizado. Usted es responsable de sus propias acciones y este guión se proporciona sin garantía o garantía de ningún tipo. El autor (s) acepta ninguna responsabilidad en su nombre.
Descargar:
https://github.com/GinjaChris/pentmenu