SlideShare ist ein Scribd-Unternehmen logo
1 von 18
Interface Device Laboratory, Kanazawa University http://ifdl.jp/
“The Hardware Hacker”の
リバースエンジニアリングの世界
秋田純一
(金沢大学)
2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
簡単に自己紹介
本業:金沢大の教員
専門:集積回路、イメージセンサ、インタラクション
好きなプロセスはCMOS 0.35um
本業2:Maker、ハンダテラピスト
好きな半田はPb:Sn=40:60
http://j.mp/make_lsi
OpenSourceな
LSI設計・製造
MakeLSI:
Lチカチップ動画
2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
何がヤバいのか?
チップレベルでニセモノを見分ける
SDカードの制御マイコンの脆弱性をついて
任意コード実行(SDカード上で)
携帯チップセットを流用して、資料がないブー
トローダのアクセス内容をオシロで解析して
動作を推測、デバッガを接続
抵抗・LED特性バラツキによるLED輝度ばらつ
きをおさえるための、量産のための設計
(DFM; Design for Manufacturing)
量産発注するためのノウハウ
2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
どれぐらいヤバいのか?
2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
工場見学
USBメモリの工場(といっても手作業)
2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
工場に発注するためのHowTo
量産設計(DFM)、修正票(ECO:メールだめ)
※定電流ICを使うのが、結局安上がり
2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
ニセモノと公开(GonKai)
公开≒Open Source
知財が共有された状態(法的根拠なし)
「パクられる」を、損害と考えるか?
普及と考えるか?
「様々なニセモノが作られる」のと表裏一体
2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
ニセモノ:ST19CF68の例
マーキングは精巧
中身はぜんぜん別物
チップを見ないとわからない
Fairchild製じゃん(しかもぜんぜん別の74245)
明らかにパッド(ピン)数がおかしい
2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
ニセモノ:microSD
2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
microSDガチャをひいてみた
2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
FPGAのES品
ES(EngineeringSample)品
量産前に評価用に配布され、本来は破棄する
ESマークを消して売っている例がある(丸儲け)
2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
ニセモノの分類
 外見だけ(中身は別or空)
 まあすぐわかる
 再生品(基板からはがす)
 アイソトープ試験や元素分析で見分ける
 マーキング変更
 パッケージのマーキングを変えて、上位品やRoHS対応品に見せる
 チップIDのヒューズまで書き換えてあるのもある
 かなり厄介
 ゴースト・シフト
 部品工場で正規稼働時以外につくる
 基本、ホンモノなので、一番厄介
 質の悪い互換品
 別設計・外見だけホンモノっぽい
 ※たまに「ニセモノ互換品のほうが高性能」ということも
2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
ニセモノのオペアンプJRC4558
JRC(新日本無線)のオペアンプNJM4558の
「互換品」JRC4558(0.16RMB=2円)を通販で
見つける→お店へ行って買って解析して
みた(知人の話)
パッケージはそれっぽい
チップは小さくなってる!特性もあがってる!
2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
PICの開封
パッケージを開封(専門業者もある)
2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
PICのEEPROM領域
ヒューズEEPROM領域のシールドをよけて、
斜めから紫外線をあてて消す(UV-EPROMと原理は同じ)
2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
SDカードのハック
SDカードの制御MCU(8051クラス)
テスト用コードが入っている
脆弱性があるものも
CMD63+”APPO”(ノック)でFW読み込みモード
=プログラムが実行できる
2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
山寨携帯のハック
公开携帯のチップセットMT6260(3USD)
OS、ブートローダに関する公開情報がない
まずはROMダンプ(基板からはがして)
起動シーケンスをMSO(オシロ)で解読
ROMつけはずしが面倒
なのでエミュレータ
メモリの読み書き、
逆アセンブル
QEMUを流用
ニセモノか確認(X線)したら、
3チップ入り(MCM)だった!
(低コスト化のため)
2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
Bunnieが日本にやってくる!
企画シンポジウム
「回路とシステムの研究を「社会実装」するまで」
2019年3月19日(火)午後
• 1310 - 1410 : Bunnie, “Guerrilla Production
Tactics: Unconventional Supply Chain for
Unconventional Products”
• 1420 - 1450 : 秋田「電子工作からエレクトロ
ニクスへ:近年の地殻変動」
• 1450 - 1520 : 高須「頒布はシェアの一部:
MakerPro」
• 1520 - 1550 : 市川「デジタル工作機械による
アイディアの具現化とデプロイ」
• 1600 - 1700 : Panel Discussions

Weitere ähnliche Inhalte

