找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

2481

积分

0

好友

344

主题
发表于 4 天前 | 查看: 14| 回复: 0

在一次针对教育行业目标的信息收集后,我发现了一个心理测评系统的登录入口。

心理测评系统登录界面

面对登录框,一套完整的安全测试思路可以帮助我们系统地寻找突破口。

登录框安全测试思维导图

我首先尝试了常见的弱口令组合,使用admin/123456成功进入了系统后台。

后台管理工作台界面

进入后台后,首要任务是寻找可能存在的敏感信息泄露。很快,在“个人报告”功能模块中,发现了大量数据。

个人报告列表泄露数万条数据

该接口直接泄露了超过4万条个人报告记录。不仅如此,系统内其他数据接口也存在类似问题。

测评任务人员列表接口

观察请求参数,发现存在user_idtask_id等ID参数。我通过抓包并对这些ID参数进行遍历测试(例如从1遍历到9999),发现不同ID对应的数据量差异很大,最多的一个接口返回了近6000条数据,最少的也有一两条。

遍历ID参数的HTTP请求与响应

使用工具进行参数遍历和测试

累计下来,通过这些接口泄露的数据总量至少达到了十万条级别。

在完成信息泄露漏洞的确认后,我开启了自动化SQL注入测试插件,并在后台进行各种功能点击,以让流量经过插件检测。这里有一个关键点:开启插件后,应避免进行“增加”、“删除”这类会修改数据的操作,以免对目标系统造成影响。主要进行“查询”、“点击”等操作,几分钟后,插件报告了结果。

整理发现,系统内共有7个不同接口的参数存在SQL报错注入漏洞。

发现报错型SQL注入漏洞

另一个注入点的请求与报错响应

为了进一步验证和利用,我使用sqlmap对其中一个注入点进行了测试。

sqlmap检测确认MySQL数据库注入

成功获取了当前数据库名,并探测到数据库服务器版本为MySQL 5.1或以上。

sqlmap获取数据库列表

进一步可以dump指定表的结构和数据。

获取数据库表结构信息

其他几个注入点利用方法同理,这里不再一一展示。

完成注入漏洞的挖掘后,我继续对后台功能进行深入测试。在“测评任务”管理页面,发现了一个“导出人员名单”的功能。

测评任务管理后台界面

点击任务选项中的“更多”,然后选择“导出人员名单”,系统会生成一个包含用户敏感信息的Excel文件。

导出人员名单功能右键菜单

导出的文件内容包含了账号、姓名等大量敏感数据。

导出的Excel人员名单数据

对于这类导出功能,常见的安全问题是越权访问和未授权访问。由于当前身份是管理员,我重点测试是否存在“未授权访问”漏洞。

测试方法很简单:将下载链接复制到一个全新的、未登录过该系统的浏览器窗口中直接访问。测试发现,该文件下载链接无需任何身份认证即可直接访问并下载。

未授权直接下载人员名单文件

浏览器下载历史记录显示成功下载

从文件大小来看,这些文件同样包含了大量数据。

后续,通过浏览器插件识别出该网站采用ThinkPHP框架开发。我直接使用针对ThinkPHP的漏洞扫描工具进行检测。

ThinkPHP框架漏洞扫描结果

扫描结果显示存在一处信息泄露漏洞(对应CVE-2022-25481)。通过访问特定的payload路径,可以泄露服务器环境信息。

通过信息泄露漏洞获取服务器路径

在返回的信息中,可以清晰地看到网站的绝对路径(DOCUMENT_ROOT)。如果之前挖掘的SQL注入点具备写文件权限(例如数据库用户为root),结合这个绝对路径,理论上可以尝试写入Webshell。考虑到当前已发现的漏洞危害等级已经足够,后续的利用点到为止,未再进行深入测试。




上一篇:手把手教你搭建通用AI Agent技能运行环境:免费用DeepSeek/Gemini玩转Claude Skills
下一篇:外包转正机会突降?资深同事揭秘公司竞聘内幕与应对策略
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-1-24 02:59 , Processed in 0.258248 second(s), 40 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表