ディープダイブMOVEitのゼロデイ脆弱性に迫る
ソフトウェア・サプライチェーンのサイバー攻撃はますます一般的になりつつあり、米国政府レベルでは法改正が相次ぐ一方、企業は拡大するリスクプロファイルを軽減し、ソフトウェア品質を迅速に向上させようと躍起になっている。ファイル共有サービスに関連するゼロデイ脆弱性は、今年だけでも3件発生しており、中でも最大かつ最も破壊的なものは、MOVEitの大量エクスプロイトである。
CL0Pランサムウェア・グループによって先導されたMOVEit事件は、しばらくの間サイバーセキュリティ・ニュースを席巻し、1,000以上の組織が影響を受けた。この数は増え続けており、2021年のSolarwinds以来、最も強力なソフトウェア・サプライチェーン攻撃の1つとなっている。
この広範な侵害のきっかけとなったのは、SQLインジェクションの脆弱性群で、最終的にMITREの深刻度スコアは10点満点中9.8点となった。SQLインジェクションは、90年代後半からセキュリティ専門家の悩みの種であり、かなり簡単な修正にもかかわらず、最新のソフトウェアに入り込み、脅威行為者に機密データへのレッドカーペットを提供し続けている。
MOVEitのシナリオは、多くの開発者やAppSecの専門家が以前に経験したものとは少し異なっており、ライブシミュレーションでSQLi退治のスキルを試すことができます。
脆弱性SQLインジェクション
SQLインジェクションは、Progress SoftwareのMOVEitファイル転送アプリケーションを悪用するために、具体的にどのように使われたのか?
CL0Pランサムウェアグループは、SQLインジェクションの脆弱性CVE-2023-34362を悪用し、MOVEitのデータベースに無制限かつ不正にアクセスすることができました。そこから、彼らはLEMURLOOTをインストールすることができました。LEMURLOOTは、最終的に、システム設定の検索、SQLデータベースの列挙、MOVEit Transferシステムからのファイル検索、完全な管理権限を持つ新しいアカウントの作成など、いくつかの高リスクで重要なプロセスを実行できるようにするWebシェルです。
言うまでもないが、この攻撃ベクトルは比較的単純なエラーの結果であり、お粗末なコーディング・パターンを使い続けた結果とも言えるが、企業レベルで継続的な問題を引き起こす可能性は計り知れない。
MOVEitエクスプロイトと同様に、悪意のあるSQLを注入して実行する方法をシミュレートしたSQLiの説明を見てみよう:
。
このクエリー文字列と変数:
↪CF_200D↩。
string emailAddress ="contact@scw.com";
var query = $"SELECT u.UserName From Users as u WHERE u.Email = '{emailAddress}'";
は次のようなクエリーになる。
var query = $"SELECT u.UserName From Users as u WHERE u.Email = 'contact@scw.com'";
㊤Cf_200D
... そして、悪意のある細工を施した入力の場合:
。
string emailAddress = "contact@scw.com'; DELETE FROM Invoices WHERE Id = 2;--";
var query = $"SELECT u.UserName From Users as u WHERE u.Email = '{emailAddress}'";
となる。
var query = $"SELECT u.UserName From Users as u WHERE u.Email = 'contact@scw.com'; DELETE FROM Invoices WHERE Id = 2;--'";
クエリ
飛行中はどう見える?


文字列の連結により、入力はSQL構文として解釈されることに注意してください。まず、SELECT文が有効なSQL構文であることを確認するためにシングルクォートが追加されます。次に、最初の文を終了するためにセミコロンが追加されます。
これが配置されると、有効なDELETE文が追加され、ハイフン2つで末尾の文字(シングルクォート)をコメントアウトする。例えば、悪意のあるSQLがユーザのロールやパスワードを更新するものであった場合、UPDATE文も同様に簡単に追加できます。
このプレイアブル・ミッションで実際に試してみてください。
>> PLAY THE MOVEit MISSION
↪Cf_200D
SQLiは比較的簡単ではあるが、依然として強力な攻撃ベクトルであり、あまりにも一般的なものである。MOVEitの場合、この悪用によって有害なバックドアがインストールされ、さらに同じような深刻度の攻撃グループが発生した。
SQLインジェクションのリスクを軽減するには?
MOVEit を業務の一部として利用している企業は、Progress Software が推奨する修復アドバイスに従うことが不可欠です。これには、緊急レベルの優先事項としてセキュリティパッチを適用することが含まれますが、これに限定されません。
SQL インジェクション全般については、包括的なガイドをご覧ください。
安全なコードを書いてリスクを軽減する方法についてもっと知りたいですか?当社のSQLインジェクション・チャレンジを無料でお試しください。
さらに無料のコーディング・ガイドラインにご興味があれば、セキュアコーディングのベストプラクティスを常に把握するのに役立つSecure Code Coachをご覧ください。

Secure Code Warrior は、ソフトウェア開発ライフサイクル全体にわたってコードを保護し、サイバーセキュリティを最優先とする企業文化を創造するために、お客様の組織を支援します。AppSec マネージャー、開発者、CISO、またはセキュリティに関わるすべての人が、安全でないコードに関連するリスクを減らすことができるよう、支援します。
デモを予約するLaura Verheyde はSecure Code Warrior のソフトウェア開発者で、脆弱性のリサーチとMissions および Coding labs のコンテンツ作成に注力している。


ソフトウェア・サプライチェーンのサイバー攻撃はますます一般的になりつつあり、米国政府レベルでは法改正が相次ぐ一方、企業は拡大するリスクプロファイルを軽減し、ソフトウェア品質を迅速に向上させようと躍起になっている。ファイル共有サービスに関連するゼロデイ脆弱性は、今年だけでも3件発生しており、中でも最大かつ最も破壊的なものは、MOVEitの大量エクスプロイトである。
CL0Pランサムウェア・グループによって先導されたMOVEit事件は、しばらくの間サイバーセキュリティ・ニュースを席巻し、1,000以上の組織が影響を受けた。この数は増え続けており、2021年のSolarwinds以来、最も強力なソフトウェア・サプライチェーン攻撃の1つとなっている。
この広範な侵害のきっかけとなったのは、SQLインジェクションの脆弱性群で、最終的にMITREの深刻度スコアは10点満点中9.8点となった。SQLインジェクションは、90年代後半からセキュリティ専門家の悩みの種であり、かなり簡単な修正にもかかわらず、最新のソフトウェアに入り込み、脅威行為者に機密データへのレッドカーペットを提供し続けている。
MOVEitのシナリオは、多くの開発者やAppSecの専門家が以前に経験したものとは少し異なっており、ライブシミュレーションでSQLi退治のスキルを試すことができます。
脆弱性SQLインジェクション
SQLインジェクションは、Progress SoftwareのMOVEitファイル転送アプリケーションを悪用するために、具体的にどのように使われたのか?
CL0Pランサムウェアグループは、SQLインジェクションの脆弱性CVE-2023-34362を悪用し、MOVEitのデータベースに無制限かつ不正にアクセスすることができました。そこから、彼らはLEMURLOOTをインストールすることができました。LEMURLOOTは、最終的に、システム設定の検索、SQLデータベースの列挙、MOVEit Transferシステムからのファイル検索、完全な管理権限を持つ新しいアカウントの作成など、いくつかの高リスクで重要なプロセスを実行できるようにするWebシェルです。
言うまでもないが、この攻撃ベクトルは比較的単純なエラーの結果であり、お粗末なコーディング・パターンを使い続けた結果とも言えるが、企業レベルで継続的な問題を引き起こす可能性は計り知れない。
MOVEitエクスプロイトと同様に、悪意のあるSQLを注入して実行する方法をシミュレートしたSQLiの説明を見てみよう:
。
このクエリー文字列と変数:
↪CF_200D↩。
string emailAddress ="contact@scw.com";
var query = $"SELECT u.UserName From Users as u WHERE u.Email = '{emailAddress}'";
は次のようなクエリーになる。
var query = $"SELECT u.UserName From Users as u WHERE u.Email = 'contact@scw.com'";
㊤Cf_200D
... そして、悪意のある細工を施した入力の場合:
。
string emailAddress = "contact@scw.com'; DELETE FROM Invoices WHERE Id = 2;--";
var query = $"SELECT u.UserName From Users as u WHERE u.Email = '{emailAddress}'";
となる。
var query = $"SELECT u.UserName From Users as u WHERE u.Email = 'contact@scw.com'; DELETE FROM Invoices WHERE Id = 2;--'";
クエリ
飛行中はどう見える?


文字列の連結により、入力はSQL構文として解釈されることに注意してください。まず、SELECT文が有効なSQL構文であることを確認するためにシングルクォートが追加されます。次に、最初の文を終了するためにセミコロンが追加されます。
これが配置されると、有効なDELETE文が追加され、ハイフン2つで末尾の文字(シングルクォート)をコメントアウトする。例えば、悪意のあるSQLがユーザのロールやパスワードを更新するものであった場合、UPDATE文も同様に簡単に追加できます。
このプレイアブル・ミッションで実際に試してみてください。
>> PLAY THE MOVEit MISSION
↪Cf_200D
SQLiは比較的簡単ではあるが、依然として強力な攻撃ベクトルであり、あまりにも一般的なものである。MOVEitの場合、この悪用によって有害なバックドアがインストールされ、さらに同じような深刻度の攻撃グループが発生した。
SQLインジェクションのリスクを軽減するには?
MOVEit を業務の一部として利用している企業は、Progress Software が推奨する修復アドバイスに従うことが不可欠です。これには、緊急レベルの優先事項としてセキュリティパッチを適用することが含まれますが、これに限定されません。
SQL インジェクション全般については、包括的なガイドをご覧ください。
安全なコードを書いてリスクを軽減する方法についてもっと知りたいですか?当社のSQLインジェクション・チャレンジを無料でお試しください。
さらに無料のコーディング・ガイドラインにご興味があれば、セキュアコーディングのベストプラクティスを常に把握するのに役立つSecure Code Coachをご覧ください。

ソフトウェア・サプライチェーンのサイバー攻撃はますます一般的になりつつあり、米国政府レベルでは法改正が相次ぐ一方、企業は拡大するリスクプロファイルを軽減し、ソフトウェア品質を迅速に向上させようと躍起になっている。ファイル共有サービスに関連するゼロデイ脆弱性は、今年だけでも3件発生しており、中でも最大かつ最も破壊的なものは、MOVEitの大量エクスプロイトである。
CL0Pランサムウェア・グループによって先導されたMOVEit事件は、しばらくの間サイバーセキュリティ・ニュースを席巻し、1,000以上の組織が影響を受けた。この数は増え続けており、2021年のSolarwinds以来、最も強力なソフトウェア・サプライチェーン攻撃の1つとなっている。
この広範な侵害のきっかけとなったのは、SQLインジェクションの脆弱性群で、最終的にMITREの深刻度スコアは10点満点中9.8点となった。SQLインジェクションは、90年代後半からセキュリティ専門家の悩みの種であり、かなり簡単な修正にもかかわらず、最新のソフトウェアに入り込み、脅威行為者に機密データへのレッドカーペットを提供し続けている。
MOVEitのシナリオは、多くの開発者やAppSecの専門家が以前に経験したものとは少し異なっており、ライブシミュレーションでSQLi退治のスキルを試すことができます。
脆弱性SQLインジェクション
SQLインジェクションは、Progress SoftwareのMOVEitファイル転送アプリケーションを悪用するために、具体的にどのように使われたのか?
CL0Pランサムウェアグループは、SQLインジェクションの脆弱性CVE-2023-34362を悪用し、MOVEitのデータベースに無制限かつ不正にアクセスすることができました。そこから、彼らはLEMURLOOTをインストールすることができました。LEMURLOOTは、最終的に、システム設定の検索、SQLデータベースの列挙、MOVEit Transferシステムからのファイル検索、完全な管理権限を持つ新しいアカウントの作成など、いくつかの高リスクで重要なプロセスを実行できるようにするWebシェルです。
言うまでもないが、この攻撃ベクトルは比較的単純なエラーの結果であり、お粗末なコーディング・パターンを使い続けた結果とも言えるが、企業レベルで継続的な問題を引き起こす可能性は計り知れない。
MOVEitエクスプロイトと同様に、悪意のあるSQLを注入して実行する方法をシミュレートしたSQLiの説明を見てみよう:
。
このクエリー文字列と変数:
↪CF_200D↩。
string emailAddress ="contact@scw.com";
var query = $"SELECT u.UserName From Users as u WHERE u.Email = '{emailAddress}'";
は次のようなクエリーになる。
var query = $"SELECT u.UserName From Users as u WHERE u.Email = 'contact@scw.com'";
㊤Cf_200D
... そして、悪意のある細工を施した入力の場合:
。
string emailAddress = "contact@scw.com'; DELETE FROM Invoices WHERE Id = 2;--";
var query = $"SELECT u.UserName From Users as u WHERE u.Email = '{emailAddress}'";
となる。
var query = $"SELECT u.UserName From Users as u WHERE u.Email = 'contact@scw.com'; DELETE FROM Invoices WHERE Id = 2;--'";
クエリ
飛行中はどう見える?


