我在具有域名并可从公司网络外部访问的高级办公打印机上进行了nmap扫描。令人惊讶的是,我发现了许多开放的端口,例如http:80,https:443和svrloc:427等。操作系统指纹在某处显示:“ ... x86_64-unknown-linux-gnu ...”,这可能表示这是某种嵌入式Linux,运行某些服务器软件以实现打印机的功能。

我怎么知道这台打印机是否在增加网络的攻击面?例如,是否可以通过远程特权升级漏洞利用它。然后对网络中的其他主机发起隧道攻击?

评论

您会惊讶于使用打印机和复印机能获得多少乐趣;)

如果需要分步教程,请参考电影Office Space。

如果您告诉我们为什么需要从外部进行访问(例如,远程管理员,自动耗材订购或远程打印?),它可能会对答案有所帮助

另外请注意,如今大多数打印机/复印机/扫描仪都将已打印/复印/扫描的图像存储在打印机内存中。而且由于您的打印机可以从网络外部访问...。我确定您可以看到它的运行方向。

@Moses当我阅读这篇文章时,我以为这篇文章是关于Office Space的:)

#1 楼

您可以在使用打印机,复印机和其他此类设备-甚至UPS时玩得很开心。安全性通常是最好的事,即使不是完全不存在。

我见过的东西:


在各处使用的默认凭据以及基于Web的配置面板以明文形式存储密码,通常在生成的配置文件中。我从未见过比普通MD5更好的密码,在一种情况下,我看到了CRC32。
使用默认的或搞笑的SNMP私有名称空间名称(通常是“ private”,“ SNMP”或制造商名称),从而允许您重新配置TCP / IP设置,将条目注入路由表中,等等。而且通常有多种方法可以更改控制面板中无法设置的设置。软砖化设备非常简单。
在默认设置下在设备上启用了UPnP,从而带来了更多的远程配置乐趣。通常,您可以打印测试页,硬重置设备,重置Web面板凭据等。通常也可以修改TCP / IP设置和其他网络属性。
2.2.x和2.4.x内核非常过时,通常会有很多不错的root权限升级漏洞。
系统上写得不好的固件升级脚本,使您可以将任意固件刷新到内部微控制器。如果愿意花费大量时间开发设备,则可以使用它来对设备进行砌砖,或者安装rootkit。易于远程操作。
服务以root身份运行,用户组设置不正确,文件权限设置不正确。
打印作业通过执行Shell脚本异步运行,从而可以轻松地将特权提升到守护程序(通常是root)。
设备内置的写得不好的FTP服务器。我敢打赌,模糊器可能会使大多数FTP守护程序崩溃。
所有常见的webapp都会失败,但尤其是文件上传漏洞。摆好打印机后,通常可以从SMB握手中获取用户名和其他有用信息。您还会经常发现打印机的Web控制面板的密码被重新用于其他网络凭据。

最终,打印机是网络上的一台内部计算机。 。这意味着您可以使用它来将攻击引导到网络上的其他计算机。在某些情况下,我设法将gcc和nmap装到复印机上,然后用作复印机的基础。

解决方案是什么?首先,您需要认识到打印机和复印机通常是成熟的计算机,通常在ARM处理器上运行嵌入式Linux。其次,您需要将它们锁定:


将设备的固件更新到最新版本。
从互联网上断开打印机的防火墙。这应该很明显,但是经常被遗漏。基于TCP / IP的打印机/复印机通常绑定到0.0.0.0,因此它们可以很容易地潜入WAN。
如果可以使打印机仅侦听LAN的流量,请这样做。 Web控制面板上的默认凭据。同样,很明显,但仍然不是很常见。
查找设备上运行的所有服务,并尝试自己闯入它们。进入后,更改密码并关闭不需要的内容。
为自己准备一个SNMP发现工具,并深入研究打印机可用的内容。 SNMP有一些学习曲线,但是值得一看。
如果您进行内部网络监视,请设置一条规则以监视打印机发出的异常信息。这样可以立即减少误报,并可以很好地指示什么时候发生了躲闪事件。

总而言之,如果它是您网络中插入的设备,则可能是可伪造的,应该成为风险管理的一部分。

评论


非常全面的答案。我会仔细阅读,看看有什么可能。我喜欢这样的事实,即它们可能正在使用具有足够安全漏洞的非常老的内核,以进行远程特权升级并轻松发起隧道攻击。

–hsnm
2012年11月6日17:09

@mikebabcock的问题是确定哪些是合法流量?

–hsnm
2012年11月7日14:23

@hsnm对于明显的东西来说不太难-应该允许您的打印机启动传出TCP连接吗?是否应该允许您的打印机执行DNS查询?您是否真的需要允许UPnP和SNMP通信到达?

–多项式
2012年11月7日14:39

