ペンテストとは何ですか?

ソフトウェアにはバグがあることが保証されています。ソフトウェアには何千行ものコードが存在する可能性があり、人間が誤りを犯す可能性があるため、少なくともそのうちの一部は全体が意図したとおりにならないことを意味します。ソフトウェア開発ライフサイクルは、定期的にテストすることでこれらの問題を最小限に抑えるように設計されたプロセスです。

問題は、テストは開発者によって行われることが多く、開発者は何かをコーディングする方法を学んでいても、安全なコーディングの実践を学んでいない可能性があることです。徹底的にテストされたシステムであっても、外部の観察者に見てもらい、新しい視点を取り入れることで、新しい問題を特定するのに役立ちます。

これを行う一般的な方法は侵入テスト (通常はペネトレーション テストと略されます) を介して行われます。これには、プロの倫理的ハッカーであるペンテスターに​​システムを検査してもらい、セキュリティ上の問題を発見してもらうことが含まれます。

ヒント:「ペンテスト」ではなく、「ペンテスト」と「ペンテスター」です。ペンテスターはペンをテストしません。「ペンテスト」は「ペンテスト」よりも若干許容されますが、一般的には避けるべきです。

ペンテストの目標

侵入テストの目標は、テスト対象のシステム内のすべてのセキュリティ脆弱性を特定し、クライアントに報告することです。ただし、通常、エンゲージメントにはコストに基づいてある程度の期間制限があります。企業が社内に侵入テスト担当者または侵入テスト チームを持っている場合、彼らはその会社で永続的に働く可能性があります。それでも、それに見合う規模の企業の多くは、テストが必要なシステムの幅広いポートフォリオを持っています。これには、販売されている製品と会社のビジネス システムの両方が含まれます。

そのため、1 つのことのテストにすべての時間を費やすことはできません。多くの企業は、外部の侵入テスト会社に委託して実施することを好みます。これもコストに基づいて期間制限があります。このコストは、ペネトレーションテストが非常に手作業のプロセスであり、スキルセットが不足しているという事実によって決まります。

通常、侵入テストは特定の時間枠に限定されます。これは、問題のターゲットと、すべてを発見したと確信できるまでにどれくらいの時間がかかるかに基づいて行われます。脆弱性が発見されるまでのタイムラインは、一般にベルカーブです。ペンテスターがアプリケーションを調べても、すぐに見つかるものはそれほど多くありません。そうすれば、発見の大部分は、漸減する前の特定の時間スケール内で達成できます。ある時点で、他に見つからない可能性がある場合、検索により多くの時間を費やすコストは価値がありません。

場合によっては、推奨時間帯の見積もり価格さえ高すぎる場合があります。この場合、テストは「タイムボックス化」される可能性があります。ここでは、クライアントは推奨されているほどテストを行っていないことを受け入れますが、ペネトレーションテスターに​​は限られた時間枠で最善を尽くしてもらいたいと考えています。通常、これはレポートに警告として含まれます。

手動プロセス

セキュリティ テストを自動的に実行するツールがいくつかあります。これらは役立つ可能性があります。ただし、多くの場合、偽陽性率と偽陰性率が高くなります。これは、包括的ではない可能性があることを承知の上で、問題の検証に時間を費やす必要があることを意味します。これらのツールのほとんどは、ソフトウェアの既知の脆弱なバージョンや既知の脆弱な機能など、特定の指標を探します。ただし、これらを実際の問題にしない、または実際に軽減する方法はたくさんあります。

セキュリティの脆弱性は、一見無害に見える多数の部分から発生することがあります。これを特定する最良の方法は、人間の手作業による作業です。侵入テスターはツールを使用しますが、結果を解釈し、手動で検証し、独立した手動アクションを実行する方法を知っています。この手動の作業により、侵入テストと脆弱性スキャンまたは脆弱性評価が分離されます。

侵入テストの種類

通常、侵入テストには、展開される製品全体のテストが含まれます。理想的には、これは実際の運用環境で発生します。ただし、これは必ずしも実用的であるとは限りません。まず、侵入テストによってターゲットがオフラインになる可能性があるという懸念があります。一般に、このような懸念には基本的に根拠がありません。通常、侵入テストでは大量のネットワーク トラフィックが生成されません。おそらく、数人の追加アクティブ ユーザーに相当します。また、侵入テスターは、特に実稼働環境では、サービス妨害タイプの問題を意図的にテストすることはありません。代わりに、通常、サービス拒否の問題の疑いを報告して、クライアントが自分で調査できるようにします。

