来自鲁尔高校联盟的一组研究人员已经在历史悠久的PostScript语言中发现一项跨站打印bug E安全2月3日讯 由戴尔、三星、惠普、兄弟Brother、柯尼卡以及利盟Lexmark等知名制造商推出的多款高人气机型受到安全漏洞影响,黑客能够利用此项漏洞窃取密码、从打印任务中提取信息并关闭对应设备。 这一发现源自鲁尔高校联盟的一组研究人员,他们已经根据研究成果发布了一系列建议以及对应的维基信息。 此次影响到多达20种打印机型号的漏洞涉及几类常见打印语言,包括大多数激光打印机所使用的PostScript与PJL。此漏洞并非新鲜事物,专家们表示其存在时间已经长达数十年之久。
研究人员们还发布了一款名为Printer Exploitation Toolkit(即打印机漏洞利用工具包,简称PRET)的Python概念验证应用,其可用于简化针对打印机上基于PostScript及PJL文件系统的访问流程。 这款工具能够通过网络或者USB接口接入打印机,且可用于利用由研究人员们在打印机的PostScript或PJL语言中发现的安全漏洞。“此工具允许人们捕捉或者操纵打印任务,访问打印机的文件系统及内存甚至导致对应设备发生物理性损坏。”
研究人员们公布了六份建议报告,其中涵盖多种相关问题,具体包括缓冲区溢出、密码泄露以及打印任务捕捉等安全漏洞。 在此类攻击活动中,一种技术允许攻击者访问打印机的文件系统。此方法利用跨源资源共享(简称CORS)机制以允许第三方域在打印过程中读取字体等网页数据。 将CORS欺诈与跨站点打印(简称XPS)相结合,攻击者们能够利用其通过“一个隐藏Iframe向受害者内部网络中打印机的端口9100/tcp发送HTTP POST请求”,从而实现Web类攻击。
根据研究人员们的说明,其能够通过修改PostScript输出命令将来自打印机的数据重新发送回浏览器。
以下为JavaScript概念验证代码:
跨站点打印攻击的局限性 需要注意的是,PCL作为页面描述语言并不可用于实现CORS欺诈,这是因为其仅允许单一数字作为响应。PJL同样无法用于实现CORS欺诈,因为其只会使用以面向全部已响应字符串@PJL ECHO ,这意味着其无法模拟一条有效的HTTP标题头。不过这并不代表经过强化的XSP攻击仅限于PostScript任务之内:PostScript可用于响应一条欺诈性HTTP标题头,而该UEL随后可通过调用切换打印机语言。通过这种方式,网络攻击者亦能够在PJL命令中包含对应结果。 这里我们需要提及两种现有陷阱实现方式:
如果该打印机设备支持普通文本打印,则XHR的HTTP请求标题头会被作为硬拷贝进行打印——其中包括用于容纳调用恶意JavaScript之URL的Origin标题头字段,这意味着攻击者将更难以静默方式活动。这样的结果将不可避免,因为我们并不具备对该打印机的控制权——而且某些情况下能够禁用打印功能——除非该HTTP本体得到处理且其HTTP标题头已经被打印机设备解释为普通文本。如果降低噪声对于攻击者非常重要,则其可以尝试首先利用IPP、LPD、FTP或者打印机中的嵌入Web服务器等其它潜在XSP通道在PJL任务媒介中通过正确的PJL命令禁用打印功能。另外,测试证明所有协议皆可通过如上所述方式利用跨协议脚本变种成功实现打印任务部署。但除了无法利用欺诈CORS标题头提供反馈之外,各协议还存在着自己的弊端:
以下为跨站点打印通道间的比较结果: 实现XSP的一大关键在于找到目标打印机的正确地址或者主机名称。我们的方案在于滥用大多数现代浏览器中存在的WebRTC,其能够将枚举本地网络接口的IP地址。拥有了本地IP地址,XHR对象随后即可用于开启指向其余全部253个地址的端口9100/tcp的连接,从而利用PostScript与CORS欺诈检索打印机的产品名称。根据我们的测试,整个过程只需要几秒钟时间。如果该打印机与受害者主机处于同一子网当中,则其地址可利用JavaScript以相同的方式检测得出。 WebRTC目前在Safari中处于开发阶段,并受到火狐、Chrome以及微软Edge等浏览器的当前版本的支持。IE浏览器不支持WebRTC,但VBScript与Java能够以类似的方式被用于泄露本地IP地址。如果无法检索该本地接口地址,我们则采取一种较为聪明的暴力破解方法:我们尝试利用XHR对象接入受害者路由器的端口80.为了实现这一点,我们列出了一份来自互联网的访问资源列表,其中列举了115条默认路由器地址。如果目标路由器能够访问,我们则会扫描其子网以查找打印机,之后的步骤如前所述。 POC概念验证概念验证方案证明,先进跨站点打印攻击活动具备可行性,且能够对企业及各类组织机构造成切实威胁。其具体实现方式参阅/xsp/。其已经在火狐48、Chrome 52、Opera 39以及IE 10中得到成功验证。需要指出的是,Tor浏览器会屏蔽该攻击,因为其会尝试通过Tor网络接入全部地址——包括本地地址——这意味着XSP请求永远不会抵达内网打印机处。 相关工具打印机漏洞利用工具包:https://github.com/RUB-NDS/PRET 跨站点打印攻击POC验证:http:///xsp/ 安全专家们已经将这一问题报告给全部相关打印机供应商。 昨日头条: E安全注:本文系E安全独家编译报道,转载请联系授权,并保留出处与链接,不得删减内容。联系方式:① 微信号zhu-geliang ②邮箱eapp@easyaq.com |
|