からインポートここ、Moon.pngという画像ファイルにステガノグラフィセクションがあります。これにより、ddのようなものを使用して944と411781の間のZlibを抽出する方法を考えました。
$> binwalk moon.png
DECIMAL HEXADECIMAL DESCRIPTION
--------------------------------------------------------------------------------
0 0x0 PNG image, 600 x 593, 8-bit/color RGB, non-interlaced
290 0x122 Unix path: /www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef=
944 0x3B0 Zlib compressed data, best compression
411781 0x64885 Zip archive data, encrypted at least v1.0 to extract, compressed size: 35, uncompressed size: 23, name: flag.txt
411976 0x64948 End of Zip archive
作成者がこれを行いましたが、dd if=./moon.png of=./moon.zip skip=411781 bs=1
これは開始点0から411781までのみ機能します。
答え1
作者は実際にファイルからZIP部分を抽出しました。 411781から始まります。デフォルトでは、ファイルの残りの部分はここからコピーされます。
skip
bs=1
コピーする前に、指定された数のブロックを最初から移動します(1ブロックは1バイトなので)。したがって、「zlib」部分を取得するには、次のものが必要です。
dd if=./moon.png of=./moon.zlib skip=944 count=410837 bs=1
count
この時点でコピーされたブロックの数。したがって、ここの数は終了位置からスキップされたブロック/バイト数を引いたものです(411781-944 = 410837)。