内网渗透测试基础——权限提升分析及防御_查看当前mandatory level

77 阅读5分钟

缺失补丁

当前的权限是Mandatory Label\Medium Mandatory Level,说明这是一个标准用户。接下来,将权限从普通用户提升到管理员,也就提升到Mandatory Label\Hight Mandatory Level。执行如下命令,通过查询C:\windows\ 里的补丁号(log文件)来了解目标机器上安装了哪些补丁,如图所示。


systeminfo


查看补丁

可以看到,目标机器上只安装了4个补丁。也可以利用如下命令列出已安装的补丁,如图所示。


wmic qfe get Caption,Description,HotFixID,InstalledOn


列出已安装的补丁

和前面得到相同的结果,目标机器上只安装了4个补丁。**这些输出结果是不能被攻击者直接利用的。**攻击者采取的利用方式通常是:寻找提取的EXP,将已安装的补丁编号与提权的EXP编号进行对比,例如KiTrap0D和KB979682、MS11-011和KB2393802、MS11-080和KB2592799,然后使用没有编号的EXP进行提权。

依托可以提升权限的EXP和它们的补丁编号,执行下列命令,对系统补丁包进行过滤。可以看到, 已经安装了KB976902,但没有安装KB43141,如图所示。


wmic qfe get Caption,Description,HotFixID,InstalledOn | findstr /C:“KB3143141” /C:“KB976902”


查找指定的补丁


知识点

“WMIC”是“Windows Management Instrumentation Command-line”的缩写。WMIC是Windows平台上最有用的命令行工具。使用WMIC,不仅可以管理本地计算机,还可以管理同一域内的所有计算机(需要一定的权限),而且在被 管理的计算机上不必事先安装WMIC。WMIC在信息收集和后渗透测试阶段是非常实用的,可以调取和查看目标机器的进程、服务、用户、用户组、网络连接、硬盘信息、网络共享信息、已安装的补丁、启动项、已安装的软件、操作系统的相关信息和时区等。


如果目标机器中存在MS16-032(KB3139914)漏洞,那么攻击者不仅能够利用Metasploit进行提权,还能够利用PowerShell下的Invoke-MS16-032.ps1脚本(进行提权。通过Invoke-MS16-032.ps1脚本可以执行任意程序,且可以带参数执行(全程无弹窗)。下面针对此问题进行测试。

把Invoke-MS16-032.ps1脚本上传到目标机器中(也可以远程下载并运行),然后执行如下命令,添加一个用户名为“1”、密码“1”的用户。


Invoke-MS16-032 -Application cmd.exe -Commandline “/c net user 1 1 /add”


查看当前用户,已经成功添加了用户“1”。此外,通过该脚本,可以添加和执行任意程序。执行如下命令,相当于启动“记事本”程序。


Invoke-MS6-032 -Application notepad.exe


1.2 Windows Exploit Suggester

Gotham Digital Security发布了一个名为“Windows Exploit Suggester"的工具,下载地址【github.com/GDSSecurity…

使用systeminfo命令获取当前系统的补丁安装情况,并将补丁信息导入patches.txt文件,如图所示。

exploit suggester获取补丁patches

执行如下命令,从微软官方网站自动下载安全公告数据库,下载的文件会自动在当前目录下以Excel电子表格的形式保存 ,如图所示。


#python2 ./windows-exploit-suggester.py --update


下载安全公告数据库

输入如下命令,安装xlrd模块,如图所示。


pip install xlrd -upgrade


xlrd-upgrade

使用Windows-Exploit-Suggester工具进行预处理。执行如下命令,检查系统中是否存在未修复的漏洞。


#python2 ./windows-exploit-suggester.py -d 2019-02-02-mssb.xls -i patches.txt


在实际的网络环境中,如果系统中存在漏洞,就有可能被攻击这利用。目标系统中存在未修复的MS16-075、MS16-135等漏洞,攻击者只要利用这些漏洞,就能获取目标系统的System权限。因此,在发现漏洞后一定要及时进行修复。Metasploit还内置了local_exploit_suggester模块。这个模块用于快速识别系统中可能被利用的漏洞,使用方法如下,如图所示。

metasploit漏洞

1.3 PowerShell中的Sherlock脚本

通过PowerShell中的Sherlock脚本(github.com/rasta-mouse…


Import-Module .\Sherlock.ps1


powershell-sherlock脚本

img img img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!

开源项目:docs.qq.com/doc/DSlVlZExWQ0FRSE9H