
なぜSQLインジェクションはアプリセキュリティの世界におけるゴキブリなのか(そしてCISOがそれらを根絶する方法)
ゴキブリは基本的にあらゆる状況で生き延びられる——核爆発さえも——という有名な説がある。この説はある程度まで正しいものの、その単純な身体構造ゆえに、ゴキブリはその大きさに対して極めて頑強であり、ほとんどの環境下で根絶するのは困難である。
考えてみた…デジタル世界にゴキブリに相当するものがあるとすれば、それはコード内のSQLインジェクション脆弱性(SQLi)だろう。これは20年以上前から知られているセキュリティホールだが、企業は今なお繰り返し被害に遭っている。ターゲット社への広範かつ多大な損害をもたらした攻撃はSQLインジェクションが原因であり、イリノイ州選挙システムへのハッキング事例(20万件の有権者データが流出)も同様だ。この事態を受けFBIは全IT管理者に対し、セキュリティ対策の強化を急ぐよう勧告している。
Impervaのハッカーインテリジェンスイニシアチブ報告書によると、2005年から2011年にかけて報告されたデータ侵害の83%でSQLインジェクション攻撃が使用されていた。今日でも、インジェクション脆弱性はOWASPトップ10における最大の脅威であり続けている。比較的単純な手法だが、決して消えることはない。
同じセキュリティホールが、依然として多くのアプリケーションセキュリティスキャンで検出されるのは滑稽に思える。その仕組みも、阻止方法もわかっているのに、なぜこれが可能なのか?真実は、ソフトウェアセキュリティにはまだ改善の余地が非常に大きいということだ。
ベラコードのソフトウェアセキュリティ現状レポート— 2017年に実施した40万件のアプリケーションスキャンに基づく調査で「憂慮すべき統計」が明らかになった。OWASPトップ10ガイドラインを満たしていたアプリケーションはわずか30%だった。この傾向は過去5年間一貫して続いている。 新たにスキャンしたアプリケーションのほぼ3分の1でSQLインジェクションが検出された。これは広範な問題の存在を証明している。我々は過ちから学んでおらず、CISO(最高情報セキュリティ責任者)は十分なセキュリティ人材を確保するために苦戦しているようだ。一般的に、アプリケーションセキュリティ専門家と開発者の比率は1:100と不十分である。
ソフトウェアセキュリティはなぜ生命維持に不可欠なのか?
専門的なセキュリティ人材が不足していることは周知の事実ですが、開発者が問題が発生した際に即座に対処せず、明らかに脆弱性を導入しないための十分な準備ができていない点にも注意が必要です。 同じVeracodeレポートでは、開発段階の脆弱性全体のうち、文書化された修正措置が存在するのはわずか14.4%であることが明らかになった。つまり、大半の脆弱性は修正措置なしに報告されている。脆弱性の3分の1未満が最初の90日以内に修正され、42%の脆弱性は開発期間中に一度も修正されなかった。
私は常にセキュリティ専門家、CISO、CEOと対話していますが、多くの企業が発見された脆弱性の数(特に誤検知という厄介な問題に加えて)に苛立ち、緩和策を講じられないことに絶望しているため、脆弱性調査を完全に放棄し、ただ祈るように最善を願っているという実態を、経験則から認識しています。
なぜアプリセキュリティの専門家たちはそれを許すのか?
誤解しないでください:アプリセキュリティ担当者はコード内の問題を痛感しています。結局のところ、それが彼らの核心的な能力であり、チームにとって貴重な存在となる所以です。しかし、彼らはしばしば複数の要因によって制約を受けています。
例えば、アプリケーションセキュリティ管理者が問題を発見し、開発者に「コードを修正できますか?」と尋ねます。この重要な質問への回答は組織によって異なりますが、一般的に開発者は機能提供のための厳しいスプリントに追われ、これらの問題を修正する時間的余裕がなく、支援する適切なツールも持っていないのです。 AppSec専門家は自ら脆弱性を特定できるかもしれませんが、現場で修正するためのスキルやアクセス権限を保持していない場合が少なくありません。
また、あらゆる問題には、解決策を見つけ、実装し、テストするプロセスが存在することを認識しておく必要があります。コード内で発見される最も小さな問題でさえ、修正に要する時間は言うまでもなく、必要なリソースは膨大です。 ソフトウェアに導入され得るセキュリティホールは700以上存在し、一人の人間がそれら全てから身を守ることは単純に不可能です。このため、ほとんどの企業はOWASPトップ10に従うことに留まっています。その一方で、開発者は絶えず機能を追加し続け、結果として自身が書くコードに繰り返しセキュリティホールを埋め込んでいます。
解決策は何ですか?
単純な事実は、我々が開発者に安全なプログラミングを成功させるためのツールやトレーニングを提供していないということだ。企業が開発者に適切なセキュリティ知識を習得させることを義務付ける規制は存在せず、悲しい現実として、ほとんどの大学や実習プログラムも若手の開発者に安全なプログラミングを教える準備ができていない。
誰かが飛行機を操縦したい場合、飛行前に訓練、実務経験、健康診断、安全知識、試験を保証する非常に厳格な手順が存在します。この包括的な準備と能力の検証なしに誰かが空を飛び回るなど、誰も想像しようとはしないでしょう。しかし、まさにそれがコードを書く際に日常的に起きているのです。
開発者に安全なコードの書き方を教えることに時間を割かなければならない。しかし、ソフトウェア開発が急速に進み、優秀な開発者とセキュリティ専門家が不足している今日の世界では、これが優先事項となることは決してないようだ。今こそ、この議論を変える時である。
世界経済フォーラムの最新の見出しはこう叫んでいた:「セキュリティなくしてデジタル経済は成り立たない」。付随する内容では、セキュリティの必要性があらゆるデジタル変革戦略の中核的要素であると論じられていた。「セキュリティは企業を保護し、革新を可能にし、新たな製品やサービスを開発させる。セキュリティは防御的な役割だけでなく、企業に戦略的な成長優位性も提供するのだ」
セキュアプログラミングのスキルと成果の向上は、企業に強力なサイバー防御層を提供し、より優れたコードを迅速に作成することを支援します。開発者はセキュリティの専門家になる必要はありませんが、サイバー攻撃に対する最初の防衛ラインとなるよう、前向きかつ実践的に能力を強化される必要があります。 開発者は次世代のセキュリティとイノベーションの担い手となり得ます。彼らは非常に聡明で、創造的な問題解決者であり、一般的にスキル向上に関心を持っています。彼らが受けるに値する専門教育でその強みを活用し、より高いソフトウェアセキュリティ基準への取り組みを推進しましょう。詳細については当社のホワイトペーパーをご覧ください。
誰かが飛行機を操縦したい場合、飛行前に訓練、実務経験、健康診断、安全知識、試験を保証する非常に厳格な手順が存在します。この包括的な準備と能力の検証なしに誰かが空を飛び回るなど、誰も想像しようとはしないでしょう。しかし、まさにそれがコードを書く際に日常的に起きているのです。
Matias Madou, Ph.D. セキュリティ専門家、研究者、CTO兼共同設立者(Secure Code Warrior )。Ghent大学でアプリケーションセキュリティの博士号を取得し、静的解析ソリューションに焦点を当てた。その後、米国Fortify社に入社し、開発者が安全なコードを書くことを支援せずに、コードの問題を検出するだけでは不十分であることに気づきました。開発者を支援し、セキュリティの負担を軽減し、お客様の期待を上回る製品を開発することを志すようになった。Team Awesomeの一員としてデスクワークをしていないときは、RSA Conference、BlackHat、DefConなどのカンファレンスでプレゼンテーションをするのが好きである。

