Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >防止页面被调试

防止页面被调试

作者头像
用户1518699
发布于 2019-07-11 02:34:55
发布于 2019-07-11 02:34:55
1.2K00
代码可运行
举报
文章被收录于专栏:nice_每一天nice_每一天
运行总次数:0
代码可运行
代码语言:javascript
代码运行次数:0
运行
复制

实现原理

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
执行以下方法,会进入断点,如果断点的时间 >10毫秒,那么我就认为你正在调试。

JS代码中执行

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 1 (function noDebuger() {
 2 
 3     function testDebuger() {
 4         var d = new Date();
 5         debugger;
 6         if (new Date() - d > 10) {
 7             document.body.innerHTML = '<div style="width: 100%;height: 50px;font-size: 30px;text-align: center;font-weight: bold;">年轻人,不要太好奇</div>';
 8             return true;
 9         }
10         return false;
11     }
12 
13     function start() {
14         while (testDebuger()) {
15             testDebuger();
16         }
17     }
18 
19     if (!testDebuger()) {
20         window.onblur = function () {
21             setTimeout(function () {
22                 start();
23             }, 500)
24         }
25     }else {
26         start();
27     }
28 
29 
30 })();

JSP页面中执行:建议使用这种

使用的时候,可以将js方法压缩  http://tool.chinaz.com/js.aspx

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 1 <%--禁用调试--%>
 2 <c:if test="${!debug}">
 3     <script type="text/javascript">
 4         (function noDebuger() {
 5 
 6             function testDebuger() {
 7                 var d = new Date();
 8                 debugger;
 9                 if (new Date() - d > 100) {
10                     document.body.innerHTML = '<div style="width: 100%;height: 50px;font-size: 30px;text-align: center;font-weight: bold;">年轻人,不要太好奇</div>';
11                     return true;
12                 }
13                 return false;
14             }
15 
16             function start() {
17                 while (testDebuger()) {
18                     testDebuger();
19                 }
20             }
21 
22             if (!testDebuger()) {
23                 window.onblur = function () {
24                     setTimeout(function () {
25                         start();
26                     }, 500)
27                 }
28             } else {
29                 start();
30             }
31 
32 
33         })();
34     </script>
35 </c:if>

