SQL Injection
SQL Injection to jedna z najbardziej niebezpiecznych podatności aplikacji internetowych, polegająca na wstrzyknięciu złośliwych zapytań SQL do interakcji z bazą danych. Atakujący może wykorzystać luki w aplikacji, która nieprawidłowo obsługuje dane wejściowe, aby manipulować zapytaniami SQL wykonywanymi przez aplikację.
W wyniku udanego ataku SQL Injection, napastnik może:
- uzyskać nieautoryzowany dostęp do danych,
- usunąć, zmodyfikować lub dodać dane w bazie,
- uzyskać dostęp do systemu operacyjnego, jeśli baza danych pozwala na wykonywanie komend systemowych.
W celu naprawienia podatności rekomendujemy używanie zapytań parametryzowanych (prepared statements), unikania dynamicznego składania zapytań SQL, oraz wprowadzenie poprawnej walidacji i sanityzacji danych wejściowych. Pomocna jest w tym przypadku biblioteka Joomla która posiada wbudowane zabezpieczenia przed atakami SQL Injection.
Więcej informacji
- Biblioteka Joomla DB https://manual.joomla.org/docs/general-concepts/database/select-data/
- Szczegóły