Struts、Seasar2で開発された業務システムを利用し続けるリスクと、移行に向けたアプローチ

Strutsで開発された業務システムを利用し続けるリスクと、移行に向けた現実的なアプローチとは
デファクトスタンダードとして多くの企業システムに採用されてきたApache Struts。これによって開発された業務システムは、相次ぐサポート終了によるセキュリティリスクが増大しています。

サポートの切れたフレームワークを継続して使用することには大きなリスクが伴いますが、依然としてStruts/Seasar2を利用しアプリケーションを使い続けている企業も多いのが現状です。
Apache Strutsの誕生と普及の背景


Apache Strutsは、2001年にApache Software FoundationによってリリースされたJavaベースのWebアプリケーションフレームワークです。このフレームワークは、Webアプリケーション開発の効率化を目的として誕生し、当時の業務システム分野では画期的な存在でした。特にMVC(Model-View-Controller)アーキテクチャの実装を簡素化する点が評価され、2000年代半ばにはデファクトスタンダードとして多くの企業システムに採用されました。
Strutsには初代のStruts1と改良版であるStruts2の2つのバージョンが存在しますが、Struts1は2013年にサポートが終了。Struts2は引き続き利用されてきました。



しかし、モダンなフレームワークに比べ、その保守性やセキュリティ面での課題が次第に顕著となっていきました。
相次ぐ指摘!頻繁に見つかる「Struts」の脆弱性
Struts系フレームワークにはStruts1とStruts2がありますが、下記のようにいずれも過去に頻繁に脆弱性の指摘を受けています。
Struts1(初代Struts)の脆弱性問題
初代Struts(Struts1)は、2001年に初版がリリースされてから多くのWebアプリケーション開発で利用されてきました。しかし、脆弱性が数多く指摘されるようになり、2013年4月にサポート終了を迎えました。新たな脆弱性が発生してもセキュリティパッチや修正版が提供されないため、Struts1を使い続けることは大きなリスクとなっています。
サポート終了後の2014年には、サーバーの不正操作が可能となる「ClassLoader を操作可能な脆弱性」が発見され、大きな話題となりました。この脆弱性についてはすでにサードパーティからセキュリティパッチが提供されていますが、その後も重大な脆弱性が多数見つかっています。



今後もいつ新たな脆弱性が発見されても不思議ではありません。
Struts2(後継Struts)の脆弱性問題
Struts1の後継として2007年にStruts2がリリースされましたが、このStruts2にも何度も脆弱性が見つかっています。
例えば、2017年には「任意のコードを実行できる脆弱性」が見つかりました。報道によれば、2017年3月20日時点で7組織が被害に遭い、情報漏えいした可能性のある個人情報は合計で79万4566件に上っています。あるセキュリティ専門企業は「この脆弱性を突く攻撃が広く横行している」として、「システムに脆弱性があるかどうかを探ろうとするコード」や「Linuxファイアウォールを停止させ、マルウェアをダウンロードして実行させるコード」など悪意ある事例が数多く見つかっていることを伝えています。実際にクレジットカード情報や個人情報の流出といった非常に深刻な被害が発生しています。
このように、Struts1、Struts2とも、重大な脆弱性を数多く指摘されています。フレームワークの脆弱性は甚大な被害をもたらすリスクとなるため、Struts系フレームワークを採用している企業では、可能な限り迅速に根本的な対策を実施することが急務です。
サポートが終了しているStruts1はもちろんのこと、Struts2も引き続き脆弱性の問題が発生する可能性は高いでしょう。2018年8月にも、リモートで任意のコードが実行される脆弱性が新たに指摘され、セキュリティ関連機関から注意喚起が行われています。Struts1を使った既存アプリケーションのセキュリティ対策は、後継のStruts2に置き換えるのではなく、他のフレームワークに移行することが現実的なアプローチだと言えます。
Seasar2のサポート終了
また、Strutsのように、2000年代に構築した企業向けJavaシステムの開発で頻繁に利用されてきたSeasar2が提供するプロダクトの多くが2016年9月26日 をもってサポート終了を迎えました。



Struts同様に新たな脆弱性が発生してもセキュリティパッチや修正版が提供されないため、Seasar2を使い続けることは大きなリスクとなっています。
2024年以降のStrutsサポート終了問題とは


