
Un hello world di koseven in un contenitore Docker per giocare con SQL injection CVE-2019-8979 che colpisce le versioni < 3.3.10
Un hello world di koseven in un container Docker per giocare con CVE-2019-8979, una vulnerabilità di SQL injection che interessa versioni < 3.3.10. Questo hello world proviene in realtà dalla documentazione, ho solo aggiunto le parti Docker e l'exploit PoC.
= CVE-2019-8979 Questo problema di SQL injection è stato originariamente segnalato da una terza parte e corretto il 27 Febbraio 2019 in master, ma gli sviluppatori hanno dimenticato di pubblicare una nuova release contenente la correzione. Di conseguenza, l'ultima release stabile all'epoca, koseven-3.3.9 pubblicata il 20 Novembre 2018, rimase vulnerabile fino a quando koseven-3.3.10 non fu rilasciata il 12 Ottobre 2020, dopo che elttam notò e segnalò privatamente la svista agli sviluppatori principali il 10 Ottobre 2020.
= Limitazioni
Sebbene alcune informazioni possano essere ottenute da MySQL come current_user(), database() o nomi di tabelle e colonne da information_schema, potrebbe non essere possibile recuperare dati da altre tabelle a causa di strtoupper() che viene chiamato sull'input della direzione di order by.
Questo perché i nomi di database e tabelle sono sensibili alle maiuscole quando MySQL è in esecuzione su un sistema operativo in cui la directory dei dati risiede su un filesystem sensibile alle maiuscole. Di conseguenza, questa SQLi potrebbe essere completamente sfruttabile solo se:
lower_case_table_names è > 0Vedere Identifier Case Sensitivity per maggiori informazioni.
= Demo
[#img-demo] [link=https://asciinema.org/a/uQYxQn4vbB6XRFjf8pdIGbmAr] image::https://asciinema.org/a/uQYxQn4vbB6XRFjf8pdIGbmAr.png[Demo,200,200]