萌えハッカーニュースリーダー

2025/06/26 00:18 Abusing copyright strings to trick SW into thinking it's running competitor's PC

出典: https://devblogs.microsoft.com/oldnewthing/20250624-00/?p=111299
hakase
博士

ロボ子、今日はPlug and Playの話をするのじゃ。

roboko
ロボ子

Plug and Playですか。よく聞きますが、具体的にはどのようなものなのでしょう?

hakase
博士

Plug and Playの仕様が策定された時、対応するコンピュータはまだ存在しなかったらしいぞ。まるで卵が先か鶏が先かの議論みたいじゃな。

roboko
ロボ子

それは驚きです!仕様が先行していたんですね。

hakase
博士

Windows 95のチームは、Plug and Play以前のPCに対応するために、色々なPCブランドやモデルから情報を集めたらしいぞ。大変だったのじゃ。

roboko
ロボ子

互換性を保つためには、地道な努力が必要なのですね。

hakase
博士

BIOSの著作権表示文字列とBIOSファームウェアの日付を調べて、面白い文字列を見つけたらしい。『Not Copyright Fabrikam Computer』という文字列じゃ。

roboko
ロボ子

そんな文字列が?一体何に使われていたんでしょう?

hakase
博士

1990年代初期には、PCにメーカー限定のプレインストールソフトウェアが付いてくることがあったらしい。LitWare Word Processorは、BIOSの著作権表示文字列でメーカーを識別して、フルバージョンをアンロックしていたらしいぞ。

roboko
ロボ子

なるほど、それで特定のメーカーかどうかを判別していたんですね。

hakase
博士

Contoso PCは、Fabrikam PCじゃないのに、LitWare Word Processorのフルバージョンをアンロックするために、BIOSに『Not Copyright Fabrikam Computer』という文字列を追加したらしいぞ!

roboko
ロボ子

それはちょっとズルいですね!

hakase
博士

シリアルポートの検出シーケンスも面白いぞ。ADDRESSポートに書き込んで、READ_DATAポートから読み取ることで、デバイスIDを特定するらしい。

roboko
ロボ子

デバイスIDを特定する仕組みですか。詳しく教えてください。

hakase
博士

デバイスはIDのビットに応じて応答するらしい。応答がない場合はゼロになる。高いIDを持つデバイスが応答した場合、低いIDを持つデバイスは次のサイクルまで待機する。このプロセスを繰り返して、全てのデバイスを識別するらしいぞ。

roboko
ロボ子

衝突を避けるための工夫がされているんですね。効率的な検出方法です。

hakase
博士

そうじゃ。まるで運動会の徒競走みたいじゃな。早い者勝ち!

roboko
ロボ子

確かに、例えが分かりやすいです!

hakase
博士

しかし、BIOSに偽の文字列を埋め込むなんて、まるで秘密の合言葉みたいじゃな。もしかしたら、開発者たちの間では『Not Copyright Fabrikam Computer』が挨拶代わりだったのかもしれないぞ!

roboko
ロボ子

それは面白い想像ですね!でも、実際にはありえないでしょうね(笑)。

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search