Struts2に関する正式なサポートは、最新版を除いてほぼ終了状態に近づいています。2024年以降も旧バージョンの利用を続ける企業ではさらなるリスクを抱えることが確実視されています。この「EOL(End of Life)」に伴い、新たな脆弱性が発見されても修正パッチが提供されなくなるため、セキュリティ対策が事実上不可能となります。
EOLについては下記の記事でも解説しています。


業務システムや基幹システムにStruts2を使用している企業においては、サポート終了後もこれを放置することで、データ流出やシステムダウンといった重大な事態を招く可能性があります。この問題を軽視することは、結果的に顧客との信頼を損ない、経済的損失のみならず社会的信用も失うリスクを増大させる結果となるでしょう。
セキュリティ事故の事例と経済的損失


これまでにApache Strutsの脆弱性が悪用された事例の中でも特に注目されたのは、2017年に発生した米国企業の大規模データ漏洩事件です。この事件では、Strutsの未修正の脆弱性をついた攻撃によって1億4千万件以上の個人情報が流出し、甚大な損害が生じました。攻撃を受けた企業はその後法的責任を追及され、巨額の賠償費用を負うこととなりました。
さらに、このような事件は直接的な金銭的損失のみならず、顧客や株主からの信頼喪失、ブランドイメージの悪化といった深刻な二次的影響も引き起こします。その対策として多額のセキュリティコストを要することもあり、結果として企業全体の成長戦略に大きな支障を及ぼすことになります。



このような背景から、Strutsを用いた業務システムの継続利用は極めて危険であり、早急な移行計画が必要とされています。
Struts業務システムを利用し続けるリスク


企業が直面するセキュリティリスク
Apache Strutsを利用した業務システムを運用し続ける最大のリスクは、セキュリティ脆弱性です。2023年に報告された「CVE-2023-50164」のような深刻な脆弱性は、新たなセキュリティパッチが提供されない環境下で使用する場合、リモートコード実行(RCE)や機密データ漏えいなどのリスクを引き起こします。特に、基幹業務を担うようなWebシステムでStrutsを使用している企業にとって、このような脅威は経済的損失や社会的信用失墜につながりかねません。既にサポート終了(EOL)となっているフレームワークの利用継続は、セキュリティ対策として推奨されません。
保守・運用にかかるコストの増加
サポートが終了したStrutsを使い続けると、保守や運用にかかるコストが急増します。たとえば、脆弱性が発見された場合、適切な対策が自社で対応される必要があるため、特別な技術力を持つエンジニアを確保しなければなりません。また、独自にセキュリティパッチを作成する場合も多くの工数が発生します。加えて、古いフレームワークを維持するだけで開発コストが高騰し、結果としてIT投資のリソースを消耗します。この負担により、新技術への移行やモダン化に向けた予算や人材が不足し、企業全体の競争力が低下する可能性があります。
設計書やドキュメント不在による困難
Strutsを使用しているシステムの多くは開発から長年が経過しているため、設計書やドキュメントが整備されていないことが少なくありません。こうした状況では、移行や変更を検討する際にシステムの全容を把握するのが困難になり、計画策定や工数見積もりに多大な労力が要求されます。また、ドキュメントが欠如している場合、現行システムの運用中に不具合が発生しても迅速な対応が難しくなります。このようなリスクを放置することは、業務システムの安定稼働における障壁となり得ます。
責任追及と社会的信用喪失のリスク
Struts業務システムの利用を続ける中で重大なセキュリティインシデントが発生した場合、企業は大きな責任を問われる可能性があります。特に、基幹業務システムから大規模な情報漏えいが発生すれば、顧客や取引先からの信頼が一瞬で失われ、社会的信用を回復するには莫大な時間とコストが必要です。さらに、法的責任や規制への対応が求められるケースもあり、企業の運営そのものに深刻な打撃を与える可能性があります。長年使用されていたSeasar2やStruts1も、サポート終了後にリスクを無視した結果としての問題を引き起こした事例がいくつか存在します。これを教訓に、現行の脆弱なフレームワークの早急な移行を検討することが求められています。
ここが違う!シーイーシーのStrutsマイグレーションサービス
そこで、シーイーシーでは、Struts/Seasar2フレームワークで構築された既存アプリケーションを引き続き安全に利用できるように、最新フレームワークのデファクトスタンダードであるSpring MVCへ移行するサービスを提供しています。
自動変換ツールを活用し、現行アプリケーションの機能をそのままに、最新のSpring MVCフレームワークに移行します。移行対象となるのは、主にStruts設定ファイルに記述していた画面遷移関連のコードです。