Secure Code Warrior 、ソフトウェア開発サイクル全体を通じてコードの安全性を確保し、サイバーセキュリティを最優先とする文化を構築するため、貴社をSecure Code Warrior 。アプリセキュリティ管理者、開発者、CISO、あるいはセキュリティに関わるあらゆる立場の方々に対し、当社が貴社のビジネスにおける不安全なコードに関連するリスクの低減を支援します。
デモを予約するMatias Madou, Ph.D. セキュリティ専門家、研究者、CTO兼共同設立者(Secure Code Warrior )。Ghent大学でアプリケーションセキュリティの博士号を取得し、静的解析ソリューションに焦点を当てた。その後、米国Fortify社に入社し、開発者が安全なコードを書くことを支援せずに、コードの問題を検出するだけでは不十分であることに気づきました。開発者を支援し、セキュリティの負担を軽減し、お客様の期待を上回る製品を開発することを志すようになった。Team Awesomeの一員としてデスクワークをしていないときは、RSA Conference、BlackHat、DefConなどのカンファレンスでプレゼンテーションをするのが好きである。
マティアスは、15年以上のソフトウェアセキュリティの実務経験を持つ研究者・開発者です。フォーティファイ・ソフトウェア社や自身の会社(Sensei Security)などでソリューションを開発してきました。キャリアの中で、Matiasは、商用製品につながる複数のアプリケーションセキュリティ研究プロジェクトを主導し、10件以上の特許を取得しています。また、RSAカンファレンス、Black Hat、DefCon、BSIMM、OWASP AppSec、BruConなどの世界的なカンファレンスで定期的に講演を行っているほか、高度なアプリケーションセキュリティトレーニング(courses )の講師も務めています。
Matiasはゲント大学でコンピュータ工学の博士号を取得し、アプリケーションの内部構造を隠すためのプログラム難読化によるアプリケーションセキュリティを研究しました。


