Безопасность запросов $ https

0

Доброе утро,

Я разрабатываю приложение в ионном режиме, и есть некоторые $ http-запросы (угловые), которые отправляют данные на серверный контроллер (yii 1) для сохранения данных в базе данных. Я закончил свое приложение, но у него нет безопасности. Мне было интересно, как его защитить, потому что сейчас кто-нибудь, если мой запрос на http может знать, какие параметры должны отправлять, и убить мое приложение.

Что я должен сделать, чтобы защитить его? Может быть, через жетоны? Я действительно потерял методы безопасности.

Огромное спасибо,

Карлес.

Теги:
ionic-framework
yii

1 ответ

0
Лучший ответ

Хорошо Когда вы исследуете безопасность веб-приложений, вы столкнетесь с подделкой запросов на межсайтовый запрос (CSRF). Этот вектор атаки использует куки файлы, но предотвращается.

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

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

Использование запросов POST

Иногда считается, что использование правильных POST-запросов на основе формы уменьшит эту атаку, но это неверно.

Использование HTTP-Only или безопасных файлов cookie

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

Как предотвратить CSRF

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

Угловые пакеты используют токен CSRF, что упрощает реализацию. Для каждого запроса, сделанного вашим угловым приложением на вашем сервере, услуга Angular $ http сделает это автоматически:

Найдите в текущем домене cookie с именем XSRF-TOKEN. Если этот файл cookie найден, он считывает значение и добавляет его в запрос как заголовок X-XSRF-TOKEN.

Таким образом, реализация на стороне клиента обрабатывается автоматически, автоматически! Но это оставляет части стороны сервера в ваших руках. Вам понадобятся следующие части:

Во время входа в систему: создайте токен CSRF (со случайной, недопустимой строкой) и привяжите его к сеансу пользователя. Вам нужно будет отправить его в ответ на вход в качестве файла cookie XSRF-TOKEN. Убедитесь, что все входящие запросы в ваш API имеют заголовок X-XSRF-TOKEN и что значение заголовка - это токен, связанный с сеансом пользователя.

Это оно! С небольшим количеством бэкэнд-работы у вас теперь есть стратегия, которая защищает вас от атак CSRF.

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

  • 0
    большое спасибо!
  • 0
    пожалуйста

Ещё вопросы

Сообщество Overcoder
Наверх
Меню