Tomcat安全配置

wyzsk發表於2020-08-19
作者: 夸父追日 · 2015/09/10 10:22

tomcat是一個開源Web伺服器,基於TomcatWeb執行效率高,可以在一般的硬體平臺上流暢執行,因此,頗受Web站長的青睞。不過,在預設配置下其存在一定的安全隱患,可被惡意攻擊。

0x00 測試環境


Win2003

Tomcat6.0.18 安裝版

0x01 安全驗證


一.登陸後臺

首先在win2003上部署Tomcat,一切保持預設。

Tomcat的預設後臺地址為:http://域名:埠/manager/html.進入之後彈出登陸對話方塊,Tomcat預設的使用者名稱admin,密碼為空。

Tomcat的一些弱口令:

tomcat tomcat 
admin 空 
admin admin 
admin 123456

enter image description here

然後來看一下Tomcat安裝版預設的tomacat-users.xml配置檔案

enter image description here

注:Linux平臺及Windows平臺免安裝版本不受該漏洞影響。

二.獲取Webshell

Tomcat的後臺有個WAR file to deploy模組,透過其可以上傳WAR檔案。Tomcat可以解析WAR檔案,能夠將其解壓並生成web檔案。

enter image description here

我們將一個jsp格式的webshellWinRar打包然後將其字尾改名為WAR(本例為no.war),這樣;一個WAR包就生成了。最後將其上傳到伺服器,可以看到在Tomcat的後臺中多了一個名為/no的目錄。

enter image description here

點選該目錄開啟該目錄jsp木馬就執行了,這樣就獲得了一個Webshell

enter image description here

三.獲取伺服器許可權

Tomcat服務預設是以system許可權執行的,因此該jsp木馬就繼承了其許可權,幾乎可以對Web伺服器進行所有的操作。

enter image description here

然後建立使用者: net user Boom shellcode /add

新增到管理員使用者組: net localgroup administrators Boom /add

enter image description here

然後可以幹什麼事我就不說了

0x02 安全配置


一.修改tomacat-users.xml或刪除Tomcat後臺

修改\conf\tomacat-users.xml

enter image description here

刪除Tomcat後臺 \webapps全部刪除就好。

二.禁止列目錄

IIS中如果設定不當,就會列出Web當前目錄中的所有檔案,然而在Tomcat也不例外。如果瀏覽者可以在客戶端瀏覽Web目錄,那將會存在較大的安全隱患,因此我們要確認Tomcat的設定中禁止列目錄。\conf\web.xml

<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>  

確認是false而不是true

enter image description here

三.服務降權

預設安裝時Tomcat是以系統服務許可權執行的,因此預設情況下幾乎所有的Web伺服器的管理員都具有Administrator許可權,存在極大的安全隱患,所以我們的安全設定首先從Tomcat服務降權開始。

首先建立一個普通使用者,為其設定密碼,將其密碼策略設定為“密碼永不過期”,比如我們建立的使用者為tomcat。然後修改tomcat安裝資料夾的訪問許可權,為tomcat賦予Tomcat資料夾的讀、寫、執行的訪問許可權,賦予TomcatWebApps資料夾的只讀訪問許可權,如果某些Web應用程式需要寫訪問許可權,單獨為其授予對那個資料夾的寫訪問許可權。

enter image description here

“開始→執行”,輸入services.msc開啟服務管理器,找到Apache Tomcat服務,雙擊開啟該服務的屬性,在其實屬性視窗中點選“登入”選項卡,在登入身份下選中“以此帳戶”,然後在文字框中輸入tomcat和密碼,最後“確定”並重啟伺服器。這樣tomcat就以tomcat這個普通使用者的許可權執行。

enter image description here

然後重啟服務,就生效了。這樣普通使用者tomcat執行的Tomcat其許可權就大大地降低了,就算是攻擊者獲得了Webshell也不能進一步深入,從而威脅web伺服器的安全。

四.關閉war自動部署

關閉war自動部署 unpackWARs="false" autoDeploy="false"。防止被植入木馬等惡意程式

應用程式部署與tomcat啟動,不能使用同一個使用者。

enter image description here

本文章來源於烏雲知識庫,此映象為了方便大家學習研究,文章版權歸烏雲知識庫!

相關文章