惠普打印软件JetDirect漏洞致多款网络打印机受威胁

安全 漏洞
本月中,西班牙研究人员Guerrero研究发现惠普打印软件JetDirect存在漏洞,使攻击者可以绕过生物或刷卡的安全保护,访问部分打印文档,或通告网络对存在漏洞的网络打印机造成拒绝服务攻击。

本月中,西班牙研究人员Guerrero研究发现惠普打印软件JetDirect存在漏洞,使攻击者可以绕过生物或刷卡的安全保护,访问部分打印文档,或通告网络对存在漏洞的网络打印机造成拒绝服务攻击。

JetDirect虽然是惠普设计的,但是众多打印机都使用该软件,包括Canon、Lexmark、Samsung和Xerox。该软件负责处理通过网络提交的打印请求。网络打印机通过JetDirect协议,侦听,接收打印请求数据,如下图所示是通过nmap扫到网络打印机的监听端口:

惠普打印软件JetDirect漏洞致多款网络打印机受威胁

当连接到网络打印机后,JetDirect会添加额外的信息使得打印机能够解析打印任务。此处涉及3个关键概念。

UEL (Universal Exit Language ) ,这些命令通常在发往打印机的数据包的头和尾,语法形如%-12345X,0x1B表示ESCape

PJL (Printer Job Language ),用于告诉打印机执行什么动作,是对PCL的额外支持。

PCL (Printer Control Language ),用于规范格式化页面的基本语言。看是去无害的,但却成为大多数解析器和解释器的漏洞利用代码。

如下图所示为典型的打印任务数据包

惠普打印软件JetDirect漏洞致多款网络打印机受威胁

由于研究者是用西班牙语写的,注释只能凑合着看了,想了解具体意思恐怕要看JetDirect官方手册了:

http://h20000.www2.hp.com/bc/docs/support/SupportManual/bpl13207/bpl13207.pdf

http://h20000.www2.hp.com/bc/docs/support/SupportManual/bpl13211/bpl13211.pdf

通过修改传入PCL/PJL解析器的tags,攻击者便可触发DoS攻击。

也许企业想已经有指纹访问,PINs,密码,智能卡等等已经可以有效保护他们的打印机,但事实上,那些企业里经过深度加密的文档,一旦发送到打印机去,便自动失去了保护。攻击者可以直接访问或重新打印打印机内存内的打印任务。研究人员认为以下产品都存在安全漏洞:

Canon, Fujitsu, HP, Konica Minolta, Lexmark, Xerox, Sharp, Kyocera Mita, Kodak, Brother, Samsung, Toshiba, Ricoh, Lanier, Gestetner, Infotek, OCE, OKI

 漏洞一:绕过认证

一般企业打印机都有各种认证防止非授权访问打印机,如RFID卡,指纹识别,智能卡,LDAP密码

惠普打印软件JetDirect漏洞致多款网络打印机受威胁

但事实上通过往打印机的网络端口发送如上所说的特殊数据包,即可绕过认证使用网络打印机。

[[62870]]

结果如下所示:

惠普打印软件JetDirect漏洞致多款网络打印机受威胁

分析发往打印机的文档可发现两个重要label:

1 @ PJL SET JOBNAME = "C: \ Documents and Settings \ Divine \ My Documents \ TU \ TDOC \ cad files \ kapak.dwg Model (1)"

2 @ PJL SET USERNAME = "AAA"

漏洞二:篡改打印任务Assigning work to system users

进一步利用上面的漏洞,攻击者可以修改分配到打印任务label的值。(此处小编理解为使用排队中的任务号,打印自己修改的内容)

惠普打印软件JetDirect漏洞致多款网络打印机受威胁

漏洞三:制造拒绝服务攻击

如上数据包所示,发送到打印机的数据信息,包括决定文档样式,文档格式结构,打印机动作参数等,都是值得关注的地方。这些值都会被打印机解析器解释。因此在这些点上传入一个不被期望的值,则可造成DoS攻击。

下面以一段PCL打印指令为例说明:

1 ^[&l7H^[&l-1M^[*o5W^M^C^@^G?^[*o-2M^[*o5W^M^B^@^@^A^[*o5W^K^A^@^@^@^[*o5W^N^C^@^@^E^[*o5W^N^U^@^@^@^[&l110A^[&u600D^[*o5W^N^E^@^S`^[*o5W^N^F^@^[g^[*r4724S^[*g12W^F^_^@^A^BX^BXg # W——配置栅格数据命令,如上面的g12W,负责设置颜色深度,垂直和水平分辨率等。

o # W ——配置驱动命令,如上面o5W,通常用于执行设置打印机的指令,具体可参见每个打印机的配置表单。

& L7H——设定纸张源,本例子代表自动

& L-1M——Media Type Bond

& L110A——结合PCL_JENV_CHOU3宏代码定义纸张的高度

& U600D——表示每英寸PCL的单元数

修改任意以上的参数为未预期值,都可能造成打印机掉线或直接迫使它们需要人工reset。如下图所示:

惠普打印软件JetDirect漏洞致多款网络打印机受威胁

漏洞四:触摸屏

其中一个现代打印机的先进之处就是有一个触摸屏,通过触摸屏可以控制一些配置页面,例如下图修改FTP服务的配置。

(原文还有一处通过输入超长字符串造成DoS攻击效果)

惠普打印软件JetDirect漏洞致多款网络打印机受威胁

SANS上周已经就此发出安全警告,以此提醒企业对网络打印机安全的重视。

责任编辑:蓝雨泪 来源: freebuf
相关推荐

2010-05-04 16:12:12

Sco Unix

2011-04-21 09:11:36

惠普打印机维修代码

2012-06-25 11:20:35

恶意软件

2011-06-21 10:00:39

惠普打印机行情

2011-09-05 17:03:29

惠普打印机

2021-12-02 05:35:03

惠普打印机漏洞

2011-04-27 13:51:34

惠普喷墨打印机维修流程

2011-05-06 15:00:16

老式打印机无线打印机

2011-03-21 10:10:38

nagios打印机

2009-01-03 08:57:00

网络打印机共享

2021-12-05 12:10:05

打印机漏洞HP公司

2011-08-16 10:20:42

惠普激光打印机

2009-02-10 09:49:45

2011-04-27 15:37:56

惠普大幅面打印机应用技巧

2011-09-11 17:06:59

惠普激光打印机

2012-02-01 15:14:03

惠普喷墨打印机

2011-06-03 13:54:48

打印机应用技巧

2011-05-07 13:39:35

2011-05-03 17:39:17

设置网络打印机

2012-10-09 13:03:38

惠普打印机
点赞
收藏

51CTO技术栈公众号