Происходит что-то очень странное, я включил CSRF в конфигурации codeigniter, но с помощью пакета burp это можно обойти.
Я использую функцию form_open () для моей формы, и она правильно добавила скрытое поле в форму.
Используя пакет burp, я перехватываю пакет и удаляю файл csrf и значение post.
Сервер все еще обрабатывает обновление, даже если сведения о csrf отсутствуют в отправленном заголовке.
Я прикрепил изображение.
Заранее спасибо
Ian
Пример заголовка
https://i.stack.imgur.com/sqUTj.png
** ОБНОВЛЕНИЕ **
`$config['csrf_protection'] = TRUE;
$config['csrf_token_name'] = 'csrftoken';
$config['csrf_cookie_name'] = 'csrfcname';
$config['csrf_expire'] = 7200;
$config['csrf_regenerate'] = TRUE;
$config['csrf_exclude_uris'] = array('account/ajax_log_custom_doc_download');`
** ИСПРАВЛЕНО **
Я нашел проблему, и это было то, что $ this-> csrf_show_error (); фактически не обрабатывал заголовок 403, поэтому пропускал атаку csrf.
Исправление заключается в добавлении собственного кода заголовка и смерти сценария. Было бы лучше расширить класс безопасности, а затем добавить этот код.
http_response_code(403);
die("Forbidden");