これは、オーディオデータをキャプチャおよび分析するためのコマンドラインおよびGUIツールのコレクションです。
最も興味深いツールはKeyTapと呼ばれます。コンピューターのマイクからキャプチャされたオーディオを分析することによってのみ、押されたキーボードキーを推測できます。
詳細については、このブログ投稿を確認してください。
keytap:説明といくつかのランダムな考え
ビデオ:アクション中のkeytapの短いデモ
オンラインで試してみてください:
KeyTap2ツールは、オーディオからテキストを回復するためのもう1つの興味深いツールです。トレーニングデータは必要ありません - 代わりに、英語の文字とn -gramsの頻度に関する統計情報を使用します。
ツールのより詳細な説明はこちらから入手できます:keytap2ディスカッション
ビデオ:keytap2の短いデモが動作しています
CTF:テキストが入力されていると推測できますか?
オンラインで試してみてください:
このバージョンは、KeyTap2と比較して、大幅なアルゴリズムの改善とより良いN-Gram統計を導入します。攻撃は現在完全に自動化されており、テキスト回復プロセス中に手動の介入を必要としません。
ビデオ:keytap3を使用する短いデモ
ビデオ:keytap3を使用する別の例
keytap3のGUI
キーボードがkeyTapに対して脆弱かどうかを確認してください。
「これは非常にうまく機能します。
あなたが作成したものを実現することを願っています(そして世界のすべての人が利用できるようにしました)。」 - ffpip
「私はそれを試したばかりで、それは信じられないほどうまく機能します。それは私がメカニカルキーボードの使用をやめたくなるようなものです。」 -arawebnetwork
「この攻撃とヴァン・エック・フレーキングは、エドワード・スノーデンがパスワードやその他の機密情報を入力しながら、彼自身と彼のラップトップの上に毛布を引っ張る理由です。」 - aarchi
「これがメカニカルキーボードユーザーにふさわしいものです」 - スーパーガイ
「ファック..」 - lluis franco
依存関係:
SDL2-オーディオをキャプチャし、GUI Windows libsdlを開くために使用されます
[Ubuntu]
$ sudo apt install libsdl2-dev
[Mac OS with brew]
$ brew install sdl2
[MSYS2]
$ pacman -S git cmake make mingw-w64-x86_64-dlfcn mingw-w64-x86_64-gcc mingw-w64-x86_64-SDL2
FFTW3 (オプション) - ヘルパーツールの一部はフーリエ変換FFTWを実行します
Linux、FreeBSD、Mac OS、Windows(MSYS2 + MINGW)
git clone https://github.com/ggerganov/kbd-audio
cd kbd-audio
git submodule update --init
mkdir build && cd build
cmake ..
make
利用可能なツールの短い要約。ツールのステータスが安定していない場合は、問題と非最適な結果を期待してください。
名前 | タイプ | 状態 |
---|---|---|
記録 | 文章 | 安定した |
記録的な | 文章 | 安定した |
遊ぶ | 文章 | 安定した |
プレーフル | 文章 | 安定した |
view-gui | GUI | 安定した |
view-full-gui | GUI | 安定した |
キー検出器 | 文章 | 安定した |
keytap | 文章 | 安定した |
keytap-gui | GUI | 安定した |
keytap2-gui | GUI | 安定した |
keytap3 | 文章 | 安定した |
keytap3-gui | GUI | 安定した |
- | 余分な | - |
guess-qp | 文章 | 実験 |
推測-QP2 | 文章 | 実験 |
keytap3-multi | 文章 | 実験 |
規模 | 文章 | 実験 |
サブリーク | 文章 | 実験 |
Key-Average-Gui | GUI | 実験 |
keytap2 | 文章 | 実験 |
記録的な
ディスク上の生のバイナリファイルにオーディオを記録します
./record-full output.kbd [-cN]
プレーフル
再生レコードフルツールを介してキャプチャされた録音
./play-full input.kbd [-pN]
記録
タイピング中にのみオーディオを記録します。 KeyTapのトレーニングデータを収集するのに役立ちます
./record output.kbd [-cN] [-CN]
遊ぶ
再生レコードツールを介して作成された録音
./play input.kbd [-pN]
keytap
マイクオーディオキャプチャを介してプレスキーをリアルタイムで検出します。レコードツールを介してキャプチャされたトレーニングデータを使用します。
./keytap input0.kbd [input1.kbd] [input2.kbd] ... [-cN] [-CN] [-pF] [-tF]
keytap-gui
マイクオーディオキャプチャを介してプレスキーをリアルタイムで検出します。レコードツールを介してキャプチャされたトレーニングデータを使用します。 GUIバージョン。
./keytap-gui input0.kbd [input1.kbd] [input2.kbd] ... [-cN] [-CN]
オンラインデモ:https://keytap.ggerganov.com
keytap2-gui record.kbd n-gram-dir [-pn] [-cn] [-cn]
マイクオーディオキャプチャを介して押されたキーを検出します。言語に関する統計情報(n-gram周波数)を使用します。トレーニングデータは必要ありません。 「Record.kbd」入力ファイルは、 Record-Fullツールを介して生成する必要があり、分析されるオーディオデータが含まれています。 「n-gram-dir」フォルダーファイルには、対応する言語のn-gram確率ファイルを含める必要があります。
./keytap2-gui record.kbd ../data
オンラインデモ:https://keytap2.ggerganov.com
keytap3
オーディオ録音から未知のテキストの完全に自動化された回復。
./keytap3 input.kbd ../data [-cN] [-CN] [-pF] [-tF] [-FN] [-fN]
オンラインデモ:https://keytap3.ggerganov.com
keytap3-gui
keytap3ツールのGUIバージョン。
./keytap3-gui input.kbd ../data [-cN] [-CN] [-pF] [-tF] [-FN] [-fN]
オンラインデモ:https://keytap3-gui.ggerganov.com
view-full-gui
レコードフルツールで記録された波形を視覚化します。オーディオデータを再生することもできます。
./view-full-gui input.kbd [-pN]
view-gui
レコードツールで記録されたトレーニングデータを視覚化します。オーディオデータを再生することもできます。
./view-gui input.kbd [-pN]
ツールのパフォーマンスに関するフィードバックは非常に高く評価されています。ここにコメントをドロップしてください。