Блог A1QA

О тестировании и качестве ПО

OWASP Топ-10 2017: обзор изменений

В ноябре был опубликован обновленный Топ-10 уязвимостей веб-приложений от сообщества OWASP.

Напомним, OWASP – это открытый проект обеспечения безопасности веб-приложений. Топ-10 уязвимостей от OWASP представляет собой перечень наиболее критичных рисков безопасности приложений и отражает текущие проблемы в области ИБ.

Тестирование безопасности программных продуктов – одно из ведущих направлений деятельности A1QA. В компании действует центр компетенции по тестированию безопасности, а также лаборатория, где проводятся тесты на проникновение и аудит безопасности программного обеспечения. Конечно, инженеры компании не могли пройти мимо обновленного топа OWASP.

В сегодняшней статье предлагаем вам посмотреть, что изменилось в Топ-10 по сравнению с предыдущей версией. Вы узнаете, какие уязвимости добавились, какие выпали из списка, а также о чем эти изменения говорят.

Прокомментировать изменения мы попросили руководителя отдела тестирования безопасности в A1QA Алексея Абрамовича.

Что нового в OWASP Топ-10?

тестирование безопасности, тестирование на проникновение

Итак, в Топ-10 2017 года попали три новые уязвимости – это eXternal Entity XML (XXE), небезопасная десериализация, отсутствие журналирования и мониторинга. Чем это вызвано?

«Количество всевозможных данных и серверов их предоставляющих, веб-сервисов и их возможностей растет наравне со сложностью решений. Тем не менее, зачастую новые решения базируются на старых принципах, которые не всегда успевают за мировыми стандартами безопасности. Яркий пример – простые команды к серверу на предмет извлечения важных данных, которые старый незащищенный XML-процессор может обработать без подозрения на несанкционированный доступ:

<?xml version=»1.0″ encoding=»ISO-8859-1″?>
<!DOCTYPE foo [
<!ELEMENT foo ANY >
<!ENTITY xxe SYSTEM «file:///etc/passwd» >]>
<foo>&xxe;</foo>

Таким вот простым путем злоумышленник получает доступ к списку пользователей. А дальше он может попытаться подобрать их пароли, получить информацию из базы данных и завладеть контролем над приложением», — комментирует Алексей.

В новом Топ-10 категории «Небезопасные прямые ссылки на объекты» и «Отсутствие контроля доступа к функциональному уровню» были объединены в категорию «Нарушение контроля доступа», которая заняла итоговое пятое место.

«Данные уязвимости со временем становятся взаимосвязанными и обычно приводят к одному результату — злоумышленник получает несанкционированный доступ и от имени администратора выполняет нужные для себя действия с системой», — комментирует слияние Алексей.

Какие уязвимости покинули Топ-10?

Открытые редиректы и CSRF (подделка межсайтинговых запросов) выпали из списка 10 самых значимых уязвимостей. О чем это говорит?

«Правильная переадресация и межсайтовая проверка запросов играет немаловажную роль при использовании рекламы, а также при работе со сложными, многодоменными сайтами и связанными ресурсами.

Всем известно, что реклама в настоящее время является источником дохода миллионов сайтов. В связи с этим разработчики стали уделять большое внимание проверке безопасности переадресаций. Владельцам приложений важно знать, что при использовании различных инструментов сайта или баннеров/форм на сайте пользователь точно попадет на искомый ресурс. А при переадресации будет отправлен по нужному адресу, а не попадет в руки злоумышленников».

Инъекции по-прежнему на первом месте

Многие уязвимости остались в списке. А первое место, как и прежде, занимает инъекция, или внедрение кода. О чем это говорит?

«Несмотря на все изменения, большая часть позиций занята уязвимостями 2013 года, что делает топ 2017 года очень похожим на его предшественника. Иными словами, много изменилось за четыре года, но большая часть ошибок безопасности осталась прежней. К сожалению, веб-приложения не стали безопаснее, несмотря на лучшие практики по написанию безопасного кода, средства очистки данных, внедрения токенов.

Что касается лидерства внедрения кода, то, как известно, SQL-инъекция – наиболее разрушительный вид атаки, который чаще всего позволяет атакующему получить все необходимые данные и с их использованием захватить контроль над приложением.

Инъекции сами по себе довольно просты. Находится уязвимая точка, далее подбираются и выполняются необходимые запросы. Быстрый пример – SQL-инъекция через форму поиска по сайту, которая зачастую содержит запрос к базе данных. При наличии уязвимости к SQL-инъекциям злоумышленник может получить данные, хранящиеся в других таблицах, взять под контроль систему или просто уничтожить все данные, тем самым обрекая владельцев ресурса на неминуемую гибель сервиса или, как минимум, серьезно испорченную репутацию.

В целом, для атакующего не составляет труда выполнить абсолютно любой запрос или команду, поэтому вариаций вреда для приложения неисчисляемое количество, что и позволяет инъекциям занимать первое место в топе. Они просты и разрушительны».

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

А ваше приложение пройдет проверку на уязвимости OWASP? Закажите аудит безопасности от A1QA и будьте уверены в защищенности своего продукта.

Поделиться статьей: