7.simple_php
php简要学习
- <?php ?>
这是基本格式
2.show_source() 函数对文件进行语法高亮显示。
高亮显示原文件如同我们看见的这样
3.include (或 require)语句会获取指定文件中存在的所有文本/代码/标记,并复制到使用 include 语句的文件中。
将config.php文件的内容复制到此文件
4. a = @ a=@ a=@_GET[‘a’];
预定义的 $_GET 变量用于收集来自 method=“get” 的表单中的值。@ 是为了防止没有 $_GET[‘a’]出现错误提示.
就是将get到的a的值赋给变量a
5.b也是一样
6.
if($a==0 and $a){
echo $flag1;
}
echo 是输出 and是与 ,所以要使输出flag变量,那么if要为真,在这里便发生了矛盾.
PHP中 字符串与数值比较时,会将字符串类型的值强制转换为数值型的0,因此当 ‘aa’ 与0做比较时其结果为true;
所以a只要不是0都满足条件
7.
if(is_numeric($b)){
exit();
}
if($b>1234){
echo $flag2;
}
is_numeric()用来判断是否是数字和数字字符串。如果是则返回true,如果不是则返回false。
注:会检查十进制和十六进制也就是说0x开头也会判断成数字字符串
最后,get方法的使用:在URL+?+php语句即可
在这里就是 ?a=a & b= 12345%00
Cyberpeace{647E37C7627CC3E4019EC69324F66C7C}
8.get_post
综合上述,get是在URL中发送的方式,而post是在主体中发送的.
所以第一步,在URL中发送a=1的值
第二步,用post发送b的值
使用hackbar来发送,按下F12,选择hackbar插件,进行发送(hackbar插件下载安装:https://editor.csdn.net/md/?articleId=105162848))
发送完成
cyberpeace{83cfba9a9289027c4eb428ba23a1f08e}
9.xff refer
X-Forwarded-For(XFF)是用来识别通过HTTP代理或负载均衡方式连接到Web服务器的客户端最原始的IP地址的HTTP请求头字段。
X-Forwarded-For: 本机IP, 代理1IP, 代理2IP, 代理2IP 最左边(client1)是最原始客户端的IP地址, 代理服务器每成功收到一个请求,就把请求来源IP地址添加到右边。
HTTP Referer是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器我是从哪个页面链接过来的,服务器籍此可以获得一些信息用于处理。
综上所述,先将xff的地址改为123.123.123.123
步骤:
1.Firefox F12选择网络,刷新之后会抓取两个包,选中文件,在消息头右边有编辑重发按钮
2.输入X-Forwarded-For:123.123.123.123,点击发送
3.选择新的包,在响应下的响应载荷(payload)里面出现提示,所以refer应该是http://www.gogle.com
4.重复第一步,加入Referer:www