ゴキブリは基本的にあらゆる状況で生き延びられる——核爆発さえも——という有名な説がある。この説はある程度まで正しいものの、その単純な身体構造ゆえに、ゴキブリはその大きさに対して極めて頑強であり、ほとんどの環境下で根絶するのは困難である。
考えてみた…デジタル世界にゴキブリに相当するものがあるとすれば、それはコード内のSQLインジェクション脆弱性(SQLi)だろう。これは20年以上前から知られているセキュリティホールだが、企業は今なお繰り返し被害に遭っている。ターゲット社への広範かつ多大な損害をもたらした攻撃はSQLインジェクションが原因であり、イリノイ州選挙システムへのハッキング事例(20万件の有権者データが流出)も同様だ。この事態を受けFBIは全IT管理者に対し、セキュリティ対策の強化を急ぐよう勧告している。
Impervaのハッカーインテリジェンスイニシアチブ報告書によると、2005年から2011年にかけて報告されたデータ侵害の83%でSQLインジェクション攻撃が使用されていた。今日でも、インジェクション脆弱性はOWASPトップ10における最大の脅威であり続けている。比較的単純な手法だが、決して消えることはない。
同じセキュリティホールが、依然として多くのアプリケーションセキュリティスキャンで検出されるのは滑稽に思える。その仕組みも、阻止方法もわかっているのに、なぜこれが可能なのか?真実は、ソフトウェアセキュリティにはまだ改善の余地が非常に大きいということだ。
ベラコードのソフトウェアセキュリティ現状レポート— 2017年に実施した40万件のアプリケーションスキャンに基づく調査で「憂慮すべき統計」が明らかになった。OWASPトップ10ガイドラインを満たしていたアプリケーションはわずか30%だった。この傾向は過去5年間一貫して続いている。 新たにスキャンしたアプリケーションのほぼ3分の1でSQLインジェクションが検出された。これは広範な問題の存在を証明している。我々は過ちから学んでおらず、CISO(最高情報セキュリティ責任者)は十分なセキュリティ人材を確保するために苦戦しているようだ。一般的に、アプリケーションセキュリティ専門家と開発者の比率は1:100と不十分である。
ソフトウェアセキュリティはなぜ生命維持に不可欠なのか?
専門的なセキュリティ人材が不足していることは周知の事実ですが、開発者が問題が発生した際に即座に対処せず、明らかに脆弱性を導入しないための十分な準備ができていない点にも注意が必要です。 同じVeracodeレポートでは、開発段階の脆弱性全体のうち、文書化された修正措置が存在するのはわずか14.4%であることが明らかになった。つまり、大半の脆弱性は修正措置なしに報告されている。脆弱性の3分の1未満が最初の90日以内に修正され、42%の脆弱性は開発期間中に一度も修正されなかった。
私は常にセキュリティ専門家、CISO、CEOと対話していますが、多くの企業が発見された脆弱性の数(特に誤検知という厄介な問題に加えて)に苛立ち、緩和策を講じられないことに絶望しているため、脆弱性調査を完全に放棄し、ただ祈るように最善を願っているという実態を、経験則から認識しています。
なぜアプリセキュリティの専門家たちはそれを許すのか?
誤解しないでください:アプリセキュリティ担当者はコード内の問題を痛感しています。結局のところ、それが彼らの核心的な能力であり、チームにとって貴重な存在となる所以です。しかし、彼らはしばしば複数の要因によって制約を受けています。
例えば、アプリケーションセキュリティ管理者が問題を発見し、開発者に「コードを修正できますか?」と尋ねます。この重要な質問への回答は組織によって異なりますが、一般的に開発者は機能提供のための厳しいスプリントに追われ、これらの問題を修正する時間的余裕がなく、支援する適切なツールも持っていないのです。 AppSec専門家は自ら脆弱性を特定できるかもしれませんが、現場で修正するためのスキルやアクセス権限を保持していない場合が少なくありません。
また、あらゆる問題には、解決策を見つけ、実装し、テストするプロセスが存在することを認識しておく必要があります。コード内で発見される最も小さな問題でさえ、修正に要する時間は言うまでもなく、必要なリソースは膨大です。 ソフトウェアに導入され得るセキュリティホールは700以上存在し、一人の人間がそれら全てから身を守ることは単純に不可能です。このため、ほとんどの企業はOWASPトップ10に従うことに留まっています。その一方で、開発者は絶えず機能を追加し続け、結果として自身が書くコードに繰り返しセキュリティホールを埋め込んでいます。
解決策は何ですか?
単純な事実は、我々が開発者に安全なプログラミングを成功させるためのツールやトレーニングを提供していないということだ。企業が開発者に適切なセキュリティ知識を習得させることを義務付ける規制は存在せず、悲しい現実として、ほとんどの大学や実習プログラムも若手の開発者に安全なプログラミングを教える準備ができていない。
誰かが飛行機を操縦したい場合、飛行前に訓練、実務経験、健康診断、安全知識、試験を保証する非常に厳格な手順が存在します。この包括的な準備と能力の検証なしに誰かが空を飛び回るなど、誰も想像しようとはしないでしょう。しかし、まさにそれがコードを書く際に日常的に起きているのです。
開発者に安全なコードの書き方を教えることに時間を割かなければならない。しかし、ソフトウェア開発が急速に進み、優秀な開発者とセキュリティ専門家が不足している今日の世界では、これが優先事項となることは決してないようだ。今こそ、この議論を変える時である。
世界経済フォーラムの最新の見出しはこう叫んでいた:「セキュリティなくしてデジタル経済は成り立たない」。付随する内容では、セキュリティの必要性があらゆるデジタル変革戦略の中核的要素であると論じられていた。「セキュリティは企業を保護し、革新を可能にし、新たな製品やサービスを開発させる。セキュリティは防御的な役割だけでなく、企業に戦略的な成長優位性も提供するのだ」
セキュアプログラミングのスキルと成果の向上は、企業に強力なサイバー防御層を提供し、より優れたコードを迅速に作成することを支援します。開発者はセキュリティの専門家になる必要はありませんが、サイバー攻撃に対する最初の防衛ラインとなるよう、前向きかつ実践的に能力を強化される必要があります。 開発者は次世代のセキュリティとイノベーションの担い手となり得ます。彼らは非常に聡明で、創造的な問題解決者であり、一般的にスキル向上に関心を持っています。彼らが受けるに値する専門教育でその強みを活用し、より高いソフトウェアセキュリティ基準への取り組みを推進しましょう。詳細については当社のホワイトペーパーをご覧ください。
誰かが飛行機を操縦したい場合、飛行前に訓練、実務経験、健康診断、安全知識、試験を保証する非常に厳格な手順が存在します。この包括的な準備と能力の検証なしに誰かが空を飛び回るなど、誰も想像しようとはしないでしょう。しかし、まさにそれがコードを書く際に日常的に起きているのです。

