0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

リバースエンジニアリング

Last updated at Posted at 2023-09-14

リバースエンジニアリングを行うのは下記のような目的が考えられます。

  • 類似の製品を作るために
  • セキュリティのチェックのために
  • 製品を別用途で使うために

一番目は違法となるケースだと思います。

二番目が結構流行ってるようです。

私は三番目です。IOのアドレスや挙動を調べたりします。

ターゲットは8bitの8051だったり32bitのMIPSだったりします。

昔の製品はROMだったりOTPが使われていて、再利用が難しかったのですが、最近の製品ではFlashが使われることが多く、何度も作り直すことが出来ます。

最近のFlashは1万回以上の書き込みが出来ます。

メーカーでのSOCの開発はFPGAでプロトタイプを作り、ASICで製品にしたりします。FPGAに入れるIOはIPとよばれて、自社開発のものもあるでしょうし、売り物の場合もあります。

GPLなコードがあればそれを見ます。

データーシートが手に入るものもあります。

これらがない場合は最終手段でバイナリを逆アセンブルしてリバースエンジニアリングします。

動かして、JTAGでレジスタを覗いたりすることもあります。

ルーターからルーターの機能をとっぱらってIOTのモジュールにしたりしています。

脆弱性が報告されたルーターでもルーターの機能を消しているので、脆弱性はありません。

ターゲットはHardOffで500円以下で購入できるようなものです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?