
Code-projects Ticket Booking 1.0 é vulnerável a SQL Injection através do parâmetro > Email
[Tipo de Vulnerabilidade] Injeção SQL
Descrição Foi descoberta uma vulnerabilidade de Injeção SQL cega baseada em tempo no Ticket-Booking-App - 1.0 que permite a um atacante executar consultas SQL arbitrárias no banco de dados subjacente. O parâmetro vulnerável não sanitiza adequadamente a entrada fornecida pelo usuário, permitindo a injeção de payloads SQL maliciosos que se baseiam em atrasos de tempo para inferir a presença de uma vulnerabilidade. Diferentemente da injeção SQL clássica, a injeção SQL cega baseada em tempo não retorna dados diretamente. Em vez disso, o atacante determina se a injeção foi bem-sucedida com base no tempo que a aplicação leva para responder.
[Fornecedor do Produto] Code-project
[Base de Código do Produto Afetado] Ticket-Booking-App - 1.0
[Componente Afetado] O parâmetro Email é vulnerável a Injeção SQL baseada em tempo
[Tipo de Ataque] Remoto
[Impacto Execução de código] true
[Impacto Divulgação de informações] true
[CVE Impacto Outro] SQLI baseada em tempo
[Vetores de Ataque]
Endpoint Vulnerável: Navegue até o seguinte endpoint na aplicação: Ticket-Booking-App/authenticate.php
Ponto de Injeção: No formulário de login da aplicação ou na requisição de API, injete o seguinte payload no parâmetro email:
%2b(select*from(select(sleep(20)))a)%2b
(Esta é a forma codificada em URL de: +(select * from (select(sleep(20)))a)+)
Impacto A exploração bem-sucedida desta vulnerabilidade permite a um atacante remoto não autenticado: Confirmar a presença de uma falha de injeção SQL Enumerar a estrutura do banco de dados Extrair informações sensíveis do DBMS de backend Executar operações não autorizadas dependendo dos privilégios do usuário do DBMS Este tipo de vulnerabilidade é particularmente perigoso, pois pode ser explorado sem qualquer saída visível ou mensagens de erro da aplicação.
[Referência] https://code-projects.org/ticket-booking-in-php-with-source-code/
[Descobridor] Shubham Ghadge