Писать сразу, зная принципы секьюрного кодинга - в разы просто легче, чем накатывать секьюрити патчи на огромное кол-во легаси кода, чем наша ситуация и осложняется. А так всё верно, да, хотя для нормального тестирования я бы всё же привлекала сторонних,которые на этом специализируются.
Набросали тренинг, провели - было интересно, хоть и задним числом. Понятно, что всё, что даже сделано по толстым книжкам - можно хакнуть - вопрос времени, мастерства хакера и желания.
Но есть какие-то базовые вещи, которые не так сложно соблюдать - типа как валидация ввода (и всего, что аплоадится на сервер), осторожность при выводе, проверка, откуда запощен реквест, секьюрность куков и защита от "поимки" страницы во фрейм и перехвата ввода - да много таких мелочей, это - как просто хороший стиль написания кода должно засесть в голове.
У нас же были такие смешные местами дыры, о которых никогда никто не задумывался - и сломать было достаточно легко, не обязательно читая толстые книги.
Их отчёт - это док с описанием (глобальной) проблемы, примером хака нашего приложения - ну типа шаги как воспроизвести и рекоммендациями, как это исправить.
Довольно интересная контора. У них и на сайте много тулзовин всяких полезных бесплатно выложено.
Как раз сегодня приступил к таске с xss. В JSF escaping по умолчанию включен, но вот бага воспроизводится только под IE8. Фиксим на уровне отрисовки компонент. Убираем злые угловые скобки, script и так далее. То есть в 1 месте пофиксили, работает везде. Багу нашли тестеровщики. Думаю такие вопросы должны решаться на этапе проектирования. Но разве обо всем упомнишь ) Чича
Обо всём не упомнишь, да, но теперь, понаступав на грабли и попереписывав тонны кода, понимаешь, что производительность и безопасность - это одни из ключевых штук, которые нужно учитывать. Даже если здесь и сейчас так не кажется.
Ну и, XSS - широкое понятие, кроме вывода на страницу там ещё куча моментов обнаружилась. С аплоадом файлов на сервер, подсовывания фейковых реквестов и квери стрингов, уже всего и не сходу и не вспомню..
У нас есть такая тема, как аплоад файлов пользователями приложения, которые потом отображаются линками на страницах.
Нужно ли говорить, что в файле "со стороны" может быть что угодно, что может повредить как серверу, так и просматривающему его другому чуваку.
Чтобы защититься, там впихивается всё - если хтмл, то проверка на зловредные яваскрипты, если другой тип - то на серверной стороне - прогон через антивирус (довольно изощрённый :) ), кроме того, расширение и MIME-тип само собой..
Comments 11
(The comment has been removed)
Reply
(The comment has been removed)
Понятно, что всё, что даже сделано по толстым книжкам - можно хакнуть - вопрос времени, мастерства хакера и желания.
Но есть какие-то базовые вещи, которые не так сложно соблюдать - типа как валидация ввода (и всего, что аплоадится на сервер), осторожность при выводе, проверка, откуда запощен реквест, секьюрность куков и защита от "поимки" страницы во фрейм и перехвата ввода - да много таких мелочей, это - как просто хороший стиль написания кода должно засесть в голове.
У нас же были такие смешные местами дыры, о которых никогда никто не задумывался - и сломать было достаточно легко, не обязательно читая толстые книги.
Reply
а как хоть примерно выгляит отчет о дырках?
Интересно, их ищут пленные китайци или в большей степени программным способом?
Reply
(The comment has been removed)
ЗЫ ЖЖ неуязвим, видимо )
Reply
Их отчёт - это док с описанием (глобальной) проблемы, примером хака нашего приложения - ну типа шаги как воспроизвести и рекоммендациями, как это исправить.
Довольно интересная контора. У них и на сайте много тулзовин всяких полезных бесплатно выложено.
Reply
Чича
Reply
Reply
(The comment has been removed)
Ну и, XSS - широкое понятие, кроме вывода на страницу там ещё куча моментов обнаружилась. С аплоадом файлов на сервер, подсовывания фейковых реквестов и квери стрингов, уже всего и не сходу и не вспомню..
Reply
(The comment has been removed)
Нужно ли говорить, что в файле "со стороны" может быть что угодно, что может повредить как серверу, так и просматривающему его другому чуваку.
Чтобы защититься, там впихивается всё - если хтмл, то проверка на зловредные яваскрипты, если другой тип - то на серверной стороне - прогон через антивирус (довольно изощрённый :) ), кроме того, расширение и MIME-тип само собой..
Reply
Leave a comment