Facebook Google Plus Twitter LinkedIn YouTube RSS Menu Search Resource - BlogResource - WebinarResource - ReportResource - Eventicons_066 icons_067icons_068icons_069icons_070

Tenable ブログ

ブログ通知を受信する

重大なOracle WebLogic Serverの欠陥のパッチが未提供

Oracleによる2018年4月のCritical Patch Updateで対処されるべきであった多数の問題の1つに、Oracle WebLogic Server(WLS)Java Enterprise Edition(EE)アプリケーションサーバーのバージョン10.3.6.0、12.1.3.0、12.2.1.2、12.2.1.3に影響する欠陥の修正があります。この脆弱性は、 CVE-2018-2628 (CVSS ベーススコア:9.8)と呼ばれています。T3プロトコルでネットワークアクセスを行う攻撃者は、この重大な問題を悪用することができます。T3プロトコルは、WebLogicサーバーと別の種類のJavaプログラム間で情報を転送するために使われます。しかし、パッチには効果がなく、この問題はまだ悪用できる状況にあります。

影響の評価

最近、そのOracleの脆弱性が検出されたことにより、攻撃者はインターネットでTCP(Transmission Control Protocol)ポートをスキャンして、悪用できるOracle WLSを探しています。Oracle WLSシステムを見つけたリモートの攻撃者は、それを標的として任意のコマンドを実行できます。

脆弱性の詳細

悪用

この脆弱性は新しいものではありません。FoxGlove Securityの驚くべき記事が公開されて以来、WebLogicはたくさんのJavaのデシリアライゼーションによる脆弱性の影響を受けています:「WebLogic、WebSphere、JBoss、Jenkins、OpenNMS、そして皆さんのアプリケーションに共通するものは何でしょうか?この脆弱性です。」実際、Tenable®は、T3を利用したデシリアライゼーション攻撃に関して、次の5つのResearchアドバイザリーを発表しています。

  1. https://www.tenable.com/security/research/tra-2016-09
  2. https://www.tenable.com/security/research/tra-2016-21
  3. https://www.tenable.com/security/research/tra-2016-33
  4. https://www.tenable.com/security/research/tra-2017-07
  5. https://www.tenable.com/security/research/tra-2017-16

WebLogicのT3プロトコルは、シリアライズされたJavaオブジェクトを使って通信しているため、特にこの種のバグの影響を受けやすくなっています。このような脆弱性は、プログラムがシリアライズ(通信用に別の形式に変換すること)されたデータを使用しようとする場合に発生します。シリアライズされた信頼されていないJavaオブジェクトをプログラムがデシリアライズすると、シリアライズされたオブジェクトがコードフローを制御し、コードの実行を完全に乗っ取ることができます。Oracleは、デシリアライズすべきでないオブジェクトのリスト(ブラックリスト)を作成してこの攻撃を「修正」する作業を何も行っていません。

WebLogicでブラックリストを構築する様子

しかし、パニックになる前に、CVE-2018-2628が実際にどのようなものなのかを見てみましょう。これは、ブラックリストバイパスという脆弱性です。つまり、攻撃者はブラックリストをかわして、標的とするクラスパス上で任意のオブジェクトをデシリアライズできます。そして、そこに盲点があります。Oracleは、公表されているすべてのJavaデシリアライズ RCE ガジェットの影響をうまく軽減させています。そのため、OracleがリリースしたCVE-2018-2628のパッチは効果的とはいえないものの、パッチを適用したサーバーはリモートコード実行(RCE: Remote Code Execution)の影響をすべて受けるわけではない可能性もあります。

例として、 エクスプロイト DBの概念実証を見てみましょう。12.2.1.3に対するエクスプロイトを実行すると、WebLogicのログに次の内容が出力されます。

<Apr 30, 2018 8:23:49,869 AM PDT> <Warning> <RMI> <BEA-080003> <A RuntimeException was generated by the RMI server: weblogic.common.internal.RMIBootServiceImpl.authenticate(Lweblogic.security.acl.UserInfo;)

java.lang.ClassCastException: com.sun.proxy.$Proxy160 cannot be cast to weblogic.rjvm.ClassTableEntry.

java.lang.ClassCastException: com.sun.proxy.$Proxy160 cannot be cast to weblogic.rjvm.ClassTableEntry.

at weblogic.rjvm.MsgAbbrevInputStream.readClassDescriptor(MsgAbbrevInputStream.java:423)

