Skip to main content

Corgeaの取り組み

Corgeaでは、セキュリティとプライバシーがすべての活動の中心にあります。優れたソフトウェアは、ユーザーのプライバシーとセキュリティを維持しつつ価値を提供すると私たちは信じています。これらの原則への私たちのコミットメントは揺るぎなく、業務のあらゆる側面に明らかです。私たちはユーザーデータの保護と最高レベルの信頼性確保を基盤にした設計を行っています。 Corgeaのチームは、FedRamp、ITAR、HIPAA、PCI、そして様々なデータプライバシー基準などの厳格な規制に準拠した高度にスケーラブルなアプリケーションを構築・管理してきた豊富な経験を持っています。この総合的な専門知識により、Corgeaは業界基準を満たすだけでなく、しばしばそれを上回っています。 Corgeaは単なるサービスではなく、セキュリティとプライバシーに継続して取り組む姿勢を体現しています。お客様のデータは、経験豊富なチームが責任を持って取り扱います。 敬具 アフマド・サデッディン CorgeaのCEO

セキュリティFAQ

知的財産の保護を最優先しています。Corgeaは修正に必要なコード差分(diff)のみを保存し、保存時と転送時の両方で業界をリードする暗号化標準を適用します。データの所有権はお客様にあり、いつでも削除を依頼できます。
Corgeaは、OpenAIと静的コード解析技術を組み合わせ、安全でないコードの修正に選択的に使用しています。
Corgeaはデータの機密性を保護するよう設計されています。お客様のデータをモデルのトレーニングや改良に使用することはありません。
サービス提供に必要なデータを受け取る第三者を、次の事業者に限定しています。
  • Amazon Web Services:Corgeaインスタンスやデータベースのホストに使用されます。
  • OpenAIまたはAzure OpenAI:安全でないコードの修正支援と、修正のQAプロセスの一部に使用します。どちらについてもZDR(ゼロデータ保持)を維持しています。
  • Sentry:アプリケーションパフォーマンスの監視およびエラー追跡用。
  • Google Analytics:ウェブサイトのトラフィックやイベントを追跡・報告します。
  • PostHog:プロダクト分析およびクライアントエラートラッキング。
Corgeaはプルリクエストの作成を自動化しますが、マージするかどうかはエンジニアが判断します。手動で適用する場合は、任意のIDEで直接適用できるdiffも利用できます。
Corgeaは修正プロンプトへのユーザーの入力を許可せず、修正が出される前にAIセキュリティチェックを活用しています。PRプロセス中の必須の人間審査と組み合わせることで、プロンプトインジェクションに対するバランスの取れた防御を提供します。
私たちはセキュリティの推進者であり、SOC 2コンプライアンスの基準を遵守し、しばしばそれを上回っています。当社のシステムは現在、セキュリティへの揺るぎないコミットメントをさらに検証するためにSOC 2監査を受けています。
Corgea.appはマルチテナント環境です。エンタープライズのお客様にはシングルテナント環境も提供しています。各お客様にはコンピュートとストレージを分離した専用環境が割り当てられます。環境間は隔離されており、お客様同士の通信やデータ漏えいを防ぎます。

セキュリティコントロール

認証とセッション

パスワードポリシー

Corgeaのパスワードポリシーは、セキュリティシステムにおける一般的な脆弱性である弱いパスワードの使用を防ぐために設計されています。このポリシーにはいくつかの要件が含まれています:
  • 個人情報との非類似性:パスワードはユーザーの個人情報と過度に類似していてはなりません。これにより、既知のユーザーデータに基づく推測を防ぎます。
  • 最小長さ:各パスワードは最低8文字を含む必要があります。パスワードが長いほど、一般的にセキュリティは強化されます。
  • 共通パスワード制限:一般的に使われている、または推測しやすいパスワードは禁止されています。これには「123456」「password」「qwerty」といったパスワードが含まれます。
  • 数値制限:完全に数値のみのパスワードは許可されません。数値のみのパスワードは解読しやすいことが多いためです。
  • パスワードリセット:パスワード変更申請の確認にはメールアドレスが必要です。
  • Corgeaは、PBKDF2アルゴリズムとSHA256ハッシュを組み合わせたパスワードストレッチ機構を使用しています。これはNISTが推奨しています。

