和开发斗智斗勇的日常:PHP is

访客3年前黑客工具708

前言

最近新上了一个项目,不得不说,这个项目组的代码安全性在公司能排前三的,平时就连挖个xss都觉得是一种恩赐,本来没有抱太大的希望能够发现些什么,可是皇天不负有心人,在我的辛(hua)苦(shui)工作下终究是发现了问题。

0x1 开发小哥不讲武德

由于是内部项目,手里有源码,丢去扫了一圈,没有发现什么问题,于是乎开始黑盒测试,项目是一个小程序,使用fidder转发流量到burp上,可以在电脑上不用设置微信 *** 直接抓取小程序的接口数据包,发现了一处上传的地方,看了代码不能绕过,但是发现在请求个人信息接口的时候返回了上传文件的相对路径,然后通过查看图片的接口能够获取到图片的内容,刚想说试试文件读取漏洞,结果发现这个接口传递两个参数,一个文件路径,一个是token,进行了加密验证。

1611127710_6007db9e5e1b5707b13cb.png!small?1611127710677

又去翻了翻源码,加密算法无法破解,顿时又去翻了一下文件上传的代码,想着通过上传修改存储的路径,然后拼接他加密后的文件路径和token来实现任意文件读取,没想到当我修改文件路径的时候,直接给我抛出了异常(本地开发环境),我反复研究了一天后发现,这里应该是开发他们自己的问题,不是我的问题,于是呼叫了开发小哥过来修bug,小哥很给力,看了一眼异常以后就说知道问题在哪里了,回去不到一分钟修复了这个bug,兴奋的我当着小哥的面就按着之前的思路开始验证,这时小哥突然问了一句:你这个是传的本地的文件路径是吧,我顺嘴就回了他一句是的。

1611127730_6007dbb25dffa2b1278a7.png!small?1611127730567

1611127736_6007dbb8758a1add014ba.png!small?1611127736701

验证成功,我告诉他可以正常使用了,小哥看了我一眼就回到了工位,我也开始写报告了,报告正写到一半,突然感觉不对劲,回想起小哥问我的那句话,我立马再去复现我的那个漏洞,复现不了了。

1611127606_6007db361a5dc69438c11.png!small?1611127606348

啪,大意了啊,没有闪,开发小哥不讲武德,回头看了一眼小哥,心里一万个 *** 飘过。

0x2 道高一尺魔高一丈

由于开发小哥破坏规矩在先,我也就不客气了,直接上服务器拿到了他修复的代码,发现是通过类型函数验证了传入参数是否为文件。

1611127746_6007dbc2cfba07c67254c.png!small?1611127747026

看到这里要想绕过的条件就是parse_url()解析出来没有path参数,要么就是is_file()判断为假,测试了一下,parse_url()倒是好绕过,但是就没有原来的文件路径了,无法进行跨目录读取文件,于是重心放在了is_file()函数上面。

1611127758_6007dbce96d7532d143f3.png!small?1611127758797

查看说明发现如果输入的是存在且正常的文件就返回true,所以要构造一个不存在的文件路径。

1611127771_6007dbdb56bf869d6fde8.png!small?1611127771664

该函数检测的时候是以绝对路径来检测的,当输入的路径中之一级目录是不存在的,返回了yes绕过该函数的检测。但是利用文件读取时,文件路径必须存在可访问,再次查看读取图片文件的代码片段,$avater是我们传入的参数,前面限制了一个路径,所以构造一个存在在限制路径下的路径便可以绕过上传时is_file()函数的检测。

1611127781_6007dbe54784996d45112.png!small?1611127781515

通过之前成功的上传发现相对路径目录在/z**/下面,构造路径进行尝试,成功传入路径。

1611127789_6007dbed02ff023cfdf6a.png!small?1611127789200

再获取图片信息,也成功读取到文件内容。

1611127794_6007dbf26563ebc0bca9b.png!small?1611127794667

0x3 总结

其实之前也遇到过类似的文件读取加密字符串验证路径,也是通过上传的时候修改了上传的路径,使得读取加密字符串为我们需要的路径,这也是容易忽略掉的一点,认为读取的时候加密就万事大吉了,不过这次的开发小哥也比较鸡贼,在bug修改后能够之一时间反应过来存在的问题,进行了限制。虽然过程有些坎坷,期间想草草结束完事,但是对于疑点还是坚持下去了,思路短缺的时候休息一下,再次启程就会发现更多新的东西。

相关文章

鹤岗房价为什么这么低(鹤岗房价为何会低得如

鹤岗房价为什么这么低(鹤岗房价为何会低得如此惊人)近日,有微博网友发文称东北某四线城市房价已经跌到令人难以置信的程度。3月鹤岗的均价是1240米,其中九州兴建小区周围300至320平的复式高层只要15...

PR复制快捷键是什么

pr复制快捷键是ctrl c。开启pr,双击鼠标导进新闻媒体以逐渐,挑选素材图片,点击打开,将素材图片拉进时间线,选定必须拷贝的视频素材,应用键盘快捷键ctrl c拷贝,再按住ctrl V,就可以拷贝...

黑客攻击网贷公司(黑客攻击代码)

黑客攻击网贷公司(黑客攻击代码)

  黑客凶猛:直接攻破P2P后台提现400余万   勒索病毒“永恒之蓝”在150余国家的传播,是这个周末互联网界最大的事情。帮主也有盆友中了毒。坏消息是,据外媒报道,来自“勒索软件”的威胁可能会升级,...

房产知识: 自建房有土地证如何办理房产证呢?

相信现在有很多的朋友们对于 自建房有土地证如何办理房产证呢?都想要了解吧,那么今天小编就来给大家针对 自建房有土地证如何办理房产证呢?进行一个介绍吧,希望小编介绍的内容能够为大家起到帮助哦 现在农...

我想要查老婆的微信聊天记录

今年双十一狂欢已经提前被打响。经过一天的“激战”,各家开始纷纷公布战况。作为电商平台之一苏宁易购也第一时间向全民公布了双十一嘉年华首日战报。 从数据中可以看出,苏宁易购...

茶杯泰迪犬多少钱一只(新手养茶杯泰迪好养吗

茶杯泰迪犬多少钱一只(新手养茶杯泰迪好养吗

茶杯泰迪犬是受到很多人欢迎的一种宠物犬。它体型小巧,又长相可爱。很多想购买的新手家长想知道的是茶杯泰迪犬好不好养,以及价格问题。今天小编就和大家简要介绍一下茶杯泰迪犬这方面的信息。 茶杯泰迪犬其...