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

怎么做网站主页万江区网站建设公司

怎么做网站主页,万江区网站建设公司,聊城手机网站建设公司,手机登录网站怎么建设一、常见五种js加密手段 #xff08;一#xff09;加密位置#xff1a; 1.Request Payload 加密 2.Request Headers 加密 3.Request URL params 参数加密 4.Response Data 数据加密 5.JS代码混淆加密 #xff08;二#xff09;加密算法 base64 编码 哈希算法一加密位置 1.Request Payload 加密 2.Request Headers 加密 3.Request URL params 参数加密 4.Response Data 数据加密 5.JS代码混淆加密 二加密算法 base64 编码 哈希算法md5,SHA 对称加密AES 非对称加密RSA 二、Python Js2Py库运行JS代码 1.index.js文件中书写一段js代码 var getCode function(str){prefix C13L02timestamp Math.floor(Date.now())return prefix timestamp str } 2.终端安装js2py:pip install js2py 3.创建py文件C13L03.py import js2pyjsExec js2py.EvalJs() with open(./C13L03/index.js, r) as f:jsExec.execute(f.read())print(jsExec.getCode(abc))# C13L02 1679589330373 abc# C13L02 1679589342156 abc 三、JS逆向一Js2py 破解基础JS加密 一通过书写爬虫代码和网页响应可知请求头参数中红框内的参数是必须要添加的并且此参数是可变的故采用以下操作。 二两种方法 1.按住CTRLSHIFTF进行全局搜索sign(参数的名称之后找出现sign的地方 2.加断点将此链接Request URL复制到Sources中的XHR断点中之后刷新。在call stack中往回找到需要的函数位置 三定位函数位置后在文档中搜索CTRLF。搜索mySign 四创建C13L04.js文件将上述js代码复制并创建函数 var getSign function() {var prefix C13L04var timestamp Math.floor(Date.now())var rand Math.floor((Math.random()*500)100)var mySign prefix - timestamp - randreturn mySign } (五创建py文件调用上述函数重新请求网页 import requests import js2pyjsExec js2py.EvalJs() with open(./C13L04/C13L04.js, r) as f:jsExec.execute(f.read()) mySign jsExec.getSign() print(mySign) url http://127.0.0.1:5000/api/C13L04 headers {User-Agent:xxxxxxx,sign: mySign } res requests.get(url, headersheaders) print(res.json()) 四、JS逆向二Python 重构 JS加密流程 创建py文件,重构上述JS文件 import requests import time import randomprefix C13L04 timestamp int(time.time() * 1000) rand random.randint(100, 599) mySign prefix - str(timestamp) - str(rand) print(mySign) # JS生成的时间戳为1679650163011time.time()函数生成为1679650177.857263 var getSign function() {var prefix C13L04var timestamp Math.floor(Date.now())var rand Math.floor((Math.random()*500)100)var mySign prefix - timestamp - randreturn mySign } url http://127.0.0.1:5000/api/C13L04 headers {User-Agent:xxxxxxx,sign: mySign } res requests.get(url, headersheaders) print(res.json()) 五、JS逆向三重构JS Base64 编码问题破解JS Base64加密 一Base64编码原理 The Base64 Alphabet: import base64s1 中 s1_binary s1.encode(utf-8) # b\xe4\xb8\xad s1_base64 base64.b64encode(s1_binary).decode(utf-8) print(s1_base64) # 现在为string类型:5Lit s2 base64.b64decode(s1_base64).decode(utf-8) print(s2) # 中 s3 base64.b64decode(s1_base64) print(s3) # b\xe4\xb8\xad# b\xe4\xb8\xad # 14 4 11 8 10 13 # 1110 0100 1011 1000 1010 1101 # 111001 001011 100010 101101 print(0b111001, 0b001011, 0b100010, 0b101101) # 57 11 34 45 # 5 L i t 二破解JS Base64加密 上图位置的参数为加密的数据可变参数。全局搜索“sign 全局搜索encode。 第一种方法最简单是用Js2py方法但这种方法运行效率低一些 第一种方法是用python复写。通过上述代码猜测是base64加密通过验证确实是base64加密 import requests import time import base64ts int(time.time()*1000) msg C13L08 str(ts) sign base64.b64encode(msg.encode()).decode() print(sign)url http://127.0.0.1:5000/api/C13L08 headers {User-Agent:xxxxxxx,Referer: http://127.0.0.1:5000/api/C13L08,sign: mySign } data {ts: ts,sign:sign } res requests.get(url, headersheaders, datadata) print(res.json()) 六、JS逆向四破解MD5和SHA哈希加密 一Hash哈希算法原理 # 将数据通过算法生成固定长度的字符串 # 不可逆 # 相同数据生成的字符串一定是相同的 不同的数据生成的字符串一定不同 # MD5, SHAimport hashlibs1 hello s1_md5 hashlib.md5(s1.encode()).hexdigest() print(s1_md5) s1_sha256 hashlib.sha256(s1.encode()).hexdigest() print(s1_sha256) 二破解Md5和SHA哈希加密 此位置为加密位置参数 全局搜索”scode找到加密的函数猜测为MD5加密和SHA256加密方式并用在线工具进行验证 import requests import time import hashlibts int(time.time()*1000) txt str(ts) ABC mcode hashlib.md5(txt.encode()).hexdigest() scode hashlib.sha256(txt.encode()).hexdigest()url http://127.0.0.1:5000/api/C13L11 headers {User-Agent:xxxxxxx,Referer: http://127.0.0.1:5000/api/C13L11, } data {ts: ts,mcode: mcode,scode: scode } res requests.get(url, headersheaders, datadata) print(res.json()) 七、实战千千音乐-JS逆向破解音乐mp3参数哈希加密 以下为加密参数位置 添加xhr断点发现函数位置 进入createSign import requests import time import hashlibsecret 0b50b02fd0d73a9c4c8c3a781c30845f appid 16073360 TSID T10063717602 ts int(time.time()) r TSIDT10063717602appid16073360timestamp{}.format(ts) secret sign hashlib.md5(r.encode()).hexdigest()url https://music.91q.com/v1/song/tracklink?sign{}appid{}TSID{}timestamp{}.format(sign, appid, TSID, ts) headers {User-Agent: xxxxxxxxxxxxxxx,Referer: https://music.91q.com/player } res requests.get(url, headersheaders) print(res.json())
http://wiki.neutronadmin.com/news/415637/