アカウントポリシー

Corgeaのアカウントポリシーは悪用を防ぎ、セキュリティを強化することを目的としています:
  • メールアカウントは一度しか使用できません。
  • ユーザーアカウントはメールで有効化されます。
  • Corgeaはユーザーのアカウントおよび企業のアカウントを終了する権利を留保します

レート制限

Corgeaは、ユーザーが一定期間内に行えるリクエスト数に制限を設けています。これは分散型サービス拒否(DDoS)攻撃を軽減し、すべてのユーザーにとってシステムの可用性を確保する上で極めて重要です。

認証ブルートフォース防止

この制御は、パスワードを推測して不正アクセスを試みる攻撃者から身を守るために不可欠です。一定回数のログイン失敗の後、アカウントは一定期間ロックされたり、応答時間が意図的に遅くなったりします。

悪意あるリクエスト

Corgeaはすべてのトラフィックにわたる悪意あるリクエストを検出し軽減するWebアプリケーションファイアウォール(WAF)を使用しています。もし不審なトラフィックが検出された場合、WAFはユーザーがCorgeaにアクセスするために通過しなければならないJavaScriptチャレンジを開始します。

セッション終了

セッションの有効期限は、Corgeaのセッションセキュリティにおける重要な側面です:
  • 非アクティブタイムアウト:ユーザーセッションは一定期間非アクティブになると自動的に終了します。この期間はセキュリティとユーザーの利便性のバランスを取るために慎重に選ばれています。
  • 不正アクセス防止:この仕組みは、ユーザーが共有または公共のコンピュータからログアウトし忘れる可能性がある場合に、ユーザーのセッションへの不正アクセスを防ぐのに役立ちます。
  • 再認証要件:セッション終了後、ユーザーはセッションが安全に再開されることを確認するために再認証が必要です。

ウェブセキュリティ

クロスサイトスクリプティング(XSS)保護

攻撃者がWebページに悪意のあるスクリプトを挿入するのを防ぎます。Corgeaは特定の文字をエスケープして、悪意のある入力を無害化します。

クロスサイトリクエストフォージェリ(CSRF)保護

Webアプリケーションへのリクエストが、認証済みユーザーから送信されたものであることを保証します。CSRF対策では、各POSTリクエストにシークレットが含まれているかを確認します。これにより、攻撃者がフォームのPOSTをWebサイトに「リプレイ」し、ログイン済みの別のユーザーに意図せず送信させることを防止します。攻撃者がリクエストを偽造するには、Cookieを使用したユーザー固有のシークレットを知る必要があります。

SQL インジェクション保護

SQLコードの挿入による不正なデータベース操作を防ぎます。Corgeaのクエリはパラメーター化され、SQLコードとクエリパラメーターが分離されています。ユーザーが指定する可能性のある安全でないパラメーターは、基盤となるデータベースドライバーによってエスケープされます。

クリックジャッキング保護

攻撃者がユーザーが認識しているものとは異なるものをクリックしさせようとするのを防ぐためです。CorgeaにはX-Frame-Optionsミドルウェアというクリックジャッキング保護があり、対応ブラウザではサイトがフレーム内に描画されるのを防ぐことができます。

ホストヘッダー検証

ホストヘッダーの検証は、HTTPリクエストが意図するドメインに確実に送られることを確実にするために非常に重要です。

データセキュリティ

データ収集

Corgeaのデータ収集のアプローチは、ユーザーのプライバシーとセキュリティを維持しつつ重要な情報収集に焦点を当てています。収集されるデータの種類には以下が含まれます:
  • メールアドレス:アカウント作成、コミュニケーション、通知に使用されます。
  • 名前と姓:ユーザー体験のパーソナライズやアカウント管理時の識別目的で収集されます。
  • IPアドレス:ログイン試行の追跡や潜在的に悪意のある活動の特定などのセキュリティ目的で収集されます。
  • SAST/SCAツールによる脆弱性情報:静的アプリケーションセキュリティテスト(SAST)およびソフトウェア構成分析(SCA)でコード内で特定された脆弱性の詳細を含む。
  • コード:コードレビューや脆弱性スキャンなど、Corgeaのサービスの運用に必要なユーザーからのソースコード。
  • GitHubアクセストークン:コードスキャンや統合目的でリポジトリに安全にアクセスするために使用されます。

