布景
本地文件包括(LFI)缝隙是一种危害性较大的缝隙类型。一旦呈现进犯者将或许运用其,读取文件源码或灵敏信息,包括歹意文件,履行恣意代码,乃至操控服务器等。大多数LFI进犯都是由动态加载图画或其他文件的代码引起的。假如恳求的文件名或途径未做正确验证,就会形成该缝隙的发作。
IKEA.com
宜家是世界上最强壮的品牌之一;在福布斯排行榜中为前50名。毫不夸大的说,每个人家里都至少有一件产品来自宜家;我爱IKEA!你呢?能够在谈论中告诉我你最喜欢的宜家产品。
除了宜家的产品外,另一个值得我称誉的当地便是,他们具有很多且规划合理的网站和应用程序。为了更好的用户体会,他们还为此开设了一个bug赏金方案,答应咱们安全的浸透测验他们的渠道并发布,只需咱们恪守缝隙发表规矩。下面,就让咱们试一试吧!
寻觅方针
大多数时分我都是从枚举子域开端的,Aquatone是我最常用的一款枚举东西。该东西会在不同的公共域数据库中查找域,并回来活动子域列表,包括屏幕截图等。了解有关Aquatone的更多信息,请检查Apple.com陈述中的Unrestricted File Upload(无限制文件上传缝隙)。
Bathroom planner
经过一番查找,其间一个Bathroomplanner.IKEA.com的子域引起了我的留意。这是宜家供给的一个在线规划东西,主要是为客户体供给创意和现成的澡堂解决方案。经过它客户能够查找产品,并将其增加到自己的澡堂产品列表中。除此之外,还能够经过电子邮件发送产品列表,或以PDF格局下载至本地保存。生成的PDF文件包括一些文本和产品图片信息。如下:
到这儿我有个疑问,这个PDF是怎么生成的呢?
让咱们翻开burp经过阻拦阅读器和宜家服务器之间的流量来一探终究。咱们翻开主页,并测验将产品增加到咱们的列表中。
能够看到这儿有几个十分有意思的字段:
data:包括产品和图片代码的 *** ON blob,没有文件途径
shopping:包括咱们产品列表的 *** ON blob,没有文件途径
pdf:一长串字符,内容不明
images:一些base64编码后的图片
base64解码
当你看到一长串字符时,请必须检查其是否为Base64编码的字符串。Base64编码常用于文件的数据传输。这儿引荐咱们一个在线的base64字符串编码解码网站:http://decodebase64.com/
假如咱们将该字符串直接粘贴到解码器中,你会发现解码犯错;这是由于该字符串中包括有%之类的无效字符。这也阐明该字符串或许也经过了URL编码,所以在Base64解码之前,咱们先进行URL解码。相同,引荐咱们一个在线的URL解码和编码网站:https://meyerweb.com/eric/tools/dencoder/
进行URL解码后,再Base64解码咱们将得到以下字符串:
这看起来有点意思。当咱们将产品增加到列表中,它会为宜家Web服务器供给一些用于生成PDF购物清单的模板。
假如咱们能够将本地服务器文件包括到此PDF中,会发作什么? 例如图片?试试看,我将增加到了该模板,并进行了Base64和URL编码,替换Burp Suite中的pdf参数并Forward。
长话短说,这并不起作用。PDF生成器无法将该文件辨认为图片,而且不会在输出中解析它…
B方案:辨认PDF库,搜索库中的缺点
或许咱们能够找到另一种在PDF中包括文件的办法?首要,咱们要弄清楚的是生成PDF的东西是什么?咱们能够经过Google搜索模板中的一些共同字符串来得到答案。
搜索成果为咱们供给了两个挑选,node-html-pdf库或mPDF库。在快速阅读了它们的文档后,终究我确定在该项目中运用的为mPDF库。
辨认mPDF中的安全问题
咱们马上 *** 了一个mPDF的本地副本,以便检查它是否存在安全缝隙。更好的起点是CHANGELOG,开发人员一般运用该文件来盯梢版别之间的改变。
能够看到在2019年10月19日,mPDF改变了他们处理注释标签的 *** 。因而,让咱们细心检查文档中的该标签。
[1] [2] 黑客接单网
跟着各种网络技能不断发展,黑客关于网站进犯也总是不断改换战略以及通过相互之间的交流来改善进犯技能。而事实上就现在网站安全方面,面对的应战首要也正是来自于进犯技能不断的演进,使得防护也需不断晋级。在之...
因为一向在做 Web 缝隙扫描器的开发, 那么就必定少不了 Web 的缝隙测验环境, 其中就包含 bWAPP、DVWA、OWASP WebGoat 等这些国际品牌。 这些缝隙环境一般建立比较繁琐, 并...
一、前语 本文提出了一种清晰界说的办法,即通过勘探假定出检测歹意字符串的规矩并编写Payload,来绕过跨站脚本进犯(XSS)的安全防备机制。咱们提出的办法共包含三个阶段:确认Payload结构、勘探...
前语 php代码审计介绍:望文生义便是查看php源代码中的缺陷和错误信息,剖析并找到这些问题引发的安全漏洞。 1、环境建立: 工欲善其事必先利其器,先介绍代码审计必要的环境建立 审计环境 window...
DOM是Web渠道编程模型的根底,其规划和功用直接影响着浏览器管道(Pipeline)的模型,可是,DOM的前史演化却远不是一个简略的工作。 在曩昔三年中,微软的安全专家们早现已开端在Microsof...
Rust是一门体系编程言语,专心于安全,尤其是并发安全,支撑函数式和指令式以及泛型等编程范式的多范式言语。Rust在语法上和C++类似,可是设计者想要在确保功用的一起供给更好的内存安全。 由于Rust...