ゴキブリは基本的にあらゆる状況で生き延びられる——核爆発さえも——という有名な説がある。この説はある程度まで正しいものの、その単純な身体構造ゆえに、ゴキブリはその大きさに対して極めて頑強であり、ほとんどの環境下で根絶するのは困難である。
考えてみた…デジタル世界にゴキブリに相当するものがあるとすれば、それはコード内のSQLインジェクション脆弱性(SQLi)だろう。これは20年以上前から知られているセキュリティホールだが、企業は今なお繰り返し被害に遭っている。ターゲット社への広範かつ多大な損害をもたらした攻撃はSQLインジェクションが原因であり、イリノイ州選挙システムへのハッキング事例(20万件の有権者データが流出)も同様だ。この事態を受けFBIは全IT管理者に対し、セキュリティ対策の強化を急ぐよう勧告している。
Impervaのハッカーインテリジェンスイニシアチブ報告書によると、2005年から2011年にかけて報告されたデータ侵害の83%でSQLインジェクション攻撃が使用されていた。今日でも、インジェクション脆弱性はOWASPトップ10における最大の脅威であり続けている。比較的単純な手法だが、決して消えることはない。
同じセキュリティホールが、依然として多くのアプリケーションセキュリティスキャンで検出されるのは滑稽に思える。その仕組みも、阻止方法もわかっているのに、なぜこれが可能なのか?真実は、ソフトウェアセキュリティにはまだ改善の余地が非常に大きいということだ。
ベラコードのソフトウェアセキュリティ現状レポート— 2017年に実施した40万件のアプリケーションスキャンに基づく調査で「憂慮すべき統計」が明らかになった。OWASPトップ10ガイドラインを満たしていたアプリケーションはわずか30%だった。この傾向は過去5年間一貫して続いている。 新たにスキャンしたアプリケーションのほぼ3分の1でSQLインジェクションが検出された。これは広範な問題の存在を証明している。我々は過ちから学んでおらず、CISO(最高情報セキュリティ責任者)は十分なセキュリティ人材を確保するために苦戦しているようだ。一般的に、アプリケーションセキュリティ専門家と開発者の比率は1:100と不十分である。
ソフトウェアセキュリティはなぜ生命維持に不可欠なのか?
専門的なセキュリティ人材が不足していることは周知の事実ですが、開発者が問題が発生した際に即座に対処せず、明らかに脆弱性を導入しないための十分な準備ができていない点にも注意が必要です。 同じVeracodeレポートでは、開発段階の脆弱性全体のうち、文書化された修正措置が存在するのはわずか14.4%であることが明らかになった。つまり、大半の脆弱性は修正措置なしに報告されている。脆弱性の3分の1未満が最初の90日以内に修正され、42%の脆弱性は開発期間中に一度も修正されなかった。
私は常にセキュリティ専門家、CISO、CEOと対話していますが、多くの企業が発見された脆弱性の数(特に誤検知という厄介な問題に加えて)に苛立ち、緩和策を講じられないことに絶望しているため、脆弱性調査を完全に放棄し、ただ祈るように最善を願っているという実態を、経験則から認識しています。
なぜアプリセキュリティの専門家たちはそれを許すのか?
誤解しないでください:アプリセキュリティ担当者はコード内の問題を痛感しています。結局のところ、それが彼らの核心的な能力であり、チームにとって貴重な存在となる所以です。しかし、彼らはしばしば複数の要因によって制約を受けています。
例えば、アプリケーションセキュリティ管理者が問題を発見し、開発者に「コードを修正できますか?」と尋ねます。この重要な質問への回答は組織によって異なりますが、一般的に開発者は機能提供のための厳しいスプリントに追われ、これらの問題を修正する時間的余裕がなく、支援する適切なツールも持っていないのです。 AppSec専門家は自ら脆弱性を特定できるかもしれませんが、現場で修正するためのスキルやアクセス権限を保持していない場合が少なくありません。
また、あらゆる問題には、解決策を見つけ、実装し、テストするプロセスが存在することを認識しておく必要があります。コード内で発見される最も小さな問題でさえ、修正に要する時間は言うまでもなく、必要なリソースは膨大です。 ソフトウェアに導入され得るセキュリティホールは700以上存在し、一人の人間がそれら全てから身を守ることは単純に不可能です。このため、ほとんどの企業はOWASPトップ10に従うことに留まっています。その一方で、開発者は絶えず機能を追加し続け、結果として自身が書くコードに繰り返しセキュリティホールを埋め込んでいます。
解決策は何ですか?
単純な事実は、我々が開発者に安全なプログラミングを成功させるためのツールやトレーニングを提供していないということだ。企業が開発者に適切なセキュリティ知識を習得させることを義務付ける規制は存在せず、悲しい現実として、ほとんどの大学や実習プログラムも若手の開発者に安全なプログラミングを教える準備ができていない。
誰かが飛行機を操縦したい場合、飛行前に訓練、実務経験、健康診断、安全知識、試験を保証する非常に厳格な手順が存在します。この包括的な準備と能力の検証なしに誰かが空を飛び回るなど、誰も想像しようとはしないでしょう。しかし、まさにそれがコードを書く際に日常的に起きているのです。
開発者に安全なコードの書き方を教えることに時間を割かなければならない。しかし、ソフトウェア開発が急速に進み、優秀な開発者とセキュリティ専門家が不足している今日の世界では、これが優先事項となることは決してないようだ。今こそ、この議論を変える時である。
世界経済フォーラムの最新の見出しはこう叫んでいた:「セキュリティなくしてデジタル経済は成り立たない」。付随する内容では、セキュリティの必要性があらゆるデジタル変革戦略の中核的要素であると論じられていた。「セキュリティは企業を保護し、革新を可能にし、新たな製品やサービスを開発させる。セキュリティは防御的な役割だけでなく、企業に戦略的な成長優位性も提供するのだ」
セキュアプログラミングのスキルと成果の向上は、企業に強力なサイバー防御層を提供し、より優れたコードを迅速に作成することを支援します。開発者はセキュリティの専門家になる必要はありませんが、サイバー攻撃に対する最初の防衛ラインとなるよう、前向きかつ実践的に能力を強化される必要があります。 開発者は次世代のセキュリティとイノベーションの担い手となり得ます。彼らは非常に聡明で、創造的な問題解決者であり、一般的にスキル向上に関心を持っています。彼らが受けるに値する専門教育でその強みを活用し、より高いソフトウェアセキュリティ基準への取り組みを推進しましょう。詳細については当社のホワイトペーパーをご覧ください。
誰かが飛行機を操縦したい場合、飛行前に訓練、実務経験、健康診断、安全知識、試験を保証する非常に厳格な手順が存在します。この包括的な準備と能力の検証なしに誰かが空を飛び回るなど、誰も想像しようとはしないでしょう。しかし、まさにそれがコードを書く際に日常的に起きているのです。

