对生物识别考勤机的一次简单渗透

iso60001  1653天前

在一次普通的红队行动中,我得到了客户的授权,对一个基于生物信息的考勤设备进行渗透。客户不仅用它来进行日常考勤记录,还用来控制某些特殊房间的人员流动。

虽然我以前并没有接触过这种品牌的机器,当然也更不可能有0day,但经过一番简单检测,我还是可以完全控制它。

以下就是我需要测试的设备。

33.jpg

在一开始,我就和该设备处于同一网络,而且已经清楚知道了它的IP地址。

就像往常一样,我利用nmap对设备进行了端口扫描,发现目标上运行着telnet和web服务。

44.jpg

看样子攻击只能从TelnetWebserver开始,此外,我未能获得telnet的指纹。一开始我尝试使用默认凭证登录telnet服务,但是并没有用。于是,我开始瞄准Web服务。

从扫描信息来看,web服务的指纹是ZK Web Server 3.0

55.jpg

通过对用户手册的阅读,我更好地理解了ZK Web Server 3.0的工作原理和内部架构。

随后在研究目标机器后发现这个web服务充满了漏洞,例如访问控制缺陷、会话固定缺陷、易受暴力破解的影响等等。

而危害最大的漏洞是这个web服务使用了默认凭证administrator:123456,我借此以管理员身份登录了设备。

66.jpg

为了完全控制设备,我进入到备份设备数据的页面,看看是否有涉及敏感文件的操作。

77.jpg

很快我便发现,由于访问控制不当,在无需身份验证的情况下,你就可以直接访问系统数据的备份。

我利用这个数据备份页面下载一个.dat文件,而该文件包含ZKConfig.cfg文件的数据,而这个文件中记录了telnet服务的登录凭证。

88.jpg

现在,我能够以root身份登录telnet服务。

99.jpg

在登录后我迅速检索了下系统文件,发现固件已经在目标机器中被解压缩了。

于是我将整个文件系统挂载到本地机器上,慢慢分析所有文件。我可以看到webserver的所有源代码,可以对其进行仔细分析,看看是否有其他漏洞。

aa.png

系统文件中还包含所有用户的敏感数据。下图是使用面部识别技术进入特殊房间的用户的照片。

100.jpg

此外还有一个SQLite数据库,记录了用户的详细信息,例如他们的身份凭证、指纹和其他生物信息。

110.jpg

我可以直接修改SQLite数据库中的数据,给任意用户进入特殊房间的权限。

我还使用了Firmwalker来提取固件中的一切敏感信息。

最后,这个考勤设备会使用API将所有数据备份到云服务器。因此,如果深入下去,也许可以对云主机进行一番渗透测试。当然,这并不在我的测试范围内,此次测试到此结束。

结论

像考勤机之类的物联网设备常常存在配置缺陷,任何人都可能通过简单的漏洞(例如默认密码、权限控制不严等)获取敏感数据,进而完全控制设备。物联网安全还有很长一段路要走。

本文由白帽汇整理并翻译,不代表白帽汇任何观点和立场
来源:https://medium.com/bugbountywriteup/pentesting-an-iot-based-biometric-attendance-device-10c0efd69392

最新评论

LubyRuffy  :  参考:**s://blog.infobytesec.com/2014/07/perverting-embedded-devices-zksoftware_2920.html
1653天前 回复
昵称
邮箱
提交评论