详解php curl带有csrf-token验证模拟提交方法
2018-09-07 14:38
通常为了安全会在表单里加入一个随机的token值来防止csrf攻击。
要想模拟提交有token验证的网站其实也不难。
1.通过正则获取token
2.带上获取到的token模拟提交
下面是一个成功的例子
目录结构
│ form.php –需要模拟的表单 │ getForm.php – 模拟提交程序 │ post.php –表单验证程序 │ └─cookie – cookie存放目录
getForm.php
form.php
<?php session_start(); $_SESSION[token] = md5($_SERVER[REQUEST_TIME]); $_SESSION[time] = date(Y-m-d H:i:s); session_write_close(); //echo $_SESSION[auth]; ?> <!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN
post.php
<?php session_start(); if(empty($_POST[token])) { exit (token is empty!); } if(empty($_SESSION[token])) { exit (session is empty); } if($_POST[token] != $_SESSION[token]) { exit (token ); } else { unset($_SESSION[token]); } echo PHP_EOL; echo pass; print_r($_REQUEST); echo PHP_EOL; print_r($_SERVER);
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
上一篇:怎么使 Mysql 数据同步
下一篇:PHP中创建并处理图象
文章标题:详解php curl带有csrf-token验证模拟提交方法
文章链接:http://soscw.com/index.php/essay/13716.html