at weblogic.utils.io.ChunkedObjectInputStream$NestedObjectInputStream.readClassDescriptor(ChunkedObjectInputStream.java:288)

at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1855)

at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1749)

at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2040)

以下省略。完全なスタックトレースは、ログファイルを参照

このログから、最初のconnect-backは正常にデシリアライズされていることがわかります。しかし、ysoserial(安全でないJavaオブジェクトのデシリアライズを悪用するペイロードを生成する概念実証ツール)は CommonsCollections1を実行するように構成されているので、かつてRCEを許していたオブジェクトはシリアライズもデシリアライズもできず、攻撃者はRCEを実現できません。

Oracleは、2017年に脆弱性のあるApache Commons Collectionsをクラスパスから削除しました。

同じように、ツイート で、ysoserialペイロード、 Jdk7u21の使用に関して述べられています。これは、Java実行環境のデシリアライゼーションエンドポイントです。しかし、これも、 2013年にJava 7で、2014年にJava 8でパッチが提供されました。そのような古いJavaバージョンを使っている方は、このエクスプロイトが問題になるかもしれません。

普及率

今のところ、CVE-2018-2628で特定された脆弱性を使って攻撃を受けたサーバーの報告はありません。しかし、この脆弱性はますます注目を集めているため、近いうちに攻撃が報告される可能性が高まっています。この脆弱性は、認証が必要ないので、簡単に悪用できます。この脆弱性による攻撃が成功すれば、Oracle WLSを乗っ取ることができます。影響を受けるバージョンを使用している場合、広い範囲に影響を与える可能性があります。Oracle WebLogicサーバーは、かつて標的にされたことがある点にも留意すべきです。以前は、特定された脆弱性 CVE-2017-10271が脅威アクターによって使用され、仮想通貨マイニングプログラムを配信していました

緊急措置が必要

Oracleは、2018年4月のCritical Patch Updateとして修正プログラムを発行しています。この問題を対処するものと考えられていました。残念ながら、これには効果がありません。パッチの更新は的外れではありますが、他の多数のセキュリティ問題への対処がなされているため、更新は適用すべきです。

それまでの間は、脆弱性を抱えるシステムを特定し、組織のセキュリティポリシーに沿ってリスク管理を行う必要があります。Tenableは、この脆弱性の検知をサポートするいくつかの方法を提供しています。

影響を受けているシステムの特定

この Nessus®プラグインは、リモートホストにインストールされているOracle WLSのバージョンが以下の脆弱性による影響を受けているかどうかを検知します:

プラグインID

109201

109429

説明/対策

Oracle WebLogic Serverの複数の脆弱性(2018年4月CPU)

Oracle WebLogic ServerのデシリアライゼーションRCE(CVE-2018-2628)

次のNessusプラグインは、すべてのT3デシリアライゼーション攻撃を対象とします。

プラグインID

87011

90709

92606

94511

96803

説明/対策

Oracle WebLogic JavaオブジェクトデシリアライゼーションRCE

Oracle WebLogic ServerのJavaオブジェクトデシリアライゼーションRCE(2016年4月CPU)

Oracle WebLogic ServerのJavaオブジェクトデシリアライゼーションRCE(2016年7月CPU)

Oracle WebLogic ServerのJavaオブジェクトデシリアライゼーションRCE(2016年10月CPU)

Oracle WebLogic JavaオブジェクトRMI応答接続デシリアライゼーションRCE(2017年1月CPU)

Tenable.io® Container Security でも、これらの問題および影響を受けるWebLogicのバージョンを自動的に検知します。

詳細情報

このブログ投稿に貢献してくださった Jacob Baines氏に深く感謝します。

関連記事

役立つサイバーセキュリティ関連のニュース

Tenable エキスパートからのタイムリーな警告とセキュリティガイダンスを見逃さないように、メールアドレスをご入力ください。

Tenable Vulnerability Management

最新のクラウドベースの脆弱性管理プラットフォームにフルアクセスし、これまでにない精度で全資産の表示および追跡が可能です。

Tenable Vulnerability Management トライアルには、Tenable Lumin と Tenable Web App Scanning も含まれています。

Tenable Vulnerability Management

最新のクラウドベースの脆弱性管理プラットフォームの全機能にアクセスして、これまでにない精度で全ての資産を確認、追跡しましょう。 年間サブスクリプションをご購入ください。

100 資産

