機能 / 漏えいの兆候で停止

動作中Lean 4 で証明済み

漏えいに見えたら、PC が自分で止まる。

情報の流出の多くは、データがなくなってから見つかります。ZENOS は、データが PC から出ていく道筋(USB メモリ、ネットワーク、守られたファイルを一度に大量に開く動き)を見張り、兆候を見つけた瞬間に封じ込めます。誰かが警告を読むのを待ちません。

107 ミリ秒

公開の夜、実際に遮断したときの、検知から封じ込めまでの時間

まず即時の遮断

遮断は決まった手順で即座に行う。そのあとで AI が状況を判断でき、AI にできるのは対策を強めることだけ

2 人以上

止まった PC を解除するには、責任者が自分の端末で署名する

どう動くのか

検知する、封じ込める、解除する

1

検知する

root で動くサービスが、守られたファイルが開かれるたび、ファイルが USB メモリに届くたびに、それをしたプログラムまで含めて見ています。カーネルのレベルのネットワークの見張りが、外へ出る通信をすべて見ています。

  • root で動くので、利用者は止めることも状態を書き換えることもできません
  • 見張るのは出口で、キー入力ではありません
2

封じ込める

ミリ秒のうちに、宛先を遮断し、その接続を閉じ、利用者のプログラムを凍結します。出口に届いたファイルは隔離されます。

  • 画面いっぱいに、何が起きたかを表示します
  • 利用者が新しく起動したものも 1 秒以内に凍結します
3

解除する

止まった PC を解除できるのは責任者だけで、それぞれ自分のスマートフォンで署名します。止まるきっかけになった操作は、再開されずに取り消されます。

  • ファイルを開くときより多くの責任者が必要です
  • 利用者自身の承認は数えません

漏えいの兆候とみなすもの

四つの決まり

守られたファイル(L2 以上)が USB メモリに届くPC を止める
30 秒以内に 5 つ以上のファイルが USB メモリに届くPC を止める
20 秒以内に 6 つ以上の守られたファイルが開かれるPC を止める
承認のない宛先に 3 秒以内に 1MB が送られる宛先を遮断

承認された移送など、多くのファイルを動かす必要がある作業は、前もって申請しておけば、PC を止めずに記録だけを残します。

実際に起きたこと

公開の夜、インストール用のイメージを、ZENOS が動いている開発用の PC からアップロードしました。そのネットワークの見張りが、承認のないプログラムが一つの宛先に 52MB を送っているのを見つけ、遮断し、107 ミリ秒後には封じ込めを終えていました。設計どおりの動きです。アップロードは別の PC から行いました。

証明していること、していないこと

判断は、数学で決まる

Lean 4 で証明済み

毎回のビルドで検査

  • 宛先が遮断されるのは、承認がなく、送られた量が決まった線に達したとき、そしてそのときだけ
  • 遮断された宛先は、遮断されたまま
  • 止まった PC が解除されるのは、本人以外の、異なる登録済みの責任者の署名が必要な数そろったときだけ
  • PC が止まった状態から動く状態に戻るのは、解除の確認が通ったときだけ
証明ではなく信頼しているもの

テストし、一覧にして公開

  • ネットワークの見張り(eBPF)とファイルの見張り(fanotify)
  • ファイアウォールの規則そのもの
  • Linux カーネルと、事実を集めて答えを実行するコード
  • USB メモリへの移動は、それをしたプログラムまでは分からない

プレビュー版で試す

自分で試す

1

プレビュー版をインストールする

イメージを起動して「Install ZENOS」を選びます。ディスクは暗号化されます。

2

責任者を登録する

責任者がそれぞれ自分のスマートフォンの ZENOS Messages で承認用の鍵を作ります。

3

USB Drive に 5 つのファイルをコピーする

30 秒以内に PC が止まります。スマートフォンで承認すると解除されます。