Jailbreakme.com

% wget http://jailbreakme.com/index.html 
% more index.html
:
                
                
                

                
:
% wget http://jailbreakme.com/detector.js
% more detector.js
var agent = navigator.userAgent;
var index = agent.indexOf("OS ");
:
function get_page() {
    return model == null ? null : ('/_/' + model + '_' + firmware + '.pdf');
:

なんのことはない、UAからOSと機種を判定して、それに応じたpdfファイルを開くだけだった。


続いてPDF編

サンプルとしてiPhone3GSiOS4.0.1用を使う「iPhone2,1_4.0.1.pdf」
以下のPDF Toolsを使う。

動画のチュートリアルを参考に、追いかける。バージョンが違うのか微妙にコマンドが違うので、OBJECTを1つづつチェック。

% ./pdf-parser.py -o 1 iPhone2,1_4.0.1.pdf 
% ./pdf-parser.py -o 2 iPhone2,1_4.0.1.pdf 
:
% ./pdf-parser.py -o 13 iPhone2,1_4.0.1.pdf | more
:
 [(1, '\n'), (2, '<<'), (1, '\n'), (2, '/Subtype'), (2, '/Type1C'), (1, '\n'), (2, '/Filter'), (2, '['), (2, '/FlateDecode'), (2, ']'), (1, '\n'), (2, '/Length'), (1, ' '), (3, '10710'), (1, '\n'), (2, '>>'), (1, '\n')]

/FlateDecodeの部分があったので詳細をチェック

% ./pdf-parser.py -o 13  --raw --filter iPhone2,1_4.0.1.pdf | more
obj 13 0
 Type: 
 Referencing: 
 Contains stream
 

/Subtype/Type1C
/Filter[/FlateDecode]
/Length 10710
:
:

とするとようやくF-secureBLOGのファイルのところにありつく

参考ファイル

さらなるバイナリ編

PDFから呼ばれるバイナリは以下。TOTORO氏が言っていたやつですね。

% wget http://jailbreakme.com/wad.bin
% file wad.bin 
wad.bin: data
% hexdump -C wad.bin | more
00000000  42 42 42 42 99 a6 3b 00  15 b5 01 00 78 9c ec 7d  |BBBB..;.....x..}|
00000010  0d 9c 54 c5 95 ef bd dd  3d 43 33 34 70 81 46 87  |..T.....=C34p.F.|
00000020  71 d4 8b 8e 66 62 46 b9  83 63 32 8b 24 b6 11 75  |q...fbF..c2.$..u|
00000030  dc 60 d2 ca 60 30 62 1c  60 50 cc 23 4a 84 ec 12  |.`..`0b.`P.#J...|
00000040  1f 49 06 66 30 2c cb ac  a3 80 8f 18 66 e9 5d d9  |.I.f0,......f.].|
00000050  b7 6c 96 dd 25 09 6f 97  cd 23 79 24 ba 89 49 30  |.l..%.o..#y$..I0|
00000060  c1 80 1b 92 60 d2 1f b6  8c 83 51 92 90 84 24 c4  |....`.....Q...$.|
00000070  79 ff 7f d5 a9 ee ea 66  06 58 35 1f 6e 66 7e bf  |y......f.X5.nf~.|
00000080  9a 7b 6f 7d 9c aa 3a e7  d4 a9 53 a7 4e 55 7f fd  |.{o}..:...S.NU..|
00000090  95 cf 7f d1 71 9c 10 42  0c a1 d2 71 3c 7c cd 3d  |....q..B...q<|.=|
000000a0  26 df 0c 23 9d d0 12 c7  71 0f 99 b8 e1 bf e1 bf  |&..#....q.......|
000000b0  e1 bf e1 bf e1 bf e1 bf  e1 bf e1 bf e1 bf e1 bf  |................|
000000c0  e1 bf e1 bf e1 bf e1 bf  e1 bf 37 d8 df 37 7f f5  |..........7..7..|
000000d0  a3 57 64 e1 af c2 68 46  8e 70 9c d5 8e e7 b8 78  |.Wd...hF.p.....x|
000000e0  6d c1 bf 3b ee 68 bd 76  4e 6b 79 c9 50 e1 59 81  |m..;.h.vNky.P.Y.|
000000f0  ff 0c 11 89 b9 e3 8e 65  0b 97 2f 2b e6 2c 2f bf  |.......e../+.,/.|
00000100  6c a4 e3 cc d9 ec aa 67  c8 b1 fe 22 4e 47 b1 cc  |l......g..."NG..|
00000110  92 bb 17 2c fd c8 07 e7  df bb 78 e9 b2 0f cf 6f  |...,......x....o|
00000120  2a 87 b1 f7 ef 5c d5 4e  3e 6d 18 51 81 e1 29 18  |*....\.N>m.Q..).|
00000130  0b 96 2e bb ef ee 7b ee  1a a2 1d 7b b7 bb 4e c7  |......{....{..N.|
00000140  28 fd b4 61 d8 ef 80 71  ef 3d 4b 97 59 df a5 30  |(..a...q.=K.Y..0|
00000150  66 ee 72 9d 9d d7 eb 67  49 5f ac 3f e2 b1 2e cc  |f.r....gI_.?....|
00000160  b2 33 ae 6e bd da 4e 09  e9 86 ca 13 59 54 18 55  |.3.n..N.....YT.U|
00000170  a8 ab fd 23 8b db ed b6  9c 5c 3e 2a cf a1 ea be  |...#.....\>*....|

これが本体なのかな?というところで終了(笑)