iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >web前端页面怎么禁止别人调试
  • 713
分享到

web前端页面怎么禁止别人调试

2023-07-05 15:07:34 713人浏览 薄情痞子
摘要

这篇文章主要介绍“web前端页面怎么禁止别人调试”,在日常操作中,相信很多人在WEB前端页面怎么禁止别人调试问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”web前端页面怎么禁止别人调试”的疑惑有所帮助!接下来

这篇文章主要介绍“web前端页面怎么禁止别人调试”,在日常操作中,相信很多人在WEB前端页面怎么禁止别人调试问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”web前端页面怎么禁止别人调试”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

1. 前端防止调试的思路与方法

我们都知道 debugger 在控制台被打开的时候就会执行, 前端页面防止调试的方法主要是通过不断 debugger 来疯狂输出断点,让控制台打开后程序就无法正常执行,以下是一个基本防止调式的代码:

(() => {    function block() {        setInterval(() => {            debugger;        }, 50);    }    try {        block();    } catch (err) {}})();

web前端页面怎么禁止别人调试

这里需要说明以下几点:

程序被 debugger 阻止了,我们无法像以往一样在 Source Tab 中的对应 js 代码处添加断点调试,无法调试程序的执行逻辑。

当我们打开控制台就会出被 debugger 阻止,所以想通过 network tab 来查看网页都做了哪些请求也是看不到的。

2. 禁止断点方法及对策

遇到防止调试我们可以禁止断点,在 Chrome 控制台的 Source Tab 页点击 Deactivate breakpoints 按钮或者按下 Ctrl + f8。

web前端页面怎么禁止别人调试

 操作动画效果如下所示:

web前端页面怎么禁止别人调试

注意:上面的解决方法并没有帮我们解决根本问题,我们需要做的是调试,上面虽然把 debugger 都去掉了,但是我们也无法在通过点击每一行代码左边的行号添加 breakpoint 了,所以根本性的问题并没有解决,只是去除了那碍眼的疯狂 debugger。

如何防止恶意用户禁止断点呢?

将 setInterval(() =>{ debugger;},50); 写在一行中,你即使通过添加 logpoint  为 false 也没用,仍然是疯狂 debugger,即使你可能想到通过左下角的代码格式化来格式一下setInterval(() => {debugger;}, 50); 将它变成多行的也是没用,仍然会在刷新后重新弹 debugger。

(() => {    function block() {        setInterval(() => {debugger;}, 50);    }    try {        block();    } catch (err) {}})();

3. 突破防止调试的方法及对策

在对应的代码行添加logpoint为 false,然后按回车后刷新网页,发现成功跳过无限 debugger,于是我们就可以愉快的自由调试了。

web前端页面怎么禁止别人调试

对应的还有一种方法,即通过来添加 add script ignore list 需要忽略执行代码行或文件。

web前端页面怎么禁止别人调试

 如果想恢复初始状态,可以通过删除 script ignore list 里已添加的忽略代码。

web前端页面怎么禁止别人调试

针对这种操作如何防止恶意用户呢?

我们可以通过将debugger改写成 Function("debugger")(); 的形式来应对,Function 构造器生成的 debugger 会在每一次执行时开启一个临时 js 文件,代码改造如下所示:

(() => {    function block() {        setInterval(() => {            Function("debugger")();        }, 50);    }    try {        block();    } catch (err) {}})();

web前端页面怎么禁止别人调试

4. 防止调试方法增强

上面的代码由于没有加密混淆,多少可能还是会被别人读懂一些,我们可以尝试对代码进行加密混淆,如下所示:

eval(function(c,g,a,b,d,e){d=String;if(!"".replace(/^/,String)){for(;a--;)e[a]=b[a]||a;b=[function(f){return e[f]}];d=function(){return"\\w+"};a=1}for(;a--;)b[a]&&(c=c.replace(new RegExp("\\b"+d(a)+"\\b","g"),b[a]));return c}('(()=>{1 0(){2(()=>{3("4")()},5)}6{0()}7(8){}})();',9,9,"block function setInterval Function debugger 50 try catch err".split(" "),0,{}));

