在日常抓取登录数据包的时候经常会遇见传输数据是加密的情况
遇到这种情况,如果不知道加密算法的详情,就无法按照web的加密格式发送加密报文去进行爆破,因为报文中的username_code、password_code和加密后的username、password为对应关系。
下面说下思路,目前已知username、password为加密字段,首先在浏览器打开登录界面,F12调出控制台,禁用缓存,保留日志:
进行一次登录操作,在network中找到登录报文,确定报文中的加密字段和加密后的密文(其实这一步在burp中抓包依然可以获得),这一步最主要的是获取浏览器已经缓存的web使用的js加密文件。
在sources模块下ctrl+shift+f全局搜索第一个加密字段,username,会出来所有与username有关的js代码,这时候可以每个都点进去看下,具体的代码是不是加密有关的。
有个小技巧,大家在f12最开始确定加密字段的时候,点进去的那个数据包的包名,一般与js代码的文件名对应。
进入js代码后,寻找加密字段即可,看下加密的逻辑,可以看到明显的key、iv值及运算模式为CBC
使用解密平台进行解密,填充模式可以多试几次不同的填充,可以看到完美进行解密。
现在加密算法已有,对自己的字典进行对应加密,在使用burp进行爆破即可,本文为一个小白的心得,如有不足之处请大家留言指出。