CTF-web XMAN-2018 第七天 web 文件包含与cookie会话

优先看一看有没有一些危险的函数,这样很可能存在命令执行。 反引号可以直接执行系统命令。

不是php的话,会当做文本文件显示,还可以包含一个一句话木马(对文件类型没有要求)

 

文件包含作用

重用代码,相当于c语言头文件的感觉。常见的几个文件包含函数,require没有文件就报错,include会继续执行

 

大佬例题

 http://202.112.51.184:8007

文件上传 

CTF-web XMAN-2018 第七天 web 文件包含与cookie会话_第1张图片

提示只能发送图像,而且是jpg和gif,仅为服务器端的扩展名检测,本地无检测,对内容没有要求。直接弄一个一句话木马,修改为jpg扩展名,上传成功,提示我们id。

记住id找保存的地址

CTF-web XMAN-2018 第七天 web 文件包含与cookie会话_第2张图片

CTF-web XMAN-2018 第七天 web 文件包含与cookie会话_第3张图片

发现问题没,上边那个地址就是意思有这个目录,我们将文件id弄上去

师傅说使用zip协议来执行我们的命令???、

 

老师提醒:

发现有一个参数在路径后边?page= ,那么我们利用伪协议可以得到包含的文件

http://202.112.51.184:8004/index.php?page=php://filter/convert.base64-encode/resource=index
 PD9waHANCglyZXF1aXJlKCJoZWFkZXIucGhwIik7DQoJJHBhZ2U9IiI7DQoJaWYgKGlzc2V0KCRfR0VUWydwYWdlJ10pKQ0KCQkkcGFnZT0kX0dFVFsncGFnZSddLiIucGhwIjsNCgllbHNlDQoJCSRwYWdlPSJtYWluLnBocCI7DQoJaW5jbHVkZSgkcGFnZSk7DQo/Pg==
    
    解码,后可以得到源码
对文件扩展名白名单过滤,对MME类型进行检测 =(content-type)

老师傅加强判断版本(8007)

再次直接上传xxx.jpg,加了一个服务器MMI类判断,通过头文件的方式判断文件类型。

绕过:

加一个文件头就可以了,然而大师傅证明不能随意加,暂时怎么弄也不知道

大师傅例题2

 http://202.112.51.184:9005

同样的一个网站,但是存在一些问题

依旧先套路得到源码

把# ‘ 都过滤了,然而也用不上啊...跟上一个没啥区别
测试直接上传一句话木马a.jpg,可以上传,得到ID,但是在uploads竟然没有这个文件,,,应该是被过滤了。

CTF-web XMAN-2018 第七天 web 文件包含与cookie会话_第4张图片

我们只好拼接一下二进制了,将马接在jpg后面。

copy /b a.jpg+b.jpg c.jpg   a作为主文件

 

copy /b a.jpg+b.jpg c.jpg   a作为主文件

将文件上传进去,也是不可以的,因为是采用了类似于文件重写的原理,将图像文件的图像重新写到另一个文件,正好解释了直接传一句话木马文件就不存在了,拼接也不会有用,因为只写了图像的部分,木马的部分也不见了。那么怎么办呢

 

你可能感兴趣的:(CTF,理论知识)