本文为了解决高校校园网内打印机数量众多,大量打印机使用默认配置导致的安全问题。网络打印机智能化程度越来越高,功能繁杂,一般厂商为了开箱即用,默认功能全部开放且使用默认超级用户密码,会导致信息泄露或被攻陷后成为跳板机对其他目标进行攻击。我们结合管理制度和技术手段对校园网内网络打印机进行整治。从技术手段识别出全网网络打印机,并且获取元数据和网页截图固化证据,通过在用户打印机打印出通知文本提示用户联系权威机构,建立沟通渠道,下发几十项安全检查点并要求整改。通过以上方法,大大增强了校园网内网络打印机的安全性。

1、高校打印机面临的安全问题及解决思路

打印机作为工作中最常见的办公设备,因为责任人不清、责任人安全意识薄弱导致打印机成为了严重的信息泄露源和安全盲区。打印机相比数据中心服务器,通常缺乏必要的关注和安全防护。有报告指出,每天大约有8万台打印机对互联网暴露[1]。这些暴露的打印机会导致包括但不止于拒绝服务攻击、特权升级或绕过、操作或读取打印内容、信息泄露、远程代码执行、漏洞利用等问题[2]。高校内各个部门或者实验室均会配备至少一台网络打印机,如果打印机由于配置错误或者漏洞导致被攻陷,会对使用打印机和内网的用户造成严重威胁[3]。李莉等[4][5]分析了网络打印机存在的风险并提出了防护建议,史岗[6]和郭磊[7]从保密层面对打印机安全性进行了分析并给出了防范措施。

网络打印机智能化程度提高,复杂的功能带来了对打印机维护人员较高的技术能力要求。网络打印机品牌众多,管理界面复杂,可配置项多,为了方便用户开箱即用,往往所有协议、服务和功能全部开启,没有任何安全配置。网络打印机可能支持打印、扫描、传真、复印等功能。

网络打印机支持的连接方式包括:有线网络、无线网络、USB直连、网络共享、Wi-Fi Direct,云打印等。有线网络连接支持的协议包括TCP/IP、IPX/SPX、NetBIOS、NetBEUI、NetWare、EtherTalk等。为了方便PC、移动端使用打印机,打印机也支持多个自发现和打印机制,包括蓝牙、NFC、WiFi、SLP,mDNS,Multicast、WSDiscovery、Bonjour,AirPrint、SSDP、UPnP等等。打印协议支持WSD,LLTD,LLMNR,LPR/LPD、Raw、IPP、WS Print、SMB等等。打印机可通过Web UI、REST API、SNMP、TELNET、SSH、PJL等方式进行管理。打印的语言支持:PCL、PostScript、KSSM、KS5895、HP-GL/2、ESC/P、TIFF/JPEG、PDF、XPS、DocuWorks、Automatic Language Switching、CustomizedPJL、RPCS等等。

打印机一般使用精简Linux或者实时操作系统,内建服务包括LDAP、POP3、ProxyServer、WebDAV,SOAP,ThinPrint、AirPrint、Mopria、AppleTalk、Telnet、SNMP、FTP、SMB/WINS、SNTP、HTTP、XMPP等。由上可知网络打印机实际上已经是一台小型的服务器,应当做好相应的安全保护。

高校校园网有边界防火墙,可以阻挡打印机部分端口对外开放,有些学校对用户网段和服务器网段分开,用户网络限制不能对外提供服务,这些安全措施从一定程度上缓解了网络打印机造成的风险,然而在校园网内部,如果未做好安全域隔离,网络打印机的安全风险在校园网内部还是存在。对于网络打印机的安全性整改,解决思路为从管理和技术两个层面进行。管理上通过内部公文系统下发打印机安全配置等相关要求,技术上通过全网扫描打印机,对未加固的打印机进行多轮通知整改,达到最终所有打印机均做好较为安全的设置。

2、打印机安全整改流程:发现、取证、通知、整改

从管理层面入手,通过出台物联网设备安全管理方法,网络打印机专项安全防护细则等规章制度,首先从主体责任和安全意识入手,引起各部门和普通用户对打印机安全性的重视。通过管理层面,可以解决一部分问题,然而有些用户思想上重视了,但是由于技术能力和其他客观因素,导致整改不到位,所以需要配合技术手段进行常态化检查。

由于网络打印机如果未做好安全配置,在校园网内是可以随意访问的。我们从攻击者视角,使用简单的Python脚本,对暴露在校园网内的多轮通知未整改的打印机进行发现和检查,并且采用打印通知信息到用户打印机的方法通知用户。

