当前位置: 首页 > news >正文

网站开发实习媒体营销平台

网站开发实习,媒体营销平台,深圳外贸公司多的区,什么网站可以免费推广aHR0cHM6Ly9oZWFsdGguZWxkZXIuY2NiLmNvbS9zaWduX2luLw 涉及加密库jsencrypt 定位加密点 先看加密的请求和响应#xff1a; 全局搜索加密字段jsondata#xff0c;这种非特定参数的一般一搜一个准#xff0c;搜到就是断点。起初下的断点没停住#xff0c;转而从调用栈单步…aHR0cHM6Ly9oZWFsdGguZWxkZXIuY2NiLmNvbS9zaWduX2luLw 涉及加密库jsencrypt 定位加密点 先看加密的请求和响应 全局搜索加密字段jsondata这种非特定参数的一般一搜一个准搜到就是断点。起初下的断点没停住转而从调用栈单步调试来分析一般情况下就可以走到加密的位置了结果发现配置了多个拦截器而这个请求正好没走通过搜索下的断点。 首先确认加密调用所在的文件app.9ce0f…8be4.js,从网络的发起者和其调用栈里确认一下这个js所处的调用位置保险从最早进入这个js的调用下断点也就是doquery这个方法。 单步调试注意观察调用栈中帧出入的变化要在合适的帧上步进关键方法观察调用栈变化的另一个目的是及时止损即调用栈如果超出了断点的目标js的范围就说明错过正确的调试位置了。没出错的话很快就找到加密的位置断点位置也就确定了。 下面就很简单了步入加密方法中分析加密的方式。 同样的道理单步进入上一张图中30297行的方法可以得出分析结果json数据利用3des ecb加密其中加密的key是约定长度的随机字串简单向上审计下这个key即变量n的值生成的函数即可确定生成字串的字符集和base64是一样因为后期作为key加密时二进制解析用的是base64解码然后将这个key用rsa算法加密。如此就分别得到了两个加密的参数jsonData和DesKey。 简单记录下该加密库jsencrypt)下该加密函数3des)在cyberchef里的烘培料理。 还有个问题是响应加密为什么同样给了一个deskey呢首先这个响应和请求的加密模式大概率一样即对称加密数据公钥加密用于加密数据的key。解密的位置也是前端的拦截器里。 为了确认30316和30317两个方法的具体实现在这里下断点这两行代码很明显是解密方法而前文已经分析了加密的过程即得解密的加密模式。 tips:调用的方法的对象是m,和请求过程调用加密的对象是一样的因此在请求过程断点停住时打印这个对象并找到对应的方法即可 其实前文已经步入加密方法t.c了加解密方法的具体实现在一个js里简单翻一下就可以了无奈前面分析的时候思路被既定的问题卡住了。 那么就得到了数据的解密方法t.a和用于加密数据的对称密钥的解密方法t.e 注意此处23290行和23292行实际是为前文提及的rsa加解密实例配置公钥/私钥但其硬编码的公钥和私钥显然不是一对即前后端分别掌握一对公钥用于保证密钥的秘密性。 步入23280行的方法简单解释下下图13993行的代码加解密方法都从this,getkey获取的对象里调用其返回hex编码的加密结果外层的d是base64的调用。 步入进行审计即可如下图步入方法d后传入的参数e便是上图13993行encrypt方法返回的hex编码的加密结果。再看其方法实现是通过定义的变量c字符集进行编码其字符集正好符合base64。 总结以上分析得出本系统所加密模式设计如下 前端硬编码publicKeyA和privateKeyB 后端存储publicKeyB和privateKeyA 1.前端请求 前端参数加密 jsonData:3des(random(32)-desKeyA,dataA) ; desKey:rsa(publicKeyA,desKeyA); 2.后端接收请求 后端参数解密 rsa(privateKeyA,desKey)-desKeyA; 3des(desKeyA,jsonData)-dataA; 3.后端响应请求 后端参数加密 desMsg:3des(random(32)-desKeyB,dataB) ; desKey:rsa(publicKeyB,desKeyB); 4.前端接收响应 前端参数解密 rsa(privateKeyB,desKey)-desKeyB; 3des(desKeyB,desMsg)-dataB; 后端可能直接传回desmsg和deskey即3des加密结果和密钥 登录流程分析 click事件处理取得登录表单域password值跟进702行 4行queryKey实现了一个接口请求https://health.elder.ccb.com/api/sp/security/newkey?jsonDataFt4qWHc9Y1t3HTB%2BZVM2wexOibDwkZredesKeyf2pKDMU3OPsMJ%2FkQTRUVE%2F5EiLZZ6f4olO%2BLanYB%2FPHTBD9sqyZoC2ZL52jEP6XteTiMAEKykE63F9ry85EHgj91gVfd1xXRLiiImSuBPpCjfRoAsakMw%2FB4GHEmsmnC5%2F8Z%2B90js2vzSj1YiWvL5PUPqj%2BX0sFN97mwFF6%2Fldk%3D_1691127466956 获取对象形如 {“id”:“279”,“secKey”:“a09VdERja0dueVBVSWZnWA”,“createTime”:null} 其中jsonData是固定值{“requestPkUser”:“”}的3des加密结果3des加密的key仍然是随机的32位串再由硬编码的rsa pub key加密得到deskey 得到的seckey用于对登录密码的aes/cbc加密iv是硬编码的。 得到一个新的对象{ “success” : True, “id” : id,“encrypted” : aes(passwd, seckey,iv) } 这个对象再次被重组名为passwordJson的对象转字符串作为表单对象中password的新值最后表单对象由3des加密得到jsondata,3des加密密钥key由rsa加密得到deskey,形如{“jsondata”:”xxx”,”deskey”:”yyy”}的对象用作body请求登录。
http://www.hkea.cn/news/14470398/

相关文章:

  • 智慧团建官方网站私密浏览器在线观看
  • 韶关市建设与房地产信息网站百度应用下载安装
  • 电商网站的需求文档深圳办公室装修价格表
  • 交易网站开发宁波专业做网站公司
  • 临海市建设局官网站群晖wordpress 外网很慢
  • 曲靖网站建设0doit欧美设计网站推荐
  • 手机网站编辑阿里云购买网站空间
  • 常用的网站建设技术有什么教育机构网站建设公司
  • 温州做网站 掌熊号图片制作软件带字
  • 有哪些商业网站做网站 买空间
  • 小型门户网站建设硬件配置网站开发主流方法
  • 中国建设第一平台网站网站模板带后台
  • 网站建设需什么软件爱客crm手机下载
  • 北京微网站设计宿迁网站推广
  • 做购物网站 营业范围是什么wordpress 检索文件
  • 网站建设流程是什么wordpress升级后等待
  • 动易网站风格免费下载制作静态网站模板
  • 网站建设大型企业以下选项中排序正确的是
  • 潍坊网络推广手机优化软件哪个好用
  • 常州微信网站建设好么营销推广活动方案
  • 东莞专业微网站建设推广学习电子商务网站建设与管理
  • 杭州的设计网站建设网站 团队
  • 如何提高网站的搜索移动wifi多少钱一个月
  • 网站qq获取免费申请域名的网站
  • 网站幻灯通栏代码软件排名工具
  • 织梦网站入侵方法wordpress图片变小了
  • 湖州市建设局网站6山东建设监理协会继续教育网站
  • 深圳网络做网站竞网做的网站怎么
  • 网站制作常见问题绍兴集团网站建设
  • 域名 网站网站不备案做优化