サブスクリプションオプションを選択してください。

今すぐ購入する

Tenable Vulnerability Management

最新のクラウドベースの脆弱性管理プラットフォームにフルアクセスし、これまでにない精度で全資産の表示および追跡が可能です。

Tenable Vulnerability Management トライアルには、Tenable Lumin と Tenable Web App Scanning も含まれています。

Tenable Vulnerability Management

最新のクラウドベースの脆弱性管理プラットフォームの全機能にアクセスして、これまでにない精度で全ての資産を確認、追跡しましょう。 年間サブスクリプションをご購入ください。

100 資産

サブスクリプションオプションを選択してください。

今すぐ購入する

Tenable Vulnerability Management

最新のクラウドベースの脆弱性管理プラットフォームにフルアクセスし、これまでにない精度で全資産の表示および追跡が可能です。

Tenable Vulnerability Management トライアルには、Tenable Lumin と Tenable Web App Scanning も含まれています。

Tenable Vulnerability Management

最新のクラウドベースの脆弱性管理プラットフォームの全機能にアクセスして、これまでにない精度で全ての資産を確認、追跡しましょう。 年間サブスクリプションをご購入ください。

100 資産

サブスクリプションオプションを選択してください。

今すぐ購入する

Tenable Web App Scanning を試す

Tenable One サイバーエクスポージャー管理プラットフォームの一部として、最新のアプリケーション向けに設計された最新のウェブアプリケーションスキャンサービスを完全な形でご利用いただけます。手作業による労力や重大なウェブアプリケーションの中断なしに、脆弱性のオンラインポートフォリオを安全に高精度でスキャンします。 今すぐサインアップしてください。

Tenable Web App Scanning トライアルには、Tenable Vulnerability Management と Tenable Lumin も含まれています。

Tenable Web App Scanning を購入

最新のクラウドベースの脆弱性管理プラットフォームの全機能にアクセスして、これまでにない精度で全ての資産を確認、追跡しましょう。 年間サブスクリプションをご購入ください。

5 FQDN

3,578ドル

今すぐ購入する

Tenable Lumin を試用する

Tenable Lumin で、サイバーエクスポージャー管理の視覚化と調査、経時的なリスク削減の追跡、同業他社とのベンチマークの実施が可能です。

Tenable Lumin トライアルには、Tenable Vulnerability Management と Tenable Web App Scanning も含まれています。

Tenable Lumin を購入する

営業担当者に連絡することで、Tenable Lumin がどのように組織全体のインサイトを獲得し、サイバーリスクを管理するのに役立つかをご確認いただけます。

無料で Tenable Nessus Professional を試す

7 日間無料

Tenable Nessus は、今日の市場で最も包括的な脆弱性スキャナーです。

新 - Tenable Nessus Expert
利用可能に

Nessus Expert にはより多くの機能が追加されています。外部アタックサーフェスのスキャン機能や、スキャン対象となるドメインの追加とクラウドインフラのスキャンなどが含まれています。Nessus Expert を試してみるにはここをクリック。

Nessus Pro のトライアルをお求めの場合、下のフォームに入力してください。

Tenable Nessus Professional を購入

Tenable Nessus は、今日の市場で最も包括的な脆弱性スキャナーです。Tenable Nessus Professional は、脆弱性スキャンプロセスの自動化を支援し、コンプライアンスサイクルの時間を節約し、IT チームの関与を可能にします。

複数年ライセンスをご購入いただくと割引が適用されます。拡張サポートを追加すると、24 時間x365 日、電話、コミュニティ、チャットサポートにアクセスできます。

ライセンスをお選びください

複数年ライセンスをご購入いただくと割引が適用されます。

サポートとトレーニングを追加

無料で Tenable Nessus Expert を試す

7 日間無料

最新のアタックサーフェス用に構築された Nessus Expert を使用すると、拡大された領域が可視化でき、IT やクラウド資産に潜む脆弱性から企業を保護できます。

すでに Tenable Nessus Professional をお持ちですか?
Nessus Expert にアップグレードすると、7 日間無料でご利用いただけます。

Tenable Nessus Expert を購入

最新のアタックサーフェス用に構築された Nessus Expert を使用すると、拡大された領域が可視化でき、IT やクラウド資産に潜む脆弱性から企業を保護できます。

ライセンスをお選びください

複数年ライセンスの場合、よりお求めやすい価格でご購入いただけます。

サポートとトレーニングを追加