以下のリンクをクリックして、このリソースのPDFをダウンロードしてください。
Secure Code Warrior 、ソフトウェア開発サイクル全体を通じてコードの安全性を確保し、サイバーセキュリティを最優先とする文化を構築するため、貴社をSecure Code Warrior 。アプリセキュリティ管理者、開発者、CISO、あるいはセキュリティに関わるあらゆる立場の方々に対し、当社が貴社のビジネスにおける不安全なコードに関連するリスクの低減を支援します。
レポートを見るデモを予約するMatias Madou, Ph.D. セキュリティ専門家、研究者、CTO兼共同設立者(Secure Code Warrior )。Ghent大学でアプリケーションセキュリティの博士号を取得し、静的解析ソリューションに焦点を当てた。その後、米国Fortify社に入社し、開発者が安全なコードを書くことを支援せずに、コードの問題を検出するだけでは不十分であることに気づきました。開発者を支援し、セキュリティの負担を軽減し、お客様の期待を上回る製品を開発することを志すようになった。Team Awesomeの一員としてデスクワークをしていないときは、RSA Conference、BlackHat、DefConなどのカンファレンスでプレゼンテーションをするのが好きである。
マティアスは、15年以上のソフトウェアセキュリティの実務経験を持つ研究者・開発者です。フォーティファイ・ソフトウェア社や自身の会社(Sensei Security)などでソリューションを開発してきました。キャリアの中で、Matiasは、商用製品につながる複数のアプリケーションセキュリティ研究プロジェクトを主導し、10件以上の特許を取得しています。また、RSAカンファレンス、Black Hat、DefCon、BSIMM、OWASP AppSec、BruConなどの世界的なカンファレンスで定期的に講演を行っているほか、高度なアプリケーションセキュリティトレーニング(courses )の講師も務めています。
Matiasはゲント大学でコンピュータ工学の博士号を取得し、アプリケーションの内部構造を隠すためのプログラム難読化によるアプリケーションセキュリティを研究しました。
ゴキブリは基本的にあらゆる状況で生き延びられる——核爆発さえも——という有名な説がある。この説はある程度まで正しいものの、その単純な身体構造ゆえに、ゴキブリはその大きさに対して極めて頑強であり、ほとんどの環境下で根絶するのは困難である。
考えてみた…デジタル世界にゴキブリに相当するものがあるとすれば、それはコード内のSQLインジェクション脆弱性(SQLi)だろう。これは20年以上前から知られているセキュリティホールだが、企業は今なお繰り返し被害に遭っている。ターゲット社への広範かつ多大な損害をもたらした攻撃はSQLインジェクションが原因であり、イリノイ州選挙システムへのハッキング事例(20万件の有権者データが流出)も同様だ。この事態を受けFBIは全IT管理者に対し、セキュリティ対策の強化を急ぐよう勧告している。
Impervaのハッカーインテリジェンスイニシアチブ報告書によると、2005年から2011年にかけて報告されたデータ侵害の83%でSQLインジェクション攻撃が使用されていた。今日でも、インジェクション脆弱性はOWASPトップ10における最大の脅威であり続けている。比較的単純な手法だが、決して消えることはない。
同じセキュリティホールが、依然として多くのアプリケーションセキュリティスキャンで検出されるのは滑稽に思える。その仕組みも、阻止方法もわかっているのに、なぜこれが可能なのか?真実は、ソフトウェアセキュリティにはまだ改善の余地が非常に大きいということだ。
ベラコードのソフトウェアセキュリティ現状レポート— 2017年に実施した40万件のアプリケーションスキャンに基づく調査で「憂慮すべき統計」が明らかになった。OWASPトップ10ガイドラインを満たしていたアプリケーションはわずか30%だった。この傾向は過去5年間一貫して続いている。 新たにスキャンしたアプリケーションのほぼ3分の1でSQLインジェクションが検出された。これは広範な問題の存在を証明している。我々は過ちから学んでおらず、CISO(最高情報セキュリティ責任者)は十分なセキュリティ人材を確保するために苦戦しているようだ。一般的に、アプリケーションセキュリティ専門家と開発者の比率は1:100と不十分である。
ソフトウェアセキュリティはなぜ生命維持に不可欠なのか?
専門的なセキュリティ人材が不足していることは周知の事実ですが、開発者が問題が発生した際に即座に対処せず、明らかに脆弱性を導入しないための十分な準備ができていない点にも注意が必要です。 同じVeracodeレポートでは、開発段階の脆弱性全体のうち、文書化された修正措置が存在するのはわずか14.4%であることが明らかになった。つまり、大半の脆弱性は修正措置なしに報告されている。脆弱性の3分の1未満が最初の90日以内に修正され、42%の脆弱性は開発期間中に一度も修正されなかった。
私は常にセキュリティ専門家、CISO、CEOと対話していますが、多くの企業が発見された脆弱性の数(特に誤検知という厄介な問題に加えて)に苛立ち、緩和策を講じられないことに絶望しているため、脆弱性調査を完全に放棄し、ただ祈るように最善を願っているという実態を、経験則から認識しています。
なぜアプリセキュリティの専門家たちはそれを許すのか?
誤解しないでください:アプリセキュリティ担当者はコード内の問題を痛感しています。結局のところ、それが彼らの核心的な能力であり、チームにとって貴重な存在となる所以です。しかし、彼らはしばしば複数の要因によって制約を受けています。
例えば、アプリケーションセキュリティ管理者が問題を発見し、開発者に「コードを修正できますか?」と尋ねます。この重要な質問への回答は組織によって異なりますが、一般的に開発者は機能提供のための厳しいスプリントに追われ、これらの問題を修正する時間的余裕がなく、支援する適切なツールも持っていないのです。 AppSec専門家は自ら脆弱性を特定できるかもしれませんが、現場で修正するためのスキルやアクセス権限を保持していない場合が少なくありません。
また、あらゆる問題には、解決策を見つけ、実装し、テストするプロセスが存在することを認識しておく必要があります。コード内で発見される最も小さな問題でさえ、修正に要する時間は言うまでもなく、必要なリソースは膨大です。 ソフトウェアに導入され得るセキュリティホールは700以上存在し、一人の人間がそれら全てから身を守ることは単純に不可能です。このため、ほとんどの企業はOWASPトップ10に従うことに留まっています。その一方で、開発者は絶えず機能を追加し続け、結果として自身が書くコードに繰り返しセキュリティホールを埋め込んでいます。
解決策は何ですか?
単純な事実は、我々が開発者に安全なプログラミングを成功させるためのツールやトレーニングを提供していないということだ。企業が開発者に適切なセキュリティ知識を習得させることを義務付ける規制は存在せず、悲しい現実として、ほとんどの大学や実習プログラムも若手の開発者に安全なプログラミングを教える準備ができていない。
誰かが飛行機を操縦したい場合、飛行前に訓練、実務経験、健康診断、安全知識、試験を保証する非常に厳格な手順が存在します。この包括的な準備と能力の検証なしに誰かが空を飛び回るなど、誰も想像しようとはしないでしょう。しかし、まさにそれがコードを書く際に日常的に起きているのです。
開発者に安全なコードの書き方を教えることに時間を割かなければならない。しかし、ソフトウェア開発が急速に進み、優秀な開発者とセキュリティ専門家が不足している今日の世界では、これが優先事項となることは決してないようだ。今こそ、この議論を変える時である。
世界経済フォーラムの最新の見出しはこう叫んでいた:「セキュリティなくしてデジタル経済は成り立たない」。付随する内容では、セキュリティの必要性があらゆるデジタル変革戦略の中核的要素であると論じられていた。「セキュリティは企業を保護し、革新を可能にし、新たな製品やサービスを開発させる。セキュリティは防御的な役割だけでなく、企業に戦略的な成長優位性も提供するのだ」
セキュアプログラミングのスキルと成果の向上は、企業に強力なサイバー防御層を提供し、より優れたコードを迅速に作成することを支援します。開発者はセキュリティの専門家になる必要はありませんが、サイバー攻撃に対する最初の防衛ラインとなるよう、前向きかつ実践的に能力を強化される必要があります。 開発者は次世代のセキュリティとイノベーションの担い手となり得ます。彼らは非常に聡明で、創造的な問題解決者であり、一般的にスキル向上に関心を持っています。彼らが受けるに値する専門教育でその強みを活用し、より高いソフトウェアセキュリティ基準への取り組みを推進しましょう。詳細については当社のホワイトペーパーをご覧ください。
誰かが飛行機を操縦したい場合、飛行前に訓練、実務経験、健康診断、安全知識、試験を保証する非常に厳格な手順が存在します。この包括的な準備と能力の検証なしに誰かが空を飛び回るなど、誰も想像しようとはしないでしょう。しかし、まさにそれがコードを書く際に日常的に起きているのです。
目次
Matias Madou, Ph.D. セキュリティ専門家、研究者、CTO兼共同設立者(Secure Code Warrior )。Ghent大学でアプリケーションセキュリティの博士号を取得し、静的解析ソリューションに焦点を当てた。その後、米国Fortify社に入社し、開発者が安全なコードを書くことを支援せずに、コードの問題を検出するだけでは不十分であることに気づきました。開発者を支援し、セキュリティの負担を軽減し、お客様の期待を上回る製品を開発することを志すようになった。Team Awesomeの一員としてデスクワークをしていないときは、RSA Conference、BlackHat、DefConなどのカンファレンスでプレゼンテーションをするのが好きである。

Secure Code Warrior 、ソフトウェア開発サイクル全体を通じてコードの安全性を確保し、サイバーセキュリティを最優先とする文化を構築するため、貴社をSecure Code Warrior 。アプリセキュリティ管理者、開発者、CISO、あるいはセキュリティに関わるあらゆる立場の方々に対し、当社が貴社のビジネスにおける不安全なコードに関連するリスクの低減を支援します。
デモを予約するダウンロード



%20(1).avif)
.avif)
