js脚本对url参数加密

FIddler : CustomRules.js脚本解析get请求被加密的参数 背景:app上报计数时,上报的参数加密了。fiddler抓包只能看到加密后的文件。每次都要从客户端log里才能看到报数。为了解决这个问题,在fiddler脚本文件中对计数请求的参数进行解密,这样,fiddler抓包就能看到明文的log了。 当然,前提是要知道加密的规则。 编写脚本前提: 1、安装fiddler; 2、安装fiddler的fiddler script插件(fidd... 阅读详情

加密代码

function eb(ting)
   {
//传入要加密的url

//获取url参数部分
   var paraString = ting.substring(ting.indexOf("?")+1,ting.length);
    //将加密后的参数重新组合到url中
   var rul=ting.substring(0,ting.indexOf("?")+1)+escape(paraString);

 //跳转到rul页面呢 

  location.href=rul;
   }

解密代码

   var urlPara = location.search; //获取参数部分
   urlPara=unescape(urlPara);//对参数解密
//分析参数
function getPara(paraName){
var reg = new RegExp("[&|?]"+paraName+"=([^&$]*)", "gi");
var a = reg.test(urlPara);
return a ? RegExp.$1 : "";
}
//捕获参数并进行操作
//window.onload = function(){

//var url= getPara("id"); //捕获到url参数
//document.getElementById("TextBox1").value = url;
//}

Yakit WebFuzzer热加载:自动化实现请求参数动态加密与编码 在Web安全测试与API接口调试中,参数编码与加密是保障数据安全与完整性的基础技术。Base64编码和URL编码作为两种最常用的数据转换方式,其原理分别通过64个字符安全表示二进制数据,以及通过百分号转义确保URL中参数的正确传输。这些技术不仅防止了数据在传输过程中的错误解析,更是实现身份认证、数据防篡改等安全机制的基石。在工程实践中,手动对每个请求参数进行编码或加密不仅效率低下,且容易引入人为错误。Yakit WebFuzzer模块的“热加载”功能,通过允许用户在请求发送前嵌入并执行JavaScript脚 阅读详情

相关推荐

使用mitmproxy拦截修改JS文件:优雅解决前端反爬虫难题

在Web数据采集和前端逆向工程中,JavaScript动态加密与混淆是常见的反爬虫技术。其原理在于网站通过客户端执行的JS代码实时生成加密参数,如token或sign,以增加直接模拟请求的难度。从技术价值看,理解并应对这类机制不仅能提升数据采集效率,也是深入理解现代Web应用安全与通信逻辑的重要实践。传统方案如直接逆向JS代码或降级浏览器进行Hook,往往面临成本高、兼容性差或破坏性强的痛点。应用场景广泛涉及数据聚合、自动化测试和安全研究等领域。本文聚焦于一种更优雅的解决方案:利用mitmproxy这一中间

weixin_33910460的博客 512

静态页面开发JS页面跳转加密解密URL和参数

页面跳转加密URL地址参数传递 window.location.href="foot.html?"+"good="+encodeURI(encodeURI(goodid)); 页面跳转解密 URL参数

Unknowncheats的博客 712

手把手教你用FFmpeg一键下载并合并加密M3U8视频(附解密key处理技巧)

本文详细介绍了如何使用FFmpeg下载并合并加密M3U8视频,包括密钥提取、解密处理及高效合并技巧。通过实战案例和自动化脚本,帮助用户轻松应对TS片段加密、动态URL鉴权等复杂场景,提升视频处理效率。

j0k1l2m3n的博客 988

javascript对URL中的参数进行简单加密处理

javascript的api本来就支持Base64,因此我们可以很方便的来进行编码和解码。 var encodeData = window.btoa("name=xiaoming&age=10")//编码 var decodeData = window.atob(encodeData)//解码。 下面来个具体的例子来说明如何对url中参数进行转码,并取得解码后的参数 假如要跳转...

weixin_33709609的博客 2115

JS逆向之HOOK注入、调试、插桩

一、获取Cookie的加密参数 油猴脚本文件 // ==UserScript== // @name cookie的HOOK // @namespace http://tampermonkey.net/ // @version 0.1 // @description try to take over the world! // @author You // @match https://*/* // @icon https://g.c

云霄IT的博客 7700

小红书X-s/X-t签名逆向:从断点调试到Python爬虫实战

在Web爬虫开发中,请求签名是常见的反爬机制。以小红书为例,其请求头中的X-s和X-t参数就是一套动态签名校验逻辑,直接请求接口往往会被拦截。理解签名生成的原理,是突破这类限制的关键。JS逆向技术通过定位前端加密函数、补环境并动态生成有效签名,能够模拟浏览器行为,为数据采集提供稳定支撑。这种技术广泛应用于爬虫开发、数据分析及自动化测试等场景。本文从断点调试、核心算法解析到Node.js与Python联调,完整梳理了一套通用的逆向思路,帮助开发者应对签名机制更新带来的挑战。

weixin_42524171的博客 511

js脚本对url参数加密(待验证)

加密代码 function eb(ting)   {//传入要加密的url //获取url参数部分   var paraString = ting.substring(ting.indexOf("?")+1,ting.length);    //将加密后的参数重新组合到url中   var rul=ting.substring(0,ting.indexOf("?")+1)+escape(par...

初秋土豆的博客 257

TikTok滑块验证码verifyV2逆向实战:从fp生成到captchabody加密的完整流程解析

本文详细解析了TikTok滑块验证码verifyV2的逆向工程全流程,从fp参数生成到captchabody加密机制,涵盖了验证码触发、WASM解密、轨迹模拟等关键技术点。通过实战案例和代码示例,帮助开发者深入理解反爬机制,提升逆向工程能力,应对复杂的验证挑战。

weixin_28568819的博客 478

vue 跳转地址栏参数加密

vue 跳转,地址栏参数加密

qq_41247805的博客 1945

Nmap的介绍、安装 并进行网络扫描

Nmap概述 Nmap(Network Mapper(网络映射器))是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(这是亦称 fingerprinting)。它是网络管理员必用的软件之一,以及用以评估网络系统安全。 正如大多数被用于网络安全的工具,nmap 也是不少黑客及骇客(又称脚本小子)爱用的工具 。系统管理员可以利用nmap来探测工作环境中未经批准使用的服务器,但是黑客会利用nmap来搜集目标电脑的网络设定,从而计划攻击的方法。

Cheney ' blog 2万+

【STM32开源实战】基于STM32的智能输液监控系统设计与实现

本文详细介绍了基于STM32F103C8T6主控芯片的智能输液监控系统设计与实现。该系统通过光学液位传感器、温度传感器和红外滴速检测模块实时监测输液状态,利用步进电机自动调节滴速,并通过蓝牙实现数据远程传输,为医院提供了一套低成本、高可靠性的智能输液解决方案。

h6i7j8的博客 761

一文带你进入网络安全的世界:漏洞是如何被挖到的?有哪些问题需要注意?

SRC,( Security Response Center) ,安全应急响应中心,是企业用来对外接收来自用户发现并报告产品安全漏洞的站点。简单说就是白帽子用于提交随机发现的漏洞的一个平台,提交者可以获取一定的赏金。是企业用于对外接收来自用户发现并报告的产品缺陷的站点。目前主要包含有两种实现方式,第一种是漏洞报告平台,另一种是XSRC模式。

wholeliubei的博客 228

电阻应变式力传感器

电阻应变式力传感器

lu_fresh_student的博客 5075

前端中unescape是什么意思_js中escape的用法----前端页面简单加密

escape()方法,它用于转义不能用明文正确发送的任何字符。比如,电话号码中的空格将被转换成字符%20,从而能够在URL中传递这些字符。http://localhost:8080/a?name="+escape("aa")+"&password="+escape("中华人民共和国");alert(s);js对文字进行编码涉及3个函数:escape,encodeURI,encode...

weixin_39833270的博客 1204

moveit——基于octomap的碰撞检测

机械臂对棚顶进行碰撞检测。

如果想成为中心,那么就到中心去吧。 1355

损失函数大汇总(三十八)(AUCPR Loss附公式推导与代码)

本文系统介绍了AUCPR Loss的原理与应用。针对不平衡分类任务中AUC指标不够敏感的问题,提出通过优化PR曲线面积(AUCPR)来提升模型性能。文章详细推导了AUCPR的可微近似实现:首先用sigmoid函数软化阈值判断,构造可微的TP/FP/FN计数;然后基于软Precision和Recall计算近似PR曲线面积;最后通过数值积分得到可优化的损失函数。特别讨论了温度参数τ对训练稳定性的影响,并比较了AUCPR与AUC、AP等指标的异同。该方法适用于医学筛查、欺诈检测等极端不平衡场景,能更准确反映模型对

悦学共鸣,温柔以待,汇聚光芒,共同成长 441

下载狗params加密参数逆向

主页: https://www.xiazaitool.com/准备:安装node环境 安装 npm install crypto-jsparseVideoUrl 请求中包含params是加密参数。

qq_45444679的博客 678

射频微波电路设计【1.4】

AppCAD是一组射频设计工具和计算机应用说明,它使射频工程师能以更快和更容易的方式设计他们的产品。该软件的理 念是为工程师提供一个“个人设计助理”,即功能强大、快速和容易使用的辅助设计工具。该软件包括如下基本功能: ·各种传输线电气参数的分析与计算;·各种匹配电路的分析与计算;·各种有源和无源简单电路的分析与计算;·射频系统指标的计算:增益、噪声系数、三阶交调、信噪比、灵敏度等;·器件可靠性分析。

qq_43416206的博客 2322

Postman如何实现执行JS代码获取值给到变量

postman使用json格式和地址栏拼接方式传参

PyongSen的博客 2374

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

04postman预请求脚本

预请求脚本是Postman中在发送请求前执行的JavaScript代码,主要用于动态准备请求参数。它能实现生成时间戳、创建随机数、拼接URL、设置请求头等操作,是自动化测试的关键功能。示例代码展示了如何获取当前时间戳和生成随机数,并将其保存为全局变量供后续请求使用,有效提升了API测试的灵活性和自动化程度。

qq_49162499的博客 39

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

javascript版前端页面RSA非对称加密解密

最近由于项目需要做一个url传参,并在页面显示参数内容的需求,这样就会遇到一个url地址可能会被假冒, 并传递非法内容显示在页面的尴尬情况 比如xxx.shtml?server=xxx是坏人&name=xxxoo 这个url被人篡改胡乱发出去,追究责任还是要追究到网站负责人的。 于是想起来用加密url参数的方法,最先想到的是用base64加密参数,但是这样有点钱的知识的人,在js里...

weixin_33924312的博客 385

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Javascript入门(可供CSS/JS/XSS初学者参考)

JavaScript作用小结:1创建脚本块1:<scriptlanguage=”JavaScript”>2:JavaScriptcodegoeshere3:</script>2隐藏脚本代码1:<scriptlanguage=”JavaScript”>2:<!--3:document.wri...

ajwh64482的博客 249

记一次爬虫经历(友话APP的Web端)

背景:学校为迎接新生举办了一个活动,在友话APP的校园圈子内发布动态即可参与活动,最终抽取数名同学赠送福利。 分析:动态的数量会随着迎新的开始逐渐增加,人工统计显然不现实,因此可以使用爬虫脚本在友话APP的Web端抓取数据做统计。 任务:1.抓取所有动态 2.统计数据并按用户名去重 3.抽奖工作需由抽奖平台完成,保存统计结果即可,抽奖不做涉及。 环境:Chrome、Python ...

weixin_30500473的博客 138
上一篇: js url加密解密
下一篇: ExecutorService常用方法和newFixedThreadPool创建固定大小的线程池
lb8607
博客等级 码龄18年 17粉丝 18原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值