1. 【網警提醒】基礎網路攻防之webshell攻擊
什麼是webshell?有什麼危害?
webshell 就是一種可以在web伺服器上執行的後台腳本或者命令執行環境。
黑客通過入侵網站上傳webshell後獲得伺服器的執行操作許可權,比如執行系統命令、竊取用戶數據、刪除web頁面、修改主頁等,其危害不言而喻。
Webshell攻擊的特點有哪些?
1
持續遠程訪問
入侵者可以利用 webshell 從而達到長期控制網站伺服器的目的。若攻擊者自行修復了漏洞,以確保沒有其他人會利用該漏洞,攻擊者可以低調的隨時控制伺服器。一些流行的 webshell 使用密碼驗證和其他技術來確保只有上傳 webshell 的攻擊者才能訪問它。
2
許可權提升
在伺服器沒有配置錯誤的情況下, webshell 將在web伺服器的用戶許可權下運行,該用戶許可權是有限的。通過使用 webshell ,攻擊者可以嘗試通過利用系統上的本地漏洞來執行許可權提升,常見的有查找敏感配置文件、通過內核漏洞提權、利用低許可權用戶目錄下可被Root許可權用戶調用的腳本提權、任務計劃等。
3
極強的隱蔽性
有些惡意網頁腳本可以嵌套在正常網頁中運行,且不容易被查殺。webshell還可以穿越伺服器防火牆,由於與被控制的伺服器或遠程主機交互的數據都是通過80埠傳遞,因此不會被防火牆攔截,在沒有記錄流量的情況下, webshell 使用post包發送,也不會被記錄在系統日誌中,只會在web日誌中記錄一些數據提交的記錄。
獲取webshell的常見方法
1
直接上傳獲得webshell
因過濾上傳文件不嚴,導致用戶可以直接上傳 webshell 到網站任意可寫目錄中,從而拿到網站的管理員控制許可權。
2
添加修改上傳類型
現在很多腳本程序上傳模塊不是只允許上傳合法文件類型,大多數的系統是允許添加上傳類型。
3
利用後台管理功能寫入webshell
進入後台後還可以通過修改相關文件來寫入webshell。
4
利用後台資料庫備份及恢復獲得
主要是利用後台對access資料庫的「備份資料庫」或「恢復資料庫」功能,「備份的資料庫路徑」等變數沒有過濾導致可以把任意文件後綴改為asp,從而得到webshell。
5
php+mysql系統
後台需要有mysql數據查詢功能,入侵者就可以利用它執行SELECT ... in TO OUTFILE查詢輸出php文件,因為所有的數據是存放在mysql里的,所以我們可以通過正常手段把我們的WebShell代碼插入mysql在利用SELECT ... in TO OUTFILE語句導出shell。
webshell網站後門的清除方法
後門的文件可以直接刪除,找到後門文件,直接刪除即可;
不能直接刪除後門文件,只能刪除文件內容中的木馬代碼進行清除。
1、文件名為index.asp 、index.php,這類為自動生成SEO類型文件,可以直接刪除,如要徹底清除後門,需找生成此文件的源文件。
2、文件內容只有一行,或很少量的代碼,此類被稱為「一句話後門」。
3、文件內容中存在password或UserPass關鍵字。
4、另外一些在上傳組件目錄或上傳目錄的文件可以直接刪除。如eWebEditor、Editor、FCKeditor、webeditor、UploadFiles、uploads等。
1、網站自身文件被插入惡意代碼
2、網站配置文件
這類插入網站自身代碼中的後門清除方法:
首先備份此文件以備改錯可恢復,查找到後門代碼的位置,一般通過查找「eval、execute、request、ExecuteGlobal」關鍵字進行定位。把確定為後門的代碼刪除後保存文件。訪問網站看是否報錯,以確認有沒有改錯。
網站如何防禦webshell攻擊?
從根本上解決動態網頁腳本的安全問題,要做到防注入、防暴庫、防COOKIES欺騙、防跨站攻擊等等,務必配置好伺服器FSO許可權。
1、建議用戶通過ftp來上傳、維護網頁,盡量不安裝上傳程序。
2、對上傳程序的調用一定要進行身份認證,並只允許信任的人使用上傳程序。
3、程序管理員的用戶名和密碼要有一定復雜性,不能過於簡單,還要注意定期更換。
4、到正規網站下載程序,要對資料庫名稱和存放路徑進行修改,資料庫名稱要有一定復雜性。
5、盡量保持程序是最新版本。
6、不要在網頁上加註後台管理程序登陸頁面的鏈接。
7、為防止程序有未知漏洞,可以在維護後刪除後台管理程序的登陸頁面,下次維護時再上傳。
8、時常備份資料庫等重要文件。
9、日常多維護,並注意空間中是否有來歷不明的asp文件。
10、盡量關閉網站搜索功能,利用外部搜索工具,以防爆出數據。
11、利用白名單上傳文件,不在白名單內的一律禁止上傳,上傳目錄許可權遵循最小許可權原則。
2. 懸鏡中的webshell是如何使用的
WebShell是一種常見的網頁後門,它常常被攻擊者用來獲取Web伺服器的操作許可權。攻擊者在進行網站入侵時,通常會將WebShell文件與Web目錄下的長長網頁文件放置在一起,然後通過瀏覽器訪問WebShell文件,從而獲取命令執行環境,最終達到控制網站伺服器的目的。
當網站伺服器被控制後,就可以在其上任意查看資料庫、上傳下載文件以及執行任意程序命令等。WebShell與正常網頁具有相同的運行環境和服務埠,它與遠程主機通過WWW(80)埠進行數據交換的,一次能夠很容易地避開殺毒軟體的檢測和穿透防火牆。
總體,懸鏡伺服器衛士中WebShell的作用,一方面,WebShell常常被站長用於網站管理、伺服器管理等等,根據FSO許可權的不同,作用有在線編輯網頁腳本、上傳下載文件、查看資料庫、執行任意程序命令等。另一方面,被入侵者利用,從而達到控制網站伺服器的目的。
這些網頁腳本常稱為Web腳本木馬,目前比較流行的ASP或PHP木馬,也有基於.NET的腳本木馬。懸鏡伺服器衛士中系統應用防護中WebShell檢測,所要應對的就是後者。
懸鏡伺服器衛士WebShell有以下5種攻擊方式:
1)首先通過系統前台上傳WebShell腳本到網站伺服器,此時,網站伺服器會向客戶端返回上傳文件的整體URL信息;然後通過URL對這個腳本進行訪問,使其可以執行;最終導致攻擊者能夠在網站的任意目錄中上傳懸鏡伺服器衛士WebShell,從而獲取管理員許可權。
2)攻擊者利用管理員密碼登錄進入後台系統,並藉助後台管理工具向配置文件寫入懸鏡伺服器衛士WebShell,允許任意腳本文件上傳。
3)通過資料庫的備份和恢復功能和獲取WebShell。在資料庫備份時,可以將備份文件的擴展名更改為.asp類型。
4)系統中其他站點遭受攻擊,或者搭載在Web伺服器上的Ftp伺服器遭受攻擊後,被注入了WebShell,這些都會導致整個網站系統被感染。
5) 攻擊者利用Web伺服器漏洞直接對其進行攻擊,從而獲得控制許可權。
WebShell的感染過程描述:
1)攻擊者首先通過SQL注入、跨站腳本攻擊等方式得到上傳許可權,然後將WebShell上傳至伺服器。
2)通過WebShell完成對伺服器的控制,實現植入僵屍木馬、篡改網頁以及獲取敏感信息等惡意功能。
3)植入攻擊木馬,使其作為攻擊「肉雞」對整個網站進行感染。
3.4.1.5Linux下WebShell攻擊
WebShell反彈命令行Shell的方式在Linux從操作系統下Web伺服器入侵提權過程中得到了廣泛應用。在Linux下,WebShell可以執行命令,然後溢出卻必須在交互環境中進行,否則即使提權成功,也不能獲得完美利用。
因此,為了完成WebShell攻擊,只需反彈一個Shell命令行窗口,在命令行終端下執行溢出並進行提權。
多數Linux操作系統下的PHP WebShell都通過反彈連接功能獲得一個繼承當前WebShell許可權的Shell命令行窗口。在使用反彈連接功能前,需要首先使用NC工具對一個未使用的埠進行監聽,然後選擇反彈連接方式。
3.4.1.6 WebShell檢測
對於WebShell的檢測,北京安普諾網路安全團隊通過自主研發,設計出一種綜合多種檢測方法的綜合檢測方案。
特徵檢測系統中核心是特徵提取,選取特徵的好壞直接關繫到檢測結果的優劣。因此,在進行特徵選取時,首先應對Web頁面本身進行充分考慮,使得選取的特徵能夠很好地表現出靜態頁面。其次,選取的特徵還應該具有動態特點,可以體現出頁面所進行的操作。
如果提取網頁的全部特徵進行處理,則無法檢測變形的WebShell,也會因為特徵過多而對效率產生影響。如果檢測特徵過少,則有可能產生誤報。通過將多個WebShell庫綜合在一起,同時,又加入公司積累的特徵碼,綜合構建了一個非常強大的WebShell特徵庫,這個特徵庫構成了WebShell檢測的依據。
通過對文件進行特徵庫匹配、文件base64編碼後特徵庫匹配、可疑特徵碼匹配等多種手段進行掃描,從而保證掃描准確性並且降低誤報率。
掃描後,可以具體的提供WebShell的名稱、類型等詳細信息,以供用戶參考。並且針對反饋,用戶還可以有選擇的執行「清理」、「添加信任」等功能,以此實現對WebShell的檢測、發現、處理等操作。
特徵檢測是比較常見的WebShell檢測方法,base64編碼後特徵匹配相對於普通特徵碼檢測的優勢在於匹配的准確性更高誤報率更低。
但是特徵檢測的局限性還是存在的,就是同時降低誤報率和漏報率是很難實現的,所以還需要別的手段對文件進行綜合的檢測。
為此懸鏡伺服器衛士中有Delttime(文件創建時間間隔),Fnum(文件數量閾值)的概念。以特徵屬性、Delttime屬性、Fnum屬性作為Webshell動態檢測演算法的主要3個輸入參數,根據不同參數對檢測結果的影響大小來決定其在演算法中的權重。
實踐證明該演算法檢測效率相對傳統特徵值檢測大幅降低檢測誤報率,有一定的可行性。目前懸鏡伺服器衛士正在申請國家發明專利。與此同時,為了方便用戶使用,軟體給用戶提供「快速掃描」、「自定義掃描」功能。
具體效果,大家可以通過下載使用懸鏡伺服器衛士就知道了。謝謝。希望這個能幫到你。
3. 什麼叫webshell ,什麼叫注入,什麼叫旁註,還有一些常用工具的功能,比如nc,sc等等
webshell,我們常常稱其為匿名的用戶,ws是通過網路中的各種網站的埠進行突破的,繼而對其伺服器進行一定許可權的設置等。
注入:是注入一個可以進行的網址...通常用於連接公司、學校或辦公的資料庫的!
旁註則是可以在主機上建一個虛擬站點然後進行進行滲透,得到所要得到一個重要關節webshell,再開放的程序及一些非安全設置進行的跨站式入侵方法,然後就可以侵入其伺服器啦。呵呵
NC:全名Network Computer,是基於網路計算環境的一種計算設備,可以實現Internet功能,通過網路進行信息查詢和信息處理。
SC:是一套XP系統中功能強大的DOS命令,能與「服務控制器」和已安裝設備進行通訊。
SC命令的功能有
1、可以檢索和設置有關服務的控制信息,可以測試和調試服務程序。
2、可以設置存儲在注冊表中的服務屬性,以控制如何在啟動時啟動服務應用程序,以及如何將其作為後台程序運行。即更改服務的啟動狀態。
3、可以用來刪除系統中的無用的服務
4、其參數可以配置指定的服務,檢索當前服務的狀態,也可以停止和啟動服務
5、可以創建批處理文件來調用不同的SC命令,以自動啟動或關閉服務序列。
4. WEBSHELL是什麼
webshell常常被稱為匿名用戶(入侵者)通過WEB服務埠對WEB伺服器有某種程度上操作的許可權,由於其大多是以網頁腳本的形式出現,也有人稱之為網站後門工具。
一方面,webshell被站長常常用於網站管理、伺服器管理等等,根據FSO許可權的不同,作用有在線編輯網頁腳本、上傳下載文件、查看資料庫、執行任意程序命令等。
另一方面,被入侵者利用,從而達到控制網站伺服器的目的。這些網頁腳本常稱為WEB
腳本木馬,目前比較流行的asp或php木馬,也有基於.NET的腳本木馬。
有些惡意網頁腳本可以嵌套在正常網頁中運行,且不容易被查殺。
webshell可以穿越伺服器防火牆,由於與被控制的伺服器或遠程主機交換的數據都是通過80埠傳遞的,因此不會被防火牆攔截。並且使用webshell一般不會在系統日誌中留下記錄,只會在網站的web日誌中留下一些數據提交記錄,沒有經驗的管理員是很難看出入侵痕跡的。