——
前几周实习单位安排了一次对某区教育单位的授权渗透
挖了好久完全没思路,幸亏我的好友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
)
&
gt
;
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个资产,美滋滋
申明:本公众号所分享内容仅用于网络安全技术讨论,切勿用于违法途径,
所有渗透都需获取授权,违者后果自行承担,与本号及作者无关,请谨记守法.
原文始发于微信公众号(掌控安全EDU):渗透测试项目实战—利用浏览器插件登录后台!
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论