PHP脚本未保存已发布的数据变量

PHP脚本未保存已发布的数据变量,php,variables,post,Php,Variables,Post,我是一名初级笔测试人员,我正在尝试制作一个脚本来演示XSS攻击对客户端的危险。我有一个php脚本,当受害者(即演示中的我)被重定向到我托管的恶意页面时,该脚本将记录user:pass组合 这是登录源的一部分: <input type="text" id="form_login_username" name="form[login][username]" value="" class="large" /> <input type="password" id="fo

我是一名初级笔测试人员,我正在尝试制作一个脚本来演示XSS攻击对客户端的危险。我有一个php脚本,当受害者(即演示中的我)被重定向到我托管的恶意页面时,该脚本将记录user:pass组合

这是登录源的一部分:

<input  type="text" id="form_login_username" name="form[login][username]" value=""       class="large" />
<input  type="password" id="form_login_password" name="form[login][password]" value="" class="large" />
密码也一样

我在isset中添加了变量,以查看是否设置了变量,但没有设置

我知道这个脚本确实有效,因为我尝试了其他几个简单的登录页面,它工作得非常好。唯一的区别是,在这种情况下,username和password post变量中有方括号-这可能是问题所在吗?我尝试了url编码,但没有成功:


知道我哪里出错了吗?谢谢=

因为访问变量的有效方法是

$_POST['form']['login']['username']

只需执行var\u dump$\u POST;并查看您的帖子包含的内容,因为访问变量的有效方法是

$_POST['form']['login']['username']

只需执行var\u dump$\u POST;然后查看您的帖子包含的内容

试试这个,在表单名称属性中

name="formUsername"
name="formPasswd"
在您的接收脚本中

$username = $_POST['formUsername']; 
$password = $_POST['formPasswd];

请改为在表单名称属性中尝试此操作

name="formUsername"
name="formPasswd"
在您的接收脚本中

$username = $_POST['formUsername']; 
$password = $_POST['formPasswd];

您是否有关于该字段的设置?

您是否有关于该字段的设置?

您仍然可以将表单元素设置为数组值,这有时有助于对它们进行聚类感谢您的帮助,但我使用了另一个答案-cheers Through=您仍然可以将表单元素设置为数组值,有时可以帮助它们进行聚类感谢您的帮助,但我还是选择了另一个答案——干杯=宾果!我知道这很傻=-非常感谢虫族!答对 了我知道这很傻=-非常感谢虫族!