如多项式所示,@ hsnm的最佳策略通常是允许在绑定的515/9100中进行打印,而根本没有打印机发起的连接。即使没有阻止生根打印机,这也可以防止有根打印机被用来攻击其他设备。

–mikebabcock
2012年11月7日23:34

阅读此书后,我感觉就像将打印机扔出了窗户。

– Herr
2012年11月8日17:33

#2 楼

这里的主要问题是可以从网络外部访问打印机。我从未见过需要从网络外部访问打印机的情况,我的意思是!我建议您紧急修复该问题!管理员密码。

评论


这也适用于具有通过Web访问的习惯的打印服务器。

–多项式
2012年11月7日12:28

#3 楼

打印机通常会维护已打印文档的日志,有时会包含这些文档的副本,这些副本本身可以远程下载。即使文档本身不是敏感的元数据,有时也会泄漏诸如文件服务器名称,发送源的计算机,用户名等信息。

#4 楼

通常,在许多网络中,打印机都是看不见的,无法缓解的风险。我们倾向于不将它们视为计算机,但事实是,几乎任何现代网络打印机都具有相当复杂的打印服务器,通常运行某种形式的嵌入式linux,并且对安全性的考虑很少。由于它们中装有完整的微控制器,从理论上讲,很可能用打印机或网络上的开放网络插孔进行的任何攻击也都可以从打印机进行。 >在接近直接连接到网络的打印机时,我首先要问为什么它需要住在那里,而不是通过其他类型的打印服务来要求将文档排队。如果有令人信服的理由使其驻留在您的网络外部,是否有理由允许它进入内部?如果Internet可用,内部用户可以像网络外部的人一样通过Internet连接到它。这也可以提供一些隔离。

#5 楼

这是一个攻击点,所以是的,它增加了网络的攻击面。该点可用于访问另一个内部网页。也许您的打印机具有可以窃取或重播的网络凭据,等等。

对打印机的一个简单攻击就是更改其配置,以保存在本地打印或扫描/传真的文档,以后再取回它们。打印机本身是无关紧要的,它是它可以为您提供访问权限的数据。 (我们的Lexmark打印机可以做到这一点)。即使物理打印机要求我们出示我们的访问徽章,VNC连接也会劫持打印机本地人员,凭据和所有内容的“会话”。打印机类型以及攻击的持续性。

评论


感谢你的回答。您所描述的内容对于想要滥用打印机本身的攻击者是有好处的。我特别想知道攻击者如何将打印机用作攻击其他计算机的跃点。这一点非常重要。

–hsnm
2012年11月6日在16:44

#6 楼

这是打印机受到损害的独特物理含义:

http://it.slashdot.org/story/11/11/29/1752231/printers-could-be-the-next- Attack-vector

我使用过Nessus,发现即使是具有家庭网络上最基本功能的打印机,也会出现诸如默认凭据和大量开放端口等漏洞。

#7 楼

看起来很奇怪,您也许有理由,但是很少有业务需要使打印机可以在防火墙和VPN外部访问。现在,我要概括地说,但要使用“高级”打印机:


请记住,“安全打印机”不会增加销售。首先,很少有工程上的努力来保护打印机。
由于上述原因,软件和内核可能会更旧。也就是说,它们的安全漏洞已广为人知并已发布
不要将其视为“打印机”,它实际上是运行Linux的服务器。您无法轻松修补或强化的Linux
对于更复杂的攻击,它本质上是一个很好的起点,因为这种情况很可能破坏了设计安全策略时做出的许多安全假设(例如:FTP密码正常,因为没有恶意网络嗅探器)。伪造DNS => MITM =>在外部传送SSL流量。
如果恰好是扫描程序,许多设备会将扫描的文档缓存在temp文件夹中(类似于设备内打印机队列)

#8 楼

我想提一下这方面的另一个方面-许多复印机/设备制造商会要求他们作为支持联系人的一部分可以远程访问设备。这肯定会导致一些公司允许直接访问该设备。

更好的解决方案是允许外部支持人员仅连接到堡垒主机,然后从那里连接到复印机/设备。 />

评论


是的..但是增加了成本和维护开销。

–hsnm
2012年11月6日23:04

同意,但是对于大多数公司而言,引入该措施将是审慎且合理可行的。

– scuzzy-delta
2012年11月6日23:46

或者,将制造商的IP网络块列入白名单,然后将其余的防火墙防火墙。

–多项式
2012年11月7日12:29

@Polynomial我觉得即使无法从网络外部访问打印机,它仍然是网络上的攻击媒介。如果您通过打印机发起多跳攻击,它可能会带来更多机会。例如,攻击者可以带上笔记本电脑并连接到无线网络(如果有),然后通过打印机到达其他地方。

–hsnm
2012年11月9日下午2:00

@hsnm是的,但是打印机对大多数企业来说都是必不可少的。

–多项式
2012年11月9日下午6:56