您现在的位置是:首页 > Javascript
当前栏目
看得我目瞪口呆的 JavaScript 代码技巧
2023-02-26 12:27:04 时间
js 是一门强大的语言。对黑客来说,这是绕过 WAF 的利器,比如当字母和数字都无被 WAF 屏蔽的时候,你可以这样玩:
1 = !+[] = ++[[]][+[]] 2 = !+[]+!+[] = ++[++[[]][+[]]][+[]] 3 = !+[]+!+[]+!+[] = ++[++[++[[]][+[]]][+[]]][+[]]
(福利推荐:阿里云、腾讯云、华为云服务器最新限时优惠活动,云服务器1核2G仅88元/年、2核4G仅698元/3年,点击这里立即抢购>>>)
而
a 的获取方式 false[1] 或者是 NaN[1]
false = ([![]]+[])
// 空的 array, NOT 一下,加上中括号后再通过+[] 转化成 string
1 = ++[[]][+[]]
//前面解释过了,或者用!+[] 也可以。
于是 a 可以用这个表达:([![]]+[]) [++[[]][+[]]]
同理 l 的是 false[2], 等于 ([![]]+[])[++[++[[]][+ []]][+[]]]
e 是 false[4], r 和 t 通过 true 来获得,而 true 就是 false 去掉 NOT 符号的结果
最后 alert 也就是这个:
(+[][+[]]+[])[++[[]][+[]]]+([![]]+ [])[++[++[[]][+[]]][+[]]]+([!![]]+ [])[++[++[++[[]][+[]]][+[]]][+[]]]+ ([!![]]+[])[++[[]][+[]]]+([!![]]+ [])[+[]]
还有一些比较复杂的字母需要绕一下,比如说 window 对象 的构造:
(1,[].sort)() = window
sort 的 s 通过 false, r t 通过 true, o 通过 [object Object]
于是 window.alert(1) 就是如下代码:
([],[][([![]]+[])[++[++[++[[]][+[]]][+[]]] [+[]]]+([]+{})[++[[]][+[]]]+([!![]]+[])[++ [[]][+[]]]+([!![]]+[])[+[]]])()[ (+[][+[]] +[])[++[[]][+[]]]+([![]]+[])[++[++[[]][+ []]][+[]]] +([!![]]+[])[++[++[++[[]][+[]]] [+[]]][+[]]]+([!![]]+[])[++ [[]][+[]]]+ ([!![]]+[])[+[]]](++[[]][+[]] "],[][([![]]+[])[++[++[++[[]][+[]]][+[]]] [+[]]]+([]+{})[++[[]][+[]]]+([!![]]+[])[++ [[]][+[]]]+([!![]]+[])[+[]]])()[ (+[][+[]] +[])[++[[]][+[]]]+([![]]+[])[++[++[[]][+ []]][+[]]] +([!![]]+[])[++[++[++[[]][+[]]] [+[]]][+[]]]+([!![]]+[])[++ [[]][+[]]]+ ([!![]]+[])[+[]]")
如果你想开发小程序或者了解更多关于小程序的内容,欢迎关注厦门在乎科技-专注厦门小程序开发公司、app开发、网站开发、H5小游戏开发
你还在原价购买阿里云、腾讯云、华为云、天翼云产品?那就亏大啦!现在申请成为四大品牌云厂商VIP用户,可以3折优惠价购买云服务器等云产品,并且可享四大云服务商产品终身VIP优惠价,还等什么?赶紧点击下面对应链接免费申请VIP客户吧:
相关文章
- JDK中内嵌JS引擎介绍及使用
- 49195,npm最后的疯狂?盘点10款最有前途JavaScript构建工具
- 译文:5个增强Node.js应用程序增强功能
- 4个例子,吃透 JavaScript 实现的二叉搜索树 BST
- Vue中使用XML和JSON格式互转插件
- JDK中Jshell简单使用(JDK9版本以上或者JDK9版本)
- shiro中的JSP标签支持
- Java技术点-json转对象,对象转json
- SpringBoot+SpringDataJpa @Query之 JPQL使用书写模板(模糊查询and条件查询)
- Spring Boot中的Freemarker模版引擎引用css和js的正确姿势
- Node.js解压版的环境配置及相关常用命令
- JSP学习笔记(6)—— 自定义MVC框架
- JSP学习笔记(5)——Servlet、监听器、过滤器、MVC模式介绍
- Jsp学习笔记(4)——分页查询
- APIJSON简单使用
- JSP学习笔记(3)——JSTL 标签库
- JSP学习笔记(1)——Jsp指令、动作元素和内置对象
- JavaScript ES6 Promise对象
- Web前端——JavaScript扩展补充
- Web前端——表单提交和Js添加选项