ハクソク

世界を動かす技術を、日本語で。

Show HN: PanicLock – MacBookの蓋を閉じるとTouchIDを無効にし、パスワードでロック解除

概要

  • PanicLockは、macOSでTouch IDを即座に無効化し画面をロックするメニューバーユーティリティ
  • 法執行機関や国境検査時など、パスワード保護のみを強制したい場面に特化
  • ワンクリックやホットキー、または蓋の閉鎖で即時ロック・Touch ID無効化を実現
  • 自動復元機能で元のTouch ID設定も簡単に戻せる
  • オープンソースでセキュリティやプライバシーにも配慮

PanicLock:macOSのTouch ID即時無効化ユーティリティ

  • macOSメニューバーからワンクリックでTouch IDを無効化し、画面ロック
  • Touch IDの即時無効化により、パスワードのみでの復帰を強制
  • **ホットキー(例:⌃⌥⌘L)**や蓋の閉鎖による自動ロックも設定可能
  • セッション維持しつつ、Touch IDのみを一時的に無効化
  • 自動復元機能でロック解除後にTouch ID設定を元通りに戻す
  • 初回起動時に管理者パスワードを要求し、特権ヘルパーを一度だけインストール

主な特徴

  • ワンクリックパニックロック:アイコン左クリックやホットキーで即時ロック
  • Lock on Close機能:蓋を閉じるとTouch ID無効化&画面ロック
  • 一時的Touch ID無効化:パスワードのみでのロック解除を強制
  • キーボードショートカット:グローバルホットキーのカスタマイズ
  • 自動起動:ログイン時に自動で起動可能
  • Homebrew/DMG対応:Homebrewまたは手動DMGインストール対応
  • macOS 14.0(Sonoma)以降、Touch ID搭載Macが必要

使い方

  • アイコン左クリック:即時パニックロック発動
  • アイコン右クリック:メニュー(設定、アンインストール、終了)表示
  • Lock on Close有効時:蓋を閉じると自動でTouch ID無効化&ロック
  • **通常の画面ロック(スクリーンセーバー等)**ではTouch IDは有効のまま
  • アンインストールはアプリメニューやHomebrew、手動コマンドで実施可能

セキュリティ設計

  • 最小権限設計:特権ヘルパーは3つのコマンド(bioutil, pmset)のみ実行
  • コード署名済みXPC通信:アプリのBundle ID・Team ID・証明書を検証
  • 完全オフライン動作:ネットワーク通信・テレメトリ・分析なし
  • データ収集なし:保存するのはユーザー設定(アイコン、ショートカット)のみ
  • オープンソース:全コード公開、監査可能

注意事項

  • Touch ID以外の解除方法(Apple Watch、セキュリティキー等)は無効化対象外
  • パスワード解除のみを強制したい場合に最適

インストール方法

  • Homebrewbrew install paniclock/tap/paniclock
  • 手動:リリースページから最新DMGをダウンロード

アンインストール方法

  • Homebrewbrew uninstall paniclock
  • アプリ右クリック:「Uninstall PanicLock...」選択、管理者パスワード入力
  • 手動コマンド:launchctlやrmコマンドで関連ファイル削除

開発・ビルド

  • リポジトリをクローン、Xcodeで開く
  • Development Teamを両ターゲットで設定
  • Team IDをInfo.plist等で更新
  • ビルド・実行で開発可能

リリース・配布

  • スクリプトによるビルド・署名・ノータリゼーション自動化
  • バージョンごとのビルド/リリースディレクトリ作成
  • MITライセンスで配布

コントリビューション

  • IssueやPull Requestで貢献歓迎