さらに、システムがインターネットに接続されている場合、本物のブラックハットハッカーとそのボットによる「無料侵入テスト」が常に行われることは注目に値します。運用環境を避けるもう 1 つの理由は、ライブ ユーザー データに関するプライバシーの問題です。ペンテスターは NDA と契約に基づいた倫理的なハッカーですが、テスト環境が存在し、同様のものであれば、それを使用できます。

ヒント:「無料侵入テスト」とは、インターネット上でブラックハットからの攻撃を受けていることを冗談めかして表現したものです。

侵入テストは、基本的にあらゆるテクノロジー システムに対して実行できます。Web サイトとネットワーク インフラストラクチャは、最も一般的なタイプのテストです。API テスト、「シック クライアント」テスト、モバイル テスト、ハードウェア テストなども利用できます。

主題の変奏曲

現実的には、フィッシング、OSINT、レッドチーム演習は関連していますが、若干異なります。おそらくフィッシングの脅威についてはご存知でしょう。一部のテストには、従業員がフィッシングメールにどのように反応するかを確認するテストが含まれます。ユーザーがフィッシングとどのようにやり取りするか、またはしないかを追跡することで、将来のフィッシング トレーニングを調整する方法を学ぶことができます。

OSINTはオープンソースインテリジェンスの略です。OSINT テストは、貴重なデータがどのように収集され、それがどのように使用されるかを確認するために、公開されている情報をスクレイピングすることを中心に展開されます。これには、LinkedIn や企業 Web サイトなどの場所から従業員のリストを生成することがよく含まれます。これにより、攻撃者はスピア フィッシング攻撃の格好のターゲットとなる可能性のある幹部を特定でき、個々の受信者に合わせたフィッシングが可能になります。

レッドチームの取り組みは通常、より詳細なものであり、他のコンポーネントの一部またはすべてが関与する場合があります。物理的なセキュリティとセキュリティ ポリシーの順守のテストも含まれる場合があります。政策面では、これにはソーシャル エンジニアリングが関係します。それはあなたを説得して建物に進入させようとしているのです。これは、喫煙エリアでぶらぶらして、一服した後に喫煙者と一緒に戻ってくるのと同じくらい簡単です。

役人を装ったり、コーヒーカップのトレイを持ちながら誰かにドアを開けてもらうように頼んだりすることもできます。物理的なセキュリティの面では、物理的な侵入を試みたり、カメラのカバー範囲やロックの品質などをテストしたりすることも含まれる場合があります。レッドチームの取り組みには通常、複数の人々が関与し、通常のペネトレーションテストよりもはるかに長い時間スケールで実行される可能性があります。

レッドチーム

レッドチームの演習は、標準的なペンテストよりも倫理的ではないように思えるかもしれません。テスターは疑いを持たない従業員を積極的に食い物にしています。重要なのは、企業のリーダー、通常は取締役会レベルからの許可を得ているということです。これが、レッドチームのメンバーが実際に侵入しようとしても問題がない唯一の理由です。ただし、暴力的な行為は何も許可されません。レッドチームの演習では、警備員を傷つけたり制圧したり、迂回したり騙したりすることは決してありません。

レッドチームのメンバーが逮捕されるのを防ぐために、彼らは通常、承認した取締役会メンバーの署名が入った契約書を携帯します。捕まった場合は、許可を得ていたことを証明するために使用できます。もちろん、これがダブルブラフとして使用されることもあります。レッドチームの選手は、本物と偽物の 2 枚の許可証を持ち歩くことができます。

逮捕されると、彼らはまず偽の許可証を渡し、それが合法でない場合でも警備員にそれが合法であると説得できるかどうかを確認します。そのために、多くの場合、会社の取締役会の実名が使用されますが、カバーストーリーを確認するために説明を受けた別のレッドチームメンバーにつながる確認用の電話番号が含まれます。もちろん警備員に見破られれば本物の許可証が渡される。ただし、これは非常に疑わしいものとして扱われる可能性があります。

