惠普打印软件JetDirect漏洞致多款网络打印机受威胁(附分析)

2013-01-29 361368人围观 ,发现 5 个不明物体 系统安全

本月中,西班牙研究人员Guerrero研究发现惠普打印软件JetDirect存在漏洞,使攻击者可以绕过生物或刷卡的安全保护,访问部分打印文档,或通告网络对存在漏洞的网络打印机造成拒绝服务攻击。
JetDirect虽然是惠普设计的,但是众多打印机都使用该软件,包括Canon、Lexmark、Samsung和Xerox。该软件负责处理通过网络提交的打印请求。网络打印机通过JetDirect协议,侦听,接收打印请求数据,如下图所示是通过nmap扫到网络打印机的监听端口:

通过nmap扫到网络打印机的监听端口

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

UEL (Universal Exit Language ) ,这些命令通常在发往打印机的数据包的头和尾,语法形如%-12345X,0x1B表示ESCape
PJL (Printer Job Language ),用于告诉打印机执行什么动作,是对PCL的额外支持。
PCL (Printer Control Language ),用于规范格式化页面的基本语言。看是去无害的,但却成为大多数解析器和解释器的漏洞利用代码。

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

典型的打印任务数据包

由于研究者是用西班牙语写的,注释只能凑合着看了,想了解具体意思恐怕要看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 可绕过认证使用网络打印机

结果如下所示:

成功绕过认证

分析发往打印机的文档可发现两个重要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的值。(此处小编理解为使用排队中的任务号,打印自己修改的内容)

打印任务label

漏洞三:制造拒绝服务攻击
如上数据包所示,发送到打印机的数据信息,包括决定文档样式,文档格式结构,打印机动作参数等,都是值得关注的地方。这些值都会被打印机解析器解释。因此在这些点上传入一个不被期望的值,则可造成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^BX

g # W——配置栅格数据命令,如上面的g12W,负责设置颜色深度,垂直和水平分辨率等。
o # W ——配置驱动命令,如上面o5W,通常用于执行设置打印机的指令,具体可参见每个打印机的配置表单。
& L7H——设定纸张源,本例子代表自动
& L-1M——Media Type Bond
& L110A——结合PCL_JENV_CHOU3宏代码定义纸张的高度
& U600D——表示每英寸PCL的单元数
修改任意以上的参数为未预期值,都可能造成打印机掉线或直接迫使它们需要人工reset。如下图所示:

惠普打印机出错

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

修改FTP服务的配置

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

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

分析原文:viaforensics

这些评论亮了

  • 墨阳 回复
    光有Fenix。
    )9( 亮了
  • jack (3级) 回复
    是不是网络打印机和作为外设接在电脑上的打印机都受影响呢?
    )7( 亮了
  • Linver (1级) 回复
    我想会对此提醒企业对网络打印机安全的重视。 :smile:
    )6( 亮了
发表评论

已有 5 条评论

取消
Loading...
css.php