近期,IT安全公司SEC Consult的一份分析报告指出,上百万的嵌入式设备,包括家用路由器、调制解调器、IP相机、VoIP电话等,都使用相同的、硬编码的SSH加密密钥或HTTPS服务器证书。这意味着,如果攻击者可以远程访问其中的一台设备,那么他就可以使用相同的方法登录其他上百万、来自于不同厂商的设备,进而实施各种攻击。
加密密钥重用
该分析报告调查了来自70个不同厂商的4000台嵌入式设备,发现这些设备共用了超过580个私有的加密密钥。
其中使用最频繁的两种静态密钥如下:
1、SSH主机密钥
2、X.509 HTTPS证书
SSH主机密钥使用公钥/私钥对验证运行SSL服务器的设备的身份。如果攻击者窃取了该私钥,就可以实施中间人攻击,冒充服务器与目标用户进行通信。
HTTPS是具有安全性的SSL传输协议,HTTPS证书则用来加密用户和网站服务器之间的流量。一旦攻击者获取了其服务器设备的私有证书,就可以通过解密流量获取用户的用户名、密码和其他敏感信息。
上百万设备因此可能遭受攻击
安全专家在对580个相同的密钥进行分析时,发现其中至少230个备受厂商“青睐”,仍然在超过400万物联网设备中使用。其中,320万设备共用约150个HTTPS服务器证书,9000台设备共用约80个SSL主机密钥。其余的加密密钥可能被用在未联网设备中,但是仍然有可能在其内网中遭受中间人攻击。
有了这些从固件中提取的加密密钥,攻击者就可以登录物联网中使用相同密钥的任意设备,或者实施进一步攻击。
产生原因
这个问题的根源在于厂商创建和部署产品的方式:一般情况下,厂商都会根据芯片制造商的software development kits (SDKs)创建设备固件,不会更改SDKs中的源代码和加密密钥或证书。
导致攻击者可以借助HTTPS和SSH访问物联网设备的原因主要如下:
1、厂商的不安全的配置
2、UPnP的自动端口转发
3、ISP(互联网服务提供商)会将用户设备配置成可远程管理
重用加密密钥的厂商列表和分布情况
SEC Consult的调查中发现来自50个厂商的超过900款产品中存在硬编码的密钥重用问题,但是实际数字应该远远超过这些,因为该项调查只是针对产品固件。
调查的厂商列表如下:
ADB,AMX,Actiontec,Adtran,Alcatel-Lucent,Alpha Networks,Aruba Networks,Aztech, Bewan,Busch-Jaeger,CTC Union,Cisco,Clear,Comtrend,D-Link,Deutsche Telekom,DrayTek,Edimax,General Electric(GE),Green Packet,Huawei,Infomark,Innatech,Linksys,Motorola,Moxa,NETGEAR,NetComm Wireless,ONT,Observa Telecom,Opengear,Pace,Philips,Pirelli,Robustel,Sagemcom,Seagate,Seowon Intech,Sierra Wireless,Smart RG,TP-LINK,TRENDnet,Technicolor,Tenda,Totolink,unify,UPVEL,Ubee Interactive,Ubiquiti Networks,Vodafone,Western Digital,ZTE,Zhone,ZyXEL。
如下为受影响程度排名前十的国家和地区:
1、美国
2、墨西哥
3、巴西
4、西班牙
5、哥伦比亚
6、加拿大
7、中国
8、俄罗斯
9、台湾
10、英国
总结
为解决该问题,厂商应该为每台物联网设备设置安全的随机加密密钥。ISP(互联网服务提供商)应该确保用户端设备不能通过WAN被远程访问,如果需要远程支持,则需要建立“采用严格访问控制列表的专门的VLAN网络”。