Dalfox es una poderosa herramienta de código abierto que se centra en la automatización, lo que lo hace ideal para escanear rápidamente para fallas XSS y analizar los parámetros. Su motor de prueba avanzado y características de nicho están diseñadas para optimizar el proceso de detección y verificación de vulnerabilidades.
En cuanto al nombre, Dal (달) es la palabra coreana para "luna", mientras que "Fox" representa "buscador de XSS" o?
Modo: url pipe file server payload sxss
| Clase | Característica clave | Descripción |
|---|---|---|
| Descubrimiento | Análisis de parámetros | - Encuentra parámetro reflejado - Encuentre cars especiales, controlador de eventos y código de ataque vivos/malos - Identificación de puntos de inyección (html/js/atributo) inHTML-none inJS-none inJS-double inJS-single inJS-backtick inATTR-none inATTR-double inATTR-single |
| Análisis estático | - Verifique el cabeza de malla como CSP, XFO, etc. con Base Req/Res | |
| Análisis de BAV | - Prueba de BAV (Otra vulnerabilidad básica), por ejemplo, open-redirects sqli ssti , crlf , esii | |
| Minería de parámetros | - Encuentra un nuevo parámetro con el ataque del diccionario (el valor predeterminado es GF-Patrinos) -Soporte de archivo de diccionario personalizado ( --mining-dict-word )- Encuentra un nuevo parámetro con DOM -Use la lista de palabras remoto a la minería ( --remote-wordlists ) | |
| Grepping incorporado | - Identificar la fuga de información básica de SSTI, credencial, error SQL, etc. | |
| Detección y evasión de WAF | - Detectar a WAF (firewall de aplicación web). - Si se encuentra WAF y usando una bandera especial, evasión usando una solicitud lenta --- --waf-evasion | |
| Exploración | Escaneo XSS | - Reflejado XSS / XSS / DOM XSS almacenado - Dom Base Verificar - Base sin cabeza Verificar -Pruebas de XSS ciegas con param, encabezado ( -b , --blind opciones)-Solo prueba los parámetros seleccionados ( -p , --param )-Solo prueba de análisis de parámetros ( --only-discovery ) |
| Canalización amistosa | - Modo de URL único ( dalfox url )- Desde el modo de archivo ( dalfox file urls.txt )- Desde el modo IO (tubería) ( dalfox pipe )-Desde el modo de archivo de solicitud HTTP sin procesar ( dalfox file raw.txt --rawdata ) | |
| Consulta de optimización de cargas útiles | - Verifique el punto de inyección a través de la abstracción y genere la carga útil de ajuste. - Eliminar cargas útiles innecesarias según Badchar | |
| Codificador | - Todas las cargas útiles de prueba (incorporadas, su personalización/ciega) se prueban en paralelo con el codificador. - Para doblar el codificador de URL - a HTML Hex Coder | |
| Secuencia | -Comprobe automáticamente la página especial para XSS almacenado ( --trigger )-Opciones de soporte ( --sequence ) para XSS almacenado, solo el modo sxss | |
| Http | Opciones HTTP | -Sobrescribir el método HTTP ( -X , --method )-Siga redireccionamientos ( --follow-redirects )-Agregar encabezado ( -H , --header )-Agregar cookie ( -C , --cookie )-Agregar agente de usuario ( --user-agent )-Establecer Tiempo de espera ( --timeout )-Establecer el retraso ( --delay )-establecer proxy ( --proxy )-Establecer los códigos de retorno de Ignore ( --ignore-return )-Cargue la cookie desde la solicitud RAW ( --cookie-from-raw ) |
| Concurrencia | Obrero | -Establezca el número de trabajador ( -w , --worker ) |
| N * anfitriones | -Use el modo de multidifusión ( --multicast ), solo el modo de file / pipe | |
| Producción | Producción | - Solo el código POC y la información útil se escriben como stdout -Guardar salida ( -o , --output ) |
| Formato | -JSON / PLAIN ( --format ) | |
| Impresión | -Modo de silencio ( --silence )-Puede elegir no imprimir el color ( --no-color )-Puede elegir no imprimir el spinner ( --no-spinner )-Puede elegir Mostrar solo código POC especial ( --only-poc ) | |
| Informe | -Mostrar informe detallado ( --report y --report-format=<plain/json> ) | |
| Extensibilidad | API REST | - API Server y Swagger ( dalfox server ) |
| Modo de carga útil | - Generar y enumerar las cargas útiles para las pruebas XSS ( dalfox payload ) | |
| Acción encontrada | - le permite especificar las acciones a tomar cuando se detecte. -notificar, por ejemplo ( --found-action ) | |
| Grepping personalizado | - ¿Puede GREP con expresiones regulares personalizadas en respuesta? -Si la detección duplicada, realiza la deduplicación ( --grep ) | |
| Cargas útiles personalizadas | -Use el archivo de lista de cargas útiles personalizadas ( --custom-payload )-Valor de alerta personalizado ( --custom-alert-value )-Tipo de alerta personalizado ( --custom-alert-type ) | |
| Cargas remotas | -Use cargas remotas de Portswigger, Payloadbox, etc. ( --remote-payloads ) | |
| Paquete | Administrador de paquetes | - Pkg.go.dev - Homebrew con grifo - Snapcraft |
| Envidón de acopolador | - Docker Hub - Paquete Github de Docker | |
| Otro | - Acción de Github |
Y las diversas opciones requeridas para las pruebas: D
brew install dalfox
# https://formulae.brew.sh/formula/dalfox sudo snap install dalfox
go install github.com/hahwul/dalfox/v2@latest
# The actual release might slightly differ. This is because go install references the main branch.¿Más información? Lea la guía de instalación
dalfox [mode] [target] [flags]
Modo objetivo único
dalfox url http://testphp.vulnweb.com/listproducts.php ? cat = 123 & artist = 123 & asdf = ff
-b https://your-callback-urlModo de destino múltiple desde el archivo
dalfox file urls_file --custom-payload ./mypayloads.txtModo de tubería
cat urls_file | dalfox pipe -H " AuthToken: bbadsfkasdfadsf87 "Otros consejos, ¡vea Wiki para obtener instrucciones detalladas!
Muestra de registro de POC
[POC][G][BUILT-IN/dalfox-error-mysql/GET] http://testphp.vulnweb.com/listproducts.php?artist=123&asdf=ff&cat=123DalFox
[POC][V][GET] http://testphp.vulnweb.com/listproducts.php?artist=123&asdf=ff&cat=123%22%3E%3Csvg%2Fclass%3D%22dalfox%22onLoad%3Dalert%2845%29%3E
Formato
| Identidad | Tipo | Información | BLANCO | Código POC |
|---|---|---|---|---|
| POC | GRAMO | Incorporado/dalfox-error-mysql/get | http://testphp.vulnweb.com/listproducts.php?artist=123&asdf=ff&cat=123dalfox | |
| POC | Riñonal | CONSEGUIR | http://testphp.vulnweb.com/listproducts.php?artist=123&asdf=ff&cat=123%22%3E%3CSVG%2Fclass%3D%22Dalfox%22onLoad%3Dalert%2845%29%3E | |
| POC | V | CONSEGUIR | http://testphp.vulnweb.com/listproducts.php?artist=123&asdf=ff&cat=123%22%3E%3CSVG%2Fclass%3D%22Dalfox%22onLoad%3Dalert%2845%29%3E |
G (GREP), R (reflejado), V (verificar)¿Por qué hay una brecha? Es un método para que sea más fácil analizar solo el código POC a través del corte, etc. Por ejemplo, puede hacerlo.
dalfox url http://testphp.vulnweb.com/listproducts.php ? cat = 123 & artist = 123 & asdf = ff
| cut -d " " -f 2 > output
cat output
# http://testphp.vulnweb.com/listproducts.php?artist=123&asdf=ff&cat=123DalFox
# http://testphp.vulnweb.com/listproducts.php?artist=123&asdf=ff&cat=123%22%3E%3Csvg%2FOnLoad%3D%22%60%24%7Bprompt%60%60%7D%60%22+class%3Ddalfox%3E package main
import (
"fmt"
dalfox "github.com/hahwul/dalfox/v2/lib"
)
func main () {
opt := dalfox. Options {
Cookie : "ABCD=1234" ,
}
result , err := dalfox . NewScan (dalfox. Target {
URL : "https://xss-game.appspot.com/level1/frame" ,
Method : "GET" ,
Options : opt ,
})
if err != nil {
fmt . Println ( err )
} else {
fmt . Println ( result )
}
}go build -o xssapp ; ./xssapp
# [] [{V GET https://xss-game.appspot.com/level1/frame?query=%3Ciframe+srcdoc%3D%22%3Cinput+onauxclick%3Dprint%281%29%3E%22+class%3Ddalfox%3E%3C%2Fiframe%3E}] 2.618998247s 2021-07-11 10:59:26.508483153 +0900 KST m=+0.000794230 2021-07-11 10:59:29.127481217 +0900 KST m=+2.619792477} |
Expandir
Información adicional
Aplicaciones relacionadas
Recomendado para ti
Información relacionada
Todo
|
|---|