Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Testowanie luk w zabezpieczeniach aplikacji internetowych:najlepsze praktyki?

SQL Injection i XSS to najczęstsze błędy popełniane przez programistów. Dobrą wiadomością jest to, że najłatwiej jest je automatycznie przetestować, o ile masz odpowiednie oprogramowanie. Kiedy jestem na penteście, używam Sitewatch lub Wapiti do znajdowania luk w aplikacjach internetowych. Acunetix jest przeceniony.

Ale nie możesz po prostu odpalić jakiegoś zautomatyzowanego narzędzia i oczekiwać, że wszystko zadziała. Istnieje szereg środków ostrożności, które należy podjąć w przypadku KAŻDEGO skaner podatności, który wybierzesz.

1) upewnij się, że display_errors=On w twoich testach php.ini Sql Injection polega na tym, że możesz zobaczyć komunikaty o błędach mysql na stronach odpowiedzi! Bez błędu, nie wykryto luki!

2) Zeskanuj uwierzytelnione obszary swojej aplikacji. Utwórz konto użytkownika specjalnie do testowania. Acuentix posiada łatwy kreator, w którym możesz utworzyć sekwencję logowania. Jeśli używasz wapiti, możesz dać plik cookie do wapiti lub wysłać wapiti prośbę o wysłanie, ale jest to trochę trudne.

PO przetestowałeś swoją aplikację, a następnie przetestuj serwer pod kątem błędów konfiguracji. Aby przetestować serwer, musisz uruchomić OpenVAS czyli nowa, bardziej darmowa wersja Nessusa, która jest teraz produktem komercyjnym. Następnie powinieneś to sprawdzić za pomocą PhpSecInfo . Testy te powiadomią Cię o problemach z konfiguracją lub jeśli używasz starego, podatnego na ataki oprogramowania.

Nic nigdy nie będzie w 100% bezpieczne, KAŻDY . Bez względu na to, co robisz, istnieją luki, które prześlizgną się przez pęknięcia. Na wszystkich platformach programistycznych istnieją luki, które prowadzą do kompromisów, których żadne narzędzie nie może przetestować. Istnieją również błędy w narzędziach testowych, których używasz. Istnieją fałszywe posty i fałszywe negatywy oraz niektóre testy, które po prostu nie działają , dobry przykład, nigdy nie widziałem zautomatyzowanego narzędzia CSRF, które faktycznie znajduje legalne luki w zabezpieczeniach. Test CSRF firmy Acunetix to kompletna strata czasu.

Istnieje również Przewodnik testowania OWASP który wchodzi w szczegóły. Nie należy tego mylić z OWASP Top 10 co jest również doskonałym źródłem informacji. Przewodnik bezpieczeństwa PHP jest również doskonałym źródłem informacji dla programistów php.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy mogę ustawić WHERE col LIKE '%' również wybrać wartości NULL?

  2. Zapytanie Rails 3 pod warunkiem zliczenia asocjacji

  3. Pola daty i godziny MySQL i czas letni — jak odnieść się do dodatkowej godziny?

  4. Jak przekonwertować czas MySQL

  5. Naucz się podstawowych zapytań SQL przy użyciu MySQL