Mehr von Junichi Akita

タイプライターを改造してキーボードを作ってみた
タイプライターを改造してキーボードを作ってみたタイプライターを改造してキーボードを作ってみた
タイプライターを改造してキーボードを作ってみたJunichi Akita
 
3Dプリンタを改造してチップマウンタを作ってみたら物理的にForkされた件
3Dプリンタを改造してチップマウンタを作ってみたら物理的にForkされた件3Dプリンタを改造してチップマウンタを作ってみたら物理的にForkされた件
3Dプリンタを改造してチップマウンタを作ってみたら物理的にForkされた件Junichi Akita
 
中国でスタックチャンに会ってみた
中国でスタックチャンに会ってみた中国でスタックチャンに会ってみた
中国でスタックチャンに会ってみたJunichi Akita
 
M5Stackでインターンしてみた
M5StackでインターンしてみたM5Stackでインターンしてみた
M5StackでインターンしてみたJunichi Akita
 
左手サブキーボードを作り続けてみた
左手サブキーボードを作り続けてみた左手サブキーボードを作り続けてみた
左手サブキーボードを作り続けてみたJunichi Akita
 
STM32F互換マイコン(自称を含む)を 軽く解析してみた
STM32F互換マイコン(自称を含む)を軽く解析してみたSTM32F互換マイコン(自称を含む)を軽く解析してみた
STM32F互換マイコン(自称を含む)を 軽く解析してみたJunichi Akita
 
基板設計の基礎知識と実践(別名:基板と仲良くなる方法)
基板設計の基礎知識と実践(別名:基板と仲良くなる方法)基板設計の基礎知識と実践(別名:基板と仲良くなる方法)
基板設計の基礎知識と実践(別名:基板と仲良くなる方法)Junichi Akita
 
深センで2ヶ月過ごしていろいろ試してみた
深センで2ヶ月過ごしていろいろ試してみた深センで2ヶ月過ごしていろいろ試してみた
深センで2ヶ月過ごしていろいろ試してみたJunichi Akita
 
Makeと半導体の境界
Makeと半導体の境界Makeと半導体の境界
Makeと半導体の境界Junichi Akita
 
CH551/2/8/9を炙ってみた
CH551/2/8/9を炙ってみたCH551/2/8/9を炙ってみた
CH551/2/8/9を炙ってみたJunichi Akita
 
うっかりチップマウンタを自作して薄い本を書いてみた
うっかりチップマウンタを自作して薄い本を書いてみたうっかりチップマウンタを自作して薄い本を書いてみた
うっかりチップマウンタを自作して薄い本を書いてみたJunichi Akita
 
多様な学生の教材としてしてのプロトタイピング用マイコンボードの可能性
多様な学生の教材としてしてのプロトタイピング用マイコンボードの可能性多様な学生の教材としてしてのプロトタイピング用マイコンボードの可能性
多様な学生の教材としてしてのプロトタイピング用マイコンボードの可能性Junichi Akita
 
道具としての半導体設計:Lチカを題材として
道具としての半導体設計:Lチカを題材として道具としての半導体設計:Lチカを題材として
道具としての半導体設計:Lチカを題材としてJunichi Akita
 
ニセモノチップをみてみた&チップを流用する例をみてみた
ニセモノチップをみてみた&チップを流用する例をみてみたニセモノチップをみてみた&チップを流用する例をみてみた
ニセモノチップをみてみた&チップを流用する例をみてみたJunichi Akita
 
シリアルフラッシュを炙って比べてみた
シリアルフラッシュを炙って比べてみたシリアルフラッシュを炙って比べてみた
シリアルフラッシュを炙って比べてみたJunichi Akita
 
CH340を炙って削ってみた
CH340を炙って削ってみたCH340を炙って削ってみた
CH340を炙って削ってみたJunichi Akita
 
「電子立国日本の自叙伝」に見る半導体産業温故知新
「電子立国日本の自叙伝」に見る半導体産業温故知新「電子立国日本の自叙伝」に見る半導体産業温故知新
「電子立国日本の自叙伝」に見る半導体産業温故知新Junichi Akita
 
産業としての半導体とムーアの法則
産業としての半導体とムーアの法則産業としての半導体とムーアの法則
産業としての半導体とムーアの法則Junichi Akita
 
ICのオーパーツを探ってみた
ICのオーパーツを探ってみたICのオーパーツを探ってみた
ICのオーパーツを探ってみたJunichi Akita
 
