Как избежать атаки CSRF в вызове Codeigniter Ajax? - PullRequest
0 голосов
/ 18 октября 2019

Я пытаюсь реализовать Атаку CSRF в Моем веб-приложении, оно реализовано с использованием инфраструктуры codeigniter, в этой среде уже есть опции для защиты атаки CSRF. Моя проблема: у меня нет идеи, как избежать атаки CSRF в Ajax Call. У кого-нибудь есть идея, пожалуйста, помогите мне.

Спасибо

1 Ответ

0 голосов
/ 18 октября 2019

Вы можете сделать следующее в своем коде, хотя мой процесс может быть неправильным.

В наборе config.php $config['csrf_protection'] = TRUE;

В каждой форме POST, если не используется помощник формы, затем перед кнопкой отправки используйте следующий скрытый ввод:

<input type="hidden" name="<?php echo $this->security->get_csrf_token_name();?>" value="<?php echo $this->security->get_csrf_hash();?>">

Там, где задействован Ajax, используйте код, подобный -

..........
"ajax":{
    url:"<?=site_url();?>folder/controllername/methodname",
    type:"POST",
    "dataType" : "json",
    "data":{
    '<?php echo $this->security->get_csrf_token_name(); ?>' : '<?php echo $this->security->get_csrf_hash(); ?>'
           },
       },
...............
...