{eval=Array;=+count(Array);}
一般用戶可能沒有感覺,但站長朋友肯定知道,如果一個(gè)網(wǎng)站放置一段時(shí)間不管它,等某一天你再去看它時(shí),發(fā)現(xiàn)它可能都被掛馬了。其實(shí)網(wǎng)站被掛馬是常見現(xiàn)象,特別是基于CMS開發(fā)的網(wǎng)站。
網(wǎng)站一旦被掛馬,就會(huì)給訪客和網(wǎng)站自身帶來一些麻煩,比如說:
網(wǎng)頁上會(huì)存在一些惡意腳本,可能會(huì)彈出很多垃圾廣告彈窗、跳轉(zhuǎn)到不相關(guān)甚至是非法的網(wǎng)站上、插入大量鏈接、網(wǎng)頁死循環(huán)等,降低了訪問體驗(yàn);
原網(wǎng)站內(nèi)容被非法篡改,網(wǎng)站面目全非;
影響網(wǎng)站SEO效果,降低百度等排名,網(wǎng)站極容易被降權(quán)等;
非法修改網(wǎng)站源碼,甚至刪除了網(wǎng)站程序文件等,造成數(shù)據(jù)損失。
上面講的這些危害后果,其實(shí)網(wǎng)站一旦被掛馬后,清理也是很麻煩的一件事,因?yàn)楹诳鸵呀?jīng)破壞了你網(wǎng)站的源文件,而且不止一處插入了惡意代碼。
那這些黑客是如何將惡意代碼植入我們網(wǎng)站程序中的呢?無非是這幾步:
1、黑客尋找網(wǎng)站漏洞并利用
這里的漏洞主要有這些:
文件上傳漏洞:比如上傳頁面沒有對(duì)上傳文件格式做驗(yàn)證導(dǎo)致上傳了動(dòng)態(tài)腳本(如直接上傳了php文件),再者是上傳頁面沒有做權(quán)限驗(yàn)證導(dǎo)致非法用戶也能上傳文件等;
表單數(shù)據(jù)未過濾漏洞:比如用戶在發(fā)表文章時(shí),可以插入JS、CSS代碼,這樣就足以植入惡意腳本,頁面渲染時(shí)就會(huì)運(yùn)行這些JS、CSS代碼;
SQL注入漏洞:存在SQL注入點(diǎn),黑客可以入侵?jǐn)?shù)據(jù)庫進(jìn)行操作,嚴(yán)重的還能刪庫;
管理后臺(tái)弱口令漏洞:一些管理后臺(tái)帳號(hào)密碼過于簡單(比如 admin),一猜就中,直接登錄進(jìn)入后臺(tái),想怎么操作就怎么操作 ...
2、惡意代碼植入
找到漏洞后就可以利用,然后在網(wǎng)頁程序中植入惡意代碼,這樣用戶訪問到頁面后就會(huì)加載到這些惡意代碼,攻擊者的目的也就達(dá)到了。
既然我們知道黑客掛馬的大致流程,那如何避免網(wǎng)站被掛馬呢?結(jié)合我十幾年的運(yùn)維經(jīng)驗(yàn)整理了一些建議供大家參考:
1、網(wǎng)站建設(shè)時(shí)請(qǐng)盡可能不要選擇CMS
現(xiàn)在市面上的CMS源代碼都是公開的,所以0day漏洞也很多。漏洞公開后,大家只要找到是這種CMS建的站,基本上都能攻擊成功,所以波及范圍較廣。
但如果我們的程序是自主開發(fā)的,那攻擊者不知道我們的源碼邏輯,攻擊難度會(huì)很大。如果是基于CMS建的網(wǎng)站,一定要留意官方發(fā)布的補(bǔ)丁及時(shí)修復(fù)。
2、用戶提交的數(shù)據(jù)做好過濾
在WEB開發(fā)領(lǐng)域,我們一直強(qiáng)調(diào)用戶的任何輸入都是不能相信的,我們?cè)谀玫接脩籼峁┑臄?shù)據(jù)后務(wù)必要做必要的核驗(yàn)(格式是否正確)和過濾(過濾一些敏感字符)。我的建議是:
數(shù)據(jù)類型強(qiáng)制轉(zhuǎn)換;
過濾掉這些內(nèi)容:JS標(biāo)簽及代碼、CSS標(biāo)簽及代碼、HTML標(biāo)簽中的各類事件、單引號(hào)、雙引號(hào)、SQL關(guān)鍵字;
3、源碼目錄及文件權(quán)限嚴(yán)格控制
這個(gè)是很重要的,既使攻擊者拿到了上傳漏洞,但是我們只允許它上傳到特定目錄,其它目錄沒有寫權(quán)限,那就感染不了,如果沒有執(zhí)行權(quán)限,那上傳的動(dòng)態(tài)腳本也是無法執(zhí)行的。
4、后臺(tái)使用復(fù)雜口令
后臺(tái)地址改成無法猜到的地址,密碼一定要設(shè)得復(fù)雜點(diǎn)。
5、定期對(duì)站點(diǎn)進(jìn)行木馬查殺
定期把站點(diǎn)備份好,然后做木馬查殺,現(xiàn)在殺毒軟件是可以查殺WEB木馬的。
以上就是我的觀點(diǎn),對(duì)于這個(gè)問題大家是怎么看待的呢?歡迎在下方評(píng)論區(qū)交流 ~ 我是科技領(lǐng)域創(chuàng)作者,十年互聯(lián)網(wǎng)從業(yè)經(jīng)驗(yàn),歡迎關(guān)注我了解更多科技知識(shí)!
網(wǎng)站被掛碼一般是被 xss攻擊 ,sql注入攻擊(這是網(wǎng)頁端)。
又或者是服務(wù)器存在的安全問題導(dǎo)致的問題。
所以網(wǎng)站建設(shè)中需要保證服務(wù)器的安全,web權(quán)限的控制,php安全模式的開啟(如果語言是php開發(fā)),其次就是網(wǎng)站代碼中需要注意的,數(shù)據(jù)庫操作都做預(yù)加載防止sql注入,入庫的數(shù)據(jù)都做一些惡意標(biāo)簽的剔除或者轉(zhuǎn)義,防止惡意js代碼注入。
如果是使用一些開源搭建的網(wǎng)站,要注意實(shí)時(shí)更新軟件發(fā)布的補(bǔ)丁或者問題修復(fù)的升級(jí)
2
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答