CVE-2019-14899 の影響を受けていませんか?カーネル確認チェックリスト
報告された攻撃には隣接ネットワーク上の攻撃者と特定のホストネットワーク設定が必要でした。勧告の行、カーネルパッケージ、緩和策を確認してください。
何年も VPN を動かしてきたマシンでスキャナが CVE-2019-14899 を検出すると、まず VPN が壊れたと言いたくなります。それは誤った枠組みです。公表された問題は、被害者のローカルネットワーク上の攻撃者が特定の TCP 接続について情報を推測するというもので、ウェブサイトがトンネルを復号する話ではありません。
以下の四つの確認を順に行います。それぞれが問題を絞り込むか、調査を終わらせます。
確認 1:勧告はあなたのカーネルを対象にしているか
ブログのリリース日要約ではなく、自分のディストリビューションの記録を調べます。この CVE に関する Ubuntu のセキュリティページは 18.04 LTS の汎用 linux パッケージを修正延期の脆弱として挙げ、他のカーネルパッケージは別の行で追跡しています。稼働中のリリースとカーネルパッケージを正しい行に照合してください。見覚えのあるバージョン番号は一致ではありません。
スキャナの検出は、その識別子が資産の何かに該当するという意味です。隣の端末がマシンを悪用したという意味ではありません。
確認 2:モデル上の攻撃者は誰か
脅威モデルは、被害者のアクセスネットワークとやり取りできる隣接攻撃者を想定します。それは特定の位置であり、あなたの出口ノードを好まない任意の遠隔サービスではありません。利用者がカフェから接続するなら想定は現実的で、管理された企業 LAN の背後にいるなら別の話です。
トンネルが暗号化されていても、ローカルネットワークへの信頼という問いは開いたままにしてください。暗号化は隣接性とは別の問いに答えます。
確認 3:どの層に依存しているか
正しく検証された HTTPS はアプリケーション記録に独自の保護を与え、TLS 1.3 はそのデータを端から端まで認証します。しかし、攻撃者が基盤の TCP 接続を妨害できないことは保証しません。したがって、アプリケーションは読む分には安全でも妨害可能であり、妨害は開示と同じ結果ではありません。リスクを評価する前に両者を分けてください。
この区別は報告書にとって重要です。VPN が危険だという漠然とした主張を、隣接攻撃者が何を観察し妨害できたかという限定的な記述に変えます。
確認 4:実際に何の緩和策を導入したか
公表文はルーティングとフィルタリングの緩和策を論じ、その限界について明示しています。逆経路フィルタリングや非対称ルートも含まれます。一つの sysctl 値をすべての VPN ホストに貼って解決済みと言わないでください。逆経路フィルタリングはルーティングと相互作用するため、ある構成に効く値が別の構成を壊すことがあります。
確認はコマンドであり、チェックボックスではありません。sysctl net.ipv4.conf.all.rp_filter は全体の値を示し、sysctl net.ipv4.conf.tun0.rp_filter は実際に適用されるインターフェース単位の値を示します。変更の前後で両方を読んでください。
ディストリビューションの指針と自分のルーティング設計を使い、トンネルを運ぶインターフェース上で設定を確認してください。誰も読み込んでいないファイルではありません。
記録しておくこと
隣接攻撃者の前提、稼働中のカーネルパッケージ、照合した勧告の行、導入した緩和策と適用箇所、そして存在するアプリケーション保護を記録します。勧告を確認した日付も加えてください。ページは変わるからです。その組み合わせが防御可能な評価になります。
OS のリリース日と動作する VPN 接続は評価ではありません。たまたま集めやすい二つの事実です。