surrealdb の脆弱性 (GHSA-65rj-r9fh-jp2v)
概要
surrealdb に 脆弱性 (GHSA-65rj-r9fh-jp2v) が存在。不正な操作・情報露出のリスクがあります。`GET /sql` 経由で攻撃可能。対策: `3.1.0` 以上に更新。
AI要約 snake-internal / snake-material-v2
対応アクション (7段階)
SOC/SREチームが順番に実行すべき具体的なステップとコマンド例
-
1影響範囲の特定 identify
grep -r 'surrealdb' . | grep -v node_modulesリポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で `surrealdb` を grep し、稼働しているサービス・バージョンを把握する。
-
3ログでの侵入兆候検索 detect
grep 'GET /sql' /var/log/nginx/access.log | grep -E '(unusual_payload|sqli_pattern)'アクセスログで `GET /sql` への異常なリクエスト (不正な認証ヘッダ・SQLメタ文字)を過去 30〜90日分捜索。WAF/SIEM があれば該当パスのアラート発火履歴を確認。
-
5暫定回避策の適用 mitigate
Affected users who are unable to update should refuse `GET /sql` requests carrying `Upgrade: websocket` at a reverse proxy, or apply per-connection frame size limits at the reverse proxy.パッチが適用されるまでの応急処置として、Affected users who are unable to update should refuse `GET /sql` requests carrying `Upgrade: websocket` at a reverse proxy, or apply per-connection frame size limits at the reverse proxy. を実施。回避策の副作用 (機能低下) を確認した上で。
-
6パッチ適用 patch
Upgrade surrealdb to 3.1.0ステージング環境で 3.1.0 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスと、Step 3 で見つけた異常検知の続報チェックを含めること。
-
7事後検証 verify
Replay attack against GET /sql on staging to confirm patch closes the vectorパッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番では Step 3 と同じログクエリでアラート再発が無いか継続監視。