JavaのWebアプリケーションフレームワーク「Apache Struts2」に任意のコードを実行できる脆弱性(S2-045、CVE-2017-5638)が見つかり、2017年3月20日時点で7組織が被害に遭っている。情報漏洩した可能性のある個人情報は合計で79万4566件に上った。
JPCERTコーディネーションセンター(JPCERT/CC)は2017年3月17日、同月9日に公開した注意喚起で挙げた「Apache Struts2」の脆弱性対策、「ソフトウエア『Jakarta Multipart parser』の入れ替え」では引き続き攻撃を受けてしまうと発表した。 JPCERTコーディネーションセンターの注意喚起。3月9日に公開した情報に追記として、今回の情報を追加している。URLは、https://www.jpcert.or.jp/at/2017/at170009.html。 Apache Struts2は、JavaのWebアプリケーションフレームワーク。多くのWebサイトで採用される。3月9日に公開された脆弱性(S2-045)を悪用されると、コンテンツを改ざんされたり、サーバー内のファイルを閲覧されたりする被害を受ける。国内でも被害が続出している。 JPCERT/C
1) The document discusses ways that security functions on Windows can potentially be bypassed during a penetration test, such as restricting access to drives, applications, and Internet Explorer. 2) Methods are presented for bypassing application restrictions, such as using HTML help to access the internet without a browser or using InstallUtil to execute PowerShell without PowerShell. 3) Counterm
はじめに 筆者は10年以上ウェブアプリケーション開発を主な業務とするJavaプログラマであったにも関わらず、Strutsについてはこれまでずっと食わず嫌いでした。初期のStrutsは「XMLだらけで効率が悪そう」というイメージが強かったためです。最近はRuby on Rails等の影響を受けCoC(convention over configuration)を採り入れ、XML地獄もだいぶ解消したようです。 StrutsはJavaアプリケーションらしくない種類(任意のコード実行等)の脆弱性を連発することでも知られており、最近は我々の提供するSaaS型WAFサービス、Scutum(スキュータム)のお客様からも頻繁にStrutsについての問い合わせを受けるようになりました。また、去年見つかった任意のコード実行の脆弱性では、脆弱性の公表後すぐにPoCが出回り実際に攻撃が発生するなど、悪い意味で注目
今回の問題は、(SA)Strutsだけの問題ではなく、いろんなフレームワークでもちゃんと調べた方が良い話しなので、もう少し詳しく書いておきます。 Javaで、JavaBeansのプロパティにアクセスする場合、 PropertyDescriptor[] descriptors = Introspector.getBeanInfo(クラス).getPropertyDescriptors();で取得できるPropertyDescriptorを使うことがほとんどです。この中に、classプロパティは含まれます。 ここまでは良くて、ネストしたリクエストパラメータ(class.classLoader.xxxなど)をJavaBeansにセットする時に、BeanInfo.getPropertyDescriptors()で取得したものをそのまま使うのが問題なのです。 Seasar2(BeanDesc)では、
Struts2に見つかった脆弱性と同様の脆弱性がStruts1系にも見つかりました。 Apache Struts 2の脆弱性が、サポート終了のApache Struts 1にも影響 HTTP(S)のリクエストでJavaのClassLoaderのメソッドが呼び出せてしまうという脆弱性です。 もう少し噛み砕いて言えば、リクエストのパラメータをJavaBeansにセットする時に、リフレクションを使い、パラメータ名にaaa.bbb.cccのようなネストした名前をサポートしているフレームワークは同様の問題が起こる可能性があります。 パラメータ名をclass.classLoader.xxxのような感じにして、ClassLoaderのメソッドを呼び出す訳です。 このような問題を起こすリフレクションフレームワークで最も有名なのは、Apache Commons BeanUtilsです。リクエストのパラメータ
恐ろしいことですが、実装が全然違うStruts2の脆弱性S2-020と同様の攻撃手法で、Struts1も脆弱性があることが分かりました。 http://www.lac.co.jp/security/alert/2014/04/24_alert_01.html ここではあまり明らかになっていませんが、原因は // Set the corresponding properties of our bean try { BeanUtils.populate(bean, properties); } catch(Exception e) { throw new ServletException("BeanUtils.populate", e); } finally { if (multipartHandler != null) { // Set the multipart request handl
Struts2においてクラスローダーの操作を許してしまう脆弱性(CVE-2014-0094)について先日調べたのですが、その後のセキュリティベンダの調査により当初に比べて影響範囲が変わってきていることから、再度整理をかねてまとめます。尚、これら情報はpiyokangoが全て検証したわけではないためご注意ください。また当然ながら悪用することは厳禁です。 Apache Software Foundationより、当該脆弱性情報に関するアナウンスが出ました。 24 April 2014 - Struts up to 2.3.16.1: Zero-Day Exploit Mitigation S2-021 クラスローダーが操作される脆弱性の影響範囲 NTT-CERTやMBSD、LACの調査により次のStrutsのバージョンが影響を受けることが判明しています。またBeanUtilsを使ってリクエスト
Apache Struts2の脆弱性についてIPAが注意喚起を4月17日に掲載しました。 Apache Struts2 の脆弱性対策について(CVE-2014-0094)(S2-020) Apache Struts 2 Documentation S2-020 ニュース - Apache Struts 2の脆弱性対策が急務、攻撃プログラムが出回る:ITpro Apache Struts2に脆弱性攻撃の恐れ、IPAが緊急勧告 - ITmedia エンタープライズ 検証コードが既にインターネット上で公開されていること、そして悪用が比較的容易であることから、ここではS2-020のClassLoaderが操作されてしまう脆弱性CVE-2014-0094について調べた結果をまとめます。 1.検証環境の準備 検証にあたり、Apache Struts2の環境のメモです。Struts2を動かすだけであれば
ラックのサイバー・グリッド研究所は4月24日、Apache Struts 2に存在するとされた「リモートの第三者による任意のコード実行を許す脆弱性(CVE-2014-0094)」と同様の問題がApache Struts 1においても存在していることを確認したと発表した。 Apache Strutsは、Apacheソフトウェア財団のApache Strutsプロジェクトで開発とサポートがおこなわれているオープンソースのJava Webアプリケーションフレームワーク。 現在は、「Struts 2」がサポートされているが、2008年10月4日に最終版が公開され、2013年4月5日でサポート終了となった「Struts 1」においても、同様の脆弱性が存在する。しかし、Struts 1はサポート終了しており、当該プロジェクトからは公式なアナウンスは出ておらず、今後も正規の更新プログラム提供もされないも
Struts 2の脆弱性は最新版でも未修正、Struts 1にも同様の脆弱性が存在:国内セキュリティ企業が相次いで注意喚起 脆弱性を修正したはずのWebアプリケーションフレームワーク「Apache Struts 2」の最新版、バージョン2.3.16.1に、いまだに脆弱性が残っている。さらに、既にサポートの終了している「Struts 1」にも同様の脆弱性が存在するという。 セキュリティ企業の三井物産セキュアディレクション(MBSD)は2014年4月22日、脆弱(ぜいじゃく)性を修正したはずのWebアプリケーションフレームワーク「Apache Struts 2」の最新版、バージョン2.3.16.1に、いまだに脆弱性が残っていることを確認したと明らかにした。 またラックは2014年4月24日、Webアプリケーションフレームワーク「Apache Struts 2」に存在するものと似た脆弱性が、既に
Apache Struts 2の早急なアップデートを、攻撃コード公開を踏まえIPAが呼び掛け:リモートからの情報窃取やファイル操作の恐れ 情報処理推進機構セキュリティセンターは、「Apache Struts 2」に存在する脆弱性を狙う攻撃コードが公開されていることを踏まえ、脆弱性を修正したバージョン2.3.16.1への早急なアップデートを呼び掛けている。 情報処理推進機構(IPA)セキュリティセンターは2014年4月17日、オープンソースのWebアプリケーションフレームワーク「Apache Struts 2」に存在する脆弱性を狙う攻撃コードが公開されていることを踏まえ、緊急対策を呼び掛けた。脆弱性を修正したバージョン2.3.16.1への早急なアップデートを推奨している。 Apache Struts 2のバージョン2.3.16以前には、外部からクラスローダーを操作されてしまう脆弱性が存在して
Tweet【概要】 前回は検証では攻撃者が制御を誘導することが可能であることを確認しました。今回は実際の攻撃を想定し「webshell」が設置できることを確認します。webshellはブラウザからコマンドを入力し、その結果を表示するようなウェブアプリケーションです。 【影響を受ける可能性があるシステム】 - Apache Struts 2.0.0 – 2.3.16 【対策案】 Apache Software Foundationから本脆弱性を修正されたバージョン「Apache Struts 2.3.16.1」がリリースされております。当該脆弱性が修正された修正プログラムを適用していただくことを推奨いたします。 なお、上記の「Apache Struts 2.3.16.1」では、回避策(Workaround)として記述のあるとおりに初期設定が変更になっております。そのため、緊急のバージョ
Tweet【概要】 Apache Struts 2に、ClassLoader を外部から操作される脆弱性(CVE-2014-0094)(S2-020)が発見されました。 この脆弱性は、細工したHTTPリクエストを送信することで外部からClassLoaderの属性を変更することが可能となります。 攻撃者は、細工したHTTPリクエストを送信することでClassLoaderの属性を変更します。属性を変更されることによりウェブアプリケーションサーバを実行しているユーザの権限で任意のファイルを改ざんすることやJavaコードを実行される危険性があります。 本レポート作成(2014年4月19日)時点において、Apache Software Foundationから脆弱性に対応したバージョンがリリースされております。しかし、攻撃方法が公開され、その方法は、容易に実行可能であり脆弱性を利用された場合の
Software WebSecurity Apache Struts2 の脆弱性対策について注意喚起されていました※当サイトにはプロモーションが含まれています。 IPAから「Apache Struts2 の脆弱性対策について(CVE-2014-0094)(S2-020)」というページで Apache Struts2 の更新を呼びかけていました。 Apache Struts2 の脆弱性対策について(CVE-2014-0094)(S2-020):IPA 独立行政法人 情報処理推進機構影響を受けるバージョンは、Apache Struts 2.0.0 から 2.3.16 ということで、2.3.16.1への更新を促しています。この2.3.16.1というバージョンは今年の3月6日にリリースされていました。 そのリリース時のアナウンスにセキュリティ・フィックスについての記載があります。 Apache S
Apache Software Foundationでは完全修正版リリースまでの回避策の適用を強く推奨している。 Apache Software Foundationは米国時間の4月24日、Java WebアプリケーションフレームワークのApache Struts2の最新版で修正したはずの脆弱性がまだ存在することを確認したと発表した。この脆弱性を“完全に”修正したバージョンは、早ければ米国時間の27日までに公開される見通し。それまでの回避策が紹介されている。 Apache Software Foundationによると、Apache Struts 2.0.0~2.3.16.1にはClassLoaderに起因する脆弱性が存在する。当初、この脆弱性は2.3.16.1で修正されたとしていたが、実際には不十分だったことが、三井物産セキュアディレクションなどの指摘で判明した。 脆弱性が悪用された場合
脆弱性を修正したとされるバージョンでは対応が不十分である可能性が指摘された。一方、この脆弱性はサポートが終了しているStruts1にも存在し、多数のWebサイトが無防備なままになっているという。 Java WebアプリケーションフレームワークのApache Struts2に脆弱性が見つかった問題で、この脆弱性を修正したとされるバージョンは、実際には修正が不十分であることが分かった。さらに、この脆弱性は既にサポートが終了しているApache Struts1にも存在することが判明した。 脆弱性はApache Struts 2.0.0~2.3.16に存在する。細工されたリクエストをWebサーバに送りつけるとClassLoaderが不正操作され、情報が流出したり、任意のコードを実行されたりする恐れがある。修正版というApache Struts 2.3.16.1が3月2日にリリースされていた。 情報
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く