Подтвердить что ты не робот

Тестирование уязвимостей безопасности в веб-приложениях: лучшие практики?

Я разрабатываю веб-приложение. Например, я использовал такие вещи, как Joomla в прошлом, чтобы сделать потрясающие вещи, но теперь, наконец, мои руки грязные с PHP, MySQL и CodeIgniter.

Когда вы создаете серьезные веб-приложения, которые будут обрабатывать большие объемы данных, какие меры предосторожности следует принять против моих данных для полной дезинфекции? Я знаю, там очевидная отделка, экранирование, xss-очистка и т.д. - но какие другие методы я должен включить, чтобы остановить инъекции в базу данных?

Не только это, но есть ли какой-нибудь неразрушающий код впрыска базы данных, я могу проверить все мои входы? Как и в, он будет вводить что-то видимое, но на самом деле не наносит вреда моей тестовой базе данных? Я не совсем хакер и нуждаюсь в небольшом совете по этому поводу.

Какие другие распространенные методы используют хакеры для уничтожения или чтения пользовательских данных, и как я могу проверить это самостоятельно? У меня нет денег, чтобы нанять консультанта по безопасности, так как мне всего 16 лет, но у меня есть хороший опыт работы с компьютерами, и я уверен, что смогу снять несколько трюков, если у вас появятся какие-то намеки относительно того, что они собой представляют.

Я знаю, что целая нагрузка вопросов, но чтобы суммировать, что вы делаете, чтобы убедиться, что все на 100% безопасно?

4b9b3361

Ответ 1

SQL Injection и XSS являются наиболее распространенными ошибками, которые делают программисты. Хорошей новостью является то, что их легче всего проверять автоматически, если у вас есть правильное программное обеспечение. Когда я нахожусь на пентете, я использую Sitewatch или Wapiti для поиска уязвимостей веб-приложений. Acunetix по цене.

Но вы не можете просто запустить какой-нибудь автоматизированный инструмент и ожидать, что все будет работать. Существует ряд предосторожностей, которые вы должны предпринять с помощью ЛЮБОГО сканера уязвимостей, который вы выбираете.

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

2) Сканирование аутентифицированных областей приложения. Создайте учетную запись пользователя специально для тестирования. Acuentix имеет простой мастер, где вы можете создать логин. Если вы используете wapiti, вы можете дать куки файл wapiti или дать wapiti сообщение для отправки, но это довольно сложно.

ПОСЛЕ, вы протестировали свое приложение, а затем проверьте свой сервер на неправильную конфигурацию. Чтобы протестировать ваш сервер, вам нужно запустить OpenVAS, который является новой бесплатной версией Nessus, которая теперь является коммерческим продуктом. Затем вы должны следить за этим с помощью PhpSecInfo. Эти тесты будут уведомлять вас о проблемах с вашей конфигурацией или если вы используете старое уязвимое программное обеспечение.

Ничто никогда не будет на 100% безопаснее, КОГДА. Независимо от того, что вы делаете, есть уязвимости, которые будут скользить по трещинам. На всех платформах разработки есть уязвимости, которые приводят к компромиссам, который не может проверить ни один инструмент. Также есть ошибки в инструментах тестирования, которые вы используете. Есть ложные сообщения и ложные негативы и некоторые тесты, которые просто не работают, хорошим примером я никогда не видел автоматизированный инструмент CSRF, который на самом деле находит законные уязвимости. Тест Acunetix CSRF - полная трата времени.

Существует также руководство по тестированию OWASP, которое идет более подробно. Это не следует путать с OWASP Top 10, который также является отличным ресурсом. Руководство по безопасности PHP также является отличным ресурсом для программистов php.

Ответ 2

I don't have the money to hire a security consultant since I'm only 16
Вы - 16, не означает, что у вас нет денег на прокат: D.
Вам не нужно нанимать никого. Существует множество бесплатных онлайн-инструментов, которые можно использовать для проверки уязвимости вашего веб-приложения.

  • Попробуйте использовать http://www.zubrag.com/tools/sql-injection-test.php для проверки уязвимости SQL Injection

  • http://www.parosproxy.org: рекордер веб-трафика, веб-паук, хэш-калькулятор и сканер для тестирования общих атак веб-приложений, таких как как SQL-инъекция и межсайтовый скриптинг

  • Программное обеспечение HP WebInspect [не бесплатно] проверяет общие сетевые атаки, такие как ввод параметров, межсайтовый скриптинг, обход каталога, [попытаться выполнить поиск в Интернете]

  • http://portswigger.net/suite/: Burp Suite - это интегрированная платформа для атаки на веб-приложения. Он содержит все инструменты Burp с многочисленными интерфейсами между ними, предназначенными для облегчения и ускорения процесса атаки на приложение. Все инструменты имеют одну и ту же надежную структуру для обработки HTTP-запросов, персистентности, аутентификации, прокси-серверов вверх, ведения журнала, оповещений и расширяемости.

Ответ 3

вы можете взглянуть на OWASP.

Ответ 4

Используйте сканер уязвимостей WebCruiser Web для сканирования уязвимостей для инъекций SQL, WebCruiser - это не только инструмент сканирования веб-безопасности, но также инструмент автоматической инсталляции SQL, инструмент XPath Injection Tool, инструмент XSS.