加密后执行

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
1 <c:if test="${!debug}">
2     <script type="text/javascript">
3         eval(function(p,a,c,k,e,d){e=function(c){return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1;};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p;}('(0 k(){0 1(){j d=6 7();i;9(6 7()-d>8){l.h.b=\'<3 c="a: 8%;f: e;5-o: y;x-w: z;5-A: v;">r,q</3>\';4 u}4 t}0 2(){s(1()){1()}}9(!1()){p.B=0(){g(0(){2()},m)}}n{2()}})();',38,38,'function|testDebuger|start|div|return|font|new|Date|100|if|width|innerHTML|style||50px|height|setTimeout|body|debugger|var|noDebuger|document|500|else|size|window|不要太好奇|年轻人|while|false|true|bold|align|text|30px|center|weight|onblur'.split('|'),0,{}))
4     </script>
5 </c:if>
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-07-10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
网站禁用f12 禁止调试代码方法
可以设置复制提示,禁f12,禁止调试是很有必要的 当然这个防不了大佬,只能防防小学生
taoli
2022/10/08
3.8K0
Typecho主题Handsome修改记录---(持续更新)
usr/themes/handsome/component/footer.php删代码至如图所示
BinGo_Blog
2022/11/01
1.4K0
JS双月份显示联动效果,点击日期浮出消息提示
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>原生JS写的
欢醉
2018/01/22
11.1K0
JS双月份显示联动效果,点击日期浮出消息提示
cookie的跨页面传值问题仿购物车案例
大家都知道cookie的特性, cookie生效在同一个域名下,cookie储存量有限,cookie主要用于记录用户的一些信息,例如记录用户的登录信息使用户一段时间内不用登录,它有服务器创建,并放在客户端。
王小婷
2018/12/19
1.5K0
Fdog系列(一):思来想去,不如写一个聊天软件,那就从仿QQ注册页面开始吧。
两年的大学生活马上就要结束了,马上面临实习,突然心血来潮,想着最后再来写一个项目来总结这几年所学的东西,难的项目,咱也不会,索性就模仿qq来写一个fdog,嘿嘿,思来想去,索性先从前端开始,虽说大多数编程人接触的第一门语言基本都是C语言,但千万不要单纯的以为只靠一门C语言就能做出像样的程序出来,所以学C语言能干什么,什么都干不了,仅仅作为一个基础而已(这里已经被人喷了,我解释一下,我说C什么都干不了的前提下是完成一套流程,你说就用C搞嵌入式,搞单片机,我没意见,我说这句话的前提是你要搞一整套,包括pc端开发,移动端开发,网页开发,以及部署服务器,连接数据库等等,甚至是我文中出现的使用ps做出来的背景图,图标图等等,如果这些内容你全部能用c做出来,你再质疑我。)。在这之前,我无法将所学知识融合贯通,包括我自己私下学习,或者上课学习,我相信也有很多人跟我有一样的烦恼,不知道乱七八糟的学起来有什么用,只学一门语言不好吗,我也无法理解老师所讲的一些内容,但在此之后,我觉得应该是没有get到那个点,接下来,随着系列的连续更新,我将力图帮助新入门的朋友们,了解如何将各种语言,各种技术整合到一块,如果你心动了,希望可以给我一个三连!(文末有福利)
花狗Fdog
2021/05/06
8750
Handsome魔改备忘
请注意,本文编写于 536 天前,最后修改于 137 天前,其中某些信息可能已经过时。
Naraku
2021/07/29
1.3K0
TTS Text-to-speech(文字转语音)服务
官网链接:Speech Studio - Microsoft Azure (https://speech.azure.cn/audiocontentcreation)
红目香薰
2022/11/29
3.7K0
TTS Text-to-speech(文字转语音)服务
永夜星河主题特效2(星河背景 + 闪烁文字+点击星星 + 文字弹出特效)
命运之光
2024/11/17
3640
永夜星河主题特效2(星河背景 + 闪烁文字+点击星星 + 文字弹出特效)
老司机读书笔记——Weex学习笔记
Weex整体上与Vue语法大概一直,基本用法由阿里进行二次封装。以下主要介绍Weex的一些内置组件。
老司机Wicky
2018/08/22
1.7K0
老司机读书笔记——Weex学习笔记
基于JS实现回到页面顶部的五种写法(从实现到增强)
  使用锚点链接是一种简单的返回顶部的功能实现。该实现主要在页面顶部放置一个指定名称的锚点链接,然后在页面下方放置一个返回到该锚点的链接,用户点击该链接即可返回到该锚点所在的顶部位置
botkenni
2019/09/03
6.8K0
大一Web课程设计 基于HTML家乡主题网页项目的设计与实现——中国牡丹之都山东菏泽(6页)
家乡旅游景点网页作业制作 网页代码运用了DIV盒子的使用方法,如盒子的嵌套、浮动、margin、border、background等属性的使用,外部大盒子设定居中,内部左中右布局,下方横向浮动排列,大学学习的前端知识点和布局方式都有运用,CSS的代码量也很足、很细致,使用hover来完成过渡效果、鼠标滑过效果等,使用表格、表单补充模块,为方便新手学习页面中没有使用js有需要的可以自行添加。 --- @TOC 一、网页介绍📖 1 网页简介:此作品为学生个人主页网页设计题材,HTML+CSS 布局制作,web前
IT司马青衫
2022/08/14
2120
大一Web课程设计 基于HTML家乡主题网页项目的设计与实现——中国牡丹之都山东菏泽(6页)
Vue.js 3.0 登录界面实现与常用指令总结
这个登录界面不仅展示了Vue.js的核心功能,还提供了良好的用户体验和现代UI设计。
软件架构师Michael
2025/06/30
2260
前端页面如何禁止别人调试
我们都知道 debugger 在控制台被打开的时候就会执行, 前端页面防止调试的方法主要是通过不断 debugger 来疯狂输出断点,让控制台打开后程序就无法正常执行,以下是一个基本防止调式的代码:
越陌度阡
2022/05/06
1.9K0
前端页面如何禁止别人调试
从代码中诞生的浪漫:一个程序员的表白艺术
我正在参加CodeBuddy「首席试玩官」内容创作大赛,本文所使用的 CodeBuddy 免费下载链接:腾讯云代码助手 CodeBuddy - AI 时代的智能编程伙伴
Lethehong
2025/05/10
3320
从代码中诞生的浪漫:一个程序员的表白艺术
(Demo分享)利用JavaScript(JS)做一个可输入分钟的倒计时钟功能
利用JavaScript(JS)实现一个可输入分钟的倒计时钟功能 本文章为 Tz张无忌 原创文章,转载请注明来源,谢谢合作!
Tz一号
2020/09/10
2.6K0
vue分页组件
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/10
8450
vue分页组件
EMLOG自适应emMsg提示信息
原版的EMLOG 提示有点丑。 正好看到一个不错的提示页面就给弄了下来,替换上 打开 include/lib/function.base.php 找到 /** * 显示系统信息 *
Youngxj
2018/06/06
9590
商城项目回顾整理(一)前台页面布局
登录页面: 1 <%@ page language="java" contentType="text/html; charset=utf-8" 2 pageEncoding="utf-8"%> 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 4 <html> 5 6 <head> 7 <
二十三年蝉
2018/02/28
1.8K0
Hexo matery主题评论系统valine改版记录
替换掉source/libs/valine/Valine.min.js原生 js 文件
框架师
2021/03/05
1K0
【CodeBuddy】今天520,我只教你一遍。
我正在参加CodeBuddy「首席试玩官」内容创作大赛,本文所使用的 CodeBuddy 免费下载链接: 腾讯云代码助手 CodeBuddy - AI 时代的智能编程伙伴
Jimaks
2025/05/20
2150
【CodeBuddy】今天520,我只教你一遍。
推荐阅读
相关推荐
网站禁用f12 禁止调试代码方法
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验