CVE-2018-2894 weblogicの任意のファイルアップロードの脆弱性
2018年7月19日、CNCERTは、weblogicにリスクの高いリモートコード実行の脆弱性があることを示す脆弱性の警告を発行しました。
/ws_utc/config.do
/ws_utc/begin.do
影響を受けるバージョン:10.3.6.0、12.1.3.0、12.2.1.2、12.2.1.3。
脆弱性の作者は私の小さな友達なので、私はそれを再現しようとします(主にCVE-2018-2893が長い間従事していて、再現が出ていないため、泣いて)
再発プロセス
最初にローカル環境をセットアップしました。ここでは12.2.1.2を使用しました
プロンプトによると、weblogicサーバーの管理アドレスはhttp:// localhost:7001 / consoleです。脆弱性の警告は、認証なしでファイルをアップロードできることを示しています。アップロードポイントの1つに直接アクセスして、
http:// localhost:7001 / ws_utc / configを試します。 doの場合、ページは自動デプロイメントを促し、構成ページに入ります。
現在の作業ディレクトリを変更する
この脆弱性を再現するには、まず現在の作業ディレクトリを変更する必要があります。アップロードされたファイルは、現在の作業ディレクトリに対応する物理パスである一時作業ディレクトリに保存されるためです。このディレクトリを変更しない場合、アップロードされたファイルにアクセスすると、ファイルが見つからないというメッセージが表示されます。(0_0)再現できない理由を述べましたが、
現在の作業ディレクトリに、当社のファイルにアクセスするアプリケーションのために、適切なディレクトリに変更する必要がありますアップロード
WebLogicが地元で展開するので、我々はのためのリラックスした表情できるように、何を適切なディレクトリを。
ws_utc / config.doにアクセスすると、ページで自動デプロイメントが要求されるので、WEB-INF、webapp、.warファイルなど、Webアプリケーションデプロイメントのファイル構造を持つインストールディレクトリの下のフォルダーを探してください。
OK、WEB-INFを検索して、いくつかの場所を見つけました
D:\install\weblogic_12.2.1.2.0\wls12212\user_projects\domains\base_domain\servers\AdminServer\tmp\_WL_internal\com.oracle.webservices.wls.ws-testclient-app-wls\4mcj4y\war\WEB-INF
D:\install\weblogic_12.2.1.2.0\wls12212\user_projects\domains\base_domain\servers\AdminServer\tmp\_WL_internal\consoleapp\z97wi8\.tld_cache\WEB-INF
D:\install\weblogic_12.2.1.2.0\wls12212\user_projects\domains\base_domain\servers\AdminServer\tmp\_WL_internal\consoleapp\fl21lb\console-ext\jolt\WEB-INF
D:\install\weblogic_12.2.1.2.0\wls12212\user_projects\domains\base_domain\servers\AdminServer\tmp\_WL_internal\consoleapp\fl21lb\console-ext\core-connector\WEB-INF
...
各パスをたどりD:\install\weblogic_12.2.1.2.0\wls12212\user_projects\domains\base_domain\servers\AdminServer\tmp\_WL_internal\com.oracle.webservices.wls.ws-testclient-app-wls\4mcj4y\war
、最もよくアクセスするアプリケーションがデプロイされている場所のみを見つけ、それを試して、作業ディレクトリを
D:\install\weblogic_12.2.1.2.0\wls12212\user_projects\domains\base_domain\servers\AdminServer\tmp\_WL_internal\com.oracle.webservices.wls.ws-testclient-app-wls\4mcj4y\war\
ファイルをアップロード
左側のセキュリティバーで、JKSキーストアを追加できます。ここに任意のファイルをアップロードできます。このステップでは、パッケージを取得し、返されたタイムスタンプを見つけます。これは、アップロードしたファイルのファイル名に関連しているためです。
アップロードされたファイルにアクセスする
アップロードが完了したら、直接アクセスしてください
http://localhost:7001/ws_utc/config/keystore/时间戳_文件名
ファイルのアップロードについて言うことは何もありません。注意する必要があるのは、作業ディレクトリを変更するステップだけです。アップロードパスがアプリケーションがデプロイされている場所でないことがわからないため、アップロードが成功した後は、アップロードされたファイルにアクセスできません。