Only Neat Thing

たったひとつの冴えたやり方

ユーザ用ツール

サイト用ツール


bypass-activation-and-wga

ライセンス認証とWGAの回避は可能か

 XPのライセンス認証(アクティベーション)やWGAは回避できるのか。ちょっと実験してみた。

WPA.DBLのバックアップ

  1. XPを再インストールする前に、%SystemRoot%\system32\wpa.dbl(とwpa.bak)をバックアップする。
  2. XPの再インストール時には、アクティベーションは行わない。
  3. セーフモードで起動して、wpa.dbl(とwpa.bak)を%SystemRoot%\system32に戻して再起動。

 上記の記事に限らず、WPA.DBLファイルをバックアップする方法はあちこちで紹介されているが、筆者はこの方法を一度も成功させたことがない。WPA.DBLをコピーバックして再起動させたとたんに、即時のアクティベーションを要求されるようになってしまう。記事が書かれた当時は有効だったが、今は対策されてしまったのか、それとも何か条件を満たしていないのか・・・。

様々なクラッキング手法

 ネット上には、アクティベーションやWGAを回避するための様々な手段が公表されているが・・・。

レジストリ1

 レジストリエディタや.regファイルを使って、HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DigitalProductId(およびLicenseInfo)の書き換えをする方法。
 これは、レジストリに保存されたアクティベーション情報を復元する手段なのだろうが、Microsoftによって既に対策済みのようで、レジストリエディタを使ったDigitalProductIdの書き換えはできなくなっている。レジストリエディタ互換のソフトを使っても、やはり書き換えはできない。おそらくAPIレベルで対策されているのだろう。

 だが不思議なことに、SLPによってアクティベーション済みの情報を使えば、DigitalProductIdとLicenseInfoの書き換えは成功する。

レジストリ2

  1. レジストリエディタで HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WPAEvents を開く。
  2. OOBETimerの16進値を特定の値に書き換える。
  3. WPAEventsを右クリックして「アクセス許可(P)」…を選ぶ。
  4. グループ名またはユーザー名から「SYSTEM」を選び、「フルコントロール」の拒否をチェックして「OK」。

 アクティベーション期限日のデータを書き換え、さらにそれを書き換え不能にすることで、アクティベーション済みだと偽装する方法。これもMicrosoftによって既に対策済みで、「アクティベーション済みになったようだ」と安心していると、30日後(あるいは60日後)の期限日に、突然アクティベーションを要求される(「機能制限モード」になる)、という罠に落ちる羽目になる。

hostsファイル

 テキストエディタを使って %systemroot%\system32\drivers\etc\hosts ファイルに、下記の1行を付け加える。

127.0.0.1 mpa.one.microsoft.com

 WGAがサーバーにアクセスしようとするのを、自分自身にリダイレクトする、という手法。もちろんMicrosoftによって対策済みで、効果はなくなっている。

これらは、SP3適用の状態で検証してみた。ネット上で見つかる記述は、2006~2009年頃に書かれたものが多い。これはSP2の時代だ。ひょっとするとSP2適用の状態で行えば、結果は異なるかも知れない。

参考サイト

bypass-activation-and-wga.txt · 最終更新: 2019/06/19 01:07 by admin

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki