ITサポーターズの仲間たち    mushi

IT関連のサポートに携わる変人が微弱な電波を発してます。
ビビビビビッ!

URL変更のお知らせとお願い 当サイトのドメインが変更となりました
http://zxvf.homeip.net から http://zxvf.stzo.net に変更となりました。
当サイトにリンクしていただいている方々にはご面倒ですが変更をお願いいたします。(2014/4/7)

まだのぞきはやめないぞ


まだのぞきはやめないぞ この子ものぞいちゃえ



この子ものぞいちゃえ

ターゲットはX400V
こいつ特別な機能がついてる。
どうなってるんだろう。
まずファーム X400V-03.01.0000.bin を落とす。
これは単純に gzip で圧縮してるだけなので解凍する。
[nozoki@fc686 X400V]$ cp X400V-03.01.0000.bin X400V-03.01.0000.gz
[nozoki@fc686 X400V]$ gunzip X400V-03.01.0000.gz
[nozoki@fc686 X400V]$ ls
X400V-03.01.0000 X400V-03.01.0000.bin

最初の方に
ustar shiratori engineer と書かれている。

200あたりからファイル情報が書かれている。
VR21W Ver:03.01.0000
ROOTIMG.BIN,03.01.0000,2006/05/18 18:53,6029312,69f03ed6fb702bb978f8a6a5f9e88896
KERNEL.BIN,03.01.0000,2006/05/18 18:53,883304,d1b9eb3e4d26bdf5a91404d6c2b5d054
CALLTBL.DEF,03.01.0000,2006/05/18 18:53,94,b5426e5026e6ccb05fff54980c1905f5
3つのファイルがあるらしい。
ありがたいことにファイルのサイズとハッシュまである。
これで頭出しさえ出きれば取り出せる。
最初のROOTIMGが600(1536)から始まっているようなので
[nozoki@fc686 X400V]$ dd if=X400V-03.01.0000 of=rootimg.bin bs=1 skip=1536 count=6029312
次にKERNEL.BIN
[nozoki@fc686 X400V]$ dd if=X400V-03.01.0000 of=kernel.bin bs=1 skip=6031360 count=883304
これで切り出したファイルのMD5を確認。成功してる。
[nozoki@fc686 X400V]$ md5sum rootimg.bin kernel.bin
69f03ed6fb702bb978f8a6a5f9e88896 rootimg.bin
d1b9eb3e4d26bdf5a91404d6c2b5d054 kernel.bin

おっと、この X400V-03.01.0000.bin 間違えてWin上で解凍ソフトに送ってしまったら簡単に解凍できて、
全部取り出せたぞ。わざわざ dd する必要なかったわ。がっくし。


さて、rootimg が jffs2 らしいので mtd をインストールする。
[root@fc686 X400V]# yum install mtd-utils

ん?読もうと思ったら jffs2reader がない。
mtd-utils の src.rpm を拾ってきて解凍してソースを眺めてみる。
すると、Makefile の中で jffs2reader がコメントアウトされてる。
コメントを外して rpmbuild してみる。

えらーー

仕方ないので、本家からソースを持ってきて make してみる。

やっぱりえらーーー

カーネル2.6だとダメ?
なんとかしてめーくしてーーーー。

コレガとかも例のやつなんか jffs2 なんだよな。読みたいな。

うーん。昔のVineでも入れて・・・
なんとfdイメージ落とすところから10分でインスコ完了。すげー。
そんでなつかしーー。えっと、カーネル上げたときはlilo.conf書き換えてコマンド実行しなくちゃだっけか?
いいやめんどくせー。

とりあえずうぷぐれしてから目的の mtd を make する。
jffs2readerのコメントを外して make するも、やはり同じエラーでだめ。
とりあえず標準の状態で make して入れる。
問題の jffs2reader はこいつだけ別途 make してみる。
[nozoki@vine32 mtd-utils-1.0.0]$ gcc -o jffs2reader -lz jffs2reader.c
[nozoki@vine32 mtd-utils-1.0.0]$
ん?
もしかして、できた?
lsしてみるとちゃんとできてる。早速 /usr/sbin/ に jffs2reader を放り込んで準備完了。

だめだー rootimg.bin のエンディアンが違うようで読めない。
そこでビッグエンディアンに変換してやる。
[nozoki@vine32 X400V]$/usr/sbin/jffs2dump -b -e rootimg-b.bin -c rootimg.bin
変換したやつを読んでみる。
[nozoki@vine32 X400V]$/usr/sbin/jffs2reader rootimg-b.bin
drwxr-xr-x 1 0 0 0 May 18 2006 /dev/
drwxr-xr-x 1 0 0 0 May 18 2006 /dev/pts/
crw-r--r-- 1 0 0 1, 202 Mar 14 2003 /dev/vodspa1
crw-r--r-- 1 0 0 7, 201 Mar 14 2003 /dev/kudp7
crw-r--r-- 1 0 0 6, 201 Mar 14 2003 /dev/kudp6
crw-r--r-- 1 0 0 5, 201 Mar 14 2003 /dev/kudp5
crw-r--r-- 1 0 0 4, 201 Mar 14 2003 /dev/kudp4
crw-r--r-- 1 0 0 3, 201 Mar 14 2003 /dev/kudp3
crw-r--r-- 1 0 0 2, 201 Mar 14 2003 /dev/kudp2
以下たくさん続く。

キタ━━━━━━(゚∀゚)━━━━━━ !!

あわてて取り出す。
[nozoki@vine32 X400V]$/usr/sbin/jffs2reader rootimg-b.bin -f /image/www.tgz > www.tgz
[nozoki@vine32 X400V]$/usr/sbin/jffs2reader rootimg-b.bin -f /image/etc.tgz > etc.tgz
うおーー、スクリプトの中身がみえるーー。

やっぱ、Vineは神だな。


色々と見ていると面白いね。
Wan側の接続とLan側のポートでブリッジデバイス作ってたり。難しいことしてる。
要するに、外側のデバイスがLanポートとブリッジしてから接続してるんだ。
なるほど、これをやるとブリッジで通るんだ。
なんでうちのサーバーで接続しない状態で、クライアントのWinからPPPoE接続ができないのかなーって思ってたんだ。
なんか難しいけど、こうやって外側のeth0と内側のeth1をブリッジしてからbr0でppp0で接続すればIPsecも通る気がするね。
そんでebtablesとiptablesを併用してるんだな。
L2TP/IPSec のiptables がなるほどって感じ。今度真似してやってみようかな。ブリッジしないとダメかな?
うーん、ルーターってすごいなー。
パターンファイルは wget で持ってきてるんだ。

[nozoki@vine32 X400V]$ /usr/sbin/jffs2reader rootimg-b.bin -f /usr/local/trend/bin/daemon_control.sh > mnt/daemon_control.sh

すごく面倒なんだけど、こうやって一個一個取り出して読んでます。
面倒だから一括して取り出すスクリプトでも書くかな。
でも、ほとんどバイナリなんだよね。

そういえば、コレガも jffs2 だったな。いかんいかん。
明日の準備しなくちゃ。

< 過去の記事 [ 12月の 全てのトピック リスト ] 新しい記事 >
via IPv4

twitter

●→ トップページ

12/14(Fri) 04:38:13

サイト内検索

 

トピックのカテゴリー

全てのトピック
今日の思考回路
趣味について
ニュース!
Technical
Linux
OSX
その他いろいろ

みんなのリンク

全てのリンク
ニュース
アミューズメント
生活
Tools
Windows
OS X
Technical
その他のリンク
MACアドレスで位置情報検索


Archives




新しいトピック
最新:05/08 18:22


Valid XHTML 1.0 Transitional

Syndicate this site(XML)

RSS1.0(RDF)

RSS2.0(RSS)

SpecialThanks
011602646

....   

Copyright (C) 2005-2018 Amato. All rights reserved.