某大学教务在线登录逆向

网址:aHR0cHM6Ly9pZHMuY3F1cHQuZWR1LmNuL2F1dGhzZXJ2ZXIvbG9naW4=

目标:本次目标是完整的登录进该网站,逆向该网站的参数,并使用python模拟登录

1.开启f12抓包,可以输入一个常用的username和pwd,一般我username使用11111111111,pwd使用111111,然后找到登录的包查看,主要有两个加密参数,一个password和一个execution

2.找到需要加密的参数后,查看堆栈,发现是一堆看不懂的东西,然后差不多可以确认是有html发包,所以不能直接找堆栈,需要搜索参数

3.搜索password,找到两个很关键又很明显的地方,一个是encrypt.js和login.js划线处,先分析login.js划线处,点击进去

点进去后看到注释了一个登陆前校验,感觉很大可能password加密便是此处,然后打上断点,登录

 看到加密的结果,然后查看这个函数的输入参数,一个是输入的密码,一个是html标签id为pwdEncryptSalt的value值,然后跟进这个encryptPassword函数

 

 跟进函数一眼望去,答案便在眼前,看到AES key和iv 就大概知道他是AES算法的CBC模式,不管三七二十一只要不用python还原,就一个扣就完了,然后还看到了一个randomString函数,字面意思就是一段随机字符串,长度由传进去的参数决定,就在encryptPassword函数下面,然后pwd0就是需要传入的密码,key是标签id为pwdEncryptSalt的value值(放断点之前忘记截图了,再截也是不一样的值,懒得截图,和下面的execution参数一样)

全部抠出来大概7百多行

 4.解决完password参数,接下来就是找到execution参数,搜索一下,发现html标签上面有一个name为execution,value的值和execution参数非常相似,然后根据我逆向的经验觉得,对于html发包的一些参数的值很可能会由登录界面html的标签里的值来

 为了验证这个想法,将value的值复制到控制台,然后放掉断点,用眼睛比较,懒人就比较头和尾,两段字符串不能说一模一样,只能说由9成9相似

 

5. 好了到此为止加密的两个参数已经解决,然后前面画线的encrypt.js就是加密函数所在地,可以直接找到加密函数,然后该网站的AES加密没有魔改,所以可以直接网上搜索python实现AES的CBC模式加密,不需要执行JS文件

 

6.由于教务在线使用了rs5代,所以测试是否成功就不再教务在线测试,在下图这个网站进行测试,查看是否出现了姓名(没有账号的的当我没说)

 末尾出现了学号和姓名,到此为止该网站的登录逆向分析到此为止,完结 

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值