新聞中心
無憂主機(jī)教你Joomla!如何加強(qiáng)網(wǎng)站中js腳本程序的安全性能
在joomla的模塊中調(diào)用.js腳本是一件非常正常的事情。無憂主機(jī)(www.gle-technology.com)測(cè)試,只要直接在瀏覽器中輸入.js腳本地址,就可以看到.js程序。這種情況是我們不愿意看到的 ,而且這種情況也會(huì)給網(wǎng)站帶來安全隱患。無憂主機(jī)就想了,能不能只讓.js程序只運(yùn)行在php空間(joomla可以調(diào)用)上,而不是運(yùn)行在用戶的瀏覽器上,.js程序只允許允許在網(wǎng)站程序中,而不會(huì)運(yùn)行在用戶瀏覽器上。這種方法可以實(shí)現(xiàn)嗎? Js程序是在客戶端瀏覽器中運(yùn)行,用戶能查看到那是肯定的。但為了防止不法分子利用,我們平常使用封裝或js加密的方法進(jìn)行處理,加強(qiáng)保護(hù)站點(diǎn)的js程序。下面是簡單介紹一下基本常用的js加密(封裝手段)方法: 1、使用JAVASCRIPT函數(shù)escape()和unescape()進(jìn)行加密。如果你要求不高,可以用這個(gè)最簡單的方法進(jìn)行加密。最簡單加密等于最容易被破解!使用須要謹(jǐn)慎。 2、使用轉(zhuǎn)義字符""的,巧妙加密。JavaScript提供了一些特殊字符如:n (換行)、 r (回車)、' (單引號(hào))。其實(shí)""后面還可以跟八進(jìn)制或十六進(jìn)制的數(shù)字,如字符"a"則可以表示為:"141"或"x61"(注意是小寫字符"x"),至于雙字節(jié)字符如漢字"黑"則僅能用十六進(jìn)制表示為"u9ED1"(注意是小寫字符"u"),其中字符"u"表示是雙字節(jié)字符,根據(jù)這個(gè)原理例子代碼則可以表示為: 八進(jìn)制轉(zhuǎn)義字符串如下: <SCRIPT> eval("1411541451621645042u9ED1u5BA2u9632u7EBF425173") </SCRIPT> 3、“題海戰(zhàn)術(shù)”在js程序中我們可以加入大量的無用字符、代碼、注釋內(nèi)容、數(shù)字等等,其目的就是混淆視聽,將真正js程序雪藏其中。 4、添加NUL空字符,讓你的js程序變得高深莫測(cè),難以分辨。我們都知道在HTML網(wǎng)頁中任意位置添加任意個(gè)數(shù)的"空字符",IE照樣會(huì)正常顯示其中的內(nèi)容,并正常執(zhí)行其中的JavaScript 代碼。當(dāng)我們通過文本編輯器或記事本查看時(shí),其空字符就會(huì)幫我們將js代碼顯示的亂七八糟,雜亂無序,如不得要領(lǐng),是很難去掉那些空字符,讓程序變得正常起來。如下代碼:(注意空字符) <S C RI P T L ANG U A G E =" J a v a S c r i p t "> a l er t ("ph p虛 擬 主 機(jī)") ; < / SC R I P T> 無憂主機(jī) 提供美國/香港純Linux環(huán)境下高端免備案php空間,僅僅只需99元一年起。
本文地址:http://www.gle-technology.com/joomla/1923.html