发现:我们使用nmap扫描校园网内所有网段网络打印机常用的515、631、9100端口,如果这些端口开放,则记录到可能的打印机列表文本文件内。

取证:由于发现机制存在一定的误报可能,所以我们对可能的打印机IP进行指纹识别,通过人工筛选等方法尽量做到误报率最小。我们对可能的打印机列表文本文件,每一个IP地址,均使用ipptool命令获取打印机的元数据,主要包括打印机制造商、型号、打印机名称、打印机UUID、打印机WiFi连接信息、固件版本和开机时间,将可以获得的元数据存入打印机元数据列表文件内。接着对可能的打印机列表文件,每一个IP地址,使用Python模块pyppeteer获取HTTP端口上的网页标题和截图,并保存成图片。

分析:我们接着对端口开放情况、元数据、网页标题、截图进行排查,识别出校内打印机类型和分布情况,剔除误报的IP。并直接连接到打印机获取部分配置信息,形成校园网内网络打印机安全性报告。

通知:我们根据IP段归属对IP段管理员进行通知,对于多次通知仍未处理的打印机,我们使用Python脚本将一张拟好的通知A4纸内容打印到用户打印机上。具体为使用lpadmin命令行根据打印机IP地址添加打印机,使用lpr命令行打印出通知文本,打印完毕删除打印机完成通知。

整改:在通知文本内,我们提供了群号,要求所有看到通知的用户联系打印机责任人加群,在群内下发整改具体方法和解答用户的疑问,并且最终整理入常见问答内。

因为打印机资产随着时间会有所变化,所以我们通过定期多轮实施以上流程进行整改。对于打印机的发现,如果有全网认证系统或者有收集所有设备IP地址对应的MAC的数据库,也可直接从MAC地址前缀识别出打印机。对于通知,如果已经有建立了比较完善准确的IP对应用户数据库,也可直接通过邮件或者其他渠道通知,实践证明,直接打印通知到打印机对用户的震慑比其他通知手段效果更为明显。

3、打印机安全配置和使用最佳实践

在网络打印机安全专项整改中,我们分析了各个不同类型的打印机的功能,并给出了以下安全检查点要求打印机管理员逐项检查。

1.□是否明确了主体责任,确定专门的管理员。办公环境内个人电脑责任人一般较为清晰,然而公用设备有时责权不清,应指定专门的人员负责。

2.□是否对打印机建立台账。部门内打印机较多,应当建立台账跟踪打印机全生命周期管理和定期安全检查记录。

3.□是否对用户进行了安全培训。打印机的安全性不止管理员需要关注,普通用户也应具备一定的安全意识。

4.□是否淘汰了无安全能力的打印机。应当采购具有安全能力的较新的打印机,如打印机无安全能力,可在打印机前加上防火墙设备保护或直接连接PC机USB接口使用。

5.□是否限制了打印机主动对外的网络访问权限。应当检查是否设置了作业日志历史记录自动发送到恶意邮箱,是否设置了作业完成发送信息到恶意邮箱,是否开启了SNMP Trap,是否有将Syslog发送到远程恶意IP,检查是否开启了打印机发送匿名打印统计信息给厂商等。

6.□是否检查打印机有无配置了代理信息。有些网络层面的限制会限制打印机无法直接访问外网,然后打印机可通过配置代理服务器实现外网访问,应检查是否被恶意配置了代理。

7.□是否检查扫描发送邮件的账户信息。扫描发送的邮件地址和远程SMTP服务器应当使用自主可控的账号和服务器,并检查邮件服务器配置是否有开启发送后保存等功能,如果开启,应当关闭或者定期删除。检查邮件账号配置是否存在转发功能。扫描如果不是附件而是URL则应当在打开URL时仔细确认URL是否安全,不随意打开不是自己扫描的文件地址。

8.□是否定期对打印机进行配置核查。应当定期检查打印机是否被复位,配置被更改。任何可以物理接触到打印机的人均可对打印机进行复位并且配置恶意设置,有条件的应当在打印区域设置监控摄像头。应当定期检查各项配置是否生效。使用漏洞扫描设备或nmap等对打印机从各个网络环境进行扫描。

9.□是否定期清理打印机敏感信息。应定期清理打印机历史记录,格式化硬盘。清理之前可先导出配置信息,格式化或者复位后重新导入配置。

10.□是否定期检查打印机的设备状态,对日志进行审计。

11.□是否定期从官方渠道更新打印机固件。

