
🐸 何でも識別します。pyWhatは、メールアドレスやIPアドレスなどを簡単に識別できます。.pcapファイルやテキストを入力すると、それが何かを教えてくれます! 🧙♀️
➡️ Discord ⬅️
あらゆるものを識別する最も簡単な方法
pip3 install pywhat && pywhat --help
What とは?
想像してみてください。あなたは何か不可解なテキスト 🧙♂️ 0x52908400098527886E0F7030069857D2E4169EE7 や dQw4w9WgXcQ に出くわし、それが何なのか疑問に思っています。どうしますか?
what を使えば、what "0x52908400098527886E0F7030069857D2E4169EE7" と尋ねるだけで、what が教えてくれます!
what の役割は、何かが 何 であるかを識別することです。ファイルでもテキストでも!あるいはファイルの16進数でも!ファイル 内の テキストなら?それも対応しています!what は再帰的に動作し、テキスト内のあらゆるものを識別し、それ以上のことまで行います!
$ pip3 install pywhat
または
# installs optional dependencies that may improve the speed
$ pip3 install pywhat[optimize]
$ brew install pywhat
または MacPorts ファンのために:
$ sudo port install pywhat

あなたは WantToCry という新しいマルウェアに遭遇しました。Wannacry を思い出し、研究者がコード内のキルスイッチを発見したことで阻止されたことを覚えています。
Wannacry にハードコードされたドメインが登録されると、ウイルスは停止するようになっていました。
What を使用してマルウェア内のすべてのドメインを特定し、ドメインレジストラの API を使用してすべてのドメインを登録します。

ネットワーク攻撃による .pcap ファイルがあるとします。What はこれを識別し、以下の情報を素早く見つけ出します:
what を使えば、pcap 内の重要な情報を数分ではなく数秒で特定できます。
PyWhat を使用して、以下のようなバグ報奨金で収益につながるものをスキャンできます:
次のコマンドで PyWhat を実行します:
pywhat --include "Bug Bounty" TEXT
これで上記が行われます。
以下にいくつかの例を示します 👇
# Download all repositories
GHUSER=CHANGEME; curl "https://api.github.com/users/$GHUSER/repos?per_page=1000" | grep -o 'git@[^"]*' | xargs -L1 git clone
# Will print when it finds things.
# Loops over all files in current directory.
find . -type f -execdir pywhat --include 'Bug Bounty' {} \;
# Recursively download all web pages of a site
wget -r -np -k https://skerritt.blog
# Will print when it finds things.
# Loops over all files in current directory.
find . -type f -execdir pywhat --include 'Bug Bounty' {} \;
追記: バグ報奨金だけでなく、さらに多くのフィルターをサポートしています!pywhat --tags を実行してください。
ファイルがあって、その中から有用な構造化データを見つけたいときはいつでも、What が役立ちます。
または、何かのテキストに出くわしてそれが何かわからない場合、What が教えてくれます。
ファイルの開き方: what 'this/is/a/file/path' のようにファイルパスを渡せます。What はそれがファイルであることを自動的に認識します!
ディレクトリ全体はどうでしょうか?What はそれも処理できます!ファイルを再帰的に検索し、必要なすべての情報を出力します!
場合によっては、AWS に関連するものだけ、またはバグ報奨金や暗号通貨に関連するものだけを表示したいことがあります。
what --rarity 0.2:0.8 --include Identifiers,URL https://skerritt.blog のようにフィルタを使用して出力を絞り込めます。詳細は what --help を参照してください。
すべてのフィルターを表示するには、pywhat --tags を実行してください!フィルターを組み合わせることもできます。たとえば、Ripple を除くすべての暗号通貨ウォレットを表示するには、次のようにします:
pywhat --include "Cryptocurrency Wallet" --exclude "Ripple Wallet" 1KFHE7w8BhaENAswwryaoccDb6qcT6DbYY
ソート: what -k rarity --reverse TEXT を使用して出力をソートできます。詳細は what --help を参照してください。
エクスポート: what --json を使用して JSON にエクスポートでき、結果は what --json > file.json で直接ファイルに送れます。
境界なしモード: What には文字列内で識別情報をマッチさせる特別なモードがあります。デフォルトでは CLI で有効、API では無効です。詳細は what --help または API ドキュメント を参照してください。
PyWhat には API があります!詳細はこちらのリンク https://github.com/bee-san/pyWhat/wiki/API をご覧ください。
what はコントリビューターによって成長するだけでなく、コントリビューターなしでは存在できません!特定のものをチェックするための新しい正規表現を追加したい場合は、こちらのドキュメントをご覧ください。
より迅速な議論のために Discord への参加をお願いしていますが、必須ではありません:
バグ報奨金に特化した正規表現データベースの作成に関する Dora の貢献に感謝します。このデータベースを利用させていただきました。