アカウント名:
パスワード:
データの改ざん、破壊、以外に、どうやったら有用データを流出させることができるのだろうか。データファイルを偽装してすり替える?実行ファイルに寄生改竄して何らかの手段でethernet等のデバイス(ハード)にアクセスし送信する?OSに依存するコードか、デバイスドライバ(=OSの一部)に適応しないと意図した動作は出来ないだろうし、そのような高度なコードがファームウェアを格納しているROM中に、本来の機能を損なわないで共存して存在できるのはどうしても製造側(HDDベンダ)の協力が無いとできなそうだし(でないとファームのリバースengから始めることになる>>>糸目をつけずやっているのかもしれないが)
政治的、技術的に極めて高度な内容を含んでいて、にわかに信じられない。まるでMissionImpossibleのガジェットの様だ。
実は、HDDのファームウェアが書き換えられるというのは新しい話でもなんでもなくて、2013年にはHDDのコントローラ基板上へuClinuxが移植されています。これをやった人の話では、高度な処理用らしきCPUとモータ管理などの基本機能のCPUなど複数のMPUが搭載されていて、ものによってほとんど遊んでいるそう。例えば上位モデルには暗号化機能があるが、下位モデルではプログラムだけが省かれている、といった場合には、実はCPUの処理時間は余っていたり、落としても気づかれないような処理しかしていないのかもしれません。また、HDDには大量のストレージ(何せそれ自体がストレージですし)もあれば、CPUに不釣り合いな大容量の高速(キャッシュ用)メモリもあります。昔の「パラレル信号に反応してヘッドを右や左へ動かす」というHDDならともかく、現代のHDDはモーターのついたRaspberry Piのようなもの、なんですね。
ディスクだけを買ったつもりがRasPiがプロキシとして強制的についてくると考えれば、そこでできることは多岐に渡るでしょう。実際に、移植の前段階として書き込んだファイルを差し替えるとか、改竄したデータを返すといったこともできているようです。アイディアとしてはSATAからDMAでEthernetを叩くというのも見かけはしましたが、そこまでしなくとも、例えば変更したパスワードが元に戻されるとか、メールで受け取ったコマンドに基づいて書き換えられるとかでも十分脅威だし、可能ではないかと思います。Eye-FiやFlashAirと同じでしょう。
# 個人的にはこれで ニョガーン してほしい
ご連絡先
> SATAからDMAでEthernetを叩くATAのプロトコルはデバイスからホストのメモリやI/Oを叩けるように拡張されたんですか?
間に色々挟まってるしできなそう。悪用するにしてもやる必要ないし。
間に挟まっているのが問題ではなくプロトコル上不可能なんですけどね
直接ホストのハードを叩けなくても HDD 上のバイナリは改竄し放題なので、適当なバイナリにペイロードくっつけてホストに渡せば、やりたい処理はホストがしてくれるんじゃないかな?
昔話になるが、ドライブ側のCPUと聞いて思い出すのはPC-8001/PC-8801シリーズ。直接いじったことはないが、サブCPUにプログラム転送して走らせる小技があったような。# こいつらの5'FDDはドライブ側にもZ80積んでたインテリジェント仕様。# I/Fはただの8255、後に本体にFDD内蔵されてもわざわざCPU間で通信してた。
# 一方富士通FMシリーズは最初からキーボードと画面VRAMがサブCPU制御。# YAMAUCHIコマンドでサブ側にプログラム置いて走らせるのは定石だった。
誰もドライブ側のCPUの話なんてしてませんがな。
え?親コメント「HDDのコントローラ基板上へuClinuxを移植」、「複数のMPUが搭載されていて、ものによってほとんど遊んでいる」から利用、つまりドライブ内部のCPU上でユーザプログラムを走らせてみた、つー話へのコメントでしょ?どう誤読したら> 誰もドライブ側のCPUの話なんてしてませんがな。になるのか、それがわからん。
# 元ネタのマルウェアが「潜伏先としてHDDのファーム領域を使用してるだけ」の# 可能性は否定せんけど、ふつーファーム書換つったら周辺機側の動作をかえるよなぁ。
サブ側のプログラムが暴走すると画面が崩れるんですよね一回リサージュみたいな画面になって感動した
ということは乗っ取られたHDDが突然「オ〜マ〜エ〜ハ〜ア〜ホ〜カ〜」とやりだす恐れがあるのか?トーキングHDDそれはそれで怖いな。
HDD中古をラズベリーパイ代わりに使いたくなりました。20年後は、クレイ1くらい?の性能かも?20年前のコンピュータはかなりしょぼい
ま、BadUSB [nikkeibp.co.jp]の例もありますから何ができても不思議はないわけで。SATAインターフェースの向こうにキーボードデバイスが繋がってキーボードって認識されたり・・・するんか?
高度な機能ガーはHDDが記録メディアであることを失念してるんじゃ無いか
ファームの非管理エリアにデータ置くのならなおさらのこと、仕様に精通していないといけない。=> 内通者アリだな
ロイターの記事だと、メーカーにスパイを送り込む場合のほか、米国で政府系機関に納入する際にソースコードの提出を含む製品の監査を受けることがあり、場合によってNSAが受け持つとか。中国が同じようなことを言って反発を受けていたような…
ふむふむ、それなら何でもアリですね。これやられると、OS構成ファイルをいくら調べても検出できない。定型的で、判りやすいすり替え対象としてはソフトのUpdateチェックなんて使えそうだからもしかすると、ベンダ(MSetc)もグルかもしれない。
たとえば、データの横取りに使うとすると、1.ドメイン名(ip-adrs)で自機の所在を認識、(東側諸国とか)2.SPAMに見せかけたトリガでアクティブ化3.重要キーワードを含む対象ファイルをコピー、圧縮、暗号化4.アップデートチェック時等に混入させて配送...
アンチウイルスの定義ファイル更新時にPCからも大量にナニカ送っていませんか?
もしかすると細胞内のリボソームを操るようなアナロジーで、よりウイルスっぽいかもしれないなぁOSは正直に宛先へデータを配送するだけ…
Kasperskyのpdfに書いてあります。読みましょう。定義ファイルなんかに頼ってはいません。まあ政府機関っていうかアメリカっぽい感じ。
SATAだと改ざんしたコードが実行されるのを待つことしかできなさそうだけど、PCIe接続のSSDなら結構アクティブに悪さをできそうな気がする。
ストレージの中の人としては、内部情報なしに仕様の分からないHWを叩くなんて難しいと思うけど、それでもロシアなら…、ロシアならきっと何とかしてくれる。
やってみると分かりますが物理アドレスだけでOSをゴニョゴニョするのはそんなに簡単じゃないです。MSRやCR3が読めればなぁと思う事がしばしばあります。
HDDのファームウェアだけで完結しなくてもいいのでは?MBRを挿げ替えて、OSにルートキットを仕込められれば、後はどうとでもなりそうですし。
> SATAだと改ざんしたコードが実行されるのを待つことしかできなさそうだけどと何が違うんでしょうか?
ファームウェアは、独自のマスタブートローダをPCに読み込ませる機能があればあとは既存のマスターブートローダに感染するウイルスと同じでないかな削除や初期化をしても消せない点はちがうけど
ブートセクターにちょいとローダーをかませてやればいいんですよ。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
最初のバージョンは常に打ち捨てられる。
HDDのファームになにができるのか考察 (スコア:3, 興味深い)
データの改ざん、破壊、以外に、どうやったら有用データを流出させることができるのだろうか。
データファイルを偽装してすり替える?
実行ファイルに寄生改竄して何らかの手段でethernet等のデバイス(ハード)にアクセスし送信する?
OSに依存するコードか、デバイスドライバ(=OSの一部)に適応しないと意図した動作は出来ないだろうし、
そのような高度なコードがファームウェアを格納しているROM中に、本来の機能を損なわないで
共存して存在できるのはどうしても製造側(HDDベンダ)の協力が無いとできなそうだし
(でないとファームのリバースengから始めることになる>>>糸目をつけずやっているのかもしれないが)
政治的、技術的に極めて高度な内容を含んでいて、にわかに信じられない。
まるでMissionImpossibleのガジェットの様だ。
Re:HDDのファームになにができるのか考察 (スコア:5, 参考になる)
実は、HDDのファームウェアが書き換えられるというのは新しい話でもなんでもなくて、2013年にはHDDのコントローラ基板上へuClinuxが移植されています。
これをやった人の話では、高度な処理用らしきCPUとモータ管理などの基本機能のCPUなど複数のMPUが搭載されていて、ものによってほとんど遊んでいるそう。
例えば上位モデルには暗号化機能があるが、下位モデルではプログラムだけが省かれている、といった場合には、実はCPUの処理時間は余っていたり、落としても
気づかれないような処理しかしていないのかもしれません。また、HDDには大量のストレージ(何せそれ自体がストレージですし)もあれば、CPUに不釣り合いな
大容量の高速(キャッシュ用)メモリもあります。昔の「パラレル信号に反応してヘッドを右や左へ動かす」というHDDならともかく、現代のHDDはモーターのついた
Raspberry Piのようなもの、なんですね。
ディスクだけを買ったつもりがRasPiがプロキシとして強制的についてくると考えれば、そこでできることは多岐に渡るでしょう。実際に、移植の前段階として
書き込んだファイルを差し替えるとか、改竄したデータを返すといったこともできているようです。アイディアとしてはSATAからDMAでEthernetを叩くというのも
見かけはしましたが、そこまでしなくとも、例えば変更したパスワードが元に戻されるとか、メールで受け取ったコマンドに基づいて書き換えられるとかでも
十分脅威だし、可能ではないかと思います。Eye-FiやFlashAirと同じでしょう。
# 個人的にはこれで ニョガーン してほしい
Re: (スコア:0)
ご連絡先
Re: (スコア:0)
> SATAからDMAでEthernetを叩く
ATAのプロトコルはデバイスからホストのメモリやI/Oを叩けるように拡張されたんですか?
Re:HDDのファームになにができるのか考察 (スコア:2)
間に色々挟まってるしできなそう。悪用するにしてもやる必要ないし。
Re: (スコア:0)
間に挟まっているのが問題ではなくプロトコル上不可能なんですけどね
Re: (スコア:0)
直接ホストのハードを叩けなくても HDD 上のバイナリは改竄し放題なので、適当なバイナリにペイロードくっつけてホストに渡せば、やりたい処理はホストがしてくれるんじゃないかな?
Re: (スコア:0)
昔話になるが、ドライブ側のCPUと聞いて思い出すのはPC-8001/PC-8801シリーズ。
直接いじったことはないが、サブCPUにプログラム転送して走らせる小技があったような。
# こいつらの5'FDDはドライブ側にもZ80積んでたインテリジェント仕様。
# I/Fはただの8255、後に本体にFDD内蔵されてもわざわざCPU間で通信してた。
# 一方富士通FMシリーズは最初からキーボードと画面VRAMがサブCPU制御。
# YAMAUCHIコマンドでサブ側にプログラム置いて走らせるのは定石だった。
Re: (スコア:0)
誰もドライブ側のCPUの話なんてしてませんがな。
Re: (スコア:0)
え?親コメント「HDDのコントローラ基板上へuClinuxを移植」、
「複数のMPUが搭載されていて、ものによってほとんど遊んでいる」から利用、
つまりドライブ内部のCPU上でユーザプログラムを走らせてみた、つー話へのコメントでしょ?
どう誤読したら
> 誰もドライブ側のCPUの話なんてしてませんがな。
になるのか、それがわからん。
# 元ネタのマルウェアが「潜伏先としてHDDのファーム領域を使用してるだけ」の
# 可能性は否定せんけど、ふつーファーム書換つったら周辺機側の動作をかえるよなぁ。
Re: (スコア:0)
サブ側のプログラムが暴走すると画面が崩れるんですよね
一回リサージュみたいな画面になって感動した
Re: (スコア:0)
ということは
乗っ取られたHDDが突然
「オ〜マ〜エ〜ハ〜ア〜ホ〜カ〜」
とやりだす恐れがあるのか?
トーキングHDD
それはそれで怖いな。
8801並み? (スコア:0)
HDD中古をラズベリーパイ代わりに使いたくなりました。
20年後は、クレイ1くらい?の性能かも?
20年前のコンピュータはかなりしょぼい
Re:HDDのファームになにができるのか考察 (スコア:2)
ま、BadUSB [nikkeibp.co.jp]の例もありますから何ができても不思議はないわけで。
SATAインターフェースの向こうにキーボードデバイスが繋がってキーボードって認識されたり・・・するんか?
**たこさん**・・・
Re:HDDのファームになにができるのか考察 (スコア:1)
高度な機能ガーはHDDが記録メディアであることを失念してるんじゃ無いか
Re:HDDのファームになにができるのか考察 (スコア:1)
Re: (スコア:0)
ファームの非管理エリアにデータ置くのならなおさらのこと、仕様に精通していないといけない。
=> 内通者アリだな
Re:HDDのファームになにができるのか考察 (スコア:3)
ロイターの記事だと、メーカーにスパイを送り込む場合のほか、米国で政府系機関に納入する際にソースコードの提出を含む製品の監査を受けることがあり、場合によってNSAが受け持つとか。中国が同じようなことを言って反発を受けていたような…
Re: (スコア:0)
ふむふむ、それなら何でもアリですね。
これやられると、OS構成ファイルをいくら調べても検出できない。
定型的で、判りやすいすり替え対象としてはソフトのUpdateチェックなんて使えそうだから
もしかすると、ベンダ(MSetc)もグルかもしれない。
たとえば、データの横取りに使うとすると、
1.ドメイン名(ip-adrs)で自機の所在を認識、(東側諸国とか)
2.SPAMに見せかけたトリガでアクティブ化
3.重要キーワードを含む対象ファイルをコピー、圧縮、暗号化
4.アップデートチェック時等に混入させて配送...
アンチウイルスの定義ファイル更新時にPCからも大量にナニカ送っていませんか?
もしかすると細胞内のリボソームを操るようなアナロジーで、よりウイルスっぽいかもしれないなぁ
OSは正直に宛先へデータを配送するだけ…
Re:HDDのファームになにができるのか考察 (スコア:2)
Kasperskyのpdfに書いてあります。読みましょう。定義ファイルなんかに頼ってはいません。まあ政府機関っていうかアメリカっぽい感じ。
Re: (スコア:0)
SATAだと改ざんしたコードが実行されるのを待つことしかできなさそうだけど、
PCIe接続のSSDなら結構アクティブに悪さをできそうな気がする。
ストレージの中の人としては、内部情報なしに仕様の分からないHWを叩くなんて難しいと思うけど、
それでもロシアなら…、ロシアならきっと何とかしてくれる。
Re: (スコア:0)
やってみると分かりますが物理アドレスだけでOSをゴニョゴニョするのはそんなに簡単じゃないです。
MSRやCR3が読めればなぁと思う事がしばしばあります。
Re: (スコア:0)
HDDのファームウェアだけで完結しなくてもいいのでは?
MBRを挿げ替えて、OSにルートキットを仕込められれば、後はどうとでもなりそうですし。
Re: (スコア:0)
> SATAだと改ざんしたコードが実行されるのを待つことしかできなさそうだけど
と何が違うんでしょうか?
Re: (スコア:0)
ファームウェアは、独自のマスタブートローダをPCに読み込ませる機能があれば
あとは既存のマスターブートローダに感染するウイルスと同じでないかな
削除や初期化をしても消せない点はちがうけど
Re: (スコア:0)
ブートセクターにちょいとローダーをかませてやればいいんですよ。