背景事例:法執行機関によるTouch ID強制

  • Washington Post記者 Hannah Natanson氏が指紋でMacを強制解除させられた事例
  • Signalデスクトップの情報漏洩や取材源の暴露リスク
  • 生体認証の法的リスクに対する具体的な対策としてPanicLockを開発
  • 法的議論や先例の詳細は公式ランディングページ(https://paniclock.github.io/)参照

Hackerたちの意見

面白いアイデアだね。昔、デバイスの強制解除の合法性についての議論があったのを思い出すよ。確か、指紋を強制するのは合法だけど、パスワードを強制するのは(第一修正の下で?)違法だって言われてたと思う。パスワードがどこにも書かれていない限りね。これってその目的のために書かれてるのかな?それとも他にも目標があるの?
これは、ワシントンポストの記者ハンナ・ナタソンが指紋でコンピュータを解除するよう強制された事件を受けて書いたんだ。このせいで、彼女のデスクトップシグナルにアクセスされて、情報源や会話が明らかになったんだ。 https://www.yahoo.com/news/articles/washington-post-raid-pro... 編集: アプリのランディングページには、合法性や前例についての詳細がもっとあるよ。 https://paniclock.github.io/
ウェブサイトには、生体認証とパスワードの議論や法的状況についての情報がもっとあるよ。 https://paniclock.github.io/
確かに、法執行機関がパスワードを強制する合法性は不明瞭だけど、裁判所はあなたがパスワードを入力するのを強制できるよ。たとえそれが書かれていなくても、無期限に contempt で拘束することができるからね。
それを論理的に考えてみて - 誰かの指紋を得るために、その人を拘束したり、手錠をかけたり、鎮静剤を使ったりすることはできるけど、誰かの脳からパスワードを引き出すことはできないよね。
それに、デバイスには指紋がたくさん付いてるから、指紋のクリーンな画像を作れれば、大抵の指紋リーダーで使えるゼラチンのコピーを作れる可能性が高いよ。今のAppleの指紋リーダーについてはわからないけど、歴史的に言うと、指紋を取り込んでPhotoshopで整えて、レーザープリンターでOHP透明フィルムに印刷して、それを型にして指紋をコピーすることができたはず。
これが適用されるのはアメリカだけなのかな?イギリスでは、知っていると合理的に期待されるパスワードを提供するよう強制できると思うんだけど。
すごくいいアイデアと実装だね!もし何か理由でこれをインストールするのにためらってるなら、これ一行で同じことができるよ: sudo bioutil -ws -u 0; sleep 1; sudo bioutil -ws -u 1 編集: 上記を実行してから画面をロックするショートカットもあるよ。ショートカットアプリでグローバルキーボードショートカットを設定できるよ。 https://www.icloud.com/shortcuts/9362945d839140dbbf987e5bce9...
これを30°未満の蓋の角度トリガーに接続すれば、蓋を下げるだけで簡単に動作させられるよ。 https://lowtechguys.com/crank
これいいね。生体認証がパスワード解除の代わりになることに対する「セキュリティアドバイス」をよく見るけど、実際にはパスワードを打ってる時に誰かや何かに録画されることの方が心配だよね。これがあれば、そういうケースにはもっと良いかも。
その時必要なのは、本当のマルチファクター認証だね。例えば、指紋とデバイスごとのPINの両方が必要。残念ながら、インフラが整っていても、そういう機能はあまり提供されてないんだよね。
Appleのプラットフォームには、明らかに2つの欠けている点があると思うんだ。Touch IDと生体認証の設定プロファイル(標準、パラノイア、超パラノイア)と、iCloudバックアップのバージョン管理だね。要するに、これに関しては一つの使い方が全てに合うわけじゃないんだ。生体認証は普通のユーザーにはすごく便利!肩越しに見られるのを減らして、安全性も高めてくれる。でも、一部のユーザーは、生体認証に対して2段階認証(例えばApple Watchを使うとか)、パスワード入力が強制されるまでの短いウィンドウが欲しいかもしれない。生体認証とパスワードの両方を要求したい場合もあるし、2段階認証が有効なときだけ生体認証を使いたいって人もいるかも。まあ、理想的なセットアップだとは言ってないけど、現状に比べて改善の余地はたくさんあるってことだね。
蓋が閉じるときの力を監視できたら完璧だね(結局、Macには加速度センサーがあるし、この情報かそれに近いものが得られるんじゃないかな?)。優しく閉じる?何も起こらない。強く、速く閉じる?タッチIDを無効にする。パニックでバン!と閉めたら?そうなったら全ての生体認証を無効にして、状態を失わせる。オプションがあれば、RAMやFileVaultキーも消去しちゃう。
最後の案が合理的だと思うなら、猫や子供を飼ってないんじゃない?
完璧な怒りのクイットマシンだね。企業向けバージョンも必要だよ:蓋を全力で閉じると、今の雇用主にプロの辞表を送信する機能があればいいのに。
> 敏感な状況では、多くの国の法執行機関や国境警備員がパスワードではできない方法で生体認証の解除を強制できる。もし脅威モデルに国家レベルの行為者が含まれるなら、生体認証を無効にしても物理メモリからデータを取得されるのを防げないだろう。ディスク暗号化を有効にして、コンピュータをシャットダウンまたはハイバネートするパニックボタンを設ける方が賢明かもしれない。ウェブサイトにはシャットダウンは「時間がかかる」と「セッションを終了する」と書いてあるけど、ハイバネートボタンは同じくらい早く効いて、セッションを保存できるよ。
警官は「国家」のために働いてるけど、彼は絶対に「国家レベルの行為者」じゃないよね。
Apple Siliconは少なくともこの方法で攻撃するのがずっと難しいけど、可能性はゼロじゃないかも。
iOSの場合は、サイドボタンと音量ボタンを同時に押し続けると電源スライダーが表示されるよ。それをキャンセルすると、次のロック解除にはパスコードが必要になる。サイドボタンを5回押すと緊急SOSが起動して、同じことができる。ずっと前からある機能だけど、ほとんど誰も知らないよね。Macでもこういう機能があるのはいいね。
俺的にはもっと簡単な方法があると思う。電源ボタンを5回以上連続で押すだけだよ。
これって、ただの見せかけに過ぎないのか、どれだけ役に立つんだろう?この例では政府が記者のノートパソコンに生体認証でアクセスするって話だけど、実際には、この管理下では法的かどうかに関わらず、このアプリは彼らを止めることはできないと思う。macOSのセキュリティモデルを誤解しているかもしれないけど、FDEが有効でも、生体認証を無効にしてロック画面に送るだけでは、ハードドライブの内容に法医学的手法で簡単にアクセスされるのを防ぐことはできないよ。せいぜい、カジュアルな人(家族やルームメイト、ランダムな覗き見者)を止めるだけじゃないかな?そうなると、生体認証から切り替える意味がなくなるよ。iPhoneにもっとプライベートな情報を保管して、そのデータをMacから隔離した方がいい。AFUモードでは、Macよりも侵入に対してずっと強いからね。
俺の解釈では、誰かにセンサーに指を押し付けさせる方が、パスワードを教えさせるより簡単だってことだよ。法的な保護を提供するわけじゃないけどね。でも、確かにそれに直面するのは少し不自然な状況だよね。
MacBook Airでこれをドキドキしながら読んでるけど、最安のMac Neo(新しい旅行仲間)で静かに笑ってるよ。
Touch IDに複数の指を登録して、アクションをスクリプトできるのかな?例えば、中指でTouch IDを解除して、人差し指でTouch IDを無効にしてパスワードを入力するまで待つとか。
異なるアカウントに異なる指を登録できるよ。アカウント間を「ファストユーザー切り替え」するのに使ってた。
タッチIDボタンを押すことで、ログイン試行が無効になってパスワードを求められるってことはないかな?指紋でログインするのは好きなんだけど、こういう「逃げ道」があったらいいなと思って。
セキュリティのために、長いパスワードを使ってマックをアンロックするモードがあったらいいな。アンロックした後は、便利さのためにタッチIDをパスワードの代わりに使いたい。だから、普通のタッチIDモードだけど、マックをアンロックするためではなくて。
> だから、普通のタッチIDモードだけど、マックをアンロックするためではなくて。えっと?システム環境設定に行って「MacのアンロックにTouch IDを使う」をオフにすればいいんじゃない?