Sahen
@Sahen
ох уж это программирование.....

Как, чем, кем проверить сайт на уязвимости?

Собсно subj. Какими способами можно проверить свой самописный(PHP) сайт на уязвимости?
Кто как делает? Как делается это у "людей"?)
  • Вопрос задан
  • 33429 просмотров
Пригласить эксперта
Ответы на вопрос 12
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Проверка более, чем простая:
1. Отсутствие единой точки входа с фильтрацией по "белому списку" всех входных пользовательских данных - это уже в 99.9% случаях - 100%-ое наличие уязвимости в коде.
2. Отсутствие единого класса/PDO и подготовленных выражений для запросов к базе данных - та же история.
3. Отсутствие настройки конфигурации .htaccess и настройки/проверки серверных переменных окружения - та же история.
4. Отсутствие экранирования тегов при выводе в шаблон - возможна XSS-атака.

Подробнее, смотрите здесь.
Ответ написан
Комментировать
ferym
@ferym
Web-Developer
Наш отечественный малоизвестный, но неплохой сервис find-xss.net (реф)
Есть бесплатная проверка файлов до 5Mb, при этом показывается по моему первые 5 найденных уязвимостей и мест на которые стоит обратить внимание.
Можно купить платный доступ на 24 часа за 3$ и проверять проекты до 20Mb, а так же сразу покажет весь отчёт.

Для параноиков есть клиент сканера реализованный на Java для проверки на своей машине.

С бесплатной версией есть небольшой лайфхак. Выкидываете из проекта всю графику, js, css и вёрстку (если она подключается шаблонизатором например) что бы проект максимально облегчить, жмете максимально архив и заливаете. Если всё равно не хватает места, то проверять в несколько этапов разбивая проект на куски и выкидывая из архива всякие плагины, модули и тд.

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

Жаль нет возможности прикрыть мой комментарий от индексации :)
Ответ написан
Комментировать
Ranwise
@Ranwise
есть Acunetix Web Vulnerability Scanner качество без понятия

еще есть древняя статья
Ответ написан
Комментировать
fox_12
@fox_12
Расставляю биты, управляю заряженными частицами
Ответ написан
Комментировать
@g0r0detskiy
Ответ написан
Комментировать
ildarkhasanshin
@ildarkhasanshin
developer
Ответ написан
Комментировать
@Xrizolin
Хороший вопрос. И здорово, что хотя бы часть программистов началась им задаваться.
Для того, чтобы найти ошибки нужно понимать что именно ты хочешь найти.
Есть классические ошибки, которые мы все совершаем.
Вот хороший гайд с примерами от OWASP.
https://www.owasp.org/index.php/PHP_Security_Cheat...

Можно научиться находить ошибки самому натыкивая вредоносными запросами сервис. Для этого тоже есть норм гайды. https://www.owasp.org/index.php/OWASP_Testing_Guid...

Но это касается только уязвимостей в веб-приложении.
Еще торчащие наружу уязвимые порты, слабые пароли, ошибки в конфигурации веб-сервера и приложения. Ну и специфичные баги для фреймворка и языка.

Для первого взгляда и оценки насколько все плохо можно попробовать сканеры, картина будет более-менее полной.
Из русскоязычных сервисов классный https://metascan.ru
Из англоязычных - Acunetix, Qualys, Detectify, Tinfoil.
Ответ написан
Комментировать
MikhailDobriy
@MikhailDobriy
Dirty Little Helper
пользуюсь fixber.com для этих целей
Ответ написан
Комментировать
iCoderXXI
@iCoderXXI
React.JS/FrontEnd engineer
Добавлю еще что настройки сервера, на котором вертится сайт, тоже роляют. Должен быть годный фаервол, который паразитные запросы сможет резать, не доводя до апача или под чам там сайт вертится.

Ну и прочие политики безопасности сервера тоже важны, например ограничение на брутфорс пароля, запред прямого логина под рутом и пр., т.к. злоумышленник может получить доступ к даже очень безопасному сайту вообще помимо кода сайта.

Что касается собственно php, в первую очередь нужно не доверять пользовательским данным, т.к. это прямой путь словить SQL-инъекции. Ловить XSS и пр.
Ответ написан
Комментировать
syamskoy
@syamskoy
OWAS ZAP - найдет все нужные дырки. :)
Ответ написан
Комментировать
SV0L0Ch
@SV0L0Ch
Разработчик специализируюсь на Bitrix и Wordpress
Если сайт на вордпрессе то попробуйте wpscans.com или сканер wpscan под линукс.
Есть еще coder-diary.ru/sitecheck там проверка в основном на забытые при разработке служебные файлы типа /1.php и всяких phpMyAdmin итп которые создаются при разработке для тестов/отладки итп и частенько остаются на боевых сайтах
Ответ написан
Комментировать
Sahen
@Sahen Автор вопроса
ох уж это программирование.....
А как на счет контор которые предлагают кулхацкерские услуги за денюжку? Мол найдем, поломаем, пофиксим и т.д. СтОит ли оно того?
Еще видел на форумах типа а-чата кидают ссылку на ресурс и все кому не лень пытаются что-то поломать, куда-то пролезть. Ну и предлагают "помощь" Кто-то за денюжку, а кому-то просто жить скучно..(больше похоже на разводняк и наверняка напихают шеллов всяких и т.п. Но в идеале, наверное самый "качественный" вариант)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы