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

SQL-инъекция
XSS (межсайтовый скриптинг) Атаки
Очевидно, проверьте каждое поле на наличие уязвимостей:
mysql_real_escape_string)Поиск бесконечных циклов (единственная косвенная вещь (если многие люди обнаруживают ее случайно), которая действительно может убить сервер).
Из Открыть проект безопасности веб-приложений:
В первую десятку входят:
Легко контролировать и легко исправить: очистка данных, полученных со стороны клиента. Проверка на такие вещи, как ';' может помочь предотвратить внедрение вредоносного кода в ваше приложение.
Я считаю, что информация OWASP является ценным ресурсом. Следующее также может быть интересно, особенно шаблоны атак:
Доброго времени суток,
Хорошим инструментом статического анализа безопасности является FlawFinder, написанный Дэвидом Уилером. Он отлично справляется с поиском различных уязвимостей безопасности,
Однако это не заменяет того, чтобы кто-то знающий прочитал ваш код. Как говорит Дэвид на своей веб-странице: «Дурак с инструментом - все равно дурак!»
HTH.
ваше здоровье, Роб
Некоторые методы профилактики:
XSS
Если вы берете какие-либо параметры / ввод от пользователя и когда-либо планируете выводить их, будь то в журнале или на веб-странице, продезинфицируйте их (удалите / экранируйте все, что напоминает HTML, кавычки, javascript ...) Если вы распечатаете текущий URI страницу внутри себя, продезинфицируйте! Например, даже печать PHP_SELF небезопасна. Продезинфицировать! Отражающий XSS в основном возникает из-за необработанных параметров страницы.
Если вы берете какой-либо ввод от пользователя и сохраняете его или распечатываете, предупредите его, если будет обнаружено что-либо опасное / недействительное, и попросите их повторно ввести его. IDS хорош для обнаружения (например, PHPIDS). Затем продезинфицируйте перед хранением / печатью. Затем, когда вы печатаете что-то из хранилища / базы данных, продезинфицируйте снова! Вход -> IDS / sanitize -> store -> sanitize -> output
используйте сканер кода во время разработки, чтобы выявить потенциально уязвимый код.
XSRF
SQL-инъекция
Вы можете получить хорошие надстройки Firefox для тестирования множества недостатков и уязвимостей, таких как инъекции xss и sql из Компас безопасности. Жаль, что они не работают в firefox 3.0. Я надеюсь, что они скоро будут обновлены.
Может кто исправит орфографическую ошибку в названии?