Mysql
 sql >> база данни >  >> RDS >> Mysql

Тестване за уязвимости в сигурността в уеб приложения:Най-добри практики?

SQL инжекцията и XSS са най-честите грешки, които правят програмистите. Добрата новина е, че те са най-лесни за автоматично тестване, стига да имате правилния софтуер. Когато съм на пентест, използвам Sitewatch или Wapiti за намиране на уязвимости в уеб приложенията. Цената на Acunetix е надценена.

Но не можете просто да задействате някакъв автоматизиран инструмент и да очаквате всичко да работи. Има редица предпазни мерки, които трябва да вземете сВСЯКАКВА скенер за уязвимости, който сте избрали.

1) уверете се, че display_errors=On във вашия php.ini Sql Injection тестове разчитат на възможността да виждате съобщения за грешки на mysql в страниците с отговори! Няма грешка, не е открита уязвимост!

2) Сканирайте удостоверените области на вашето приложение. Създайте потребителски акаунт специално за тестване. Acuentix има лесен съветник, където можете да създадете последователност за влизане. Ако използвате wapiti, можете да дадете бисквитка на wapiti или да дадете на wapiti заявка за публикуване за задействане, но това е доста сложно.

СЛЕД тествахте приложението си, след което тествайте сървъра си за неправилна конфигурация. За да тествате сървъра си, трябва да стартирате OpenVAS което е новата по-безплатна версия на Nessus, която вече е търговски продукт. След това трябва да последвате това с PhpSecInfo . Тези тестове ще ви уведомят за проблеми с конфигурацията ви или ако използвате стар уязвим софтуер.

Нищо никога няма да бъде 100% сигурно, НИКОГА . Без значение какво правите, има уязвимости, които ще се изплъзнат през пукнатините. Във всички платформи за разработка има уязвимости, които водят до компромиси, за които нито един инструмент не може да тества. Има и грешки в инструментите за тестване, които използвате. Има фалшиви публикации и фалшиви отрицателни резултати и някои тестове, които просто не работят , добър пример, аз никога не съм виждал автоматизиран CSRF инструмент, който всъщност намира законни уязвимости. CSRF тестът на Acunetix е пълна загуба на време.

Има и Ръководство за тестване на OWASP което влиза в по-големи подробности. Това не трябва да се бърка с OWASP Топ 10 което също е отличен ресурс. Ръководството за сигурност на PHP също е чудесен ресурс за 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. Разлика между SET autocommit=1 и START TRANSACTION в mysql (Пропуснал ли съм нещо?)

  2. Записване на елементи в MySQL база данни в Scrapy

  3. Синтактична грешка на MySQL съхранената процедура след BEGIN

  4. Съхранени процедури срещу тригери в MySQL

  5. Буболечка? #1146 - Таблица 'xxx.xxxxx' не съществува