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

img
img
img

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

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以戳这里获取

​ 在Windows中,权限大概分为四种,分别是User、Administrator、System、TrustedInstaller。在这四种权限中,我们经常接触的是前三种。第四种权限TrustedInstaller,在常规使用中通常不会涉及。

  • User:普通用户权限,是系统中最安全的权限(因为分配给该组的默认权限不允许成员修改操作系统的设置或用户资料)。
  • Administratror:管理员权限。可以利用Windows的机制将自己提升为System权限,以便操作SAM文件等。
  • System:系统权限。可以对SAM等敏感文件进行读取,往往需要将Administrator权限提升到System权限才可以对散列值进行Dump操作。
  • TrustedInstaller:Windows中最高权限。对系统文件,即使拥有System权限也无法进行修改。只有拥有TrustedInstaller权限的用户才可以修改系统文件。

​ 低权限级别将使渗透测试受到很多限制。在Windows中,如果没有管理员权限,就无法进行获取散列值、安装软件、修改防火墙规则、修改注册表等操作。

​ Windows操作系统中管理员账号的权限,以及Linux操作系统中root账户的权限,是操作系统的最高权限。提升权限(也称提权)的方式分为以下两类。

  • **纵向提权:**低权限角色获得最高权限角色的权限。例如,一个WebShell权限通过提权,拥有了管理员权限,这种提权就是纵向提权,也称作权限升级。
  • 横向提权: 获得同级别角色的权限。例如,在系统A中获取了系统B中的权限,这种提权就属于横向提权。

常用的提权方法有系统内核溢出漏洞提权、数据库提权、错误的系统配置提权、组策略首选项提权、Web中间件漏洞提权、DLL劫持提权、滥用最高权限令牌提权、第三方软件/服务提权等。

1. 系统内核溢出漏洞提权分析及防范

溢出漏洞就像往杯子里装水——如果水太多,杯子装不下了,就会溢出来。计算机中有个地方叫缓存区。程序缓存区的大小是事先设置好的,如果用户输入数据的大小超过了缓存区的大小,程序就会溢出。

系统内核溢出漏洞提权是一种通用的提权方法,攻击者通常可以使用该方法绕过系统的所有安全限制。攻击者利用该漏洞的关键是目标系统没有及时安装补丁——即使微软已经针对某个漏洞发布不了补丁,但如果系统没有立即安装补丁,就会让攻击者有机可乘。然而,这种提权方法也存在一定的局限性——如果目标系统的补丁更新工作较为迅速和完整,那么攻击者要想通过这种方法提权,就必须找出目标系统中的0day漏洞。

1.1 通过手动执行命令发现缺失补丁

获取目标机器的Shell后,输入“whoami /groups”命令,查看当前权限,如图所示。

缺失补丁

当前的权限是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"的工具,下载地址【https://github.com/GDSSecurity/Windows-Exploit-Suggester】。该工具可以将系统中已经安装的补丁程序与微软的漏洞数据库进行比较,并可以识别可能导致权限提升的漏洞,而其需要的只有目标系统的信息。

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

exploit suggester获取补丁patches

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


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


img
img
img

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

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以戳这里获取

习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!**

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以戳这里获取

  • 25
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值