Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Security: nisesimadao/TimeForest

Security

SECURITY.md

セキュリティポリシー

TimeForest は TimeTree の非公式サードパーティクライアントです。ここは TimeForest(このリポジトリのコード)の脆弱性についての窓口であり、TimeTree 本体のセキュリティ窓口ではありません。TimeTree 本体の問題は TimeTree に直接 報告してください。

報告方法

脆弱性を見つけたら、公開 issue を立てず、GitHub の非公開報告を使ってください:

  1. リポジトリの Security タブ →「Report a vulnerability
  2. 再現手順・影響範囲・可能なら PoC を添えてください

数日以内に一次応答し、修正の可否と方針を返します。個人プロジェクトなので SLA は保証できませんが、セッションやクッキーの扱いに関わる問題は最優先で見ます。

セキュリティモデル(何を守っているか)

TimeForest はパスワードを一切受け取りません。ログインは常に TimeTree 自身の ログインページで行われ、各形態は TimeTree が発行したセッションだけを扱います。

  • Chrome 拡張 — セッションはブラウザのクッキー(_session_id)。クッキーに 触れるのは Service Worker だけで、コンテンツスクリプトには渡しません。書き込み API は Service Worker 経由で、declarativeNetRequest で自身のリクエストの Origin を timetreeapp.com に書き換えます(対象ドメイン+xhr に限定)。権限は最小限 (storage/tabs/cookies/alarms/notifications/declarativeNetRequest)で、 すべて実際に使用しています。
  • デスクトップ(Electron) — アカウントごとに独立したパーティション (Chromium のクッキー壷、userData 下で DPAPI 暗号化)。認証付き fetch は main プロセスでのみ行い、レンダラは preload の狭いブリッジ(window.host)越しに /api/* の JSON しか要求できません。任意 URL・シェル・ファイルには触れません。
  • ホスト型 Web クライアント — セッショントークンはサーバに保存しません。 呼び出し元自身の httpOnly クッキーに乗り、リクエスト毎に読んで転送し、忘れます。 バックエンドプロキシは /api/v*/ の JSON のみを固定ホスト timetreeapp.com へ 中継し、リダイレクトは追いません(認証済み HTML の反射を防ぐ)。
  • ユーザースクリプト — timetreeapp.com 上で同一オリジンに動くため、ページ 自身のログインに乗るだけです。プロキシもトークン受け渡しもありません。

対象範囲

  • 対象: このリポジトリのコード(拡張 / デスクトップ / web / ユーザースクリプト / バックエンドプロキシ)。
  • 対象外: TimeTree 本体、および OpenStreetMap / Nominatim(地図タイル・検索)。

配布物について

デスクトップのビルドは未署名です。Windows / macOS は初回起動時に警告を 出します(README 参照)。改ざん検知のため、各リリースには成果物の SHA256 を 併記しています。

There aren't any published security advisories

Morty Proxy This is a proxified and sanitized view of the page, visit original site.