転送中および保存時のデータ暗号化

Corgeaは、転送中・保存データを問わず、すべてのデータが安全に暗号化されることを保証します: 転送時の暗号化:
  • CorgeaはHTTPプロトコル(ポート80)からHTTPS(ポート443)へトラフィックをリダイレクトします
  • AWS Certificate Manager(ACM)を利用してSSL/TLS証明書の管理と展開を行います。
  • TLS 1.3を採用し、TLSプロトコルの最新かつ最も安全なバージョンを採用し、インターネット上で送信されるデータが暗号化され、傍受や改ざんから守られることを保証します。
保存時の暗号化:
  • 保存データの暗号化に、256ビット鍵のAdvanced Encryption Standard(AES)を使用。
  • AES-256は堅牢な暗号化規格であり、その強力さと有効性で不正アクセスからデータを保護する点で広く知られています。

データバックアップ

データの損失を防ぎ、データの可用性を確保するために、Corgeaは包括的なバックアップ戦略を実施しています:
  • デイリーバックアップ:最新のデータを自動で取得・保存するバックアップで、システム障害やデータ破損時のデータ損失を最小限に抑えます。
  • 30日間アーカイブ:30日間のバックアップアーカイブを維持し、データ損失や破損の検出が遅れた場合にデータ復旧のためのウィンドウを提供します。
  • AWS S3 / RDSバックアップ: バックアップデータの安全かつ拡張可能な保存のためにAmazon S3を利用しています。 Amazon RDS Backupsをデータベースのバックアップとリカバリに活用し、自動バックアップ機能とポイントインタイムリカバリ機能を活用しています。

非本番環境

非本番環境には本番データが含まれません

SDLC制御

SDLCのセキュリティ

Corgeaはソフトウェア開発ライフサイクル(SDLC)のあらゆる段階にセキュリティを統合し、セキュリティが後回しではなく開発の基本的な側面であることを保証しています。
  • 設計段階での脅威モデリング:設計段階では、潜在的なセキュリティ課題を特定し、これらのリスクを軽減するための設計戦略を策定するために脅威モデリングが行われます。
  • セキュアコーディングの実践:開発者はコードの脆弱性を最小限に抑えるために、安全なコーディング慣行に従うよう訓練・推奨されています。
  • 定期的なセキュリティ監査:開発プロセス全体を通じて、セキュリティの欠陥を特定し、是正するために定期的なセキュリティ監査が実施されます。
  • デプロイ前のセキュリティテスト:デプロイ前に、ペネトレーションテストや脆弱性評価を含む包括的なセキュリティテストを実施し、既知の脅威に対してアプリケーションが安全であることを保証します。

コードレビュー

Corgeaは厳格なコードレビュープロセスを導入しました:
  • 必須ピアレビュー:すべてのコード変更は必須のピアレビューを受けます。このプロセスでは、他の開発者によるコードの問題や潜在的なセキュリティ脆弱性の特定を徹底的に調査します。
  • チェックリストと標準:査読者はチェックリストに従い、確立されたコーディング基準を遵守して、審査過程で見落としがないようにします。
  • フィードバックと反復:コードレビューからのフィードバックは即時の改善や将来の開発のための学習ツールとして活用されます。

コード統合中のサプライチェーン脆弱性スキャン

Corgeaはサプライチェーンセキュリティを重視しており、特に外部ソースから新しいコードをマージする際に対策を実施します。
  • 自動脆弱性スキャン:新しいコードが統合されると、外部ライブラリや依存関係から導入される可能性のある脆弱性を自動ツールがスキャンします。
  • 継続的監視:外部コードや使用ライブラリの変更により時間とともに発生しうる脆弱性を特定するために、コードベースの継続的な監視とスキャン。

シークレットスキャン

