セキュリティ技術詳細

このページでは、eSolia Periodicで実装されているセキュリティ対策の技術的な詳細を説明します。

認証

パスワードハッシュ

パラメータ
アルゴリズムPBKDF2-SHA512
反復回数600,000 (OWASP 2024)
ソルト長128 bits (16 bytes)
出力長512 bits (64 bytes)

パスワード要件: 12文字以上、大文字・小文字・数字・特殊文字を各1つ以上含む

多要素認証(MFA)

機能実装
方式TOTP (RFC 6238)
タイムステップ30秒
コード長6桁
バックアップコード10個(各12文字、1回使用可)

マジックリンク認証

パラメータ
トークン長256 bits (32 bytes)
有効期限15分
使用回数1回のみ

セッション管理

Cookieセキュリティ

session_id={token}; Path=/; Max-Age={seconds}; Secure; SameSite=Lax; HttpOnly
フラグ目的
SecureHTTPSのみで送信
HttpOnlyJavaScriptからのアクセスを防止
SameSite=LaxCSRF保護

HTTPセキュリティヘッダー

ヘッダー
X-Frame-OptionsSAMEORIGIN
X-Content-Type-Optionsnosniff
X-XSS-Protection1; mode=block
Referrer-Policystrict-origin-when-cross-origin
Permissions-Policycamera=(), microphone=(), ...

Content Security Policy

default-src 'self';
script-src 'self' 'unsafe-inline' https://unpkg.com;
style-src 'self' 'unsafe-inline' https://fonts.googleapis.com https://cdn.jsdelivr.net;
font-src 'self' https://fonts.gstatic.com https://cdn.jsdelivr.net;
img-src 'self' data: https:;
connect-src 'self';
frame-ancestors 'self';
form-action 'self';
base-uri 'self';

データストレージ

Deno KV

  • 保存時の暗号化(Deno Deployプラットフォームによる)
  • デプロイメントごとのデータ分離
  • セッション、トークン、レート制限のTTL自動期限切れ

OWASP Top 10 対策

01

アクセス制御の不備

役割ベースアクセス制御(admin/client)、クライアントごとのデータ分離、セッション検証

02

暗号化の失敗

HTTPS必須、PBKDF2-SHA512パスワードハッシュ(60万反復)、保存時暗号化(D1/KV)

03

インジェクション

パラメータ化クエリ(KV)、入力検証、HTMLエスケープ出力

04

安全でない設計

多層防御、セキュリティファーストのアーキテクチャ、脅威モデリング

05

セキュリティ設定ミス

セキュリティヘッダー(CSP、X-Frame-Options等)、安全なデフォルト

06

脆弱なコンポーネント

Deno依存関係監査、最小限の外部依存、定期的な更新

07

認証の失敗

MFA/TOTP、マジックリンク、パスワードポリシー、レート制限

08

データ整合性の失敗

デジタル署名済みデプロイ(Deno Deploy)、CI/CD整合性チェック

09

ログ記録の失敗

セキュリティイベントログ、監査証跡、異常検知

10

SSRF

外部リクエストの検証、許可リストベースのDNSクエリ

© 2025 株式会社イソリア. All rights reserved.