12.□是否使用点对点方式接收扫描敏感内容。扫描文件接收一般有USB、邮件、FTP、网上邻居等多个模式,敏感内容应尽量使用USB、FTP、网上邻居等途径。

13.□是否对接收扫描件的FTP和网上邻居等服务做好安全防护。如果使用FTP、网上邻居等模式,FTP和网上邻居账户密码应当设置强密码,并且设置防火墙只允许打印机访问。或只在需要扫描时开启服务。并定期更新FTP服务软件以避免安全漏洞。扫描完的文件应当移出FTP和网上邻居目录。

14.□是否修改了默认的管理员密码。密码应当是强密码。

15.□是否遵循最小权限原则关闭所有不必要的服务和协议。任何不必要的服务和协议均应当关闭。使用率较低的功能可在需要使用时再开启。

16.□是否检查打印机自带的文件存储功能。如果打印机自带文件存储功能,应当关闭。

17.□是否检查了云打印服务。包括各个厂商提供的云打印服务。

18.□是否检查打印机有无启用了无线热点功能。

19.□是否限制了打印机的打印用户名。如果可能,应当对每个需要使用打印机的用户开启单独账户。

20.□是否限制了打印机的服务IP地址访问控制列表。应当限制打印机只允许需要的用户的IP地址才可访问。

21.□是否正确配置了IPv6等相关配置。应当对IPv6和IPv4一样对待,避免出现IPv4做好安全配置但是IPv6无任何保护的问题。

22.□是否考虑到敏感文件名泄露问题。打印机一般均会留下打印记录,打印记录所有可打印用户或IP均可查询,敏感文件名应当改名再打印。

23.□是否已经评估过打印机信息泄露的风险。打印机可能泄露包括通讯录、用户IP信息、打印记录、首次打印时间、打印张数等信息。

24.□是否定期更新专用驱动或打印软件。应当尽量只采用操作系统自带的打印能力。如果安装了打印机厂商提供的打印软件,应当定期更新打印软件。

25.□是否有过滤垃圾传真信息,定期清理传真文件。

26.□是否实施了正确的报废流程。报废之前应当复位,销毁内部存储芯片,拔除硬盘和存储卡。

27.□是否实施了正确的维修流程。打印机场内场外维修应当做好防止信息泄露措施。

28.□是否对关键部门进行保护。在网络层面限制打印机端口在内网暴露。对关键部门应加强防护,减少用户不规范使用带来的安全问题。

通过管理手段和技术手段相结合,通过常态化检查,可大大提高高校校园网内打印机的安全性。本文的打印机技术发现手段只能识别联网打印机,如果是直接连接计算机的打印机,只能从管理层面进行整治。本专项治理思路和流程未来可以扩展到其他物联网设备诸如摄像头、门禁、考勤机、大屏幕、内网交换机、路由器、中控系统、贵重仪器设备、工控设备、各类联网传感器等。

参考文献

[1]SHADOWSERVER.OpenIPPReport-ExposedPrinterDevicesontheInternet[EB/OL][2020-06-10].https://www.shadowserver.org/news/open-ipp-report-exposed-printer-devices-on-the-internet/.

[2]JENSM.HackingPrinters[EB/OL][2020-07-06].http://hacking-printers.net/wiki/index.php/Main_Page.

[3]KRITKORNK,CATTALYYAN,KORRAWATP,etal.HackingPrinters:MIT‘sPrintersSecurityAnalysis[EB/OL].(2018-05-16)[2020-07-06].https://courses.csail.mit.edu/6.857/2018/project/kritkorn-cattalyy-korrawat-suchanv-Printer.pdf.

[4]李莉,陈诗洋,杨子羿,等.网络打印机安全研究与防护建议[J].电子产品世界,2019,26(3):58-61.

[5]天地和兴工业网络安全研究院.打印机主要网络安全问题及改进建议概述[EB/OL][2020-07-06].https://www.secrss.com/articles/23521.

[6]史岗,李姗.打印机安全风险与防范解析[J].保密科学技术,2017(1):26-29.

[7]郭磊,刘博,崔中杰.打印机信息安全风险与防范措施研究[J].保密科学技术,2018(01):43-47.

本文受中国高等教育学会高等教育科学研究“十三五”规划课题2018年度教育信息化专项课题资助(基于备案和指纹识别的高校网站安全管理策略,2018XXHYB03)

作者:郑海山、林霞、洪江民、萧德洪,单位为厦门大学信息与网络中心

声明:本文来自中国教育网络,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。