web前端页面怎么禁止别人调试

为了让对方尽量的难以识别我们的代码,我们将Function("debugger").call()改成 (function(){return false;})["constructor"]("debugger")["call"](); 并且添加条件,当窗口外部宽高和内部宽高的差值大于一定的值 ,我把 body 里的内容全部清空掉。

web前端页面怎么禁止别人调试

 操作动画如下所示:

web前端页面怎么禁止别人调试

下面附上这份未混淆的来之不易的的代码,你可以把它当作工具函数,在需要不让别人调试的项目中引用,使用时记得加密混淆。

(() => {    function block() {        if (window.outerHeight - window.innerHeight > 200 ||window.outerWidth - window.innerWidth > 200) {            document.body.innerhtml ="检测到非法调试,请关闭后刷新重试!";        }        setInterval(() => {            (function () {                return false;            }                ["constructor"]("debugger")                ["call"]());        }, 50);    }    try {        block();    } catch (err) {}})();

通过给 style 标签添加 style="display: block",contenteditable 两个属性实现在页面中便捷的调试样式。

web前端页面怎么禁止别人调试

复制下方代码到你的 html 文件中,建议试试。

<!DOCTYPE html><body>    <div>来调试我吧~</div>    <style  contenteditable>        body {            background-color: rgb(140, 209, 230);            color: white;        }        div {            background-color: green;            width: 300px;            height: 300px;            line-height: 300px;            text-align: center;        }    </style></body>

到此,关于“web前端页面怎么禁止别人调试”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: web前端页面怎么禁止别人调试

