— Odooクラウド (プラットフォーム)—
CSA STAR Level 1
Odooは、CSA Security Trust Assurance and Risk (STAR) Programに参加しています。
CAIQv3.1 質問書に対する当社の回答を見る
バックアップ / ディザスタリカバリ
- 各Odooデータベースにつき、計14回分のフルバックアップ履歴を最低 3 ヶ月間保持しています(日次バックアップ 7 日分、週次バックアップ 4 週間分、月次バックアップ 3 ヶ月分)。
- バックアップデータは、少なくとも 3 つの異なるデータセンターに分散複製されています。
- 当社データセンターの現在の設置場所については、プライバシーポリシーに明記されています: プライバシーポリシー.
- コントロールパネルから、稼働中(ライブ)データの手動バックアップをいつでもダウンロードいただけます。
- 当社ヘルプデスクにご連絡いただくことで、利用可能なバックアップを稼働中データベースまたは別のデータベースへ復元することができます。
- ハードウェアフェイルオーバー:ハードウェア障害の可能性があるベアメタルインフラ上でホストされているサービスについては、ローカルでのホットスタンバイレプリケーション、監視、および手動フェイルオーバー手順を採用しています。
- ディザスタリカバリ: 大規模なインフラ障害や災害の発生時に、Odooクラウドサービスおよびお客様データを復旧させるためのディザスタリカバリ手順を整備しています。詳細は クラウドサービスレベル協定(SLA) および、目標復旧時点(RPO)・目標復旧時間(RTO)の詳細をご確認ください。
データベースセキュリティ
- お客様のデータは専用のデータベースに格納され、他のお客様と共有されることはありません。
- データアクセス制御により、同一クラスタ上で動作するお客様のデータベース間が完全に分離されており、他のデータベースからの不正アクセスを防止しています。
パスワードセキュリティ
- お客様のパスワードは、業界標準の PBKDF2+SHA512 ハッシュ化アルゴリズムに加え、ソルト付与および数千回のキーストレッチングを用いて保護されています。
- Odooのスタッフであってもお客様のパスワードの閲覧や取得はできません。パスワードを紛失した場合は、再設定していただく必要があります。
- ログイン認証情報は、常にHTTPS を介して安全に暗号化送信されます。
- データベース管理者は、連続したログイン試行に対する レート制限を設定 およびクールダウン期間(試行一時停止時間)を設定できます。
- パスワードポリシー:データベース管理者は、ユーザパスワードの最小文字数を強制設定できます。 必須文字種(英数字・記号の混在要求など)といったその他のポリシーは、かえって逆効果であることが研究で示されているため、初期状態では無効化されています。 参照: [強力かつ使いやすいパスワードポリシーの設計] および NIST SP 800-63b.
スタッフアクセス
- Odoo ヘルプデスクのスタッフは、サポートに関する問題を調査・対応するために、必要に応じてお客様のアカウントへアクセスする場合があります。その際、スタッフは閲覧不能なパスワードではなく、専用のスタッフ用認証情報を使用します。
- この専用アクセス権限により、お客様からパスワードを共有していただくことなく報告された問題を再現できると同時に、スタッフの操作履歴を個別に制御および監査することが可能になります。
- ヘルプデスクスタッフによるアクセスは、問題の診断および解決に必要なデータ、ファイル、設定のみに最小限化されています。
システムセキュリティ
- Odooクラウドのサーバーは、最新のセキュリティパッチを適用した強化済みのLinuxディストリビューション上で稼働しています。
- サーバーは用途に特化した最小限の構成でインストールされており、脆弱性の原因となり得る無駄なサービスの稼働を抑えています。
- サーバーの遠隔管理権限は、信頼された少数のOdooエンジニアのみに制限され、個別の多要素認証(MFA)によって保護されています。
物理セキュリティ
Odooクラウドサーバーは、複数のリージョン(地域)に跨る信頼性の高いデータセンターでホストされています。すべてのホスティング施設は、以下を含む当社の物理セキュリティ要件を満たしています。
- 許可されたデータセンター職員のみが立ち入れる区画制限。
- セキュリティバッジまたは生体認証を用いた物理アクセス制御。
- データセンター施設内における24時間365日体制の防犯カメラ監視。
- 24/7 on-site security personnel.
クレジットカードの安全性
- 当社のシステム内にお客様のクレジットカード情報を保存・保持することはありません。
- Credit card information is transmitted securely and directly to PCIに準拠した 決済代行会社へ直接かつ安全に送信されます。提携事業者の一覧については、当社の プライバシーポリシー をご確認ください。
データ暗号化
お客様のデータは、通信時(in transit)および保管時(at rest)の双方で暗号化されています。- お客様インスタンスとのすべての通信は、256 ビットSSL暗号化を用いたHTTPSにより保護されています。
- サーバー間の内部通信は、エンドツーエンド暗号化により保護されています。
- 当社のサーバーは常時モニタリングされており、SSLの脆弱性に対するパッチが常に適用されています。
- 当社のSSL証明書は、完全なSHA-2証明書チェーンを備えた2048ビット鍵を使用しています。SSL評価の詳細は こちら.
- データベースのコンテンツや保存ファイルを含むお客様のデータは、本番システムおよびバックアップデータの双方向において、AES-256 により保管時暗号化が行われています。
ネットワーク 防御
- Odooクラウドが利用するデータセンタープロバイダーは、大半のサービス妨害(DoS)攻撃を含む大容量トラフィックに耐えうる高容量ネットワークを運用しています。自動および手動の軽減システムにより、サービスの可用性が損なわれる前に、ネットワークの境界(エッジ)で攻撃トラフィックを検知・迂回させます。
- Odooクラウドサーバー上のファイアウォールおよび侵入防止システム(IPS)により、ブルートフォース(総当たり)パスワード攻撃などの脅威を検知・ブロックします。
- データベース管理者は、連続したログイン試行に対する レート制限を設定 し、クールダウン期間を設定できるほか、自動化されたブルートフォース攻撃を抑止するための CAPTCHA(画像認証)を設定できます。
— Odoo (ソフトウエア) —
ソフトウエアセキュリティ
Odooはオープンソースであり、世界中のユーザーやコントリビューターによってソースコードが継続的にレビューされています。コミュニティからの報告はセキュリティ向上の重要な情報源であり、当社は開発者やセキュリティ研究者によるコード監査および脆弱性の報告を歓迎・推奨しています。
Odooの研究開発(R&&D)プロセスには、新規コードおよび提供されたコードの双方に対してセキュリティ観点を含めたコードレビューが組み込まれています。
セキュア・バイ・デザイン
Odooフレームワークは、一般的なセキュリティ脆弱性を初期状態で防止するよう設計(セキュア・バイ・デザイン)されています。
- 手動でのSQLクエリ構築を不要にする高レベルAPIにより、SQL インジェクションを防止しています。
- クロスサイトスクリプティング(XSS)は挿入されたデータを自動的にエスケープ処理する高度なテンプレートシステムにより防止されます。
- フレームワークによりプライベートメソッドへのRPCアクセスを制限し、悪用可能な機能が外部に露出するリスクを低減しています。
Odooフレームワークに組み込まれている保護機能の詳細については、「 OWASP Top Vulnerabilities (主要な脆弱性) への対応」のセクションをご確認ください。
第三者機関によるセキュリティ監査
Odooは、既存のお客様や導入をご検討中のお客様から委託された外部の第三者セキュリティ機関により、定期的なセキュリティ監査およびペネトレーションテスト(侵入テスト)を受けています。Odooセキュリティチームは指摘事項を評価し、必要に応じて迅速に改善・是正措置を講じています。
これらの評価レポートは機密扱いで、依頼元の組織に帰属するため、開示できません。
また、Odooは外部のセキュリティ研究者コミュニティとも積極的に連携しています。彼らはソースコードを精査し、セキュリティの継続的な向上に貢献しています。当社のセキュリティ研究および問題の開示手順については、 責任ある情報開示 ページをご確認ください。
OWASP Top Vulnerabilities (主要な脆弱性)
以下は、OWASP( Open Web Application Security Project )が定義する主要なウェブアプリケーションのセキュリティリスクに対して、Odooがどのように対策を講じているかの概要です。
-
インジェクション欠陥: 信頼できないデータがコマンドやクエリの一部として処理系(インタプリタ)に渡されることで、意図しないコマンドの実行やデータの改ざんが発生するリスクです。
Odooはクエリ構築を抽象化する ORM(オブジェクト関係マッピング)フレームワークを採用しており、初期状態で SQLインジェクションを防止します。開発者が手動で SQLクエリを構築する必要は基本的に無く、クエリはORMによって自動生成され、パラメータも適切にエスケープ処理されます。
-
クロスサイトスクリプティング(XSS): 適切なエスケープやエンコードを行わずに信頼できないコンテンツをウェブページに含めることで、攻撃者が他のユーザのブラウザ上で悪意のあるスクリプトを実行できてしまうリスクです。
Odooフレームワークは、ビューやページ上に描画される出力を初期状態でエスケープ処理するため、通常の運用でXSSが発生することはありません。生のコンテンツとして描画する場合は、開発者が明示的に安全であるとマーク(宣言)する必要があります。
-
クロスサイトリクエストフォージェリ(CSRF): ログイン認証済みのユーザのブラウザを悪用し、本人の意思とは無関係に不正なリクエストを送信させる攻撃手法です。
Odooのウェブエンジンには CSRF 保護機能が組み込まれています。HTTP コントローラーは対応するセキュリティトークンがない保護対象の POST リクエストを受け付けません。このトークンはユーザが正規にフォームへアクセスした際にのみ発行され、攻撃者が偽造することはできません。
-
悪意のあるファイルの実行: リモートファイルインクルード(遠隔ファイルの読み込み)の脆弱性を突かれ、サーバ上で危険なプログラムやコードを実行されるリスクです。
Odooではリモートファイルをインクルードするような機能を外部に露出していません。特権ユーザがシステム評価用構文を用いて機能をカスタマイズする場合でも、それらは許可された関数のみにアクセスが制限された、サンドボックス(隔離空間)かつサニタイズされた環境下で実行されます。
-
安全でない直接オブジェクト参照: レコードやファイルなどの内部オブジェクトの識別子(ID)が直接露出している状態です。これらの識別子を改ざんすることで不正アクセスが可能になる場合に脆弱性となります。
Odooのアクセス制御はユーザインターフェース(UI)とは独立して強制適用されます。そのため、URL上に内部オブジェクトの参照が表示されていても権限検証が回避されることはなく、すべてのリクエストは必ずデータアクセス検証レイヤーを通過します。
-
安全でない暗号ストレージ: 保存されている認証情報や機密データの保護が不十分な場合、不正アクセス、なりすまし、その他の悪用のリスクが生じます。
Odooは業界標準の安全なパスワードハッシュ化(初期状態ではキーストレッチングを伴うPBKDF2 + SHA-512)を用いてユーザパスワードを保護します。また、OIDCや OAuthなどの外部認証システムを利用することで、ローカル上にパスワードを一切保持しない運用も可能です。
-
安全でない通信: アプリケーションがネットワーク通信を適切に暗号化していない場合、機密情報が外部に漏洩する可能性があります。
Odoo Cloud enforces HTTPS by default. For on-premise installations, we recommend running Odoo behind a web server that provides encryption and proxies requests to Odoo, such as Apache, Lighttpd, or nginx. The Odoo deployment guide includes a セキュリティ・チェックリスト に含まれています。
-
URLアクセス制限の失敗:未権限ユーザに対して単にリンクや URL を非表示にするだけのアクセス制御を行っている場合、機密機能が外部に露出してしまうリスクがあります。
Odooはアクセス制御をUIや非表示URLに依存していません。すべてのリクエストがデータアクセス検証レイヤーを通過するため、URLを直接入力・改ざんしても認可を回避することはできません。顧客の注文確認リンクなど、意図的に未認証アクセスを許容するURLについては、一意のデジタル署名トークンによって保護され、正規の受信者にのみ送信されます。
セキュリティ脆弱性の報告
セキュリティ上の脆弱性を報告される場合は、 責任ある情報開示ページ. セキュリティに関するご報告は最優先事項として扱い、Odooセキュリティチームにて確認・評価を行います。当社は報告者様と連携して確認された問題の調査および修正にあたり、適宜、Odooのお客様やユーザの皆様へ情報を開示いたします。