先日NEX-6を手に入れてファームウェアをあげるとき、ふとこのファームウェアの中身を見たくなって調べてみたら、なんとSONYのNEXシリーズのファームウェアを解析するためにアンパック(暗号化を解除して元のディレクトリ構造を復活させること)できるfwtool.pyというツールがあるのを見つけて、ちょっと遊んでみました。
ma1co/fwtool.py: A tool to unpack Sony camera firmware images
自力で.binファイルは取り出しましたが、ご丁寧にexeファイルから取り出す機能までついています。なので動かすのは簡単です。展開すると、まんまLinuxの構造が出てきて、ifconfigやらgzipやらdhcpdやらのARM実行ファイルや、カメラレンズのプロファイル(フォーマットのわからないバイナリでこれは解析できなかった)とかが出てきて面白かったです。
でも、一番面白かったのは、アイコンの詰まったttfファイル。フォントの形式で保存されているとは意外。ttfからPNGへの変換は困ったけど、一文字ごとにはimage magickでできるので、Webにあったフォントビューワで中に入っている文字のコードポイントの範囲を調べて、それをimage magickに突っ込むシェルスクリプトで変換しました。これでほぼすべての639個は取り出せたので満足しました。
このアプリケーション、他にもリパッキングもできるので、頑張ればオリジナルファームウェアも作れますよ。
他にも、中にAndroidのサブセット(?)が入っていてアプリをインストールできるPlay Memories Camera Appという機能があって、これで任意のアプリケーションをインストールできるようにしたり、いろいろおもしろそうなことをしている人がいるようですね。
sony-hack:hack-development [Personal View FAQs Wiki]
他社製カメラのハック情報はこちらです
start [Personal View FAQs Wiki]