Windows权限提升
由于最近一直感觉自己一些基础还不太扎实 所以重新看了下一些基础课程 做了一些笔记。视频是看到B站的小迪安全。现在看来可能有一点;老了 但是用来补下基础还是不错的,然后我也做了一些简单的笔记(不太详细)
一些基础命令

针对环境
web
拿到一些webshell权限后 在这上面进行一些权限提升的操作
本地
在本地提权 比如从普通用户到管理员用户权限
提权方法
溢出漏洞
信息用到的一些简单命令
ipconfig //查看IP地址
whoami //查看当前权限
whoami -prv //当前用户可以做的事情
systeminfo //打印系统信息 systeminfo >x.txt 打印到x.txt里面 //查看操作系统版本 对补丁进行筛选
补丁筛选优秀项目
vulmap(脚本用ps直接执行 但是在后门环境中有可能没有ps这个环境。利用环境受限)
wesng (对比systeminfo 中的补丁信息进行筛选 输出结果 在自己的本地执行就可以)
windowsvulnscan (要在ps环境下运行 但是可以直接systeminfo运行一下 然后将文件修改为指定的格式)
利用MSF或特定EXP
有漏洞编号放到网上的普通搜取。
信息收集 -> 补丁筛选 -> 利用MSF或特定EXP -执行 ->西瓜到手
数据库
在系统溢出漏洞无果的情况下,可以采用数据库进行提权,但需要知道数据库提权的前提条件:服务器开启数据库服务及获取到最高权限用户密码。除access数据库外,其他数据库基本都存在数据库提权的可能。
很多新师傅容易搞混的是 这里是指通过数据库获取主机权限而不是提升数据库权限。
数据库提权步骤
服务探针->信息收集->提权利用
Mysql
UDF (基于MYSQL调用命令执行函数)
1.读取网站上的配置文件 (sql config database include...)需要root账号密码
2.读取数据库存储或备份文件 (了解其数据库存储格式及对于内容)@@basedir/data/数据库名/表名.myd
3.利用脚本暴力破解(了解数据库是否支持外联及如何开启外联)
4.远程本地暴力破解
5.利用自定义执行函数导出dll文件进行命令执行
6.手工创建plugin目录或利用ntfs流创建
MySQL<5.1 导出目录 c:/windows或system32
mysql=>5.1 导出安装目录/lib/plugin
MOF(基于mysql的特性安全问题 成功率最低的)
启动项 (基于配合操作系统自启动)
导出自定义可执行文件到启动目录配合重启(可以使用DDOS)执行 可以配合msf执行 但是必须开启外联
反弹shell
本机监听端口 反弹函数
sqlserver(只在windows上)
xp_cmdshell
默认在2000开启 在2005默认关闭。
调用xp_cmdshell执行命令
sp_oacreate
主要调用OLE对象 利用OLE对象的run方法来执行命令
利用sqlserver沙盒提权
Oracle(jsp搭建的网站不需要提权,自带system权限)
普通用户
前提是拥有一个普通的Oracle连接账号,不需要DBA权限 可提权至DBA权限并以Oracle实例运行的权限执行操作系统命令。
DBA用户 (自动化工具)
拥有DBA账号密码,可以省去自己手动创建存储过程的繁琐流程,一键执行测试。
注入模式(sqlmap)
拥有一个SQL注入点,可以通过注入点直接执行系统命令,此种模式没有回显,需要自己验证。
Redis
利用计划任务执行命令执行反弹shell
学ssh-keygen公钥使用私钥登录
低权限写webshell
Postgresql
CVE-2019-9193 CVE-2018-1058
令牌窃取
原理:进行远程过程调用时请求提升权限,然后调用它从而生成特权安全令牌执行特权操作,当操作系统允许令牌不仅用户进程本身,还用于原始请求进程时,漏洞就会出现。
主要用于windows 2008之前
操作流程 使用msf执行即可
单独的时候可以在Web权限和本地权限提权
使用烂土豆时是在web权限和数据库权限下提权
AT&SC&PS
概念讲解
AT 2003 计划命令 设计计划命令 存在逻辑缺陷导导致达到system权限。
SC 创建服务 绑带DIN 启动服务都一样 执行服务可以道道system权限。
PS 配合PSTOOLS使用 执行一串命令可以达到system权限。
烂土豆
配合令牌窃取提权过程
上传烂土豆->执行烂土豆->利用窃取模块->窃取systeam->成功
DLL劫持
原理windwos程序启动的时候需要DLL,如果运行DLL不存在,则可以通过在应用程序要查找的位置放恶意DLL来提权。通常 windos应用程序有其预定义好的搜索DLL的路径。它会根据下面的顺序进行搜索
1.应用程序加载的目录
2.c:\Windows\Systeam32
3.c:\Windows\Systeam
4.c:\Windows
5.当前工作目录Current Working Directory CWD
6.在PATH环境变量的目录(先系统后用户)
过程: 信息收集->进程调试->制作DLL并上传->替换DLL->启动应用后成功
DLL劫持进行提权需要特定软件应用的控制权和启用配合,复杂鸡肋。
引号路径
当Windows服务运行时,会发生以下两种情况。如果给出了可执行文件,并且引用了完整路径,则系统会按字面解释它并执行,但是,如果服务的二进制路径未包含在引号中,则则造作系统将会执行找到的空格分隔的服务路径的第一个实例。
过程:检测引号服务路径->利用路径制作文件并上传-启用服务或重启->调用后成功
服务权限
原理:即使正确的引用了服务路径,也可能存在其他漏洞。由于管理配置错误,用户可能对服务拥有过多的权限。例如:直接修改它导致重定向执行文件。
过程:检测服务权限配置->制作文件并上传->更改服务路劲指向->调用后成功。
思路总结
提权漏洞部分适用在不同的环境 当然也有一些通用知识
提权漏洞也有系统版本区别 特性决定了利用面
提权漏洞部分需要第三方环境,如数据库 第三方提权等。