目次
2. 脆弱性インベントリ
2.1. 脆弱性履歴
2.2. Struts2 の脆弱性インベントリ
3 . 配布状況
ホームページ 運用・保守 安全性 Struts2フレームワークサイトのリスク分析例

Struts2フレームワークサイトのリスク分析例

May 30, 2023 pm 12:32 PM
struts2

1. 概要

Apache Software Foundation (ASF) がスポンサーとなっているオープン ソース プロジェクトは Struts です。このプロジェクトはジャカルタ プロジェクトの分岐点として開始され、その後 ASF のトップレベル プロジェクトに昇格しました。 Java Servlet/JSP技術を利用し、Java EE WebアプリケーションのModel-View-Controller[MVC]設計パターンに基づいたアプリケーションフレームワーク[Web Framework]を実装した、MVCクラシック設計パターンの代表的な製品です。

Java EE Web アプリケーション開発の初期には、サーブレット テクノロジの使用に加えて、JavaServer Pages (JSP) のソース コードに HTML と Java コードを組み合わせて開発するのが一般的でした。これら 2 つの方法は、パフォーマンス コードとビジネス ロジック コードを混在させる場合に避けられず、初期の開発とその後のメンテナンスに大きな複雑さをもたらします。上記の制約と制限を取り除き、ビジネス ロジック コードをプレゼンテーション層から明確に分離するために、Craig McClanahan は 2000 年に MVC 設計パターンを採用して Struts を開発しました。このフレームワーク製品は、かつては最も広範で人気のある JAVA WEB アプリケーション フレームワークとみなされていました。

Struts2 は、MVC デザイン パターンに基づく Web アプリケーション フレームワークです。本質的にはサーブレットと同等です。MVC デザイン パターンでは、Struts2は、モデルとビューの間のデータ対話を確立するコントローラーとして機能します。 Struts 2 は Struts の次世代製品であり、Struts 1 と WebWork のテクノロジーを統合した新しい Struts 2 フレームワークです。

2. 脆弱性インベントリ

2.1. 脆弱性履歴

Struts2 フレームワークの人気に伴い、開発に Struts2 フレームワークを使用する企業部門が増えています。近年、高リスクの脆弱性が何度も暴露されています。多くの政府機関のサイト、銀行、大手インターネット企業、その他の部門が攻撃を受けています。 2016年12月に京東12Gのユーザーデータが流出、ユーザー名、パスワード、電子メール、QQ番号、電話番号、IDカードなどのデータが数千万件に達した。原因は2013年に遡る。 Struts 2 のセキュリティ脆弱性。当時、国内のほぼすべてのインターネット企業と多数の銀行や政府機関が影響を受け、多数のデータ漏えいが発生しており、struts2 に脆弱性が発生するたびに、主要なインターネット脆弱性プラットフォームにも次のような複数のフィードバックが寄せられました。


Struts2フレームワークサイトのリスク分析例

#Struts2 のコード実行の問題は、Google セキュリティ チームの Meder Kydyraliev がパラメータ インターセプタが次のようなものである可能性があることを発見した 2010 年に遡ります。特殊文字に unicde エンコードを使用することで回避される 「#」のフィルタリングによりコード実行の問題が発生する 公式の脆弱性番号は S2-003、

struts2 の脆弱性履歴を振り返ると、公式の脆弱性番号は S2-003 ではないことがわかりました。まず、開発者にセキュリティに対する意識が低く、基本的なセキュリティ対策は名ばかりでした。第二に、公式の修復措置は強度に欠けており、問題の根本原因を真に解決することなく、単なる場当たり的なものに過ぎないと感じています。さらに、公式のオープン精神は本当に衝撃的で、脆弱性の PoC を公式 Web サイトに直接掲載したことで、多くの人が脆弱性の悪用をさらに検討する機会を与えたことも、問題が深刻化する理由の 1 つです。もっと深刻な。

2.2. Struts2 の脆弱性インベントリ

比較的大きな影響があり、広く悪用されている Struts2 の脆弱性:

