——
来自学院学生Ocircle投稿:前几周实习单位安排了一次对某区教育单位的授权渗透
挖了好久完全没思路,幸亏我的好友Lynnn逸推荐了一个及其好用的插件让我找到了突破口
——START
网站url访问情况:
一拿到手就是一个OA,啥信息都没有。(网站的主页就是OA
寻找半天无果,多亏Lynnn逸
这个插件是FindSomething,挺好用的,会自动爬取网站js里的敏感信息与路径,谷歌浏览器可直接在扩展里搜索下载
安装完插件后重新访问
返回一连串路径,选择右上角复制url,放到txt文件中,我们利用python脚本进行处理
以下脚本的目的主要是访问txt中的路径然后根据返回状态码与返回包长度,当状态码为200且长度超过1024B时判定该路径泄露信息,并将此路径输出只res.txt中
(脚本可以寻求chatgpt进行辅助,跟它说你的需求,让它给你定制
-
import requests
-
from time import sleep
-
with open('xxx.txt', 'r') as f_in, open('xxx-res.txt', 'w') as f_out:
-
for line in f_in:
-
url = line.strip().replace('../', '').replace('./', '')
-
response = requests.get(url)
-
if response.status_code == 200 and response.status_code != 302:
-
if len(response.content) > 1024:
-
f_out.write(url + '\n')
-
print(url,'information !!!!')
-
print(url,' 200')
-
print(url,'Done')
-
sleep(0.5)
这里长度的1024B可根据实际情况进行调整,比如先手动访问了一条路径,发现有返回但是没有返回数据,便记录下它的长度。如下图,路径无返回数据,但是返回包长度为658B,我们就可以设定脚本的判定临界为658B,甚至可以更大些。
第一个路径泄露667位教师信息,包含了姓名和登录名,其中还有系统管理员的登录账号
第二个路径泄露学生信息,有姓名与学号班级和登录名
通过泄露的学生信息,归纳出登录账号逻辑如下 2xx(入学年份后两位)27050(固定,可能为学校代码)xxx(三位数,可能为入学编号)
接着继续利用插件,获得默认密码为123123
密码123123,构造账号payload,抓取登录数据包并进行爆破
爆破:(一开始试的是123456,后面插件发现的123123)
爆破结果
123456
123123
那就拥有学生账号可以登录后台了,此时却存在强制修改密码逻辑
分析登录成功的返回包发现存在needChangePassword参数,改成false即可绕过登录
可查看其父母和自己的身份证电话住址等信息
后台尝试上传和越权等操作均失败,测试就到此为止,写个报告交差了
而后进行其他网站测试时发现此OA为通用系统,提取指纹特征后放到鹰图发现为市里中小学通用OA系统,53个资产,美滋滋
声明:⽂中所涉及的技术、思路和⼯具仅供以安全为⽬的的学习交流使⽤,任何⼈不得将其⽤于⾮法⽤途以及盈利等⽬的,否则后果⾃⾏承担。所有渗透都需获取授权!
免费领取安全学习资料包!
渗透工具
技术文档、书籍
面试题
帮助你在面试中脱颖而出
视频
基础到进阶
环境搭建、HTML,PHP,MySQL基础学习,信息收集,SQL注入,XSS,CSRF,暴力破解等等
应急响应笔记
学习路线