【发布时间】:2014-09-02 22:35:57
【问题描述】:
在我的 php 页面 (register.php) 中有一个表单,我想检查它是否容易受到 CSRF 的攻击(正如我所期望的那样):
<form method="post" name="registration">
<label>Nome</label><br>
<input name="nome" type="text" autofocus required="required" placeholder="Nome">
<input name="cognome" type="text" required="required" placeholder="Cognome"><br>
<label>Azienda</label><br>
<input name="azienda" type="text" required="required" placeholder="Azienda"><br>
<input name="submit" type="submit" value="Registrami">
</form>
为了测试我从浏览器访问的漏洞 url
http://localhost/myfolder/register.php?nome=MyName&cognome=MySurname&azienda=University
我希望浏览器填写表单的字段,但没有发生。
你能解释一下为什么吗?
【问题讨论】:
-
为什么要将参数作为
GET请求发送? -
我正在按照他在本教程中所做的相同方式进行测试youtu.be/3yrpRfdtYc4?t=1m33s
-
任何参数可预测的表单都容易受到 CSRF 的攻击。
-
这是一个 15 分钟的视频。您能否编辑问题并在那里添加相关信息?我的意思是,我还没有看到它,我不明白为什么浏览器会在 URL 中获取 GET 参数并使用它们的值来填充页面中的随机 POST 表单。
-
@ÁlvaroG.Vicario — 浏览器不会。该视频显示了使用来自
$_REQUEST的一些抽象的数据来回显value属性的值)