dwgx@blog:~$dwgx
> cd ../posts

Wechathacker:旧バージョン微信のプロセスメモリ研究(アーカイブ済み)

// created

かなり邪悪な旧バージョン微信のメモリ研究:当時の思いつき、粗削りなツール、そして反省まで全部ここに残してある。

Wechathacker は旧バージョンの微信クライアントに対するプロセスメモリ研究で、アーカイブしたプロジェクトだ。当時 Windows でプロセスメモリをいじっていて、ちょうど手元に旧バージョンの微信クライアントがあったので、そのまま実行中にメモリへ何が並んでいるかを読みに行った。いわゆるメモリ研究とは、要するにデバッガとメモリ読み取りの小ツールを用意して、動いているプログラムのメモリをあさるだけのことだ。旧バージョンのクライアントはほとんど保護されておらず、あさるのはとてもスムーズで、やればやるほどのめり込んでいった。

細部は展開していない。ツールとメモは全部 Wechathacker.zip(1.3 メガちょっと)に詰め込んであり、リポジトリにはこのアーカイブと SECURITY の説明、そして GPL v3 が残っているだけだ。ビルドスクリプトもなく、依存関係の一覧もない。clone して unzip すればそれで全部になる:

git clone https://github.com/dwgx/Wechathacker.git
cd Wechathacker
unzip Wechathacker.zip -d ./_review

ツールチェーンは Python でかき集めた小さなスクリプトの寄せ集めで(.gitignore には今でも Python テンプレートの痕跡が残っている)、動けばいいという粗削りなもの、純粋に頭の中の思いつきを検証しただけで、エンジニアリングとは呼べない。

成長の記録として残しておく。他人のメッセージアプリのメモリをあさるようなことは、できるからといってやっていいわけではなく、そこまで考えが至ればそれで十分だ。ここで終わり、アーカイブして、更新はしない。