介绍

这篇文章是让你开始Windows权限提升的一个尝试。虽然它不是一个全面的指南,但会尽量涵盖所有的主要技术,给一个你可以建立的基础。

在这篇文章的底部有一个非常好的资源列表。

操作系统

让我们从一个受限的用户账号开始权限提升的过程。在这一点上,我们掌握很少(或者没有)关于系统功能的信息,比如谁会使用它,什么时候系统处于空闲状态,或者它连接到那台主机等。

确定操作系统的名字以及版本:

1

检查系统的体系结构:

2

注意:如果系统是32位,上面的命令将返回“x86”,如果是64位系统,它将返回“AMD64”。

查看所有环境变量:

3

查看计算机上所有用户的列表:

4

或查看某个用户的详细信息:

5

网络

查看系统的网络设置—基本网络、路由、防火墙等。

查看可用的网络接口:

6

查看路由表:

7

查看ARP缓存:

8

查看防火墙规则:

9

应用程序和服务

查看系统运行的服务以及应用程序,补丁版本,查看系统上的调度任务:

10

查看服务的进程:

11

查看已安装的驱动程序列表:

12

很多有价值的信息可以从WMIC或者Windows Management Instrumentation命令行获取。这些信息都非常有用,可以让你执行从获取数据到卸载程序等一系列的操作。

查看已安装程序的版本(更多的漏洞,非常重要):

13

同样,查看系统的服务、进程或启动程序:

14

查看非特权用户可不可以执行微软的可执行文件(.msi):

15

注:如果提示:“系统找不到指定的注册表项或值”,通常意味着该选项没有设置。

检查是否有设置setuid或setgid。

16

检查安装的更新和安装日期:

17

或者搜索可以提升权限的漏洞:

18

如果您从上面的命令任何输出,意味着补丁没有安装。

敏感的数据和目录

检查加密的密码,或包含敏感信息的文件:

19

除此之外,还可以检查未被注意的安装日志文件,这些文件通常包含base64编码的密码。在大型企业中更可能找到这些文件,在个别系统的手动安装是不切实际的。这些文件的共同位置是:

20

文件系统

看看我们有什么样的访问权限,哪些目录是可访问的,文件上设置了哪些权限。

使用预先安装的语言来突破限制。

21

或者启动一个FTP会话,并在它上面执行命令?

22

或者使用VBS脚本:

23

检查那些文件夹可写:

24

有用的系统漏洞利用脚本

有了上面这些信息,我们可以开始实际提升特权的过程了,下面是一个允许我们上传文件的VBScript:

25

此脚本是非常有用的,他可以在任何的Windows系统中,运行脚本:

26

如果目标的操作系统是Win7及以上,只需使用bitsadmin功能:

27

搜索漏洞和shellcode

  • http://www.exploit-db.com
  • http://1337day.com
  • http://0day.today
  • http://www.securityfocus.com
  • http://seclists.org/fulldisclosure/
  • http://www.exploitsearch.net
  • http://www.securiteam.com
  • http://metasploit.com/modules/
  • http://securityreason.com
  • https://cxsecurity.com/exploit/
  • http://securitytracker.com/

其他优秀的资源、脚本、工具和指南