本文链接: https://www.lsjlt.com/news/352784.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • web前端页面怎么禁止别人调试
    这篇文章主要介绍“web前端页面怎么禁止别人调试”,在日常操作中,相信很多人在web前端页面怎么禁止别人调试问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”web前端页面怎么禁止别人调试”的疑惑有所帮助!接下来...
    99+
    2023-07-05
  • 前端页面禁止别人调试的方法
    1. 前端防止调试的思路与方法 我们都知道 debugger 在控制台被打开的时候就会执行, 前端页面防止调试的方法主要是通过不断 debugger 来疯狂输出断点,让控制台打开后程...
    99+
    2023-03-23
    页面禁止调试 网页脚本调试怎么禁用 前端页面禁止调试
  • JavaWeb禁止浏览器缓存当前Web页面的方法
    所谓浏览器缓存,是指当第一次访问网页时,浏览器会将这些网页缓存到本地,当下一次再访问这些被缓存的网页时,浏览器就会直接从本地读取这些网页的内容,而无需再从网络上获取。      &...
    99+
    2023-05-30
    java web 浏览器
  • 云服务器被别人登录端口被禁止怎么办
    如果您的云服务器被他人成功登录了,并且无法找回密码,那么您可能需要考虑采取下列措施来尝试解决此问题: 使用安全工具重置密码:您可以使用您信任的安全工具或使用云服务器自带的密码重置功能来重置云服务器的密码。您也可以尝试联系云服务器的管理员...
    99+
    2023-10-27
    端口 服务器
  • css怎么禁止选中页面内容
    小编给大家分享一下css怎么禁止选中页面内容,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!css的选择器有哪些css的选择器可以分为三大类,即id选择器、clas...
    99+
    2023-06-14
  • 云服务器被别人登录端口被禁止了怎么办
    1. 确认被禁止的端口 首先,你需要确认哪个端口被禁止了。登录到你的云服务器,查看服务器的防火墙配置或者安全组规则,找到被禁止的端口。 2. 解除端口禁止 一旦你确定了被禁止的端口,你可以采取以下措施解除端口禁止: 修改防火墙规则:如果...
    99+
    2023-10-27
    端口 服务器
  • web前端页面渲染机制是什么
    本篇内容介绍了“web前端页面渲染机制是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!浏览器在介绍浏览...
    99+
    2024-04-02
  • 云服务器被别人登录端口被禁止访问怎么办
    首先,您需要检查您的防火墙设置。许多防火墙会在您的计算机上安装和配置。您可以通过检查防火墙设置来确保您的计算机没有被允许通过防火墙访问互联网。您可以检查您的防火墙设置是否允许通过特定端口访问云服务器,以及您是否启用了来自特定IP地址的访问限...
    99+
    2023-10-28
    端口 服务器
  • 云服务器被别人登录端口被禁止了怎么回事
    如果该被授权用户在访问时没有输入登录凭据,则服务器将无法识别该用户的身份,并拒绝其访问请求。这种情况可能导致安全风险,例如未经授权的用户在云服务器上使用受保护的资源,或者服务器被黑客入侵,窃取机密信息或访问服务器上的存储空间。 因此,如果...
    99+
    2023-10-28
    怎么回事 端口 服务器
  • 云服务器被别人登录端口被禁止了怎么解决
    一、安全 云服务器被禁止登录可能会导致以下几个安全问题: 攻击者通过控制服务器获取企业敏感信息,例如商业机密、客户信息等。 攻击者可以通过漏洞攻击来入侵云服务器。 攻击者可以通过虚拟主机的漏洞来入侵云服务器。 攻击者可以通过DDoS(分...
    99+
    2023-10-28
    端口 服务器
  • 云服务器被别人登录端口被禁止访问怎么解除
    查看被禁止访问的服务和端口:首先,您需要了解被禁止访问的服务和端口。这可以通过访问控制列表(ACL)或日志文件来获取。在访问控制列表中,您可以查找特定的端口号并禁用它们。在日志文件中,您可以查看哪些IP地址或用户被禁止访问您的云服务器。 ...
    99+
    2023-10-27
    端口 服务器
  • 云服务器被别人登录端口被禁止访问怎么解决
    首先,我们需要了解云服务器的登录端口是如何被禁止访问的。一般来说,云服务器的登录端口会受到安全控制的限制。通常情况下,云服务器的登录端口被限制在3200-3210之间,但是也有一些云服务器允许远程登录,可以允许远程用户的登录端口在一定范围内...
    99+
    2023-10-28
    端口 服务器
  • 怎么在html中禁止页面放大缩小
    怎么在html中禁止页面放大缩小?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。html页面禁止放大缩小页面<meta name="viewport...
    99+
    2023-06-15
  • 怎么在html中设置禁止页面缩放
    今天就跟大家聊聊有关怎么在html中设置禁止页面缩放,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。html是什么html的全称为超文本标记语言,它是一种标记语言,包含了一系列标签.通...
    99+
    2023-06-14
  • win10怎么调试前面板声音
    这篇文章主要介绍“win10怎么调试前面板声音”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“win10怎么调试前面板声音”文章能帮助大家解决问题。win10调试前面板声音的方法:点击左下角开始随后打...
    99+
    2023-07-01
  • web移动端调试神器Eruda怎么用
    这篇文章主要介绍“web移动端调试神器Eruda怎么用”,在日常操作中,相信很多人在web移动端调试神器Eruda怎么用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”web移...
    99+
    2024-04-02
  • web前端怎么实现撩人的按钮特效
    本篇内容主要讲解“web前端怎么实现撩人的按钮特效”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“web前端怎么实现撩人的按钮特效”...
    99+
    2024-04-02
  • Vue怎么实现前端页面缓存
    这篇“Vue怎么实现前端页面缓存”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Vue怎么实现前端页面缓存”文章吧。Vue前端...
    99+
    2023-07-02
  • Html5页面上怎么禁止手机虚拟键盘弹出
    这篇文章主要介绍了Html5页面上怎么禁止手机虚拟键盘弹出,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。工作中遇到如下需求,点击输入框弹出自定义弹窗,输入框是input标签:...
    99+
    2023-06-09
  • 前端页面制作工具pagemaker怎么用
    本篇内容介绍了“前端页面制作工具pagemaker怎么用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作