自作RISC-VチップでLチカをやってみた
自作RISC-VチップでLチカをやってみた自作RISC-VチップでLチカをやってみた
自作RISC-VチップでLチカをやってみたJunichi Akita
 

Mehr von Junichi Akita (20)

タイプライターを改造してキーボードを作ってみた
タイプライターを改造してキーボードを作ってみたタイプライターを改造してキーボードを作ってみた
タイプライターを改造してキーボードを作ってみた
 
3Dプリンタを改造してチップマウンタを作ってみたら物理的にForkされた件
3Dプリンタを改造してチップマウンタを作ってみたら物理的にForkされた件3Dプリンタを改造してチップマウンタを作ってみたら物理的にForkされた件
3Dプリンタを改造してチップマウンタを作ってみたら物理的にForkされた件
 
中国でスタックチャンに会ってみた
中国でスタックチャンに会ってみた中国でスタックチャンに会ってみた
中国でスタックチャンに会ってみた
 
M5Stackでインターンしてみた
M5StackでインターンしてみたM5Stackでインターンしてみた
M5Stackでインターンしてみた
 
左手サブキーボードを作り続けてみた
左手サブキーボードを作り続けてみた左手サブキーボードを作り続けてみた
左手サブキーボードを作り続けてみた
 
STM32F互換マイコン(自称を含む)を 軽く解析してみた
STM32F互換マイコン(自称を含む)を軽く解析してみたSTM32F互換マイコン(自称を含む)を軽く解析してみた
STM32F互換マイコン(自称を含む)を 軽く解析してみた
 
基板設計の基礎知識と実践(別名:基板と仲良くなる方法)
基板設計の基礎知識と実践(別名:基板と仲良くなる方法)基板設計の基礎知識と実践(別名:基板と仲良くなる方法)
基板設計の基礎知識と実践(別名:基板と仲良くなる方法)
 
深センで2ヶ月過ごしていろいろ試してみた
深センで2ヶ月過ごしていろいろ試してみた深センで2ヶ月過ごしていろいろ試してみた
深センで2ヶ月過ごしていろいろ試してみた
 
Makeと半導体の境界
Makeと半導体の境界Makeと半導体の境界
Makeと半導体の境界
 
CH551/2/8/9を炙ってみた
CH551/2/8/9を炙ってみたCH551/2/8/9を炙ってみた
CH551/2/8/9を炙ってみた
 
うっかりチップマウンタを自作して薄い本を書いてみた
うっかりチップマウンタを自作して薄い本を書いてみたうっかりチップマウンタを自作して薄い本を書いてみた
うっかりチップマウンタを自作して薄い本を書いてみた
 
多様な学生の教材としてしてのプロトタイピング用マイコンボードの可能性
多様な学生の教材としてしてのプロトタイピング用マイコンボードの可能性多様な学生の教材としてしてのプロトタイピング用マイコンボードの可能性
多様な学生の教材としてしてのプロトタイピング用マイコンボードの可能性
 
道具としての半導体設計:Lチカを題材として
道具としての半導体設計:Lチカを題材として道具としての半導体設計:Lチカを題材として
道具としての半導体設計:Lチカを題材として
 
ニセモノチップをみてみた&チップを流用する例をみてみた
ニセモノチップをみてみた&チップを流用する例をみてみたニセモノチップをみてみた&チップを流用する例をみてみた
ニセモノチップをみてみた&チップを流用する例をみてみた
 
シリアルフラッシュを炙って比べてみた
シリアルフラッシュを炙って比べてみたシリアルフラッシュを炙って比べてみた
シリアルフラッシュを炙って比べてみた
 
CH340を炙って削ってみた
CH340を炙って削ってみたCH340を炙って削ってみた
CH340を炙って削ってみた
 
「電子立国日本の自叙伝」に見る半導体産業温故知新
「電子立国日本の自叙伝」に見る半導体産業温故知新「電子立国日本の自叙伝」に見る半導体産業温故知新
「電子立国日本の自叙伝」に見る半導体産業温故知新
 
産業としての半導体とムーアの法則
産業としての半導体とムーアの法則産業としての半導体とムーアの法則
産業としての半導体とムーアの法則
 
ICのオーパーツを探ってみた
ICのオーパーツを探ってみたICのオーパーツを探ってみた
ICのオーパーツを探ってみた
 
自作RISC-VチップでLチカをやってみた
自作RISC-VチップでLチカをやってみた自作RISC-VチップでLチカをやってみた
自作RISC-VチップでLチカをやってみた
 