CVE-2010-1870XWork ParameterInterceptors バイパスにより OGNLstatement の実行が可能

CVE-2012-0392struts2 DevMod リモート コマンド実行の脆弱性

CVE-2011-3923Struts

CVE-2013-1966Struts2

CVE-2013-2251Struts2

Struts2

Struts2

CNVD-2016-02506、CVE-2016-3081、影響を受けるバージョン Struts 2.3.20 - StrutsStruts 2.3.28 (2.3) .20.3 および 2.3.24.3 を除く)

CVE 番号: CVE-2016-4438 Struts (S2-037) リモート コード実行の脆弱性、影響を受けるバージョン: Struts 2.3.20 - Struts Struts 2.3.28.1

CVE-2017-5638 影響を受けるバージョン: Struts 2.3.5 – Struts 2.3.31

Struts 2.5 – Struts 2.5.10

その他の詳細については、struts2 を参照してください。公式 Web サイトの脆弱性履歴:

https://cwiki.apache.org/confluence/display/WW/Security Bulletins

Struts2フレームワークサイトのリスク分析例

3 . 配布状況

脆弱性が多発している Struts2 フレームワークを考慮し、州内の Struts フレームワークの配布状況に関する調査と統計を実施し、各都市のサイトのフィンガープリンティングを行うことで、Struts フレームワークの使用状況をマッピングしました。


Struts2フレームワークサイトのリスク分析例

## ビッグデータ分析とキーワード識別を組み合わせて、収集した業界を分析しました。 Strust2 サイトの使用条件を調べて、次の図を作成しました。


Struts2フレームワークサイトのリスク分析例

特定のテーブル データ:

1 政府機関 447 28.29% ##2 3 4 5 6 7 #8 通信事業者 114 7.21% 9 インターネット企業 398 25.18% 10 他社 213 13.48 % #上図からわかるように、トップ 3 (注: 他社を除く) は政府機関 (28.29%) とインターネット企業 (25.18%) です。 , 教育機関 (9.8%)
##シリアル番号 業種 数量 割合
教育機関 155 9.80%
金融業 110 6.96%
保険業界 28 1.77%
証券業界 14 0.88%
エネルギー業界 8 0.50%
運輸業 93 5.88%
収集したサイトに対して、Struts2ミドルウェアを使用して脆弱性検出を実施します。今回は、インターネットへの影響が比較的大きい高リスクの脆弱性をいくつか利用し、脆弱性の検証と検出を行います( S2-045、S2-037、S2-032、S2-016)。1580 のサイト サンプルをテストした結果、Struts2 の脆弱性が修復されていないサイトがまだいくつかあることが判明しました。脆弱性が検出されたサイトの統計は次のとおりです。

シリアル番号 #業界 1政府部門 教育機関##3金融業界1 4 インターネット企業25その他24. セキュリティに関する提案
#脆弱性の数
3 2
2
検出の過程で、多くの Web サイトに Stuts2 以前の古い脆弱性がまだ修復されていないことが判明し、Stuts2 の脆弱性のうち、Web サイトの登録ユーザーがハッカー攻撃にさらされることになりました。
状況がますます複雑になるにつれて、情報セキュリティは単なるテクノロジー以上のものが関係する問題となっています。科学技術の発展は諸刃の剣であり、人類に利益をもたらすこともありますが、破壊的な影響をもたらすこともあります。脆弱性の大きな影響に直面して、インターネット業界の情報セキュリティ担当者は、情報を求める警鐘を鳴らすだけで十分です。セキュリティ、常に鳴らしておかなければなりません。

1. 情報システム開発では、良い開発習慣を身につける必要があります。ほとんどの抜け穴は開発段階から存在します。開発プロセス中の過失により、論理的な抜け穴などもシステムに大きな損害をもたらします。セキュリティ危険。

2. Web サイトのデータを適時にバックアップし、システムが攻撃された場合に、攻撃されたシステムをできるだけ早く復元できるようにします。

