JavaScript檢測是否開啟了控制臺(F12調試工具)
js檢測用戶是否打開調試工具(chrome)
(function(){ var re=/x/; var i=0; console.log(re); re.toString=function(){ window.close(); return ’第’+(++i)+’次打開控制臺’; } })();
JavaScript檢測是否開啟了控制臺(調試工具)
測試后在chrome有效
不少人防止別人趴源碼,一般采用檢測按鍵F12之類的,但是這些基本沒什么用
現在介紹一個方法,非常管用,可以檢測到你是否開啟了控制臺程序,可以算是JavaScript的一些奇淫巧技
將這段代碼加入你的網站即可,原理不明 = -
(function () {var re = /x/;var i = 0;console.log(re); re.toString = function () {alert('請關閉控制臺');return ’第 ’ + (++i) + ’ 次打開控制臺’;};})();
然后你在打開控制臺,即會彈出對話框
js檢測開發者工具Devtools是否打開防調試
之前寫過一篇文章《Javascript檢測開發者工具Devtools是否打開》,主要是講如何通過js來檢測開發者工具是否打開,防止別人惡意調試我們的代碼,那段代碼也是查了蠻多資料整理出來的,當時可以兼容chrome,firefox,ie,但是隨著瀏覽器版本的更新,已經基本上沒有作用了,最近我發現還是有蠻多人去瀏覽那篇文章,所以這里再放出一段代碼,算是個升級版吧,之前的版本里在firefox上還有有限制的,下面提供的這個版本我測試過通殺現在的chrome 69,firefox,IE,也不存在之前firefox上存在的問題了,下面直接貼出代碼:
setInterval(function() { check()}, 4000);var check = function() { function doCheck(a) { if (('' + a/a)['length'] !== 1 || a % 20 === 0) { (function() {} ['constructor']('debugger')()) } else { (function() {} ['constructor']('debugger')()) } doCheck(++a) } try { doCheck(0) } catch (err) {}};check();
這段代碼是什么原理,說實話我沒搞太懂,也去請教過一些大佬,都不能完全說出其中的原理,如果有懂的朋友請一定不吝賜教,雖然不知道原理,但是效果的確是杠杠的,這是本人從huichan網站上截取的,這里不得不佩服那些做huichan的,太強大。由于以前代碼是加密的,對于其中一些方法的命名我解密時都是隨意取的,不喜勿噴。
當然這種伎倆對于熟悉調試的開發者來說,完全沒有阻礙,但畢竟也能防范住一小批不懷好意的人,幸幸苦苦寫出來的代碼被別人悄悄的就搬走了,確實挺惱人的,但僅僅靠這么一個防調試的代碼是不夠的,我們還需要做的還有很多,比如一些基本的js的壓縮混淆加密等等,后期本人會整理一些js加密混淆以及解密方面的文章,敬請期待...
經好吧啦網小編測試就最后一種方法可以使用,下篇文章接著介紹。
相關文章:
