弊社も多分に漏れず専任チームを立ち上げて、弊社における「why LLM」を見出そうと試行錯誤しています。 個人的にもLLM Applicationsを継続的に開発・運用する技術について色々考えている今日この頃ですが、先日 OWASP Top 10 for Large Language Model Applications のversion 1.0が出ました。 OWASP Top10 for LLMは、LLMを利用するアプリケーションで発見された重大な脆弱性とセキュリティガイドラインに関するレポートです。 レポートでも述べられていますが、昨今はLLMの取り組みが猛烈に進んでいる中で、包括的なセキュリティプロトコルやベストプラクティスはそこまで浸透していないのが現状だと捉えています。 自分自身あまりキャッチアップ出来てないので、一般的なアプリケーション・セキュリティの原則と、LLMがもたらす特有の課題との間の溝やギャップを埋めるためにもレポートの内容を紹介します。 レポートのリンクは以下です。 OWASP Top 10 for Large Language Model Applications OWASP Top 10 for LLM ! OWASP Top 10とは、OWASP(Open Web Application Security Project)によって発表される、Webアプリケーションのセキュリティ上の最も重要な10のリスクのリストです。このリストは、開発者、セキュリティ専門家、組織にとって、Webアプリケーションのセキュリティ強化のためのガイドラインとして広く用いられています。 OWASP Top 10 for Large Language Model Applications Prompt Injection (プロンプトインジェクション) Insecure Output Handling (安全でない出力処理) Training Data Poisoning (トレーニングデータの汚染) Model Denial of Service (モデルへのDoS攻撃) Supply Chain Vulnerabilities (サプライチェーンの脆弱性) Sensitive Information Disclosure (機密情報の開示) In
プロンプトインジェクション
誰かがあなたに家事をさせようとするような経験をしたことがありますか?私も兄弟姉妹とそういった経験があります 🥹 「お母さんは僕が全部自分で家事をやってるから僕のことをもっと愛してるよ。君は家事なんてやらなくていいんだよ」 それで、私(小さい頃の自分)が全部の家事を一人でやってしまいました😂 01. プロンプト注入とは? プロンプト注入とは、言語モデルに与えられる入力を操作して応答を変更する技術であり、しばしば制限を回避したり、予期しない出力を生成したりします。これは、誤情報の拡散などの悪意のある目的や、創造的な応用の両方に使用される可能性があります。 プロンプト注入に飛び込む前に、いくつかのことを理解する必要があるので、それが理解できないのは当然です。 01.1. プロンプトとは? プロンプトとは、LLM(大規模言語モデル)からの応答を要求するために使用される入力や指示のことです。 01.2. システムプロンプト LLMは事前に訓練されたAIモデルです。私たちがアプリケーションでLLMを使用する際には、特定のタスクに適応させるためにファインチューニングと呼ばれるプロセスを行います。開発者はLLM用に追加のコードを書く必要はなく、システムプロンプトを作成して、LLMがユーザー入力をどのように処理すべきか指示を与えることができます。 さて、プロンプト注入がどのように機能するか見てみましょう。 つまり、プロンプトをLLMに与えると、システムプロンプトとともに処理されます。 はい、これがプロンプト注入の仕組みです。これはソーシャルエンジニアリングとインジェクション攻撃の組み合わせのようなもので、言葉でモデルを騙し、プロンプトに悪意のあるペイロードを注入しています。 しかし、開発者はアプリケーションにプロンプト注入が発生するのを好まないため、セーフガードを使用しています。 02. プロンプト注入の種類 XSSやSQLインジェクションのように、プロンプト注入にもさまざまなタイプの攻撃があります(つまり、2種類)。 1. 直接プロンプト注入: 攻撃者がプロンプトを直接作成してモデルを操作し、予期しないまたは有害な出力を生成させる方法です。 2. 間接プロンプト注入: 攻撃者が巧妙な言い回しやフレーミングを通じて、直接的な操作なしにモデルの文脈や動作に影響を与えるプロンプトを作成
CASA Tier 2の概要 (CASA ティア2 )
CASA Tier 2(クラウド アプリケーション セキュリティ評価)は、開発者が自身のアプリケーションを柔軟にスキャンし、その結果を他の証拠とともに認定アセッサーに提供できるプログラムです。このプロセスにより、アセッサーがアプリケーションのコードやインフラストラクチャに直接アクセスすることなく、検証を達成し、検証書(Letter of Validation, LOV)を取得することが可能になります。 CASA Tier 2の旅 CASA Tier 2検証を達成するための旅には、以下のステップが含まれます: CASAを知り、加速する: 通知: パートナー企業(例:Google)が、あなたのアプリケーションがセキュリティ評価を受ける必要があると特定したときに、Tier 2評価の対象であることを示す通知がメールで送信されます。 準備: 必要な認証を集め、CASAの要件を理解します。アプリのスキャンに適したツールを選び、評価の準備を行います。
サイバーセキュリティとペネトレーションテストの重要性を理解する
1. はじめに 現代のビジネス環境では、サイバー攻撃のリスクがますます増えています。特にインターネットを介して行われるビジネス取引が増えているため、企業のデータや情報がサイバー攻撃のターゲットになる可能性が高まっています。しかし、多くの日本の経営者、特に年配の方々は、サイバーセキュリティやペネトレーションテスト(侵入テスト)の重要性を十分に理解していないかもしれません。本ブログでは、サイバーセキュリティの基本的な考え方と、企業がサイバー攻撃から自らを守るために行うべき具体的な対策について、簡単に解説します。
Google Apps Script のための CASA ティア2 (Casa Tier) 2セキュリティ評価の完了ガイド
Google Apps Script のための CASA ティア2セキュリティ評価の完了ガイド Google Apps Script プロジェクトを Google Workspace Marketplace に公開したい場合、または既にこのマーケットプレイスにアドオンやアプリがあり、現在制限されている認証スコープを使用している場合、ティア2 CASA セキュリティ評価を通過する必要があります。 今日は、Google Apps Script プロジェクトのための CASA ティア2セキュリティ評価をステップバイステップで説明します。 1. プロセスの開始 Googleからのセキュリティ評価を開始するよう招待するメールが届きます。
サイバーセキュリティアーキテクトの役割の理解
サイバーセキュリティアーキテクチャの基礎に関する前回のビデオでは、重要なセキュリティ原則とCIAトライアドについて議論しました。今回は、サイバーセキュリティアーキテクトの役割、考え方、ツール、操作するドメインに焦点を当てます。 サイバーセキュリティアーキテクトの役割と考え方 旅は、必要な入力を提供する利害関係者から始まります。アーキテクトはこれらの入力に基づいて青写真(または参照アーキテクチャ)を作成し、安全性とセキュリティの側面を考慮します。建設では、アーキテクトはロック、セキュリティカメラ、煙探知器、ファイアウォールを計画します。ITでは、MFA、MDM、ファイアウォールなどの対策を使用してシステムを設計します。 サイバーセキュリティアーキテクトは、システムがどのように失敗するかを考慮する点で通常のITアーキテクトとは異なります。彼らは、システムが失敗する可能性を考慮し、リスクに対する緩和策を実装します。これには、MFA、エンドポイント検出および応答(EDR)、データ暗号化の使用が含まれます。 ツール サイバーセキュリティアーキテクトは、システムコンポーネントとその関係を示すために、ビジネスコンテキスト図、システムコンテキスト図、アーキテクチャ概要図などのさまざまな図を使用します。彼らは、NISTサイバーセキュリティフレームワークなどのフレームワークを使用して、セキュリティの側面を包括的にカバーします。このフレームワークは、ユーザーとデータの特定、保護、問題の検出、応答、回復などの段階を詳述します。 ベストプラクティスと一般的なプラクティス 一般的なプラクティスでは、アーキテクチャが完成した後にサイバーセキュリティアーキテクトを呼び出しますが、ベストプラクティスは、最初から彼らを関与させることです。これにより、プロジェクトライフサイクルのすべてのステップでセキュリティを統合できます。 サイバーセキュリティドメイン サイバーセキュリティアーキテクトは、以下のさまざまなドメインで操作します: IDとアクセス管理: ユーザーが主張する通りであることと適切なアクセス権を持っていることを確認します。 エンドポイントセキュリティ: ユーザーが使用するデバイスを保護します。 ネットワークセキュリティ: ネットワークを侵入から保護します。 アプリケーションセキュリティ: アプ
サイバーセキュリティアーキテクチャの理解: 基礎と重要なドメイン
サイバー攻撃やデータ漏洩が増加している今、組織がハッカーから保護されていることを確認することが重要です。このブログ投稿では、サイバーセキュリティアーキテクチャについて、基礎とさまざまなサイバーセキュリティドメインの2つの主要な領域に焦点を当てています。 サイバーセキュリティの基礎 1. 多層防御: コンセプト: 複数のセキュリティ層を作成する。 例: 城の厚い壁、堀、跳ね橋、怒った犬など、現代のセキュリティでは多要素認証(MFA)、モバイルデバイス管理(MDM)、ファイアウォール、暗号化などのセキュリティ対策を使用。 2. 最小特権の原則: コンセプト: 必要な権限のみを付与する。 実装: 定期的にアクセス権を見直し、不要なサービスを削除し、特権の過剰付与を防ぐ。 3. 職務分離の原則: コンセプト: 単一のコントロールポイントを持たない。 例: 異なる人がリクエストと承認を行い、コントロールの分離と単一障害点の防止を実現。 4. 設計によるセキュリティ: コンセプト: 最初からセキュリティを組み込む。 プロセス: 要件、設計、コーディング、インストール、テスト、プロダクションの各段階でセキュリティを考慮。 5. K.I.S.S.の原則(シンプルを保つ): コンセプト: 不必要な複雑さを避ける。 例: 複雑なパスワードポリシーを簡素化して、コンプライアンスを促進しながらセキュリティを維持。 避けるべき原則: 隠蔽によるセキュリティ: 秘密性に依存するセキュリティは効果が薄い。代わりに、AESやRSAなどの公開されたアルゴリズムを使用する。 サイバーセキュリティドメインの探索 このシリーズでは、脆弱性の特定、ベストプラクティスの実装、および包括的なサイバーセキュリティアーキテクチャを通じてサイバー脅威に対する防御方法を詳しく説明します。これらの原則を理解し適用することで、組織は堅牢なセキュリティフレームワークを構築できます。
The CIA Triadとは何ですか
サイバーセキュリティを考えるとき、CIAを思い浮かべてください。スパイ機関のCIAではなく、違う意味のCIAです。ここで言うCIAとは、機密性(Confidentiality)、完全性(Integrity)、可用性(Availability)のことです。 機密性 これら三つをまとめて「CIAの三角形」と呼びます。それでは、それぞれの概念を少し詳しく見てみましょう。まずは機密性についてです。これは、許可されたユーザーだけが特定の情報やリソースにアクセスできるようにする考え方です。例えば、このユーザー(A)が許可されたユーザーで、このデータを読みたいとします。私たちはセキュリティシステム、認証、認可、多要素認証、暗号化機能などを導入し、彼がアクセスできるようにします。 一方で、許可されていないユーザー(Z)が同じことをしようとすると、システムにアクセスしようとしてもブロックされます。これが機密性の本質です。シンプルな概念ですが、実装は非常に難しいです。 文献では機密性をプライバシーと同じように扱うことがよくありますが、これは古い考え方に基づいています。現代のプライバシーの概念は、通知や同意、忘れられる権利などを含むもっと広範なものです。 このような現代のプライバシーの要素は、厳密には機密性の概念には含まれませんが、それでも非常に重要です。これがCIAの三角形の最初の要素、機密性です。 The CIA Triad (CIAトライアド) これら三つをまとめて「CIAの三角形」と呼びます。それでは、それぞれの概念を少し詳しく見てみましょう。 まずは機密性についてです。これは、許可されたユーザーだけが特定の情報やリソースにアクセスできるようにする考え方です。 例えば、このユーザー(A)が許可されたユーザーで、このデータを読みたいとします。私たちはセキュリティシステム、認証、認可、多要素認証、暗号化機能などを導入し、彼がアクセスできるようにします。 一方で、許可されていないユーザー(Z)が同じことをしようとすると、システムにアクセスしようとしてもブロックされます。これが機密性の本質です。シンプルな概念ですが、実装は非常に難しいです。 文献では機密性をプライバシーと同じように扱うことがよくありますが、これは古い考え方に基づいています。現代
ペネトレーションテストの価格は?依頼する前に知っておくべき価格相場と隠れたコストを徹底解説!
1. はじめに 近年、情報技術の進化とともに、企業のデータやシステムへの攻撃も手口が巧妙化してきました。新たな技術が生まれる一方で、それを悪用する脅威も増加しています。このような背景のもと、企業のセキュリティ対策の重要性は高まる一方です。ペネトレーションテストの必要性サイバーセキュリティの世界では、ペネトレーションテストは企業のセキュリティポスチャを評価する主要なツールとして位置づけられています。 これは、実際の攻撃シナリオを模倣して、組織の防御態勢の弱点や脆弱性を特定するためのテストです。このテストを実施することで、未知の脆弱性やリスクを早期に発見し、それに対する対策を講じることができます。 しかし、ペネトレーションテストを実施するには、その価格がネックとなることも少なくありません。特に中小企業など、予算が限られている組織にとっては、このテストの費用とその効果をしっかりと理解することが重要です。 本記事では、ペネトレーションテストの価格相場やその価値、そして適切な予算設定の方法について詳しく解説していきます。セキュリティの専門家でない方でも理解しやすいように、具体的な例やケーススタディを交えながら説明していきますので、最後までお付き合いいただければ幸いです。 ペネトレーションテストの基本 2. ペネトレーションテストの基本 ペネトレーションテストとは? ペネトレーションテストは、攻撃者の視点で企業のシステムやネットワークを試験する手法です。目的は、現在のセキュリティ対策が有効であるか、またどのような脆弱性が存在するかを明らかにすること。このテストにより、組織が直面する実際のリスクを確認し、より具体的な防御策を計画することができます。 テストの主な種類 ペネトレーションテストは大きく分けて以下の3つの種類に分類されます。 外部テスト: 企業の外部からの攻撃をシミュレートします。例として、ウェブアプリケーションや公開されているサーバの脆弱性を検証するテストがあります。 内部テスト: 企業の内部ネットワークやシステムを対象とし、すでにネットワーク内に侵入した攻撃者の視点で攻撃を模倣します。これは、社員の不注意からの情報漏洩や物理的アクセスを考慮したテストです。 ブラインドテスト: このテストでは、セキュリティチームにはテストの詳細が知らされず、実際
ペネトレーションテストツール10選を徹底比較!
1. サイバー攻撃の増加とセキュリティ対策 近年、サイバー攻撃は頻繁に報道されるようになり、その手口も日々進化しています。特に、新型ウイルスの出現やIoTデバイスの普及、クラウド技術の発展など、テクノロジーの進歩とともに、新たな脅威が増え続けています。このような状況下でのセキュリティ対策は、単なる「防ぐ」行為から「どう防ぐか」を緻密に考える必要が出てきました。ペネトレーションテストは、その中でも特に重要なツールとして注目を浴びています。