binwalk抽出ファイルを切り捨てる


1

binwalkを使ってファームウェアダンプからイメージファイルを抽出するとき、私はたくさんの有効なpngを得ます。私の問題は次のとおりです。これらのファイルはすべて非常に大きいです。それらは正しい始まりから始まりますが、残りのダンプと同じ長さです。これらのファイルを自動的にカットする方法は?

回答:


1

多くの場合、PNGを... PNGに変換するために画像コンバータを使用することができます。

多くの画像処理プロセッサは、画像ファイル自体のヘッダに基づいて画像を読み取ります。つまり、画像を読み込むために必要なものだけが読み取られます。その後、おそらく新しい名前で画像を保存します。

私は作成しました fat PNG (ハ!) cat いくつかのファイルをまとめて、PNG、それから3MegのPDFを作成します。

  • feh 画像を正常にロードします

  • gimp 画像をロードし、それを適切に保存し、余分なゴミを落とします。

  • convert (から imagemagick パッケージ) convert fat.png jcraig.png 余分なものを取り除きます。

  • gwenview (KDEアプリ)ファイルを読み、正しく保存しました。

私は自分がインストールしたことがわかっていると私が思うことができたいくつかのアプリケーションを試しただけです。の imagemagick 効用 convert 有望でスクリプト可能です。

for f in *.png; do
  convert "$f" "skinny.$f"
done

おそらくあなたの重いイメージを軽くしなさい。


ありがとう、それが私が推測したことです。もちろん、これはロスレス圧縮ファイルでのみ機能します。他のファイルの種類とはどうすればよいのでしょうか。
Max Ried

それは長さ/サイズヘッダを持っているどんなファイルタイプでも動作するはずです。 GIF / JPG / PNG / BMP / TIFF / PBM / PPM / PGM ...など。 XPMでも簡単に復元できます(とにかくすべてのテキストです)。 Zipファイルには長さの説明があります。初期データを解析できれば、どれくらいの長さなのかもしれません。ファイルの先頭から始まり、必要以上に長い場合は、ほぼすべてのファイルを回復する方法を想像できます。間違いなくできる。ユーティリティはファイルを正しく切り捨てるので、イメージは最も簡単です。
lornix

2

私は同じ質問をしましたが、おそらくもっとエレガントな答えにたどり着きました。

binwalk -D 'png:png:convert %e %e' myfile.bin

それは実行されます convert 任意の抽出されたPNGファイル上の場所にプログラム。


実際、私はPNGを取り除く独自のCプログラムを書くことになりました。覚えていればここに投稿することができます。
Max Ried
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.