同軸モデムをハックしたお話
突然ですが、我が家(実家、持ち家、3F建て)には宅内LAN設備がありません。
ケーブルを通すための穴もなく、有線LANを通すためには屋外に配線するしかない状況でした。
ところが最近、同軸ケーブルが集まる空間があることが判明し、それを利用して有線LAN環境が構築できないかと考えていました。
定期的にネットワーク機器を買わないと死んでしまうのかもしれない
我が家の構造
よくある1カ所にケーブルが集まっており、分配器で各部屋に電波を分配する仕組みとなっていました。
数えてみると7分岐でした。多すぎだろ…
とりあえず同軸モデムは使える構成に見えます。
技術・装置について
同軸ケーブルを使用してのLAN構築にはいくつか規格があるようです。
(僕が触ったもののみ記載しています)
MoCA
アメリカでよく使われている規格のようで、 MoCA Home™ 2.5 では 2.5Gbps までの通信が可能なようです。
周波数は 1125〜1675 MHz
で、日本では BS-IF の周波数帯(アンテナで受信した後同軸ケーブル内を通る際の周波数)と被ります。
僕が購入したのは Translite の TL-MC84 です。
僕の環境では 10cm のケーブルで 890Mbps、 3F から 1F までで 600Mbps ぐらいの速度が出ていました。
しかし、購入時にはBS-IFについて認識しておらず、 TV終端装置からBSの電波が入るようになった現状では使用できませんでした。
なんとか使用していない周波数のみ使用できないかと頑張ってみましたが、うまくいきませんでした。
うーん無駄!w
G.hn
というわけで MoCA は諦めて、次に見つけたのが G.hn です。
日本で発売されているものはこちらが多いようです。
1Gbps までの通信が可能なようで、周波数は 5〜200MHz
となっています。
日本ではCATVの帯域と被るようです。
日本からはいくつかのメーカーから発売されていそうだったのですが、今回購入したのは ZEXELON の ZWX-2000CSW2-HN です。
まだ 10cm 程度の同軸ケーブルでしか確認できていませんが 300~400Mbps ぐらいは出ていそうでした。
規格上では 200Mhz までの規格ですがこの製品は 60Mhz までしか利用できません。
本当は 200Mhz まで使えるものが欲しかったのですが法人向けモデルしか存在しておらず、問い合わせたところ個人ではやはり購入できないようだったので諦めて個人向けのモデルを買うことにしました。 低周波数帯でこの帯域の少なさはかなり痛いですが、詳細は後述します。
管理画面へのアクセスがめっちゃめんどくさい問題
どっちのデバイスもそうなんですが、IPアドレスが固定で設定されていて管理画面へのアクセスが非常に面倒です。
TL-MC84 は 192.168.144.1
が、 ZWX-2000CSW2-HN は 10.10.10.1
が設定されており、管理画面にアクセスするためにLANケーブルを接続した後、PCのサブネットの設定をしてアクセスする必要があります。
DHCPを利用するように設定できるんだからデフォルトでDHCPじゃだめだったんですかね…。
ハックしてしまった話
対策されちゃいそうな感じもしますが、怒られたら消します。
(僕へのお問い合わせは左ペインの コンタクト からお願いします。)
後述していますが、帯域緩和による速度の向上はあまり実感できませんでした。
いつ対策されるのかもわかりませんし、これを前提にこの機器を購入するのはやめておいた方がいいと思います。
で、この ZWX-2000CSW2-HN ですが、ハードウェア的には ZWX-2000CSW2(WiFi機能付き子機/法人向けモデル) そのもので中のソフトウェアが違うだけのようです。
2つのデバイスが搭載されており、1つは Ralink 製のユーザーがアクセスする管理画面(管理画面自体は内製っぽい)と無線LAN用のデバイスで、もう1つは Zinwell 製の G.hn 用のデバイスです。
開けてないので内部がどのようにつながっているかはわかりませんが、機器を実際にLANに接続した際に DHCP で割り当てられる知らない機器が存在することで確認できます。
IPアドレスが割り当てられると管理画面の装置情報からも確認できます。
そしてそのIPアドレスにアクセスすると謎の管理画面への入り口が…。
どうやらパスワードで保護されているようです。
Ralink の管理画面から G.hn の情報が見えることから、管理画面のコードにヒントがありそうです。
とりあえず telnet で Ralink の方のアドレスに対してアクセスしてみます。
$ telnet 10.0.0.50
Trying 10.0.0.50...
Connected to 10.0.0.50.
Escape character is '^]'.
ralink login: admin
Password:
BusyBox v1.12.1 (2021-10-06 14:03:56 CST) built-in shell (ash)
Enter 'help' for a list of built-in commands.
# ls
home bin var dev usr sbin media etc admin
proc sys lib tmp mnt init etc_ro jffs2
全部見えてる!ということで管理画面のコードを探してみます。
# ls /etc_ro/www/cgi-bin/
status.cgi WANSet.cgi GetDeviceReport.cgi SetLang.cgi
setNTP.cgi getNTP.cgi DeviceName.cgi SW_VersionCheck.cgi
省略
あっさり見つかりましたね。対策されそう!とりあえず G.hn の状況を返している ghn_status.cgi
を開いてみましょう。
コードを載せてしまうといろいろと問題があるので言葉で説明しますが、中でenvファイルのような形式で情報をファイルに出力させるコマンドを実行している部分があります。そのコマンドの -w
オプションの文字列がパスワードになっています。
あっ…入れちゃいましたね。
設定変更
- おそらく本来ユーザーが利用する管理画面の方からデバイスの初期化を実行してもここの設定はリセットされません。この画面から初期化を実行するとデバイスが利用できなくなる可能性があります。
- この管理画面これらの設定を変更するとサポートが受けられない可能性があります。
- 設定変更は自己責任でお願いします。
G.hn
メニューの Force node Type を変更することで、親機と子機を固定できそうです。もしかして法人向けモデルって…いや、やめておきます。
また暗号化は無効化されているのでセキュリティを意識したい方は設定しておくことをおすすめします。
IP
メニューから、勝手にDHCPから取ってこられて困っていたIPアドレスを固定にしたり、NTPサーバーやアクセス間隔を変更することができます。
そして、 G.hn spectrum
メニューから制限されていた帯域(2 ~ 60Mhz)を変更することができます。
Remove user notch で 0 を指定すると削除できると思いますが、
- 付属のハイパスフィルタでは 60Mhz までのため、問題が発生する可能性がある
- FM ラジオの帯域とかぶる
- 手元で外してみたが、速度の向上はあまり感じられなかった
- Available Connections の Phy Tx/Rx の表記は変わっていた
- 接続台数が多いときのみ効果がある感じなのかもしれない…
ため、削除する意味はあまりなさそうでした。
製品を開いていないのでわからないですが、物理的に帯域を制限している可能性もありそうです。
というわけであんまり成果はありませんでしたが楽しめました。
ここまでいろいろやりましたが…
なんと ZWX-2000CSW2-HN を使用して 1F から 3F にリンクを確立できませんでした!(ミス含めて6万近くつかってこの様である)
クソ暑い中天井裏の分配器に顔を突っ込みながら確認した感じだと、分配器を通すとリンクが確立できなくなっておりせっかくなので新しい分配器を購入して付け替えることになりました。
低周波数帯を通さなくなっちゃってるんですかね。まあ築15年ちょっとでずっと使っているヤツなので寿命ということにしておきましょう。
(ちなみにだめでした、分配数が多いのが原因だったっぽいのでTVを諦めて直接部屋同士のケーブルを接続することで雑に対応しました、そして ZWX-2000CSW2-HN はあんまり安定してないので TL-MC84 を通信に使って ZWX-2000CSW2-HN は単なる WiFi の AP としての用途に…w)
おわりに
で、なんでここまでがんばって宅内LANを構築しようとしているのかというと、WiFi接続の地震計を1Fと3Fに設置したいからです。
有志が自由に参加できる強震観測網を計画しており、それに向けて自宅の無線LAN環境を強化しようとしていたところでした。
強震観測網についてはまた別の記事で書こうと思います。ではまた!