移行対象
- JSP
- Actionクラス
- Actionフォーム
- TagLibs
- 設定ファイル(xml)
- ライブラリファイル
対応内容
主な対応内容は大きく3つ
1. 画面表示
Strutsのタグライブラリを、JSTLやSpringタグライブラリに変換
2. 画面遷移
StrutsのActionクラス、Struts-config.xmlなどの定義内容をSpringのControllerクラスに変換
3. 入力チェック
Validation.xml定義内容をBean Validationに変換
シーイーシーのStrutsマイグレーションの特長


1. 自動変換ツールの活用で高品質かつ効率的な移行
自動変換ツールを活用し、Strutsの標準的なソースコードであれば自動的に移行することが可能です。手作業による人為的ミスや手戻りを抑制できるため、高品質かつ効率的なマイグレーションを実現できます。独自にカスタマイズされたStrutsをお使いの場合や、Validationの定義方法に違いがある場合など、お客様の資産に合わせて移行ツールをカスタマイズすることも可能です。
2. Struts部分以外のマイグレーションにも柔軟に対応
Strutsと併せてアプリケーションを構成しているAPサーバー、Java(JDK)、Spring Framework、MyBatisなどのバージョンアップにも対応できます。
また、データベースのバージョンアップや、Oracle DatabaseからSQL Serverなどへのデータベース変更、データベース変更に伴うSQL変換にも対応が可能です。
3. セキュリティ対策に大きな強み
Strutsから脱却するだけでは、セキュリティ対策が十分とは言えません。シーイーシーのトータルセキュリティソリューション「Cyber NEXT」を活用することで、セキュリティ対策を強化できます。シーイーシーはセキュリティサービスプロバイダーとしての使命のもと、最新世代のテクノロジーで、進化し続けるセキュリティの脅威に対抗し、お客様のビジネスを守ります。
4. 便利なワンストップ/トータルソリューション
アセスメントから、設計・開発・テスト・導入、運用・保守に至るまで、すべての移行プロセスにワンストップで対応します。
最適なインフラ環境の構築・セキュリティ対策・アプリケーション改修・データ移行など、マイグレーションにまつわるお客様のご要望に、トータルにお応えします。
サービス提供の流れ
まずは無料診断を実施します。作業に着手する前に概算見積をご確認いただけるので安心です。
調査分析/パイロットを実施した後、本格的な対応に移ります。


あらためましてStrutsフレームワークは、2000年代前半に広く浸透しましたが、すでにサポートが終了したStruts 1のみならず後継のStruts 2にも脆弱性が相次いで発見されています。継続して使用することは大きなリスクです。シーイーシーは自動変換ツールを活用した効率的で高品質なStrutsマイグレーションサービスを提供しています。
Struts系フレームワークのセキュリティに不安をお持ちの企業の方は、どうぞお気軽にお問い合わせください。
貴社のお悩みに、弊社専任担当が個別にアドバイスをさせていただく相談会も随時開催しています。
Struts系フレームワークに関する相談会はこちらから


移行事例多数掲載のお役立ち資料はこちらから