“The Hardware Hacker”のリバースエンジニアリングの世界

  • 1. Interface Device Laboratory, Kanazawa University http://ifdl.jp/ “The Hardware Hacker”の リバースエンジニアリングの世界 秋田純一 (金沢大学)
  • 2. 2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 簡単に自己紹介 本業:金沢大の教員 専門:集積回路、イメージセンサ、インタラクション 好きなプロセスはCMOS 0.35um 本業2:Maker、ハンダテラピスト 好きな半田はPb:Sn=40:60 http://j.mp/make_lsi OpenSourceな LSI設計・製造 MakeLSI: Lチカチップ動画
  • 3. 2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 何がヤバいのか? チップレベルでニセモノを見分ける SDカードの制御マイコンの脆弱性をついて 任意コード実行(SDカード上で) 携帯チップセットを流用して、資料がないブー トローダのアクセス内容をオシロで解析して 動作を推測、デバッガを接続 抵抗・LED特性バラツキによるLED輝度ばらつ きをおさえるための、量産のための設計 (DFM; Design for Manufacturing) 量産発注するためのノウハウ
  • 4. 2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ どれぐらいヤバいのか?
  • 5. 2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 工場見学 USBメモリの工場(といっても手作業)
  • 6. 2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 工場に発注するためのHowTo 量産設計(DFM)、修正票(ECO:メールだめ) ※定電流ICを使うのが、結局安上がり
  • 7. 2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ ニセモノと公开(GonKai) 公开≒Open Source 知財が共有された状態(法的根拠なし) 「パクられる」を、損害と考えるか? 普及と考えるか? 「様々なニセモノが作られる」のと表裏一体
  • 8. 2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ ニセモノ:ST19CF68の例 マーキングは精巧 中身はぜんぜん別物 チップを見ないとわからない Fairchild製じゃん(しかもぜんぜん別の74245) 明らかにパッド(ピン)数がおかしい
  • 9. 2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ ニセモノ:microSD
  • 10. 2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ microSDガチャをひいてみた
  • 11. 2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ FPGAのES品 ES(EngineeringSample)品 量産前に評価用に配布され、本来は破棄する ESマークを消して売っている例がある(丸儲け)
  • 12. 2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ ニセモノの分類  外見だけ(中身は別or空)  まあすぐわかる  再生品(基板からはがす)  アイソトープ試験や元素分析で見分ける  マーキング変更  パッケージのマーキングを変えて、上位品やRoHS対応品に見せる  チップIDのヒューズまで書き換えてあるのもある  かなり厄介  ゴースト・シフト  部品工場で正規稼働時以外につくる  基本、ホンモノなので、一番厄介  質の悪い互換品  別設計・外見だけホンモノっぽい  ※たまに「ニセモノ互換品のほうが高性能」ということも
  • 13. 2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ ニセモノのオペアンプJRC4558 JRC(新日本無線)のオペアンプNJM4558の 「互換品」JRC4558(0.16RMB=2円)を通販で 見つける→お店へ行って買って解析して みた(知人の話) パッケージはそれっぽい チップは小さくなってる!特性もあがってる!
  • 14. 2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ PICの開封 パッケージを開封(専門業者もある)
  • 15. 2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ PICのEEPROM領域 ヒューズEEPROM領域のシールドをよけて、 斜めから紫外線をあてて消す(UV-EPROMと原理は同じ)
  • 16. 2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ SDカードのハック SDカードの制御MCU(8051クラス) テスト用コードが入っている 脆弱性があるものも CMD63+”APPO”(ノック)でFW読み込みモード =プログラムが実行できる
  • 17. 2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 山寨携帯のハック 公开携帯のチップセットMT6260(3USD) OS、ブートローダに関する公開情報がない まずはROMダンプ(基板からはがして) 起動シーケンスをMSO(オシロ)で解読 ROMつけはずしが面倒 なのでエミュレータ メモリの読み書き、 逆アセンブル QEMUを流用 ニセモノか確認(X線)したら、 3チップ入り(MCM)だった! (低コスト化のため)
  • 18. 2018/12/1 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ Bunnieが日本にやってくる! 企画シンポジウム 「回路とシステムの研究を「社会実装」するまで」 2019年3月19日(火)午後 • 1310 - 1410 : Bunnie, “Guerrilla Production Tactics: Unconventional Supply Chain for Unconventional Products” • 1420 - 1450 : 秋田「電子工作からエレクトロ ニクスへ:近年の地殻変動」 • 1450 - 1520 : 高須「頒布はシェアの一部: MakerPro」 • 1520 - 1550 : 市川「デジタル工作機械による アイディアの具現化とデプロイ」 • 1600 - 1700 : Panel Discussions