3. バックグラウンド サービスにウイルス対策ソフトウェアをインストールし、定期的にサーバーでウイルス スキャンを実行し、セキュリティ チェックを待ちます。

4. インターネットの最新の脆弱性をリアルタイムに把握し、情報システムの脆弱性をタイムリーに修復します。

5. システムに対する侵入テストや脆弱性テストなどの作業を定期的に実施し、問題を迅速に発見して適時に修復し、脆弱性がインターネット上に公開されるのを防ぎます。

6. 使用されなくなったシステムは適時にオフラインにします 一般に、古いシステムにはセキュリティの問題が多く、管理が不十分だと大量の機密情報が漏洩する可能性があります。

以上がStruts2フレームワークサイトのリスク分析例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Struts2 の過去の脆弱性を保護の観点から見る方法 Struts2 の過去の脆弱性を保護の観点から見る方法 May 13, 2023 pm 05:49 PM

1. はじめに Struts2 の脆弱性は古典的な一連の脆弱性であり、根本的な原因は、Struts2 がフレームワークを柔軟かつ動的にするために OGNL 式を導入していることです。フレームワーク全体のパッチ適用が改善されたことにより、Struts2 の新たな脆弱性の発見は以前よりもはるかに困難になりましたが、実際の状況から判断すると、ほとんどのユーザーが過去の高リスク脆弱性を既に修復済みです。現在、侵入テストを行う場合、Struts2 の脆弱性は主に偶然に任せられるか、イントラネットに公開された後でパッチが適用されていないシステムを攻撃する方がより効果的です。オンライン分析記事では、主にこれらの Struts2 の脆弱性を攻撃と悪用の観点から分析しています。新しい H3C の攻守チームとして、ips 製品のルールベースを維持することも仕事の一部であり、今日はこのシステムをレビューします。

Struts2フレームワークの原理とは何ですか Struts2フレームワークの原理とは何ですか Jan 04, 2024 pm 01:55 PM

Struts2 フレームワークの原理: 1. インターセプターはリクエスト パスを解析します; 2. アクションの完全なクラス名を検索します; 3. Action オブジェクトを作成します; 4. Action メソッドを実行します; 5. 結果を返します; 6. ビュー解析中。その原理は、ビジネス ロジック コントローラーをサーブレット API から完全に分離するインターセプター メカニズムに基づいており、コードの再利用性と保守性が向上します。 Struts2 フレームワークは、リフレクション メカニズムを使用することで、リクエストと応答を処理するための Action オブジェクトを柔軟に作成および管理できます。

Struts2の脆弱性S2-001の分析例 Struts2の脆弱性S2-001の分析例 May 15, 2023 pm 03:58 PM

Vulhub 脆弱性シリーズ: struts2 脆弱性 S2-0011 脆弱性の説明: struts2 脆弱性 S2-001 は、ユーザーがフォーム データを送信して検証が失敗した場合、サーバーは OGNL 式を使用して、ユーザーによって以前に送信されたパラメーター値 %{value} を解析します。対応するフォームデータを補充します。たとえば、登録ページやログインページなどです。送信が失敗した場合、サーバーは通常、デフォルトで以前に送信されたデータを返します。サーバーは %{value} を使用して送信されたデータに対して OGNL 式解析を実行するため、サーバーはペイロードを直接送信してコマンドを実行できます。 2. Vulhubの脆弱性悪用:vulhubを利用して脆弱性を再現すると、環境構築の手間が省け大変便利です。ヴ

Struts2 S2-059 リモート コード実行の脆弱性はどのように再現しますか? Struts2 S2-059 リモート コード実行の脆弱性はどのように再現しますか? May 23, 2023 pm 10:37 PM

