Posiadam dość dużą stronę internetową która bardzo często jest atakowana.
Użytkownikom bardzo się to nie podoba i zaczęli już odchodzić.
Atakujący w jakiś sposób wykrada dane do bazy danych a następnie "na luzie" loguje się do phpmyadmin i robi co chce.
Autorem skryptu php/całej strony jestem ja, znam każdą linijkę i wiem jak działa.
Stosuję wiele zabezpieczeń przed mysql injection lecz niestety nie pomagają.
Dane wejściowe w tym formularze, ciastka, sesje, zmienne get i post są filtrowane funkcjami addslashes oraz mysql_escape_string.
Prześledziłem temat SQL Injection/Insertion i również zastosowałem zabezpieczenia poruszane w tym temacie.
Niestety jestem bezradny. Ataki wciąż się powtarzają a ja tylko rozkładam ręce i przywracam kopie bazy danych.
Plik typu config.php nawiązujący połączenie z bazą znajduje się poza katalogiem public_html a dane takie jak user, hasło baza i host nie są przechowywane w żadnych zmiennych lecz wpisane bezpośrednio w funkcję mysql_connect.
Po zakończeniu skryptu używam mysql_close.
Logi apache wykazują, że atakujący wchodzi na stronę phpmyadmin i w 1-3 sekundy loguje się już do niego otrzymując własny token.
Nieprawdopodobne wydaje się, że loguje się on tak szybko ponieważ loginy i hasła są długie i bezpieczne (tak więc wydaje mi się, że robi to jakiś skrypt/bot odpalany na komputerze hakera).
Atakującym zawsze jest ta sama osoba.
Logi nie wykazują aby ten adres ip był kiedykolwiek na stronie. Jego pierwsze wejście to już /phpmyadmin.
Hasło jest wielokrotnie zmieniane. Raz nawet zdażyło się, że strona została zaatakowana kilka minut po zmianie haseł.
Bardzo proszę o pomoc.
Podkreślam, że szukam już bardzo długo zarówno na polskich jak i na anglojęzycznych stronach dotyczących zabezpieczeń skryptów php/mysql niestety te które znalazłem nic nie pomagają

Czekam na pomysły.
Pozdrawiam.