CTF实验吧-WEB专题-6

1.PHP大法

CTF实验吧-WEB专题-6_第1张图片

题解

根据题目提示,备份文件,还有进入页面有个index.php.txt,我不说话,直接进去看,源代码呀,话说这些题目的难度为什么是中级,有趣!
查看源代码发现了eregi检测是否含有一个字符串,所以尝试编码,但是要编码两次,原因是传送过程中会自动解码一次,如果只进行一次的话,最后到php处理的时候还是原数据,主要是后面有一个urldecode再进行一次解码所以我们进行两次编码就可以达到目的
记住是urlencode编码,用XSSEE就行了

CTF实验吧-WEB专题-6_第2张图片


2.貌似有点难

CTF实验吧-WEB专题-6_第3张图片

题解

有源码,不想说,如果看过我之前博文的基本也知道套路了,一般有源码可以说是送分的,进入网址,说你IP不对,直接改X-forwarded-for为1.1.1.1就可以得到flag了,这是完全没有动脑子的,如果我们仔细看代码我们可以看到如下代码

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;
}

首先检测是HTTP_CLIENT_IP,它对应的是header中的client-ip,所在头文件中设置client-ip:1.1.1.1也是可以的
当然remote_addr基本是改不了的,因为这个东西是属于TCP/IP的网络层中的东西很难改,当然通过中转站可以实现,底层的代码应该也是可以的,但是burpsuit应该实现不了,反正我实现不了,嘿,当然好像在某种条件下可以改变它的值,至于什么条件下嘛,不知道,哈,操作图片如下:

x-forwarded-for处理

CTF实验吧-WEB专题-6_第4张图片

client-ip处理

CTF实验吧-WEB专题-6_第5张图片


3.头有点大

CTF实验吧-WEB专题-6_第6张图片

题解

界面英文如此简单明了的提示,我只能感谢上帝,首先要.NET FRAMEWORD 9.9框架,然后呢,要在英格兰地区接着呢是IE浏览器,这货很fashion啊,要求蛮多嘛,然而对如今的我们来说,太简单了,对吧,亲们!
改header如下图:

CTF实验吧-WEB专题-6_第7张图片

OK!得到flag,可以装逼了,嘿


4.Forbidden

CTF实验吧-WEB专题-6_第8张图片

题解

和上题没什么区别,改Accept-Language为hongkong就可以了,

CTF实验吧-WEB专题-6_第9张图片

又写完了,感觉这一次四道题目好像都没有什么难度哦!,嗯咯

你可能感兴趣的:(无尽防御-CTF)