0x00 はじめに Struts2 は、Apache ソフトウェア組織によって開発された非常に強力な JavaWeb オープン ソース フレームワークであり、本質的にはサーブレットと同等です。 Struts2 は MVC アーキテクチャに基づいており、明確なフレームワーク構造を持っています。通常、モデルとビュー間のデータ対話を確立するコントローラーとして使用され、エンタープライズ レベルの Java Web アプリケーションを作成するために使用されます。JavaServletAPI を利用および拡張し、開発者に MVC アーキテクチャの採用を奨励します。 Struts2 は、WebWork の優れた設計アイデアをコアとして採用し、Struts フレームワークのいくつかの利点を吸収し、MVC 設計パターンで実装されたより整った Web アプリケーション フレームワークを提供します。 0x01 脆弱性

Struts2-057 2 つのバージョンの RCE 脆弱性分析例 Struts2-057 2 つのバージョンの RCE 脆弱性分析例 May 15, 2023 pm 06:46 PM

はじめに 2018 年 8 月 22 日に、Apache Struts2 には、高リスクのリモート コード実行の脆弱性 (S2-057/CVE-2018-11776) が存在し、最新のセキュリティ情報が公開されました。この脆弱性は、米国のセキュリティ研究者 ManYueMo によって発見されました。 SemmleSecurityResearchチーム。この脆弱性は、Struts2 開発フレームワークで名前空間関数を使用して XML 構成を定義するときに、名前空間の値が設定されておらず、上位層のアクション構成 (ActionConfiguration) にも設定されていないか、またはワイルドカード名前空間が使用されているという事実に起因します。これにより、リモートでコードが実行される可能性があります。同じように、あなたも

Apache Struts2--048 リモート コード実行の脆弱性を再現する方法 Apache Struts2--048 リモート コード実行の脆弱性を再現する方法 May 12, 2023 pm 07:43 PM

0x00 はじめに Struts2 フレームワークは、JavaEE Web アプリケーションを開発するためのオープンソース Web アプリケーション アーキテクチャです。 JavaServletAPI を利用および拡張し、開発者が MVC アーキテクチャを採用することを奨励します。 Struts2 は、WebWork の優れた設計アイデアをコアとして採用し、Struts フレームワークの利点の一部を吸収し、MVC 設計パターンで実装されたより整った Web アプリケーション フレームワークを提供します。 0x01 脆弱性の概要 ApacheStruts22.3.x シリーズでは struts2-struts1-plugin プラグインが有効になっており、struts2-showcase ディレクトリが存在する場合に脆弱性が発生します。

Struts2フレームワークサイトのリスク分析例 Struts2フレームワークサイトのリスク分析例 May 30, 2023 pm 12:32 PM

1. 概要 Struts は、Apache Software Foundation (ASF) がスポンサーとなっているオープンソース プロジェクトです。これはジャカルタ プロジェクト内のサブプロジェクトとして始まり、後に ASF のトップレベル プロジェクトになりました。 JavaServlet/JSP技術を利用し、JavaEE WebアプリケーションのModel-View-Controller[MVC]設計パターンに基づいたアプリケーションフレームワーク[WebFramework]を実装した、MVCクラシック設計パターンの代表的な製品です。 JavaEE Web アプリケーション開発の初期には、サーブレット テクノロジの使用に加えて、JavaServerPages (JSP) のソース コードで HTM が一般的に使用されていました。

Apache Struts2 S2-057 セキュリティ脆弱性に関する CNNVD レポートの分析例 Apache Struts2 S2-057 セキュリティ脆弱性に関する CNNVD レポートの分析例 May 11, 2023 pm 08:04 PM

現在、Apache はこの脆弱性を修正するバージョンアップデートを正式にリリースしています。 Apache Struts の製品バージョンを適時に確認し、影響を受ける場合は適時にパッチを適用することをお勧めします。 1. 脆弱性の紹介 ApacheStruts2 は、American Apache Software Foundation の Jakarta プロジェクトのサブプロジェクトであり、MVC 設計に基づいた Web アプリケーション フレームワークです。 2018 年 8 月 22 日、Apache は Apache Struts2S2-057 セキュリティ脆弱性 (CNNVD-201808-740、CVE-2018-11776) を正式にリリースしました。 struts2開発フレームワークでpan-namespace機能を有効にする場合

See all articles