文字列の連結により、入力はSQL構文として解釈されることに注意してください。まず、SELECT文が有効なSQL構文であることを確認するためにシングルクォートが追加されます。次に、最初の文を終了するためにセミコロンが追加されます。
これが配置されると、有効なDELETE文が追加され、ハイフン2つで末尾の文字(シングルクォート)をコメントアウトする。例えば、悪意のあるSQLがユーザのロールやパスワードを更新するものであった場合、UPDATE文も同様に簡単に追加できます。
このプレイアブル・ミッションで実際に試してみてください。
>> PLAY THE MOVEit MISSION
↪Cf_200D
SQLiは比較的簡単ではあるが、依然として強力な攻撃ベクトルであり、あまりにも一般的なものである。MOVEitの場合、この悪用によって有害なバックドアがインストールされ、さらに同じような深刻度の攻撃グループが発生した。
SQLインジェクションのリスクを軽減するには?
MOVEit を業務の一部として利用している企業は、Progress Software が推奨する修復アドバイスに従うことが不可欠です。これには、緊急レベルの優先事項としてセキュリティパッチを適用することが含まれますが、これに限定されません。
SQL インジェクション全般については、包括的なガイドをご覧ください。
安全なコードを書いてリスクを軽減する方法についてもっと知りたいですか?当社のSQLインジェクション・チャレンジを無料でお試しください。
さらに無料のコーディング・ガイドラインにご興味があれば、セキュアコーディングのベストプラクティスを常に把握するのに役立つSecure Code Coachをご覧ください。

以下のリンクをクリックし、この資料のPDFをダウンロードしてください。
Secure Code Warrior は、ソフトウェア開発ライフサイクル全体にわたってコードを保護し、サイバーセキュリティを最優先とする企業文化を創造するために、お客様の組織を支援します。AppSec マネージャー、開発者、CISO、またはセキュリティに関わるすべての人が、安全でないコードに関連するリスクを減らすことができるよう、支援します。
レポートを見るデモを予約するLaura Verheyde はSecure Code Warrior のソフトウェア開発者で、脆弱性のリサーチとMissions および Coding labs のコンテンツ作成に注力している。
ソフトウェア・サプライチェーンのサイバー攻撃はますます一般的になりつつあり、米国政府レベルでは法改正が相次ぐ一方、企業は拡大するリスクプロファイルを軽減し、ソフトウェア品質を迅速に向上させようと躍起になっている。ファイル共有サービスに関連するゼロデイ脆弱性は、今年だけでも3件発生しており、中でも最大かつ最も破壊的なものは、MOVEitの大量エクスプロイトである。
CL0Pランサムウェア・グループによって先導されたMOVEit事件は、しばらくの間サイバーセキュリティ・ニュースを席巻し、1,000以上の組織が影響を受けた。この数は増え続けており、2021年のSolarwinds以来、最も強力なソフトウェア・サプライチェーン攻撃の1つとなっている。
この広範な侵害のきっかけとなったのは、SQLインジェクションの脆弱性群で、最終的にMITREの深刻度スコアは10点満点中9.8点となった。SQLインジェクションは、90年代後半からセキュリティ専門家の悩みの種であり、かなり簡単な修正にもかかわらず、最新のソフトウェアに入り込み、脅威行為者に機密データへのレッドカーペットを提供し続けている。
MOVEitのシナリオは、多くの開発者やAppSecの専門家が以前に経験したものとは少し異なっており、ライブシミュレーションでSQLi退治のスキルを試すことができます。
脆弱性SQLインジェクション
SQLインジェクションは、Progress SoftwareのMOVEitファイル転送アプリケーションを悪用するために、具体的にどのように使われたのか?
CL0Pランサムウェアグループは、SQLインジェクションの脆弱性CVE-2023-34362を悪用し、MOVEitのデータベースに無制限かつ不正にアクセスすることができました。そこから、彼らはLEMURLOOTをインストールすることができました。LEMURLOOTは、最終的に、システム設定の検索、SQLデータベースの列挙、MOVEit Transferシステムからのファイル検索、完全な管理権限を持つ新しいアカウントの作成など、いくつかの高リスクで重要なプロセスを実行できるようにするWebシェルです。
言うまでもないが、この攻撃ベクトルは比較的単純なエラーの結果であり、お粗末なコーディング・パターンを使い続けた結果とも言えるが、企業レベルで継続的な問題を引き起こす可能性は計り知れない。
MOVEitエクスプロイトと同様に、悪意のあるSQLを注入して実行する方法をシミュレートしたSQLiの説明を見てみよう:
。
このクエリー文字列と変数:
↪CF_200D↩。
string emailAddress ="contact@scw.com";
var query = $"SELECT u.UserName From Users as u WHERE u.Email = '{emailAddress}'";
は次のようなクエリーになる。
var query = $"SELECT u.UserName From Users as u WHERE u.Email = 'contact@scw.com'";
㊤Cf_200D
... そして、悪意のある細工を施した入力の場合:
。
string emailAddress = "contact@scw.com'; DELETE FROM Invoices WHERE Id = 2;--";
var query = $"SELECT u.UserName From Users as u WHERE u.Email = '{emailAddress}'";
となる。
var query = $"SELECT u.UserName From Users as u WHERE u.Email = 'contact@scw.com'; DELETE FROM Invoices WHERE Id = 2;--'";
クエリ
飛行中はどう見える?


