服务粉丝

我们一直在努力
当前位置:首页 > 财经 >

实战|记一次测试过程中登录参数加密逆向分析

日期: 来源:黑白之道收集编辑:

在测试过程中遇到一个登录框,看到前端加密的情况下对密码处进行了简单的加密分析
在控制台中打开网络,匹配Fetch/XHR,可以看到password处进行了加密处理

在js中全局搜索encrypt
这里可以看到使用的是AES的ECB模式加密(这可以使用python的Crypto-js库来写加解密脚本或者从前端提取出js进行逆向,因为该库中有c(t)函数中所调用的enc,AES方法)

第一种方法使用python脚本来进行加密

from Crypto.Cipher import AES
from Crypto.Util.Padding import pad, unpad
import base64

key = b'0123456789ABCDEF'
cipher = AES.new(key, AES.MODE_ECB)

def encrypt(msg):
plaintext = msg.encode('utf-8')
padded_plaintext = pad(plaintext, AES.block_size)
ciphertext = cipher.encrypt(padded_plaintext)
return base64.b64encode(ciphertext).decode('utf-8')


def decrypt(ciphertext):
ciphertext_bytes = base64.b64decode(ciphertext.encode('utf-8'))
padded_plaintext = cipher.decrypt(ciphertext_bytes)
plaintext = unpad(padded_plaintext, AES.block_size)
return plaintext.decode('utf-8')

enData = encrypt('123456')
print(enData)
print(decrypt(enData))

运行结果(可以看到跟一张图中的password加密值一致)

第二种方法提取前端js来逆向,整体代码如下

const CryptJs = require('crypto-js');

function c(t) {
var e = CryptJs.enc.Utf8.parse(t);
return CryptJs.AES.encrypt(e, {
"words": [
808530483,
875902519,
943276354,
1128547654
],
"sigBytes": 16
}, {
mode: CryptJs.mode.ECB,
padding: CryptJs.pad.Pkcs7
}).toString()
}


data = 123456;
console.log(c(data))

运行结果也一致

整个过程如下
先找到核心函数 function c(t),对此函数开始和结尾下个断点


光标移到i.a处,可以看到使用的是crypto-js库中的方法,所以可以将i.a替换为变量CryptJs(因为js文件中定义了 const CryptJs = require('crypto-js');所以可以直接使用CryptJs替换i.a)

当运行这个js文件时会报错o没有定义


这时回到断点处,将光标移到变量o处(或者在控制台中输出o的值再复制)

此时将o替换成我们复制出来的值


运行结果跟查询的一致


在进行登录框爆破时可以使用该脚本进行批量加密,将加密后的密码当作字典进行爆破

记一次测试过程中登录参数加密逆向分析.zip (1.972 MB) 下载附件https://xzfile.aliyuncs.com/upload/affix/20230413125742-b92ccc22-d9b7-1.zip


原文链接:https://xz.aliyun.com/t/12423


黑白之道发布、转载的文章中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途及盈利等目的,否则后果自行承担!

如侵权请私聊我们删文


END

多一个点在看多一条小鱼干

相关阅读

  • 蟾蜍虽丑 能赚大钱

  • “蟾蜍,俗称癞蛤蟆。养殖蟾蜍是投资小、收益高、见效快的新兴特种养殖行业。今年市场价:蟾衣每公斤4万元左右,蟾酥每公斤七八万元,不愁销路。”4月25日,听到牡丹区沙土镇贾庄村蟾
  • 光谷的“变”与“不变”(记者手记)

  • 光谷,创新热土。每次探访,总有新的惊喜。  上一次,还在惊叹华工科技43秒焊接一辆新能源车车身,这一次,他们又捧出了全球首发400G系列相干光模块;上一次,武汉新城中心片区还是一片
  • 一个让女性受益终身的动作,后悔没早点知道

  • 漏尿,相信是大家都不想遇上的尴尬。很遗憾的是,差不多每 3 个中国成年女性中,就有 1 个出现漏尿困扰[1]。随手拿起重物,看视频大笑,鼻子痒打了个喷嚏,尿就控制不住地流出。要是发
  • 五一民宿价格暴涨,你被“住宿刺客”坑了吗?

  • *本文为「三联生活周刊」原创内容五一长假就要到了,城里的人打点行装,就要奔赴各地的大好河山了。话说看到一个段子,城里人要下乡,乡下人要进城,两组人路上互相打量着,都在猜测对

热门文章

  • “复活”半年后 京东拍拍二手杀入公益事业

  • 京东拍拍二手“复活”半年后,杀入公益事业,试图让企业捐的赠品、家庭闲置品变成实实在在的“爱心”。 把“闲置品”变爱心 6月12日,“益心一益·守护梦想每一步”2018年四
  • 美国对华2000亿关税清单,到底影响有多大?

  • 1 今天A股大跌,上证最大跌幅超过2%。直接导火索是美国证实计划对华2000亿美元产品加征25%关税。 听起来,2000亿美元数目巨大,我们来算笔账。 2000亿美元,按现在人民币汇率

最新文章

  • 实战|记一次测试过程中登录参数加密逆向分析

  • 在测试过程中遇到一个登录框,看到前端加密的情况下对密码处进行了简单的加密分析在控制台中打开网络,匹配Fetch/XHR,可以看到password处进行了加密处理在js中全局搜索encrypt这
  • AI安全发展概述and入门了解

  • AI安全发展概述人工智能概述人工智能基本概念1956 年,在美国达特茅斯会议上,科学家麦卡锡首次提出“人工智能”:人工智能就是要让机器的行为看起来更像人所表现出的智能行为一
  • AI安全爆发:谷歌发布网络安全大语言模型

  • 本周二在旧金山举行的2023年RSA大会上,谷歌云发布了谷歌云安全人工智能工作台,基于专为网络安全设计的大语言模型Sec-PaLM。Sec-PaLM是谷歌现有大语言模型PaLM的定制版本,能够
  • 某攻防演练--弱口令引发的域控沦陷

  • 前言这次流程大概是这样的:信息收集>>sso爆破>>jeecg getshell>>密码喷洒>>dcsync ,都是比较基础的操作。getshell刚开始通过信息收集从github一个项目里面找到了一些账号密码
  • java代码审计

  • 0x01代码审计的基本概念和流程1、代码审计的定义和背景Java代码审计是指对Java应用程序代码的分析,以确定是否存在安全漏洞和风险,并提出修复建议的过程。Java应用程序的开发