五日市埋立で散歩

五日市の埋め立てでキクを散歩
昼食はボンベイで、ここはナンが美味しい
4.結果
  • mainマージ+本番デプロイ3回、すべて成功・稼働確認済み(最終コミット bd1cf1b)
  • 自動テスト: 106件(うち5件失敗)→ 119件全パス(テスト14件新規追加・失敗0)
  • 外形確認済み: セキュリティヘッダー出力・CookieのSecure属性・自己登録の閉鎖・診断ページの撤去
  • 2026-07-11再検証の指摘は完了。システムは「Critical/High/Medium指摘ゼロ・依存脆弱性ゼロ(リスク受容2件は記録済み)」の状態
5.残課題(急ぎでない・別フェーズ)
  • H-3: CSPのunsafe-inline除去(インラインJSの外部化 or nonce方式・大きめの作業)
  • L-3: 同時編集ロックの精度向上(lock_version整数化)
  • vite 4→8 メジャー更新(開発サーバー限定の脆弱性解消)
  • x-data-spreadsheet(表エディタ)の代替検討 — XSS修正版が存在しないため。現状は同一会社内の編集権限者に限られるためリスク受容中
  • 動作中の旧式遷移ボタン6箇所の data-href 方式への移行(1と同時に実施が効率的)

セキュリティ再検証・是正作業 全体総括

1.目的

システム全体を改めて検査(再検証)し、見つかった弱点を重要度順にすべて是正して本番に反映する

2.計画

4つの観点(認証・テナント分離・インジェクション対策・設定/依存関係)で並列監査を実施し、指摘を重要度別に整理 → Critical 0件・High 4件・Medium 9件・Low 9件・依存脆弱性多数・・・中核部分(認証・会社間のデータ分離・SQL/XSS対策)は基準適合と評価

区分内容
バッチ1緊急度の高いもの:テンプレート操作の権限制限・AI生成HTMLのXSS対策・不要ファイル削除
バッチ2入力データの保存範囲固定・Cookie保護の既定化・セキュリティヘッダー補強・古いテストの整理
バッチ3依存パッケージの脆弱性解消・細かな改善9件(L-1〜L-9)
確認事項5件確認事項5件
3.実施

バッチ2

  • 現場情報の保存を「検証済みの項目だけ」に固定 — 従来は細工したデータ送信で現場の所属会社を書き換えられる余地があった(調査中に登録処理側にも同じ問題を発見し、両方修正)
  • セッションCookieのSecure属性を既定でON — 設定漏れがあっても自動的に安全側になる
  • セキュリティヘッダー補強 — カメラ・マイク等のブラウザ機能無効化、クリックジャッキング・フォーム送信先の制限
  • 実態と合わなくなっていた古いテスト5件を「現仕様の回帰検知」に書き換え

バッチ3

  • 依存パッケージの脆弱性: composer 26件 → 0件(Excel処理ライブラリの重大な脆弱性含む)、npm 18件 → 4件(残りは開発環境限定等で影響なし・記録済み)
  • パスワード変更・リセット時に他の端末のログインを即時無効化(乗っ取り後の締め出し対策)
  • ファイル保存名のランダム化、デバッグ出力の削除、旧Gemini設定の廃止 ほか

確認事項

  • 変更履歴(UserChangeLog): 会社間分離の仕組みを適用(設計どおり)
  • 本番設定: 現地確認の結果、実は問題なし(APP_ENVは行なしでも本番扱い・GEMINIキーも本番には無かった)
  • プロキシ設定: 診断ページを一時設置しTAMの実測で「前段プロキシなし」と確定 → IP偽装を許す設定を撤去
  • 過去のAI生成データ: 一括洗浄コマンドを作成 → 本番で確認した結果、対象0件(すべて安全なデータのみ)
  • 旧GeminiAPIキー: TAMがGoogle側で失効済み



ブックマーク パーマリンク.

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

  • 2026年7月
     12345
    6789101112
    13141516171819
    20212223242526
    2728293031