Struts、Seasar2関連のよくある質問
- Strutsのサポートは終了しましたか?
-
Struts1のサポートは2013年4月に終了しました。Struts1は2001年にリリースされ、当時はJavaのWebアプリケーション開発における標準的なフレームワークとして広く利用されていました。しかし、技術進化への対応が進まず、現在もStruts1を利用し続けることはセキュリティ上の大きなリスクとなります。Struts1以外にも、Struts2は継続的なサポートが提供されていますが、日々のセキュリティ更新への対応が重要です。
- Struts2のサポートは終了しましたか?
-
Struts2のサポートは公式には終了しておらず、最新バージョンにおいてセキュリティ更新が提供されています。ただし、古いバージョンのStruts2では既にサポートされていないものもあり、その場合は最新バージョンへのアップグレードが推奨されます。Struts2の過去の脆弱性には深刻なものも多く、公開された脆弱性情報を利用した攻撃事例も報告されています。そのため、最新のサポートポリシーに基づくセキュリティ対策が必要です。
- Seasar2のサポートが終了する理由は何ですか?
-
Seasar2のサポートが終了した理由は、主にメンテナンスの停止と他のフレームワークへの技術移行の流れによるものです。Seasar2はかつて日本国内で多くのシステム開発に利用されていましたが、新しい技術トレンドに追随しきれず、2016年9月26日に公式サポートが終了しました。また、プロジェクトの管理主体の変更や、それに伴うリソース確保の困難さも要因として挙げられます。サポート終了後はセキュリティ脆弱性への対応が行われず、リスクが増大するため、移行が強く推奨されています。
- Seasarのサポート期限はいつまでですか?
-
Seasar2の公式サポートは2016年9月26日で終了しました。これ以降、セキュリティ更新やバグ修正は提供されていないため、現在もSeasar2を使用している場合はシステム全体に脆弱性が存在する可能性が高まっています。サポート終了後もドキュメントやソースコードは公開され続けているものの、それだけではセキュリティリスクを解消できないため、Spring Frameworkなどのサポートが継続的に提供されるフレームワークへの移行が急務と言えます。
サポート切れしたフレームワークの継続利用は危険!早急な移行を検討しましょう
Strutsをはじめとする2000年代に構築されたフレームワークの多くは、現在ではサポートが終了しており、新たな脆弱性が発見されても修正が行われない状況です。これにより、これらのフレームワークを利用し続けることは、情報漏えいや不正アクセスといった深刻なリスクを伴うものとなっています。さらに、これらのリスクは企業の信頼性や業務の継続性に直接的な影響を及ぼす可能性があります。
こうした背景を踏まえ、依然としてStrutsやSeasar2などのレガシーシステムを使用する企業は、早急に移行を検討することが重要です。特に、安全性・効率性を兼ね備えた移行手法を提供しているSpring MVCへのマイグレーションは、現行機能を維持したままセキュリティを強化し、低リスクでシステムを刷新する現実的な選択肢といえます。
これを契機に、組織全体のIT基盤を見直し、モダナイゼーションを進める第一歩としてみてはいかがでしょうか。安全で持続可能なシステム運用を実現するために専門的なサポートを受けながら、移行を進めることをおすすめします。
Struts系フレームワークに関する相談会はこちらから


関連サービス情報
現行システムの延命にとどまらず、戦略的ICT投資が可能なシステムへと再生
「Strutsマイグレーションサービス」
マイグレーション関連のコラムはこちら
-
Windows 11でIEモードを設定する方法は?画像で分かりやすく解説
-
Windows 11でIEモードはいつまで使える?サポート期限にも注意
-
メインフレームとは?最適な移行方法やオープン化についても解説します
-
VMware社 買収後の動向、迫られる選択肢と最適な移行先とは
-
Visual Basic 6.0(VB6)を使い続けるリスク・移行課題、ご存知ですか?
-
商用UNIX(Solaris、AIX、HP-UX)からLinuxへ移行する方法
-
EOLとは?サポート終了システムのスケジュールやリスクについて
-
VMware買収とサブスクリプション化による企業への影響
-
マイグレーションの意味とは?具体的な手法や種類を解説
-
CentOSサポート終了!後継OSの選び方を解説
-
CentOSとは?今後の開発方針による影響をわかりやすく解説
-
2023年10月10日にサポートが終了!Windows Serever 2012の移行先を考えよう
マイグレーション関連のダウンロード資料はこちら
-
【資料ダウンロード】Windows 10サポート終了は待ったなし!移行対策は万全ですか?
-
【ホワイトペーパーダウンロード】サポート終了のIE依存Webアプリをまだ使い続けていませんか? ~最小限のコスト工数で、安心・安全にIE脱却を実現する方法~
-
【セミナー資料ダウンロード】成功事例から見る、富士通メインフレームのオープン化 〜短期間・ローリスクで移行可能「リホストマイグレーション」を解説〜
-
【ホワイトペーパーダウンロード】メインフレームで構築されたシステムをオープンプラットフォームへ再生
-
【ホワイトペーパーダウンロード】オンプレミスの商用UNIX(Solaris、AIX、HP-UX)からクラウド(Linux)へ移行 ~Linux移行時の5つの注意ポイント ~
-
【事例ダウンロード】ジェックシステム開発様-大規模なオンプレミス型基幹システムのクラウド移行-
-
【ホワイトペーパーダウンロード】継続利用は危険!Visual Basic 6.0からのマイグレーションを低リスク&高品質で実現!
-
【事例ダウンロード】ラジオメーター株式会社 様 VB.NETへの移行 システムの従来機能を100%再現
-
【ホワイトペーパーダウンロード】 移行事例多数 Strutsからのフレームワーク移行をワンストップで実現!