如今。事件处理程序中的变量event保存着事件对象。而event.target属性保存着发生事件的目标元素。这个属性是DOM API中规定的,可是没有被全部浏览...
document.selection.empty();}; {/tabs-pane} {tabs-pane label="位置"} 放在Joe主题后台自定义body末尾处,效果没试请自行添加后尝试,建议电脑端测试,防止不生效
很多同学网站都在用静态博客,安全轻量的同时也带来了些许麻烦,正如首图中那样,站点被别人全盘撸走,反而比自己文章关键字还高.自己辛辛苦苦的耕耘变成了别人的果实…所以本文提供一下通过JS手段防止网站被扒皮的手段...进入正题: 因为站点是纯静态的,所以没办法防止网页被扒走,但是我们可以让他扒走的网页 用不了… 对静态资源设置防盗链,判断可信域名…不过很多同学都放在 coding/github 之类的 没有这种功能的托管商...= top){ location.href="https://huai.pub"; } //防止被嵌套....let whitelist=['huai.pub','127.0.0.1','localhost','']; //host白名单;空的话,为以file类型打开,是为了防止保存到本地调试,如果不担心此条...把上面部分放到一个不得不运行且打开页面就运行的JS里面(不建议放到公共资源部分,比如 jQuery之类的 )…当然 需要按照注释修改为自己的参数; 之后将这条JS 加密 然后将第二部分放到页面底部的JS
不知道是什么东西加密的 ts:又一个时间戳 bv:不知道什么加密+1 doctype:大概是返回什么格式吧 version:版本 keyfrom:网页翻译 action:点击按钮这个动作吧 全局搜索sign,发现一个js
经过排查发现是因为前端在登录的时候没有对密码等用户信息做加密处理 解决方案: 做一下最简单的处理,前端采用JS自带的 atob加密,后端采用工具解密 前端JS代码: //加密字符串,可以先将中文加密...= encodeURIComponent(str); encStr = btoa(encStr); return encStr; }, //解密...,可以先将ascii解密,然后再将非ascii解密 decrypt(str) { var decStr = atob(str); decStr = decodeURIComponent...解密后得到admin 后端测试: ?...和前端一致,这样才能做到加密解密的效果 建议: 整体来说就是一次最简单的加密解密,当然这个相对不是特别安全,可以在这个基础之上,对等于号做一些处理,再通过一些其他的算法来多次加密也可以,最好是一些带随机盐的
@TOC 1 介绍 本文将使用 js-base64 进行js base64相关操作 2 安装 npm npm install --save js-base64 cdn 3 base64加密/解密案例 加密、解密具体方法如下案例所示 let...5pyJ5YuH5rCU55qE54mb5o6SZ29vZA console.log(nick.toBase64URL()) // 5pyJ5YuH5rCU55qE54mb5o6SZ29vZA // 解密
接下来我们需要去偷网站的js代码,因为我们选择走js逆向最简单的路——靠Pyexecjs模块,用python去执行js代码。...好了,漫漫逆向路才走一半,还要把这堆乱码解密。。 #### 数据解密 #### 我们再回过头去看开始那个ajax请求。 ...这表示我们的解密思路是对的。 再来我们要搞定b.decode函数和decryData函数,步骤同上文的加密方式。 ...本案例我们就只有解决了一类数据的加密和解密,有兴趣的小伙伴可以也来尝试下其他数据的获取。 ...这是保存下来的某气网js逆向解密方法,如有不足之处或更多技巧,欢迎指教补充。愿本文的分享对您之后爬虫有所帮助。谢谢~
前端 crypto-js aes 加解密 背景 前段时间公司做项目,该项目涉及到的敏感数据比较多,经过的一波讨论之后,决定前后端进行接口加密处理,采用的是 AES + BASE64 算法加密~ 网上关于...,加深大家对 AES 算法的理解~ 这里我以 Vue 作为例子,其他的也就大同小异了~ 要用 AES 算法加密,首先我们要引入 crypto-js ,crypto-js 是一个纯 javascript...,我们可以采用 npm install crypto-js --save 进行下载安装,也可以直接去 GitHub下载源码~ 其次我们需要定义两个方法 ,分别是用于加密和解密,这里我将它放在了 utils...文件夹下,命名为 secret.js ,其具体代码如下: const CryptoJS = require('crypto-js'); //引用AES源码js const key =...:{"name":"Chris","sex":"male"} 结语 至此,你已经 get 了前端 AES 加解密的方法,是不是感觉很简单啊,用起来很简单,原理可不简单,况且这也只是其中的一种方案,关于加解密的方法还有很多
Linux/Unix 系统,很多人使用SSH + 密码来登陆服务器,默认 22端口,这样会有被暴力破解密码的危险(除非密码足够复杂且长度很长),因此最好修改SSH默认的22端口为其它随机端口号。...本文原文来自米扑博客:Linux 修改SSH 默认端口 22,防止被破解密码 本文实例的系统环境 阿里云 CentOS 7.4 一、修改配置文件 1....Port 22,并在其下方增加一行 Port 23456 说明: SSH默认监听端口是22,如果不强制说明,”Port 22”注释或不注释,都会默认开放端口22远程登录 上面取消注释并保留了22端口,防止可能各种权限和配置问题
第一步、在全局js中加入如下代码:里面的一些正则可以自行替换成你想要的 function SLyz(){ if(document.commentform.comname.value.length ==... 完成以上三步就可以实现打钩防止垃圾评论。 原文地址:舍力博客
JS的eval函数解密反混淆 作者:matrix 被围观: 10,699 次 发布时间:2014-05-14 分类:零零星星 | 15 条评论 » 这是一个创建于 3032 天前的主题,其中的信息可能已经有所发展或是发生改变...打开有些js文件看到的eval(function(p,a,c,k,e,d)开头,只有结尾部分有很多竖线|间隔的字符,这是eval混淆了的。想要查看原本的代码就需要反混淆。
应用情景 经典使用情景:js的一些事件,比如:onresize、scroll、mousemove、mousehover等; 还比如:手抖、手误、服务器没有响应之前的重复点击; 这些都是没有意义的,重复的无效的操作...同样节流函数也是为了解决函数重复提交的问题,而防止重复提交的方法,不止节流函数一种实现。 方法汇总 本文整理了我在工作实践当中,觉的防止js重复提交,比较好用的方法,在这里和大家分享一下。...一、setTimeout + clearTimeout(节流函数) 本文提供两种实现方式:普通节流函数和闭包节流函数 二、设定flag/js加锁 三、通过disable 四、添加浮层比如loading...图层防止多次点击 具体实现 一、setTimeout + clearTimeout(节流函数) 方式一:闭包节流函数(可传递多个参数) /** * 闭包节流函数方法(可传参数) * @param Function...二、设定flag/js加锁 var lock = false; jQuery("#submit").on('click', function () { if (lock) { return
一:Js的Url中传递中文参数乱码问题,重点:encodeURI编码,decodeURI解码: 1.传参页面 Javascript代码: /...后面的[1]内数字,默认从0开始计算 三:Js中escape,unescape,encodeURI,encodeURIComponent区别: 1.传递参数时候使用,encodeURIComponent
/crypto-js.js"> var password = 'password' // 待加密字段 var secretKey...deaecText = CryptoJS.AES.decrypt(aestext.toString(),secretKey).toString(CryptoJS.enc.Utf8) console.log(`解密
; result=result.replaceAll("`","·"); return result; } } 解密、分段解密的主要方法: /** * 分段解密 * *...publicKey); //公钥加密 var encrypted = encrypt.encryptLong(src); config.data = encrypted; 这里我使用了jsencrypt.min.js...网上相关的案例也都是简单的使用这个工具类jsencrypt.min.js自带的加密方法。这个方法使用过程中如果要是简单的、较短的数据参数的一个提交是没有问题的。...主要修改方式你在拦截器的js类中编写即可。...js增强代码: JSEncrypt.prototype.encryptLong = function (string) { var k = this.getKey(); try {
使用cdn加载: https://cdnjs.cloudflare.com/ajax/libs/crypto-js/4.1.1/crypto-js.min.js 但有时build上传到服务器,浏览器加载不了...image.png 在项目build文件夹下找到webpack.base.conf,配置CryptoJS image.png JS端: string 要加密/解密的字符串 code 秘钥字符串 operation...默认false表示加密,传入true表示解密 image.png // 加密解密方法:string-需要解密的字段 code-约定的密钥 operation 默认false表示加密,传入true...PHP端: $string 要加密/解密的字符串 $code 秘钥字符串 $operation 默认false表示加密,传入true表示解密 function secret($string,$code...code = 'abcedfg'; $str = $this->secret($string,$code); return urlencode($str); } JS
最近Evil.js被讨论的很多,项目介绍如下项目被发布到npm上后,引起了激烈的讨论,最终因为安全问题被npm官方移除,代码也闭源了作为一个前端老司机,我肯定是反对这种行为,泄私愤有很多种方式,代码里下毒会被...还不如离职的时候给老板一个大逼兜来的解恨今天我们来讨论一下,如果你作为项目的负责人,如何甄别这种代码下毒欢迎加入前端学习,一起上王者,交个朋友下毒手法最朴实无华的下毒手法就是直接替换函数,比如evil.js...Illl'})`,sandbox)console.log(sandbox)复制代码ShadowRealm APITC39有一个新的ShadowRealm api,已经stage3了,可以手动创建一个隔离的js.../anti-evil.js">function isNative(fn){ return fn.toString() === `function ${fn.name}() {
视频移步B站最近Evil.js被讨论的很多,项目介绍如下图片项目被发布到npm上后,引起了激烈的讨论,最终因为安全问题被npm官方移除,代码也闭源了作为一个前端老司机,我肯定是反对这种行为,泄私愤有很多种方式...还不如离职的时候给老板一个大逼兜来的解恨今天我们来讨论一下,如果你作为项目的负责人,如何甄别这种代码下毒欢迎加入前端学习,一起上王者,交个朋友下毒手法最朴实无华的下毒手法就是直接替换函数,比如evil.js...:'Illl'})`,sandbox)console.log(sandbox)ShadowRealm APITC39有一个新的ShadowRealm api,已经stage3了,可以手动创建一个隔离的js.../anti-evil.js">function isNative(fn){ return fn.toString() === `function ${fn.name}() {
大部分网站都会对关键参数进行加密,JS 逆向时,我们首要任务是定位参数具体的加密逻辑 常见方式包含:关键字搜索、堆栈调试、XHR 及事件监听、AST 内存漫游、JS Hook 注入等 本篇文章以 JS...": [ "" ], "js": [ "js/cookie.js" ], "run_at": "document_start..."content_scripts": [ { "matches": [ "" ], "js": [ "js...Script 注入 JS 在 Content Script 中注入 JS Hook 代码 // cookie.js function import_js(js_path) { let tmp...('js/cookie_hook.js') })() 2-3 JS Hook 具体逻辑 在 cookie_hook.js 文件中,使用 document.
领取专属 10元无门槛券
手把手带您无忧上云