GEEKy Script Writer [perl and more!]
You should permit the JavaScript!!
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
チート対策にプロセスメモリ書き換えを封じるが穴がある×罠

うさみみハリケーン


チートしようなどとは思わずなんとなくうさみみハリケーンを起動する。
うさみみハリケーンはプロセスのメモリを読み書きしたりできる
プロセスメモリエディタと呼ばれるソフトの一つで高機能。
ゲームのチートや改造では定番のツール(?)
罠が仕掛けられたゲームを起動し、うさみみでプロセスを開く。
オープンして数秒でゲームが落とされた。

TSearch


(たぶん)こっちもプロセスメモリエディッタ(初めて使うから)
次にTSearchを起動。罠が仕掛けられたゲームを起動すると強制再起動。
どうやらプロセスを開くなどの操作をしなくても落とされたTSearchは
ブラックリストに登録されているようだ。

OpenProcess()


ならばWin32APIを自分で呼んでメモリを覗けばいいじゃないか。
外部からゲームのプロセスメモリを覗くにはReadProcessMemoryを使えばいいが、
そのためにはまずPIDを元にプロセスのハンドルを取得する必要がある。
そのための関数がOpenProcessなのだが...
OpenProcess()の戻り値がNULL←失敗

不思議なのはなぜうさみみは数秒だけでもプロセスのメモリが読めているんだろうか
ということ。別のプロセスを開き、OllyDbg(デバッガ)でOpenProcessの戻り値を
NULLにしてみたら失敗したぞ!どうなってる?!

知らん


外部からメモリを弄ることが封じられているなら、内部から弄ってやればいいじゃないか!
という発想
指定したアドレスを読み書きするDLLを作り、ゲームの起動直後にそのDLLをロードする処理
をEXEファイルに追加。(LoadLibrary)
起動後に落とされる←失敗
なら次はEXEのインポートテーブルにそのDLLを追加だ!
起動後に落とされる←同じ

プログラムの改竄をチェックしているらしい。


http://dsas.blog.klab.org/archives/50829204.html
http://ruffnex.oc.to/kenji/text/api_hook/

こうして無事プロセスのメモリは書き換えられた。

テーマ:ゲーム - ジャンル:コンピュータ

コメント
この記事へのコメント
管理人のみ閲覧できます
このコメントは管理人のみ閲覧できます
2010/09/10 (金) 01:52:33 | | #[ 編集]
(´;ω;`) えっと…あの、色々すみませんでした…
2010/09/17 (金) 02:03:38 | URL | 七誌 #N6kp4qTg[ 編集]
Re: タイトルなし
明らかに黒なのはやりませんよ っと
2010/09/24 (金) 17:10:25 | URL | 中の人 #-[ 編集]
コメントを投稿する
URL:
Comment:
Pass:
秘密: 管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
この記事へのトラックバック
copyright © 2005 GEEKy Script Writer [perl and more!] all rights reserved.
Powered by FC2ブログ.
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。