10 атак на веб-приложения в действии

от автора

В настоящее время практически все разработанные и разрабатываемые приложения стремятся стать как можно более доступными для пользователя в сети интернет. В сети размещаются различные приложения для более продуктивной работы и отдыха, такие как Google Docs, калькуляторы, электронные почты, облачные хранилища, карты, погода, новости и т.д… Вообщем все что нужно для повседневной жизни Наши смартфоны практически бесполезны без доступа к интернету, так как почти все мобильные приложения подключаются к облаку сохраняя там наши фотографии, логины и пароли. Даже большинство домашних устройств постоянно подключено к сети.

Прикладной уровень является самой надежной защитой. Уязвимости, с которыми мы тут встретимся, зачастую полагаются на сложные сценарии ввода данных пользователем, что делает их трудноопределимыми с помощью систем обнаружения вторжений. Этот уровень — самый доступный извне. Для нормального функционирования приложения должен быть доступ через порт 80 (HTTP) или порт 443 (HTTPS).

В схеме ниже, Веб-приложение полностью доступно извне несмотря на брандмауэры и системы предотвращения вторжений:

В 2014 году SQL инъекции были ответственны за 8,1 процента всех подобных атак. Это делает его третьим самым используемым типом атаки, сразу после малваре и DDoS атак. Также можно взглянуть на список других атак общего применения, таких как неверная конфигурация безопасности, использования компонентов с уже известными уязвимостями и межсайтовым скриптингом (XSS). Квалифицированный атакующий может легко найти эти уязвимости и использовать их без риска быть обнаруженным.

Большенство уязвимостей были обнаружены в собственном коде веб-приложений, их называют уязвимостями нулевого дня. Это все потому, что уязвимости являются специфическими для каждого преиложения и никогда не были известны ранее. Лучшая защита против этих атак — создание безопасных приложений. Разработчики должны быть осведомлены о том, как те или иные атаки работают, чтобы создавать защиту непосредственно в своих приложениях.

Обучение и информирование разработчиков об уязвимостях приложений является основной целью проекта Open Web Application Security Project (OWASP). Организация публикует списки десяти самых распространенных атак для веб-приложений. Данный список обновляется каждые три года и последний раз обновлялся в 2013 году.

Команда IBM X-Force Ethical Hacking использовала данные отчеты, чтобы создать подборку из десяти видео, которые демонстрируют ряд атак для каждой категории из списка OWASP. Каждое видео включает информацию о том, как предотвратить эти атаки и как использовать автоматизированные инструменты для тестирования подверженности приложения к каждому виду атак. Данные видео были изначально предназначены для внутреннего использования, но потом компания решила предоставить их в свободном доступе в сети Интернет.

Мы уже достаточно наговорились не о чем, давайте же перейдем к самим видео файлам.

10. Непроверенный переход и редирект

Эта категория уязвимостей используется в фишинговых атаках, в которых жертв обманом перенаправляют на вредоносный сайт. Злоумышленники могут манипулировать URL-ми реального сайта, чтобы перенаправить пользователя на нужную им страницу. Вы можете увидеть как Джонатан Фитц-Джеральд (Jonathan Fitz-Gerald) демонстрирует эту атаку на видео, ниже:

9. Использования компонентов с уже известными уязвимостями

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

8. Межсайтовая подделка запроса

Этот тип атаки используется в сочетании с социальными проектами. На видео ниже, Бреннан Brazeau (Brennan Brazeau) демонстрирует, как злоумышленник может украсть деньги из банковского счета жертвы путем использования социальных медиа — и фотографии котиков:

7. Отсутсвие функции контроля уровня доступа.

В данном случаи описывается ситуация, в которой функциональность более высокого уровня скрыта от более низкого или незарегистрированного пользователя вместо того, чтобы производить изменения через контроль доступов. Джон Заккато демонстрирует атаку, в которой пользователь более низкого уровня получает доступ к интерфейсу администрирования веб-приложения:

6. Чувствительная экспозиция данных

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

5. Неправильная настройка безопасности

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

4. Не защищенные прямые ссылки на объект

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

3. Межсайтовый скриптинг

Межсайтовый скриптинг тип уязвимости, позволяющий злоумышленникам вставить JavaScript на страницах реальных сайтов. Поступая таким образом, они могут полностью изменить содержимое сайта, чтобы получить возможность отправить учетные данные пользователя на любой другой сервере. Уоррен Мойнихан (Warren Moynihan) продемонстрирует нам как это может быть достигнуто, ниже:

2. Поврежденние аутентификации и управление сеансами

Brazeau обсуждает недостатки программирования, которые позволяют злоумышленникам обойти методы проверки подлинности, которые используются приложением:

1. Инъекции

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

Н этом все. Спасибо за ваш внимание.

ссылка на оригинал статьи http://habrahabr.ru/post/272205/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *