(图片源于网络,侵删)

PS:又来给大家上干货了,快拿小本本记下来~

手把手入门白帽子系列,全学完便是一个合格的web安全工程师了!

php00截断什么是文件包括破绽手把手入门白帽子七 Ruby

1

什么是文件包含漏洞

本篇先容的是文件包含漏洞,这也是属于一种非常常见的漏洞类型。

产生的缘故原由是传入的文件名没有经由合理的校验,从而让黑客包含了精心布局的文件终极造成的代码注入。

以是一套源码快速发掘并利用文件包含getshell是这篇要谈论的

紧张分为危险函数、本地文件包含、远程文件包含和截断技巧四方面展开。

2

危险函数

include()

include_once()

require()

require_once()

3

文件包含漏洞的脑图

4

脑图本地文件包含

本地文件包含漏洞常用的场景是用户上传头像image.jpg,image.jpg里存在PHP一句话木马,然后我们利用本地文件包含将image.jpg加载进来即可实行一句话命令从而getshell。
毛病代码如下:

程序本意是获取action并引入action里的功能函数,这里我们上传了头像image.jpg,然

后包含进来创造在页面显示了phpinfo的信息:

那么这里上传的头像image.jpg代码改为一句话木马:

利用菜刀成功getshell:

5

远程文件包含

1.普通远程文件包含

条件:allow_url_include=on(默认off)、allow_url_fopen=on

毛病代码:

然后我们浏览器输入:http://localhost/fileinclude.php?action=http://.../test.txt

个中http://.../test.txt是我自己的做事器,里面的test.txt内容如下:

当然也可以包含一句话木马进一步getshell。

2.有限定远程文件包含

条件:allow_url_include=on

伪协议php://input和php://filter包含

测试创造可以连续愉快的包含了

6

截断技巧

1.PHP%00截断

截断条件:

①PHP版本小于5.3.4,详情请查看[CVE-2006-7243](https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2006-7243)

②magic_quotes_gpc=Off,否则%00这种空字符会被转义为\0

搭建好知足上面两个条件的测试环境后,可以用下面的漏洞代码来测试:

不同之处是这里后面逼迫加了jpg的后缀,以是须要通过截断的技巧来连续包含

2.多个./截断

截断条件:PHP版本小于5.3

Windows240个.或者./可以截断

测试240个点截断成功如下图:

Linux是2038个/.可以截断,自行搭建环境测试吧~

本篇内容就先容到这里了,希望对大家有所帮助。

PS:送你套远程监听的教程吧

私信留个4,瞥见就发给你

推举阅读

6个月当上web安全工程师 | 手把手入门白帽子(一)

黑客常说SQL注入是什么?手把手入门白帽子 (二)

SQL注入攻击办法及防御方法,手把手入门白帽子 (二)

跨站脚本攻击,附干系学习资源!
手把手入门白帽子 (三)