機密データを保護するために、Corgeaは自動シークレットスキャンを採用しています:
  • 自動検出:パスワード、APIキー、トークンなどの意図せず含まれたシークレットが含まれているか、コードリポジトリを自動的にスキャンするツールを使用します。
  • 即時アラート:シークレットが検出されると、迅速な対応のために即時アラートが生成され、露出したデータを保護します。

SAST/SCAコードスキャンとセキュリティ修正のためのCorgea

Corgeaのコードスキャンおよびセキュリティ修正へのアプローチは以下の通りです:
  • 静的アプリケーションセキュリティテスト(SAST):これは、悪用可能なセキュリティ脆弱性をソースコードからスキャンするものです。
  • ソフトウェア構成分析(SCA):SCAツールは、サードパーティのコンポーネントやオープンソースライブラリの既知の脆弱性を分析するために使われます。
  • 自動化されたセキュリティ修正:Corgeaは脆弱性を特定するだけでなく、セキュリティ修正を提案・実装するツールを統合し、修復までの時間を短縮します。

インフラ

クラウドインフラストラクチャ

CorgeaはクラウドインフラのニーズにAmazon Web Services(AWS)の力と柔軟性を活用しています。この選択により、サービスやアプリケーションのホスティングに堅牢でスケーラブルかつ安全な環境が提供されます。

クラウドインフラのセキュリティ実践

CorgeaはVPC、セキュリティグループ、IAMロールなどのAWSセキュリティベストプラクティスを採用し、定期的なセキュリティ評価も実施します。

クラウドセキュリティの共有責任モデル

CorgeaはAWSの共同責任モデルを遵守しており、AWSとCorgea間のセキュリティ責任を明確にしています。
  • クラウドのセキュリティ:AWSはAWSクラウドで提供されるすべてのサービスを運用するインフラを保護する責任を負っています。
  • クラウド内のセキュリティ:Corgeaの責任は、AWSで使用するコンテンツ、プラットフォーム、アプリケーション、システム、ネットワークのセキュリティです。

ネットワークのセグメンテーションと隔離

Corgeaのネットワークセグメンテーションと隔離のアプローチは、セキュリティと管理を強化することを目的としています:
  • 仮想プライベートクラウド(VPC)とサブネット:VPCとサブネットを活用することで、Corgeaはネットワークを効果的にセグメント化し、特定の目的のためにインフラの異なる部分を分離しています。
  • セキュリティグループおよびネットワークACL:これらはリソースへのトラフィックをステートフルかつステートレスでフィルタリングするために使われます。
  • サービス通信制御:Corgeaのインフラ内のサービスが認可された相手とのみ通信することを保証し、内部脅威や外部侵害のリスクを低減します。

アクセス制御

データへのアクセス

Corgeaは厳格なアクセス管理を実施し、スタッフのデータへのアクセスを制限し監視しています。
  • 制限されたデータアクセス:機密データへのアクセスは厳しく管理されており、例えば本番環境の問題に対応するなど特定の状況でのみ許可されます。これにより、不正なデータアクセスや漏洩のリスクを最小限に抑えます。
  • インフラストラクチャアクセス制御:Corgeaのインフラへのアクセスは企業のバーチャルプライベートネットワーク(VPN)を通じて管理されます。当社のVPNは安全かつ暗号化された接続を提供し、内部リソースへのアクセスは認可された人員のみに限定されています。
  • ロールベースアクセス制御(RBAC):従業員が職務に必要な情報やリソースのみにアクセスできるようにRBACの実装。

アクセスログ

Corgeaはサーバーへのアクセスを追跡・監査するための包括的なアクセスログを維持しています:
  • WAFログ:すべてのサーバーアクセスはWAF内で記録されます。これには、誰がサーバーにアクセスしたのか、いつアクセスが行われたのか、どのような操作が行われたのかなどの情報が含まれます。
  • 監査とレビュー:アクセスログの定期的な監査を行い、異常または不正アクセスパターンを特定します。これにより、潜在的なセキュリティインシデントを迅速に特定し対応できるようになります。
  • 透明性と説明責任:詳細なアクセスログを保持することでアクセス管理の透明性が確保され、スタッフがインフラ内での行動に責任を負うことができます。