网络安全
分享一些网络安全相关知识、技术等。
w2sfot
JavaScript编程技术
展开
-
JS加密=JS混淆?(JS加密、JS混淆,是一回事吗?)
JS加密、JS混淆,是一回事吗?是的!在国内,JS加密,其实就是指JS混淆。原创 2024-09-28 19:34:35 · 414 阅读 · 0 评论 -
JavaScript高手进阶:安全键盘
为了安全考虑,很多有登录行为的网站,会对密码输入框进行保护。本文介绍一种使用安全键盘的输入保护方式,可用于防键盘记录、防止自动点击。原创 2022-04-12 14:14:14 · 3911 阅读 · 0 评论 -
auto.js脚本如何加密?
AutoJS是非常流行的自动化脚本工具。用它可以将很多复杂的操作变为自动化。比如:自动点赞、自动读新闻、自动刷视频等等 。实现这些功能的脚本,都是用JavaScript(JS)语言写成的。如果要交给他人使用,脚本源码则会直接泄漏。即使在Auto.JS中打包成apk、dex,也能被逆向得到脚本源码,如下图所示:网上这类软件很多,那么Auto.JS脚本的安全就受到了威胁。因此,JS脚本源码非常需要进行混淆加密处理。专业的JS代码混淆加密工具,如JShaman,原创 2022-03-24 16:35:16 · 1877 阅读 · 0 评论 -
JavaScript奇淫技巧:收缩控制流
JavaScript奇淫技巧:收缩控制流原创 2022-03-23 18:32:55 · 1276 阅读 · 0 评论 -
破解vs防护:打造不怕反编译的小程序
当下,小程序、小游戏,非常火。业内人都知道,小程序或小游戏,就是H5应用,就是html+JS。这类应用,反编译很容易,网上有很多方案。反编译之后,可轻松获得源码。稍加修改,便可出现一款“新”产品。因此,雷同的应用非常非常多。本文,亲测反编译微信小程序,并给出防止被破解的办法。添加图片注释,不超过 140 字(可选)反编译:在电脑安装夜神模拟器,并在其中装好微信、RE管理器(rootexplorer)。打开微信,任意使用一个小程序。此时,该小程序文件便会缓原创 2022-03-15 21:03:32 · 4659 阅读 · 0 评论 -
JavaScript黑魔法:洪水攻击
偶然间,在国外的安全网站CloudFlare看到一篇文章,介绍了一种基于JavaScript的在线攻击,大意是:在网页中加入特殊JS脚本,使访问网页的每个人都高频访问某个目标网站地址,大量的访问,即形成为了一种DDOS攻击,也称为洪水拒绝服务攻击。读来感觉颇有意思,那么,本文测试一下其是否真实有效。并思考其对应的防护方法。首先,用NodeJS编写一个简单的Web服务器,代码如下:在NodeJS环境中运行,启动后,这是一个简单的Web服务,访问时会加载一个静态网页,从后台命原创 2022-03-13 11:21:10 · 786 阅读 · 0 评论 -
JS代码保护,是混淆还是加密?
关于JS代码安全性问题,解决方法就是混淆加密。目的就是让代码不可读,或者很难读,以达到防止代码泄露等问题。有的人对于“混淆”、“加密”这个称谓很认真。比如对下图所示几句代码,使用JShaman进行代码保护。保护后生成的代码如下:这倒底该称为“混淆”还是“加密”。其实叫混淆或加密都对,不必太过认真:相比原始代码,保护后的代码变的混乱不堪了,功能逻辑变化了,因此称为“混淆”,没问题。保护后,明文的字符变成密文了,简单的代码变的看不懂了。因此称为“加密”也正确。所此原创 2022-02-21 17:14:26 · 543 阅读 · 0 评论 -
企业如何保护JS源代码?
很多企业产品或项目是用JS做开发的,比如网站制作、H5游戏、微信小程序开发等等。这类企业时常面临这样的源代码安全风险:在将产品交付给客户时,JS代码直接交给了对方,由于JS代码是明文源码,因此一旦交付,客户就对项目或产品完全可控、可以自己升级、修改,开发企业就失去了主动性,常导致后续合作中断。 企业员工获得JS源码后,可能导致源码外泄,更严重的:如果是重要、有价值的产品或项目,员工可能携源代码跳槽,甚至另立山头。那么,如何解决此类问题,如何保护JS代码,使之由企业可控呢?答案是:对J原创 2022-02-19 14:18:52 · 406 阅读 · 0 评论 -
JS加密技术:平展控制流
JS代码混淆加密时,常用到“平展控制流”,英文称为:control flow flattening,即:控制流品平坦化。这倒底是什么呢?概念式的介绍并不直观,本文通过示例,简单直白的说明倒底什么是“平展控制流”。这里使用JShaman轻量版加密平台进行演示,为演示的直观,例程仅使用3行console语句:配置中,只选中“平展控制流”,其它选项全部取消,以便仅使此功能生效:点击加密,即可生成经过“平展”的代码,如下:结合原始代码对比可知,“平展控制流”将函数原创 2022-02-18 16:06:03 · 568 阅读 · 0 评论 -
什么是H5应用加固?
什么是H5应用加固?H5 应用加固,是指通过混淆加密JS代码的方式,对H5应用、小游戏的JS源码进行保护,用于防止H5游戏、应用被逆向、调试、破解等。H5加固可起到哪些效果?保护数据加固后,使明文数据成为密文,比如加密帐号、密码、emal或其它的重要数据。防分析盗用H5应用被逆向后,如果JS源码未保护,代码会被直接查看,从而分析出功能逻辑,也可以被修改、克隆出一个雷同的应用。但如果代码经过加固,分析、修改都是不可进行的。防盗链如果H5应用远程引用着某域名下的JS文件,通过加原创 2022-02-17 13:56:04 · 3291 阅读 · 0 评论 -
小程序被检测出代码防护高危风险怎么办?
小程序开发,必然会用到JS编程,如果在发布时,JS代码未经过混淆加密处理,是不安全、不专业的。当使用安全诊断工具进行检测,会检测出高危风险。如下图所示:如何解决呢?其实很简单,既然是JS代码未混淆加密引起的,混淆加密即可。具体的,可以使用如JShaman之类的专业JS代码保护工具,对代码进行混淆加密即可解决。其实,不单单是小程序,Web前端、H5等应用JS的地方,都应该对代码进行混淆加密,防止JS代码透明引起的数据分析、功能逻辑分析、代码复制、原创 2022-02-12 10:36:04 · 3694 阅读 · 0 评论 -
专业的JS混淆加密:JShaman轻量版,功能体验
js加密,js混淆,js代码加密原创 2021-12-01 09:06:35 · 1198 阅读 · 1 评论 -
逆生三重:JavaScript代码混淆加密技术展示
JavaScript代码混淆加密,无论在前端、H5、或是后端,都是被广泛需要的,用于保护JS源码,防止源码被分析、复制、破解、盗用。本文简单展示部分JS代码混淆加密技术,用于演示对JS代码进行混淆加密的有效性。本文所述,原理上而言:一段原始JS代码将经历词法分析、语法分析,由代码逆变为AST(抽象语法树),再对AST进行三重混淆加密,最后再将AST重建为代码。例如,两句JS代码,给变量,赋常量值:var a = 1234;console.log("a=",a);一重保护:将常原创 2021-10-19 11:48:45 · 380 阅读 · 0 评论 -
NodeJS代码保护:把NodeJS“模块”编译为字节码
将NodeJS模块编译为字节码文件,目的,与JS混淆加密相似,也是为了JS代码的安全性,使代码不可阅读。一、编译模块为字节码在NodeJS中,与编译一个直接执行的JS文件为字节码不同,如果JS代码是一个模块,有导出函数,是要被其它文件require,那么,它不能直接的调用VM.script编译成bytecode。例如代码:exports.hello = function () { console.log('Hello');}有导出函数是hello,用以下代码编译://读原创 2021-10-19 11:47:21 · 1017 阅读 · 1 评论 -
JavaScript防代码格式化原理
本文出自:JShaman,一个专业的JS代码混淆平台。防代码格式化,又称防代码美化、selfDefending。意思是:将一段代码,经混淆加密,输出的代码是被压缩到一行的,这一行代码不可使用格式化手段变为多行,使其容易阅读。如果格式化,代码则不能运行。如:var a=1;经反格式化保护后的代码:var _0x5647a6=function(){var _0xf77285=!![];return function(_0x138773,_0x1b2add){var _0x5d2349原创 2021-10-19 08:50:47 · 2363 阅读 · 1 评论 -
WebAPI接口加密
注:商业级功能效果演示,非开源,无源码。研发基础在之前AJAX请求数据加密效果之上,更进一步,对返回数据加密。之前是单纯用于登录场景。更广泛的场景是所有此类AJAX WEB API接口。两者结合,可以实现:WebAPI接口,请求数据加密、返回数据加密。而且,不需要对原始接口改造,不需要被保护方技术人员配合修改程序,是直接完成的保护。对于常见API接口防护刚需,是很好的解决方案。功效双向加密传输,防止中间人攻击、防止数据嗅探。应用场景Web页面调用的API接口。效果测试原创 2021-09-01 10:52:57 · 707 阅读 · 0 评论 -
黑科技展示,一种无法被暴力破解的登录方式!
网站页面上的登录操作,通常都是输入帐号密码,传输至网站后台验证。在网站页面、数据传输中,通过技术手段,都可以得到用户输入的信息,并可以修改,从而发起网络攻击。典型的如:使用自动化工具或脚本进行的暴力破解、撞库。这是很常见的网络安全攻击方式。一旦成功,帐号密码被获得,后果很严重。接下来,演示一种防数据在传输入中被篡改的安全防护技术。如下图,在某网站登录页面,可以看到表单数据中有email、pwd等字段,即帐号密码。攻击者,可能使用拦截、burp、自写脚本的方式,向后台传递表单数据,尝试登录。原创 2021-08-29 14:02:50 · 560 阅读 · 0 评论 -
逆向webpack打包,还原出原始文件。
Web前端安全需重视:map文件导致的源码泄露案例。偶然间,看到一个很高端、大气、科幻的网站:立即就有学习该网站技术的想法。查看源码、调出开发者工具,看到如上内容。简单分析发现,这是一个经webpack打包的js:而且map文件也存在:有js、map两个文件,可以很轻松的还原出源码。NodeJS环境下,安装shuji,这是一个webpack还原工具,借助它,可以很轻松恢复出源代码。安装过程略。执行还原:瞬间得到项目源文件,js代码、obj模型、贴图等。In原创 2021-08-09 18:49:04 · 7553 阅读 · 4 评论 -
js加密算法库:crypto-js
crypto-js是个很流行的js加密算法库,可以前端js中使用,也可以在后端的nodejs开发中使有,目前crypto-js已支持的算法有:MD5,SHA-1,SHA-256,AES,Rabbit,MARC4,HMAC,HMAC-MD5,HMAC-SHA1,HMAC-SHA256,PBKDF2等。使用也非常简便,在js中引入库,使用加密算法即可。详细,请从npm了解吧:https://www.npmjs.com/package/crypto-js另外,如果在使用加密算法时,对调用原创 2021-08-04 16:10:49 · 492 阅读 · 0 评论 -
前端js加密、解密方法
做为安全保密功能, js加密是开发中很常用的,下面介绍几种常用的前端js加密、解密方法。一、base64加密base64的github地址示例:<html> <head> <title>前端的base64使用方法</title> </head> <body> </body><script>var str = "hello";var str6.原创 2021-08-04 15:18:33 · 4841 阅读 · 0 评论 -
体验JShaman的独门JS加密手法:时间锁!
众所周知,JShaman是国内知名的JS加密平台。在近期,JShaman推出了一个新颖的功能:时间锁,也叫时间限定。这个功能可以实现什么效果呢?据说可以限定JS代码的可用时间范围,超出设定的时间则不能执行。真有这么神奇吗?接下来便一探究竟。首先来到JShaman官网:非常漂亮大气的网站界面,看着就感觉很高端。未体验功能之前,先看到了右下角几个国旗图标,JShaman这个平台竟然是国际化的,除了国内,在欧美、日本、韩国等地也在运营。一个字:厉害!点击“通用版”、“配置”,便原创 2021-07-23 10:59:38 · 750 阅读 · 1 评论 -
Docker使用入门:安装、创建镜像、加载并运行NodeJS程序。
Docker是非常流行的容器化部署方案,具有简单化、高稳定性等特点,在实际的产品交付、实施中非常实用。本文从docker的安装、使用,以及一个nodejs实例程序,从零入手,演示docker的实际使用全过程,并附有使用过程中常见问题的解决办法。系统环境:win7一、安装docker从Docker官网下载并安装docker-ToolBox,并安装安装完毕,出现三个图标:二、创建docker镜像Docker可以通过Dockerfile文件内容来动构建镜像...原创 2021-06-18 10:33:33 · 1579 阅读 · 1 评论 -
多种JS代码混淆加密,效果一览。
演示代码如下,用JShaman对这段代码进行混淆加密:function demo(){ alert("hello www.jshaman.com");}demo(); 一、通用版1、配置选项:压缩代码。保护效果:function demo(){alert('hello\x20www.jshaman.com');}demo();注:压缩代码会把多行代码去回车、换行等,压缩成一行。后续代码为展示效果,不启用此选项。2、配置选项:平展控制流。保护效果:func原创 2021-05-27 15:50:00 · 5433 阅读 · 0 评论 -
用JShaman加密JS代码时,遇到“线路繁忙”怎么办?
在JS代码加密领域,JShaman是很有名的,前端开发、JS程序、NodeJS后端,特别是小程序开发者,都常用这个平台对JS代码进行加密。有时候JShaman平台会出现“服务器繁忙”的提示,如下图:这时该怎么办呢?这时,可以通过“切换线路”来解决问题:也就是更换一个通信服务器。就这么简单!...原创 2021-05-07 15:39:09 · 240 阅读 · 0 评论 -
ModSecurity规则分析(一)
分析目标:owasp-modsecurity-crs-3.3-dev的正则规则。规则类型:正则表达式用途:识别数据库名探测的规则:原规则:"@rx (?i:\b(?:(?:m(?:s(?:ys(?:ac(?:cess(?:objects|storage|xml)|es)|(?:relationship|object|querie)s|modules2?)|db)|aster\.\.sysdatabases|ysql\.db)|pg_(?:catalog|toast)|infor原创 2021-04-14 11:00:19 · 603 阅读 · 0 评论 -
JS代码混淆加密,保留字是什么?
在JShaman平台,保护JS代码时,如果使用通用版或文件上传,会看到有“保留字”功能。以一段例程解说:var demo = 1;function abc(){ var test = 1; alert(test); function hello(){ alert(1); } hello();}未启用时,以最小保护强度配置进行保护,以方便查看加密效果。保护结果:可以看到,test变量,hello函...原创 2021-02-06 15:53:12 · 230 阅读 · 0 评论 -
多态变异!一种保护JS代码的高级手法
在JShaman平台,有一种被称为“多态变异”的JavaScript(JS)代码保护方法。从名称看,可能让人心存疑惑:何为多态?如何变异?下面,通过实际操作体验一下:1、提供要保护的JS代码,并进行保护。保护之后,会出现一个引用地址:2、打开地址,可以发现,是保护过的密文JS代码:刷新页面,代码就会发生变化:每刷新一次,代码就变异一次。因为变异,那么代码就成为了多态形式。这就是多态变异技术。3、如果在Html页面中用...原创 2021-02-04 09:14:57 · 424 阅读 · 1 评论 -
JShaman新版来了,漂亮大气,国内最专业的JS代码加密平台!
JS(javascript)代码混淆加密,JS加固,JS源码保护!原创 2021-01-31 09:56:32 · 2167 阅读 · 0 评论 -
另类代码保护:把JS代码编译成字节码。
当使用NodeJS开发了产品或项目,在交付、给他人部署时,直接提供代码进行部署是很不妥的:JS源代码直接就交出去了!直接就是源码泄露。为了保护代码、保护自身利益,通用在交付给他人之前,都会进行代码保护。对于JS这类代码,通用的是使用JShaman之类JS代码混淆加密平台,对代码进行保护。当然也有另类的非主流方式,比如本文,将教给大家一种将NodeJS代码编译成字节码的方式。下面提供源码级的方案,使用环境也是Nodejs。1、编译JS代码为字节码原理是使用V8引擎虚拟机技术进行J.原创 2020-06-01 18:51:58 · 1354 阅读 · 0 评论 -
万万没想到:对JS代码混淆,竟造成这样的性能损失?
我们知道,如果要对JS代码进行保护,最普遍的做法是进行混淆加密。很多人会有担忧:混淆加密后,会不会造成性能影响?JS混淆会带来多少性能损失? 理论而言,混淆加密会使JS 代码量增加,那么执行时理应有性能影响。重点是:会带来多少性能损失,是否会严重影响执行效率? 为了验证这一问题,本文通过实测的方式寻求真相,揭示JS混淆加密究竟会带来多少性能影响。准备1、JS代码混淆加密,使用JShaman代码保护平台,这是国内知名的商业JS代码混淆服务平台。实验使用JShaman的通用.原创 2020-05-22 14:03:41 · 1199 阅读 · 1 评论 -
JS混淆是不是纸老虎?
关于JS代码混淆,一直有两种观点。一种观点认为很有用,是JS代码保护的重要手段,这是主流观点。但也见到少数人称不管用,是纸老虎,混淆后的代码还能读懂,随随便便就能破解。哪种观点才是正确的呢?我们通过实验来证明。实验使用JShaman平台,这是一个专业的JS代码混淆加密平台。测试用代码,就使用平台提供的例程,简单的几行:保护选项,去掉默认的“压缩代码”功能,为方便我们查看混淆后的代码。一键完成混淆,得到保护后的代码:跟前面保护前的4行代码...原创 2020-05-20 16:23:10 · 345 阅读 · 0 评论 -
你知道吗?JS代码混淆加密,很有用!
JS代码为什么要进行混淆加密?因为:JS代码是明文。JS是种开放源码的编程语言,无论是前端浏览器中的JS代码,还是在后端使用,如nodejs,js代码都是明文,明文代码,他人可以随意查看、复制、分析、盗用,极不安全!如果你辛辛苦苦的开发了一个程序、写了一段功能代码,不希望别人随随便便拿走用吧?那就得对JS代码进行混淆加密、保护JS代码。如何对JS代码进行混淆加密?有专业人平台、工具,专门用于JS代码混淆加密。比如国外的JScramber,国内的JShaman。.原创 2020-05-17 16:35:56 · 1167 阅读 · 0 评论 -
浏览器“设备指纹”伪造与检测。
设备指纹是什么?本文的设备指纹,是指用于识别设备的唯一特征。常用于用户身份识别、WEB安全防护等领域。设备指纹是怎么伪造的?设备指纹是可以被伪造和篡改的,比如通过浏览器插件,常可以实现这一点,如:Canvas Fingerprint Defender。伪造或篡改的原理,是通过拦截JS某些函数,对函数返回结果做修改,使本该返回固定数据的函数,返回成不固定的数据,因为设备...原创 2020-05-04 10:28:52 · 6217 阅读 · 0 评论 -
病毒库的秘密:杀毒软件百万特征码,为什么扫描文件那么快?
今天分享的知识,是关于杀毒软件,关于病毒库、特征码技术。Ty2y杀毒要研究的杀毒软件是:Ty2y杀毒,这是一款小众的、功能不错的、而且开源的国产杀毒软件。在使用它进行文件病毒扫描时,会发现扫描速度是很快的。软件是开源的,那么我们可以很方便的从源码中了解杀毒软件的各种功能。病毒扫描原理Ty2y杀毒的特征码规则是:哈希值(PE文件的节大小+节的...原创 2020-04-23 12:36:37 · 938 阅读 · 0 评论 -
借助JShaman,建立自己的JS代码混淆平台。
JS安全的必要性前端的安全问题,已经被人们越来越重视。前端安全,即JS代码安全。对JS代码进行保护,可以起到以下效果:1、可以防止代码被分析; 2、可防止前端功能被复制、盗用, 3、可很大程度上防止被前端攻击。如何进行JS代码保护对JS代码进行混淆加密,通常是经专业的JS代码平台实现,比如国际的JScramber、国内的JSHaman。国内,众所周知,用的最多的...原创 2020-04-10 20:12:53 · 2299 阅读 · 0 评论 -
如何用nginx实现防盗链?保护网站图片、视频。
什么是防盗链?有时候,当我们在网站上浏览图片时会遇到图片打不开,并看到提示:“403权限禁止”。这可能是正在浏览的这个网站用到的图片在盗用别的网站图片,而被盗用的网站采用了防盗链技术。这个功能是很有用的,特别是对于图片站或视频站。今天本文就聊聊如何实现防盗链。以nginx为例,如何实现防盗链?nginx referer指令nginx有个模块模块:ngx_http_r...原创 2020-03-22 18:00:38 · 549 阅读 · 0 评论 -
手机号码被错误标记,如何查询和取消标记?
什么是手机号码标记?举例说明,拨打电话的时候,比如只拨了一个号码,自动就显示这个号码是某某某,或是某家公司,或是显示为快递或广告推销。例如,由腾迅识别的号码:如果识别是正确的,自然没有问题。这个功能的初衷也即如此:自动帮忙识别一个号码,给人们带来方便。比如上例子,标识本人的号码为“js保护”,这个没问题,确实是对的,因为本人确实是做JS保护业务的,经营着一个名为JShaman的...原创 2020-03-11 14:26:05 · 2247 阅读 · 0 评论 -
呕心沥血做的网站,被他人一夜全抄走!如何防止JS代码被抄?
近日看到有人提出这样的需求,场景是这样的:“大牛在哪!我呕心沥血做的网页设计和网站,做了几个月才做完,JS代码写了好几个月,被他人一夜全抄走,毫无办法.... 如何是好?!”确实这样的情况很多,js、h5全是透明代码,发布到网上后,随便什么人都可以看到,只要懂点技术的,轻轻松松就可以复制走。复制走的可能是你几天,几个月,甚至是几年的开发成果。对于网站、H5应用、H5游戏,这种拷贝、复制盗用...原创 2020-02-13 10:28:38 · 2310 阅读 · 1 评论 -
奇思妙想:用JS给图片加口令!
本文展示一种用JS给图片加口令的方法,可以将任意图片转化为html,输入正确的口令才能打开查看图片。效果如下:效果说明1.它最终只有一个文件。并非一张图片和一个html,不是在html中引用图片,而是将图片放入了html。2.打开时,必须输入的正确口令,口令错误则不能打开。3.口令不能被获取!查看html源码无法找到口令,虽然口令确实是存放在文件中。直入主题,下面介...原创 2020-02-08 22:16:58 · 462 阅读 · 1 评论