2017年9月は、
今月は、
CVE-2017-12615~Windows版Tomcat 7でリモートコード実行できる脆弱性のはずが……
2017年8月16日にリリースされたTomcat 7.

When running on Windows with HTTP PUTs enabled (e.g. via setting the readonly initialisation parameter of the Default to false) it was possible to upload a JSP file to the server via a specially crafted request. This JSP could then be requested and any code it contained would be executed by the server.
具体的な実行手順は割愛しますが、
- 実行させたい内容を記述したJSPファイルをアップロードする
- 当該JSPにアクセスし、
記述された内容を実行する
CVE-2017-12615は、
- CVE-2017-12615は修正されたものの、
さらに悪質な脆弱性がTomcat 7. 0.81で確認された - 影響するバージョンは、
9月25日時点のTomcat7~9の最新版 - 脆弱性の影響を受ける動作プラットフォームは、
Windows以外にもLinux、 Unixも入る
もともと、
- Apache Tomcat における脆弱性に関する注意喚起
(最終更新: 2017-09-25) - http://
www. jpcert. or. jp/ at/ 2017/ at170038. html
CVE-2017-12617~広範なプラットフォームに影響するTomcat 7~9のリモートコード実行脆弱性に対し、新たに採番されたCVE番号
上記のように、
本校執筆時点
現状の対策は、設定中のreadonlyパラメータをtrueにすること~PUTを制限するだけでは不十分
本脆弱性は、
下記は、
telnet localhost 8080 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. OPTIONS / HTTP/1.0 HTTP/1.1 200 OK Server: Apache-Coyote/1.1 Allow: GET, HEAD, POST, PUT, DELETE, OPTIONS Content-Length: 0 Date: Mon, 25 Sep 2017 18:14:59 GMT Connection: close
readonlyパラメータは、
以下に、
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>readonly</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
書き込みを行うことを想起させるのは、
大変残念なことに、