1. 程式人生 > >【中介軟體安全】Tomcat 安全加固規範

【中介軟體安全】Tomcat 安全加固規範

1. 適用情況

適用於使用Tomcat進行部署的Web網站。

2. 技能要求

熟悉Tomcat配置操作,能夠利用Tomcat進行建站,並能針對站點使用Tomcat進行安全加固。

3. 前置條件

1、根據站點開放埠,程序ID,程序名稱,確認站點採用Tomcat進行部署;

2、找到Tomcat路徑:

方法一:開始->所有程式->Apache Tomcat->開啟檔案位置

方法二:window直接搜尋Tomcat

方法三:工作管理員->程序-> tomcat程序->開啟檔案位置

方法四:D盾->工具->程序檢視-> tomcat程序->開啟檔案位置

方法五:適用linux:切換到根路徑,搜尋find –name *.jsp –print(方法同樣適用 查詢網站根目錄)

4. 詳細操作

注意:建議實施項需要檢查,詢問管理員後方可配置,建議讓管理員自行配置,實施項為必做加固項。Tomcat控制檯必須確定是否對外開放,是否有遠端管理許可權賬號:1、mageger資料夾是否存在;2、tomcat賬號是否可登陸。

4.1 Tomcat控制檯使用者配置

備份配置檔案,修改tomcat/conf/tomcat-user.xml配置檔案,將賬號進行註釋,

若業務系統需要使用tomcat管理後臺進行業務程式碼釋出和管理,建議修改預設admin使用者,且密碼長度不低於10位,必須包含大寫字母、特殊符號、數字組合,如下:

 

4.2 日誌審計

備份配置檔案,參考配置操作

編輯tomcat/conf/server.xml配置檔案,在標籤中增加記錄日誌功能

將以下內容的註釋標記取消

 <valve classname="org.apache.catalina.valves.AccessLogValve" Directory="logs" prefix="localhost_access_log." suffix=".txt" Pattern="common" resloveHosts="false" />

4.3 自定義404錯誤頁面

(1) 在網站根目錄新建noFile.htm檔案

(2) 檢視並啟用tomcat/conf/web.xml檔案中下列程式碼:

<error-page>

<error-code>404</error-code>

<location>/noFile.htm</location>

</error-page>

4.4 最佳經驗實踐

因tomcat配置不當,可能導致的安全問題,常見安全漏洞如:目錄瀏覽、webdav等

4.4.1 關閉目錄瀏覽

(1) 編輯tomcat/conf/web.xml配置檔案,

<init-param>

        <param-name>listings</param-name>

        <param-value>true</param-value>

    </init-param>

把true改成false

 (2)重新啟動tomcat服務

4.4.2 使用安全的HTTP請求

編輯tomcat/conf/web.xml配置檔案,新增或修改檔案如下所示:

<security-constraint>  

   <web-resource-collection>  

      <url-pattern>/*</url-pattern>  

      <http-method>PUT</http-method>  

      <http-method>DELETE</http-method>  

      <http-method>OPTIONS</http-method>  

      <http-method>TRACE</http-method>  

   </web-resource-collection>  

   <auth-constraint>  

   </auth-constraint>  

</security-constraint>  

<login-config>  

   <auth-method>BASIC</auth-method>  

</login-config>

4.4.3 限制IP訪問

開啟tomcat/conf/server.xml,新增下面一行,重啟伺服器即可:<value className="org.apache.catalina.values.RemoteAddrValue" allow="127.0.0.1" deny="" />

此行放在</Host>之前,只允許本地訪問。

例如:

  1. 只允許192.168.1.1訪問:

<value className="org.apache.catalina.values.RemoteAddrValue" allow="192.168.1.1" deny="" />

  1. 只允許192.168.1.0/24訪問

<value className="org.apache.catalina.values.RemoteAddrValue" allow="192.168.1.*" deny="" />

4.4.4 登陸超時退出

備份配置檔案,參考配置操作

編輯tomcat/conf/server.xml配置檔案,修改超時時間為300秒

<Connector port="8080" maxHttpHeadSize="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="300" disableUploadTimeout="true" />

4.5 風險操作項

4.5.1 更改預設埠

(1)修改tomcat/conf/server.xml 配置檔案,更改預設管理埠到8888

  <Connector

port="8888"    maxHttpHeaderSize="8192" maxThreads="150"  

minSpareThreads="25" maxSpareThreads="75"、

enableLookups="false" redirectPort="8443" acceptCount="100"

  connectionTimeout="300" disableUploadTimeout="true" />

(2)重啟 tomcat 服務

4.5.2 補丁更新

根據tomcat版本漏洞庫查詢是否存在漏洞,如果存在漏洞請在http://httpd.tomcat.org下載最新穩定版安裝

最後

歡迎關注個人微信公眾號:Bypass--,每週原創一篇技術乾貨。