SQL Server數(shù)據(jù)庫被掛馬的解決方案
一個網(wǎng)站遭遇入侵,破壞相當(dāng)嚴(yán)重,SQL數(shù)據(jù)庫被掛馬,所有的表里面大部分字段都被多次重復(fù)插入掛馬代碼,查看日志,還好沒有涉及到服務(wù)器的安全,只是數(shù)據(jù)庫那里出現(xiàn)了很多異常警告而已,網(wǎng)站確實存在漏洞。
沒有辦法,我只得修復(fù)數(shù)據(jù)庫,因為他們沒有數(shù)據(jù)庫備份,根本就沒有辦法還原數(shù)據(jù)庫啊,何況連事務(wù)日志都沒有開啟,試著恢復(fù)了幾次都不成功,恢復(fù)數(shù)據(jù)庫沒有一點希望,我只得乖乖的幫他們清理掛馬代碼,不可能手工刪除掛馬代碼,畢竟數(shù)據(jù)太大了,不可能去直接修改,通過四處搜尋得到了一個勉強(qiáng)有效的解決辦法,每個表里面去執(zhí)行一下這個sql語句:
update tablename set @ziduanming =replace(cast(@ziduanming as varchar(8000)),'',null)
上面的sql語句可以對應(yīng)修改表,字段名,和替換內(nèi)容。
其實,sql數(shù)據(jù)庫掛馬是一種較新的掛馬方法,只要網(wǎng)站存在注入,并且連接數(shù)據(jù)庫是db owner權(quán)限就可以進(jìn)行數(shù)據(jù)庫掛馬,估計這次攻擊的流程應(yīng)該是自動化的,通過先進(jìn)的掃描技術(shù)批量收集到幾萬網(wǎng)站的SQL注入漏洞,針對漏洞攻擊,進(jìn)行自動化的SQL注入掛馬。這次應(yīng)該有很多網(wǎng)站遭殃了,asp+mssql的是主要被攻擊對象!
SQL Server數(shù)據(jù)庫掛馬的解決辦法:
正確清理木馬,注意數(shù)據(jù)庫不能隨便修改或刪除,被掛上馬后,更需要謹(jǐn)慎的操作。建議,先備份然后再小心清理。
如果以前沒有備份的話,就利用我上面的sql命令進(jìn)行修復(fù),
如何預(yù)防SQL數(shù)據(jù)庫掛馬:
1、清理網(wǎng)站上所有注入點。
2、為網(wǎng)站配置可靠的防注入程序。
3、最好在網(wǎng)站源碼中做好過濾,在數(shù)據(jù)庫中限制字符的類型和長度。
4、養(yǎng)成經(jīng)常備份數(shù)據(jù)庫的習(xí)慣。大家可能無法保證天天備份數(shù)據(jù)庫,但也會保證每周備份一次,如果有時間保證天天備份數(shù)據(jù)庫。
5、最好是請專業(yè)的網(wǎng)站安全公司,對您的站和服務(wù)器做徹底的安全評估。
評論