レッドチームの捕獲方法によっては、彼らが彼らを捕まえた個別の警備員を回避したと仮定して、テストを続行できる可能性があります。ただし、テスターの身元が「吹き飛ばされ」、基本的に今後の対面テストから除外される可能性があります。この時点で、セキュリティに通知するかどうかに関係なく、別のチームメンバーが交代する可能性があります。

結論

侵入テストは、サイバー セキュリティの専門家がコンピュータ システムのセキュリティをテストするよう依頼される作業です。テストでは、脆弱性の存在を手動で検索して確認します。この一環として自動ツールが使用される場合があります。テストの最後には、見つかった問題の詳細と修復に関するアドバイスを記載したレポートが提供されます。

このレポートはツールからの自動出力だけではなく、すべて手動でテストおよび検証されていることが重要です。あらゆるコンピュータ システム、ハードウェア、ネットワーク、アプリケーション、またはデバイスを侵入テストすることができます。それぞれに必要なスキルは異なりますが、多くの場合補完的です。



Leave a Comment

Google Chrome に常に完全な URL を表示させる方法

Google Chrome に常に完全な URL を表示させる方法

Chrome では、デフォルトでは完全な URL が表示されません。この詳細はあまり気にしないかもしれませんが、何らかの理由で完全な URL を表示する必要がある場合は、Google Chrome でアドレス バーに完全な URL を表示する方法の詳細な手順をご覧ください。

古いRedditを取り戻す方法

古いRedditを取り戻す方法

Reddit は 2024 年 1 月に再びデザインを変更しました。再デザインはデスクトップ ブラウザ ユーザーに表示され、リンクを提供しながらメイン フィードを絞り込みます。

Googleレンズを使って教科書のコンテンツをコピーする方法

Googleレンズを使って教科書のコンテンツをコピーする方法

本からお気に入りの引用を Facebook に入力するのは時間がかかり、間違いも多いです。Google レンズを使用して書籍からデバイスにテキストをコピーする方法を学びます。

ChromeでサーバーDNSアドレスが見つからない問題を修正

ChromeでサーバーDNSアドレスが見つからない問題を修正

Chrome で作業しているときに、特定の Web サイトにアクセスできず、「Fix Server DNS アドレスが Chrome で見つかりませんでした」というエラーが表示されることがあります。この問題を解決する方法は次のとおりです。

Google Homeでリマインダーを作成する方法に関するクイックガイド

Google Homeでリマインダーを作成する方法に関するクイックガイド

リマインダーは常に Google Home の大きなハイライトでした。彼らは確かに私たちの生活を楽にしてくれます。重要な用事を見逃さないように、Google Home でリマインダーを作成する方法を簡単に説明します。

Netflix: パスワードを変更する

Netflix: パスワードを変更する

好みのブラウザまたは Android アプリを使用して、Netflix ストリーミング ビデオ サービスのパスワードを変更する方法。

Chromebook で検索履歴と閲覧履歴を削除する方法

Chromebook で検索履歴と閲覧履歴を削除する方法

ブラウザの履歴を削除すると、特に共有または公開の Chromebook を使用している場合、閲覧アクティビティの機密性を保つことができます。このチュートリアルでは、個人、職場、学校の Chromebook でブラウザ履歴を削除する手順について説明します。

Googleスプレッドシートで行と列を入れ替える方法

Googleスプレッドシートで行と列を入れ替える方法

スプレッドシートを設定した後で、別のレイアウトの方がうまく機能することに気づいたことがありますか。Google スプレッドシートでは、行を列に、またはその逆に簡単に変換して、データを自由に表示できます。

最も人気のあるビデオ ゲーム ジャンル 7

最も人気のあるビデオ ゲーム ジャンル 7

誕生以来、ゲーマーが楽しめるようにさまざまなスタイルのビデオ ゲームが作成されてきました。アクション指向のもの、頭を使ってパズルを解いたり戦略を立てたいもの、またはカジュアルなゲームプレイでリラックスしたものなど、誰もが楽しくプレイできるものがそこにはあります。

Facebookメッセンジャーの通知が消えない?それを修正する8つの方法

Facebookメッセンジャーの通知が消えない?それを修正する8つの方法

Facebook Messenger の通知は、未読のメッセージをすべて読み終え​​ると消えるはずです。ただし、通知が引き続き表示され、何をしても消えない場合は、問題を解決するために適用できる解決策がいくつかあります。