相关文章:

  • 企业网站源码 多语言南通精诚建设集团有限公司网站
  • 做期货的网站网站内链技巧
  • 网站开发 招标采购参数wordpress有人尝试登录
  • 成功案例 品牌网站百度seo外包
  • 橘子建站设计网名昵称
  • 南宁做网站比较好的公司建筑网站 知乎
  • 四川建设企业网站淮南做网站的
  • 有什么免费的网站收废铁的做网站有优点吗
  • 做网站的公司排行有必要自建网站做导购吗
  • 新东阳建设集团网站nodejs做视频网站
  • 网站开发 前端 后端最好的销售管理系统
  • 破天网站定制网站实名审核中心
  • 西部数码创建子网站做自己移动端网站
  • 网站建设首选九零后网络网站建设80hoe
  • 企业网站必备模块17z一起做网站广州
  • 天津网站制作的公司黑龙江建设网官方网站监理查询
  • 手机网站源码 html5网站建设汇报书 ppt
  • 第一站商城建设购物网站多少钱
  • 公司 网站建设 会计科目网站建设维护视频教程
  • 商业网站建设开发手机wap网页设计
  • 门户营销型网站搭建网站搭建代码
  • 高端网站创建广州网站建设维护
  • 哪里做网站百度收录块宝安做网站信科
  • 网站开发适合女生吗租空间做网站
  • 百度站长工具网站提交网站关键词密度过高
  • 不建议网站如何购买网站域名
  • 平凉崆峒建设局网站北京做网站价格
  • 南沙定制型网站建设ftp上传网站之后怎么做
  • 加强门户网站建设与管理办法百度网址大全免费下载
  • 邮箱注册网站申请wordpress文章不能添加标签