文字列の連結により、入力はSQL構文として解釈されることに注意してください。まず、SELECT文が有効なSQL構文であることを確認するためにシングルクォートが追加されます。次に、最初の文を終了するためにセミコロンが追加されます。
これが配置されると、有効なDELETE文が追加され、ハイフン2つで末尾の文字(シングルクォート)をコメントアウトする。例えば、悪意のあるSQLがユーザのロールやパスワードを更新するものであった場合、UPDATE文も同様に簡単に追加できます。
このプレイアブル・ミッションで実際に試してみてください。
>> PLAY THE MOVEit MISSION
↪Cf_200D
SQLiは比較的簡単ではあるが、依然として強力な攻撃ベクトルであり、あまりにも一般的なものである。MOVEitの場合、この悪用によって有害なバックドアがインストールされ、さらに同じような深刻度の攻撃グループが発生した。
SQLインジェクションのリスクを軽減するには?
MOVEit を業務の一部として利用している企業は、Progress Software が推奨する修復アドバイスに従うことが不可欠です。これには、緊急レベルの優先事項としてセキュリティパッチを適用することが含まれますが、これに限定されません。
SQL インジェクション全般については、包括的なガイドをご覧ください。
安全なコードを書いてリスクを軽減する方法についてもっと知りたいですか?当社のSQLインジェクション・チャレンジを無料でお試しください。
さらに無料のコーディング・ガイドラインにご興味があれば、セキュアコーディングのベストプラクティスを常に把握するのに役立つSecure Code Coachをご覧ください。
始めるためのリソース
セキュア・バイ・デザインベストプラクティスの定義、開発者の能力向上、予防的セキュリティ成果のベンチマーク
このリサーチペーパーでは、Secure Code Warrior 共同設立者であるピーテル・ダニュー(Pieter Danhieux)氏とマティアス・マドゥ(Matias Madou)博士、そして専門家であるクリス・イングリス(Chris Inglis)氏(元米国サイバーディレクター、現パラディン・キャピタル・グループ戦略顧問)、デヴィン・リンチ(Devin Lynch)氏(パラディン・グローバル・インスティテュート・シニアディレクター)が、CISO、アプリケーション・セキュリティ担当副社長、ソフトウェア・セキュリティの専門家など、企業のセキュリティ・リーダー20人以上への詳細なインタビューから得られた主な知見を明らかにします。
セキュリティ スキルのベンチマーク: 企業におけるセキュアな設計の合理化
セキュアバイデザイン(SBD)構想の成功に関する有意義なデータを見つけることは、非常に困難である。CISO は、セキュリティプログラム活動の投資収益率(ROI)とビジネス価値を、従業員レベルと企業レベルの両方で証明しようとすると、しばしば困難に直面します。言うまでもなく、企業にとって、現在の業界標準に対して自社の組織がどのようにベンチマークされているかを把握することは特に困難です。大統領の国家サイバーセキュリティ戦略は、関係者に「デザインによるセキュリティとレジリエンスを受け入れる」ことを求めている。セキュアバイデザインの取り組みを成功させる鍵は、開発者にセキュアなコードを保証するスキルを与えるだけでなく、規制当局にそれらのスキルが整っていることを保証することである。本プレゼンテーションでは、25万人以上の開発者から収集した社内データ、データに基づく顧客の洞察、公的研究など、複数の一次ソースから得られた無数の定性的・定量的データを紹介します。こうしたデータ・ポイントの集積を活用することで、複数の業種におけるセキュア・バイ・デザイン・イニシアチブの現状をお伝えすることを目的としています。本レポートでは、この領域が現在十分に活用されていない理由、スキルアッププログラムの成功がサイバーセキュリティのリスク軽減に与える大きな影響、コードベースから脆弱性のカテゴリーを排除できる可能性について詳述しています。