X



チート初心者スレpart2 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001ネトゲ廃人@名無し
垢版 |
2016/04/26(火) 18:05:45.74ID:???
ミジンコ同士勉強していこうぜ

●定番解析ソフト
・デバッガ OllyDbg
http://www.ollydbg.de/
・プロセスメモリエディタ兼デバッガ スペシャルねこまんま57号
http://www.vector.co.jp/soft/win95/hardware/se254476.html
・プロセスメモリエディタ兼デバッガ+加速器 うさみみハリケーン
http://www.vector.co.jp/soft/win95/prog/se375830.html
●バイナリエディタ
・Stirling
http://www.vector.co.jp/soft/win95/util/se079072.html
・Binary Editor BZ ※4GBまで編集可
http://www.zob.ne.jp/~c.mos/soft/bz.html
●解析参考サイト
・Digital Travesia ※OllyDbg日本語化パッチあり
http://hp.vector.co.jp/authors/VA028184/

前スレhttp://schiphol.2ch.net/test/read.cgi/mmosaloon/1210219737/
ツールのクレクレ、売ります系はスルーで
0535ネトゲ廃人@名無し
垢版 |
2019/10/05(土) 21:21:47.30ID:???
未だにinjection、しかも64bitと32bitの違いすらも分かっていない
まるで成長していない…
0536ネトゲ廃人@名無し
垢版 |
2019/10/05(土) 22:37:25.76ID:???
おい・・・
見てるか>>31・・・

お前を超える逸材がここにいるのだ・・・!!

それも・・・
2人(>>494,>>504)も同時にだ・・・


>>31・・・
0537ネトゲ廃人@名無し
垢版 |
2019/10/05(土) 22:55:32.22ID:???
その動画の意味が分かるやつが入門者なのか
先が長すぎて嫌になるぜ…
0538ネトゲ廃人@名無し
垢版 |
2019/10/05(土) 23:03:00.77ID:???
お 俺以外の初心者おったんかいな
先が長すぎてすぐ挫折する人(何年かしてまた取り組んでみる)の末路が俺だよ
0539ネトゲ廃人@名無し
垢版 |
2019/10/05(土) 23:24:01.09ID:???
ゲームのプロテクト解除しようと思ったら
https://schiphol.5ch.net/test/read.cgi/mmosaloon/1208457391/
262,263,264,267,274,282,334,340,343,347,350,351,371,961,967
この人たち並みの知識と解析技術(バイナリファイルを読むテクニックと経験)が要求されるのだと思う
これ2009年の話だから今はもっと難しくなってるんですかね
どうなんですか 安西先生!
0540ネトゲ廃人@名無し
垢版 |
2019/10/05(土) 23:38:58.58ID:???
>>537も良かったら一緒に勉強しよう
俺は今何やってるかというと昔調べた項目を実際に手を動かして確認する作業
(2年前は調べてみただけでゴールの遠さに目眩がして挫折しちゃった)
・dll injection(createremotethredを使ったやり方)
 成功
・dll injection(AppInit_DLLs)
 失敗
・iat hooking
 成功
・メッセージフック(setwindowshookex)
めちゃくちゃしょぼい実験は成功
・inline hooking
これから試す
・デバイスドライバ作成
 まだ
・SSDT hooking
まだ
・IDT hooking
 まだ
・IRP hooking
まだ

crackme, unpackmeとか
windbgとか
項目はたくさんあるぞい!
0541ネトゲ廃人@名無し
垢版 |
2019/10/05(土) 23:56:42.45ID:???
>>538
初心者どころか入門未満だ
CとC#の基本を勉強したけど解析に繋がるものもなかったし
>>498とか>>505みたいの全く意味分からなくて萎え掛けてる
0542ネトゲ廃人@名無し
垢版 |
2019/10/06(日) 00:47:15.89ID:???
>>541
俺は何度も挫折してるし、その内挫折しちゃう(1、2週間後?)予感もあるから励ましの言葉もないよ
ゲームプロテクトはずせるのは頭がいい人 or 要領がいい人 or 地道に努力できる人
or バイナリ眺めて性的興奮覚えるような変態ぐらいだと思う
>>541が変態であることを祈るよ

>>498は何の知識もなしに見ても不明だよ
ざっくり言うと
IAT(Import Address Table)にDLLの関数のアドレスが格納されていて
windowsアプリケーションはIATをみて関数のアドレスを取得して実行しているから
そのIATを書き換えて自作の関数に処理を飛ばしちゃおうというやり方
iat フック とかでググれば説明してるサイトは複数ヒットするよ


ももいろテクノロジー IAT書き換えによるAPIフックをやってみる
http://inaz2.はてなぶろぐ.com/entry/2015/08/10/193103
APIフック
http://jackseven.s22.xrea.com/programming/apihook.html
などなど

何故かはてなぶろぐのurlがNGワードなんだよね
0545ネトゲ廃人@名無し
垢版 |
2019/10/06(日) 09:16:07.12ID:xHi2dDCo
>>541
C/C++は勿論、C#のような静的型付け言語ならかなり解析に繋がるはずだけどな
これらの高級言語を習得してからアセンブラを見れば大体どういう処理なのかを察せるようになる
その逆に解析中のアセンブラから高級言語の機能への理解が深まったりもして相乗効果
0546ネトゲ廃人@名無し
垢版 |
2019/10/06(日) 09:30:11.41ID:p5Qrl05+
RequireSignedAppInit_DLLsっていま存在するかね
当方Microsoft Windows [Version 10.0.17763.775]だけど
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows
HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ Windows NT \ CurrentVersion \ Windows \ AppInit_DLLs
の両方に存在しないんだよなぁ
0547ネトゲ廃人@名無し
垢版 |
2019/10/06(日) 09:40:45.22ID:???
最終的に何がしたいのかさっぱり伝わって来ない
ただ勉強してることを日記に書いてるだけ?
0548ネトゲ廃人@名無し
垢版 |
2019/10/06(日) 09:54:47.70ID:???
>>548

> 最終的に何がしたいのかさっぱり伝わって来ない
最終目標で言うと最新ゲームのプロテクトを無効or回避出来るようになりたい

> ただ勉強してることを日記に書いてるだけ?
うん
0549ネトゲ廃人@名無し
垢版 |
2019/10/06(日) 09:57:09.65ID:???
>>547
存在しなかったから作って実験してた
今振り返ると0じゃなく1に設定してやってたかも
0550ネトゲ廃人@名無し
垢版 |
2019/10/06(日) 10:02:26.33ID:p5Qrl05+
>>547
https://attack.mitre.org/techniques/T1103/
これを試してみたかったんだ。

この手法には3つのレジストリキー値の設定が必要らしく、それは
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows
HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ Windows NT \ CurrentVersion \ Windows \ AppInit_DLLs
のいずれかにある
AppInit_DLLs
LoadAppInit_DLLs
RequireSignedAppInit_DLLs
なんだけど、最後のRequireSignedAppInit_DLLsが、上2つの両方のキーに無いんだよね。
自分で新規作成してもDLLは読み込まれなかったし、非署名のDLLはAppinit_DLLsには使用できなくされてるのかなと考えたり…
0553ネトゲ廃人@名無し
垢版 |
2019/10/07(月) 00:18:02.32ID:???
x64 inline function hookingで検索して見つかった記事
まだあんま読めてない
https://blog.nettitude.com/uk/windows-inline-function-hooking
https://www.ragestorm.net/blogs/?p=107
https://www.blackhat.com/docs/us-16/materials/us-16-Yavo-Captain-Hook-Pirating-AVs-To-Bypass-Exploit-Mitigations.pdf

qiita x64の関数呼び出し
https://qiita.com/FAMASoon/items/a93c1361f80bb28f895c
x86だと引数はスタックに積んでたけどx64は第6引数までレジスタにいれて
第7引数以降はスタックに積むみたい
0554ネトゲ廃人@名無し
垢版 |
2019/10/07(月) 03:39:12.24ID:???
Nikolay Igottiって人が考えたやり方試す
最初に下位アドレスをpushして、その後に上位アドレスを上書き
retでそのアドレスに飛ぶ

[cpp]
push 0xAAAAAAAAA 68 AA AA AA AA
mov DWORD PTR [rsp+0x4],0xBBBBBBBB c7 44 24 04 BB BB BB BB
ret
0556ネトゲ廃人@名無し
垢版 |
2019/10/08(火) 00:41:06.26ID:4aDKR6xF
保守
0557ネトゲ廃人@名無し
垢版 |
2019/10/08(火) 00:41:13.69ID:4aDKR6xF
保守
0561ネトゲ廃人@名無し
垢版 |
2019/10/14(月) 01:18:48.77ID:???
MessageBoxAの呼び出しを自作関数にすり替えるところまで出来た。
アラインメントを全く気にしてないけど取り敢えず動いた。

BYTE jump[14] = {
0x68,0x90,0x90,0x90,0x90, // push <自作関数のアドレス下位4バイト>
0xc7,0x44, 0x24, 0x04, 0x90, 0x90, 0x90, 0x90, //mov DWORD PTR [rsp+0x4],<自作関数のアドレス上位4バイト>
0xc3}; //ret
FARPROC pTargetFunctionAddr = GetProcAddress(hModule, "MessageBoxA");
FARPROC pMyFunctionAddr = (FARPROC)&MyMessageBoxA;
  memcpy(&jump[1], ((char*)&pMyFunctionAddr), 4);
memcpy(&jump[9], ((char*)&pMyFunctionAddr)+4, 4);
   //MessageBoxAの先頭コードをjumpコードに書き換え
DWORD OriginalProtection;
VirtualProtect(pTargetFunctionAddr, 14, PAGE_EXECUTE_READWRITE, &OriginalProtection);
memcpy(pTargetFunctionAddr, jump, 14)
MessageBoxA(0, 0, 0, 0);
}
0562ネトゲ廃人@名無し
垢版 |
2019/10/14(月) 06:59:51.19ID:???
そんな10年前のフックのやり方せずとも今はMinHookとかいろいろ便利なライブラリがあるぞ
0564ネトゲ廃人@名無し
垢版 |
2019/10/15(火) 00:51:23.77ID:???
vac bypassとかでググってるんだけどまあまあ面白い
(内容あんま理解できてないけど)
vmt hooking後々調べてみよう
>>561のコードをいじくりつつ
しばらくはvac bypassとかpunkbuster bypassとかをググる日々かな
0565ネトゲ廃人@名無し
垢版 |
2019/10/15(火) 02:45:03.64ID:???
>>561
書き換える前
48:83EC 38 | sub rsp,38 |
45:33DB | xor r11d,r11d |
44:391D 42650300 | cmp dword ptr ds:[7FFCA43E8290],r11d |
74 2E | je user32.7FFCA43B1D7E |

書き換えた後
68 3710A5D3 | push FFFFFFFFD3A51037 |
C74424 04 F67F0000 | mov dword ptr ss:[rsp+4],7FF6 |
C3 | ret |
74 2E | je user32.7FFCA43B1D7E |

たまたま長さが一致してた
汎用的にやろうとすると元のコードの命令の長さ求めて、はみ出た分はnopで埋める処理が必要になるのだろうけどめんどくさそう
minhookはどうやってるんだろう 後で調査
0567ネトゲ廃人@名無し
垢版 |
2019/10/15(火) 12:27:57.59ID:???
サーフィンしてて気になった事メモ
解析ツール
binary ninja、ghidra、ida pro、reclass

ssdt hooking win10では激ムズになった?
win10driver
署名なしはテストモードのみ動作 BEとかはそれを検知してくる
dse無効化、既存のデバイスドライバの脆弱性を利用してカーネルモードで動作させる
0570ネトゲ廃人@名無し
垢版 |
2019/10/16(水) 12:43:34.87ID:???
cheat engine でアイテム名の変更をやっていて、

AというアイテムをBという名前に変更したら、所持品以外にも敵のアイテム名もAからBに変わってしまいます。
これを自分の所持品の一つだけを変更することは出来ないでしょうか?

スキャンしてもそれらしいアドレスがでないので、やり方などを教えて貰えると助かります。
0571ネトゲ廃人@名無し
垢版 |
2019/10/16(水) 17:02:40.11ID:???
>>570
その知識レベルだと多分すぐには無理だろうが
string型(文字列)はちゃんとしたプログラマかコンパイラなら同じ文字は出来る限り同じデータを参照するように作られため、参照先の文字列を変えたらそれを参照するものは全て変更後の文字になる
つまり自分が所持するアイテムAのインスタンスだけアイテム名へのポインタを自分で書き込んだ文字列へのポインタにすり替えれば良い
そのためにはまず自分の所持品リストのアドレスを探して、そのリストから目的のアイテムのインスタンスまでたどり着く必要がある
所持品のスロット場所を変えたり個数を変えたりとかすれば見つかるんじゃない
0572ネトゲ廃人@名無し
垢版 |
2019/10/16(水) 17:08:58.27ID:???
色々書いたけど要するに文字列の処理は単純な数値変えたりってのと比べたら何段も難しい
俺が持ってるゲームだったらそれくらいのチートテーブル作ってやってもいいけどな
0573ネトゲ廃人@名無し
垢版 |
2019/10/17(木) 08:05:30.42ID:???
>>570
その文字列が格納されてるメモリアドレスに対して
メモリアクセスのブレークポイント仕掛ければ
その文字列を参照しているポインターが分かるのでは?
0574ネトゲ廃人@名無し
垢版 |
2019/10/17(木) 16:25:32.35ID:???
>>571-573
どこから始めればいいか分からなかったので、教えていただいたことから調べていこうと思います。
お二人ともアドバイスありがとうございます!
0575ネトゲ廃人@名無し
垢版 |
2019/10/20(日) 13:54:31.26ID:???
IPUSIRONって人逮捕されてたのか
日本ってセキュリティ関連の記事とか教材が少ない気がするんだけど
法律のせいなんかね
0576ネトゲ廃人@名無し
垢版 |
2019/10/21(月) 10:29:15.10ID:???
法律のせいもあるんじゃね
プロテクト外す系は話題がせいぜいで、ソースやバイナリUPしよう物なら不正競争防止法で
逮捕されるかもだし
こういうのって、出来る奴らか公開した情報をもとに中級以下が修行するのに
有意義なサンプル出せないからな
あと純粋にPCネトゲは終わってる
0577ネトゲ廃人@名無し
垢版 |
2019/10/21(月) 11:04:22.21ID:???
ググって見たら無限ループでも摘発されるんだなw
検察アホすぎだろ
0578ネトゲ廃人@名無し
垢版 |
2019/10/21(月) 20:56:56.33ID:???
日本人が大したこと知ってるとは思えないから法のせいで記事が上がらずとも全く困らない
0579解析者
垢版 |
2019/10/21(月) 21:01:54.53ID:T+zdRD5F
Apexのチート作り方有償で教えますよ
EAC Bypass Driverもあり。
Discord: CopyAgent#9435
0582ネトゲ廃人@名無し
垢版 |
2019/10/28(月) 20:45:25.46ID:???
ファミコン チートWIKI
http://wikiwiki.jp/nnnes1/
PCエンジン チートWIKI
http://wikiwiki.jp/tg002/
メガドラ チートWIKI
http://wikiwiki.jp/genesis003/
スーファミ チートWIKI
http://wikiwiki.jp/snes007/
プレステ チートWIKI
http://wikiwiki.jp/ps006/
ゲームボーイ 改造コードWIKI
https://wikiwiki.jp/gb_code/
パソコン チートWIKI
http://wikiwiki.jp/pc005/

でも、ディーヴァクロニクルのSTORY3で改造したいんだけど、バイナリエディタを管理者として実行し、プロセスを選択したら画面が止まってしまった。
0587ネトゲ廃人@名無し
垢版 |
2019/11/26(火) 12:22:06.45ID:faAbPbw8
あげ
0588ネトゲ廃人@名無し
垢版 |
2019/11/26(火) 20:51:03.53ID:???
他板に該当スレが無かったので、若干スレ違いかもしれませんがこちらに失礼します

最近CheatEngineに手を出して、オフゲーのSLGをプレイしています
そのゲームにおいて、
1,CEを起動し、プロセスを選択すると同時に指定のAOBスキャンを実行
2,そのAOBスキャン結果をベースアドレスとして、複数のアドレスを定義付け
というコードファイル(CT?)を作りたいのですが、上手く出来ません
Youtubeで似た事例の動画やフォーラムを見て、見様見真似なのでどこがどう駄目なのかが理解できず…

AOBスキャンをする文字列や、変更したい数値のオフセットは恐らく合っていると思うのですが
https://ux.getuploader.com/nobu15/download/59
恐らく分かる方が見たら酷いスクリプトを書いてるのだとは思うのですが、
添削もしくは書き方のヒントを教えて頂けないでしょうか

ちなみに、参考にした動画やフォーラムは
https://forum.cheatengine.org/viewtopic.php?p=5545429
https://youtube.com/watch?v=vDsbIpu8H30
この辺りです
フォーラムのAug 05, 2014 6:57 pmからAug 06, 2014 3:44 amの流れも、
コードファイルに盛り込めればなぁと思っています 👀
Rock54: Caution(BBR-MD5:669e095291445c5e5f700f06dfd84fd2)
0590ネトゲ廃人@名無し
垢版 |
2019/11/27(水) 14:33:41.07ID:???
>>589
すみません、該当スレは人が居なくなってしまったようだったので…

検索するベースアドレスにFFが入っているせいだと思うのですが、
実行すると「expected near 'FF'」でエラーが出てしまいます
アドレスにFFの値があると、そもそも指定出来ないということでしょうか?
0591ネトゲ廃人@名無し
垢版 |
2019/11/30(土) 16:27:07.03ID:???
Process HackerがWindowsDefenderに検出されるようになったのって俺だけ?
0593ネトゲ廃人@名無し
垢版 |
2019/12/04(水) 04:28:18.42ID:???
チートが検出されたら、過去にそのチートを使用していた人もbanされるんですか?
今使ってないとしても
0597ネトゲ廃人@名無し
垢版 |
2019/12/23(月) 22:33:17.49ID:???
チートエンジンを使用してステータスを2つから振り分け 一つを見つけていじれると思ったら
すぐにまた戻ってしまいます。チートエンジンの機能に固定化はありますが格納される前メモリを
いじれば固定化できるのでしょうか
0598水谷
垢版 |
2019/12/25(水) 22:06:48.65ID:HV9bMTKx
Apexのチート開発の仕方教えます。
Discord: 水谷#1584
0600ネトゲ廃人@名無し
垢版 |
2020/01/03(金) 11:56:55.01ID:???
>>597
検索したアドレスをダブルクリックして下の枠へ登録すると
一番左端に「凍結」というのがあると思う
それにチェック付けておけばOK
0601ネトゲ廃人@名無し
垢版 |
2020/01/17(金) 11:12:03.00ID:???
そういうのは凍結しても意味ないよ
そのすぐに戻ってしまうという値へのWriteアクセスを確認して、書き込んでくるアセンブラコードを書き込まないように修正するのが正しいアプローチ
0603ネトゲ廃人@名無し
垢版 |
2020/01/22(水) 13:17:31.60ID:tGgkh49C
cheat engine 7.0 をWindows10で使っています。
NOX 6.6.でスピードハックしようとしたらDLL Injection Failed と出ました
動画の通りforcedinjection-i386.dll等を使おうとしました
そしたら今度はnot be loaded - Error 126 とか 139 が出てきました。もうどうしたらよいのか分かりません。助けてください
0605ネトゲ廃人@名無し
垢版 |
2020/02/17(月) 07:04:57.48ID:1BuM+BLJ
あげ
0606ネトゲ廃人@名無し
垢版 |
2020/02/24(月) 23:32:43.21ID:???
海外の天才ハッカーもPS4のプログラムをいじれないという話だが
無反動マウスコンバーターとかはどうやって作ってるの?
0608ネトゲ廃人@名無し
垢版 |
2020/02/29(土) 08:21:44.78ID:???
海外の動画見ててチートエンジンに挑戦してみようかと思った
0609ネトゲ廃人@名無し
垢版 |
2020/03/02(月) 11:48:06.18ID:???
CEって7.0でUI大幅に変わってから重く感じたからまだ6.8.2使ってるんだがそろそろアプデして良いか?
0611ネトゲ廃人@名無し
垢版 |
2020/03/05(木) 22:44:46.52ID:???
>>588
このスクリプトに書かれているベースアドレスってインジェクションするアドレスのことかな?
もし静的アドレスが分かっているなら「Add Address Manually」でそれぞれベースアドレスとオフセットを追加すればいい。
どちらにしてもaobscanでアドレスの取得に失敗しているんだと思う。
こんなにFF FF FFが連続するマシン語はあまりみたことない気がする。
0612ネトゲ廃人@名無し
垢版 |
2020/03/11(水) 14:17:34.14ID:???
座標ってX,Y,Zの順が普通だよな?
とある開発元のゲームは一律でY,Z,Xの順なんだが
0613ネトゲ廃人@名無し
垢版 |
2020/03/15(日) 14:49:07.38ID:???
cheat engineでset valueの値をアドレスで指定する事って可能ですか?
変更したい値がそのアドレスにある値なのでアドレスで指定したいのですが
値じゃないとダメなのかよく判らなくて困っています。
0614ネトゲ廃人@名無し
垢版 |
2020/03/19(木) 09:39:16.03ID:???
2点のベクトルから回転行列計算することって可能?
具体的にはキャラ座標(カメラの回転基軸)とカメラ座標から割り出したいんだが
メモリから取り出せばいい話だけど色んなゲームのEspを作るにあたって一つ一つ解析するのは大変なんで、比較的楽に取り出せるキャラ座標とカメラ座標から自前で計算出来れば楽なんだが
0615ネトゲ廃人@名無し
垢版 |
2020/03/19(木) 10:08:43.57ID:???
>>614
なんでここで聞いたのか分からんけど要はカメラの姿勢が知りたいってこと?

カメラ座標からキャラ座標へのベクトルをZ軸
Z軸と仮のY軸(0,1,0)との外積がX軸
求めたX軸とZ軸の外積が真のY軸
各軸を正規化すればそれが回転行列
0617ネトゲ廃人@名無し
垢版 |
2020/03/23(月) 11:47:57.38ID:???
チート方法じゃなくて計算方法を聞いてるからだろ
数学板かプログラム板にいって宿題スレあたりで聞いたほうが手っ取り早い
0627ネトゲ廃人@名無し
垢版 |
2020/03/30(月) 06:49:58.15ID:Cw4c4NCm
はえぇh
0628ネトゲ廃人@名無し
垢版 |
2020/03/30(月) 06:50:00.36ID:Cw4c4NCm
はえぇh
0629ネトゲ廃人@名無し
垢版 |
2020/03/30(月) 06:50:02.22ID:Cw4c4NCm
はえぇh
0630ネトゲ廃人@名無し
垢版 |
2020/03/31(火) 17:48:10.61ID:???
ベースアドレス、ポインタ、オフセットの効果的な見つけ方がわからん…
CEでpointer finderとかあるのは分かるけどログは何メガ行とかそういう規模で絞り込みが出来ない…

何とかしてベースアドレスを見つけてポインタとオフセットでプレイヤーの弾を無制限にするlua scriptを作りたい
RE:2 Demoなんだけど
0631ネトゲ廃人@名無し
垢版 |
2020/03/31(火) 21:35:45.13ID:???
>>630
https://www.youtube.com/watch?v=nJ72p6fDIM8
上の動画ではマチルダの弾丸は[rax+20]になってる
1レベルポインターならraxの値をアドレス検索すれば静的アドレスが見つかるかも
他の銃に変えたりして試行錯誤してみるといい

https://www.youtube.com/watch?v=SFr0nRjDJfE
ポインタースキャンに関しては6:00 ~ 18:30が役に立つと思う
3つのポインターマップを使ってスキャンしている
64ビットゲームなので、32bitメモリアライメントのチェックをはずし、最大オフセット値は6500、マックスレベルは10まで増やしたと言ってる
あとスキャン結果を別のPCにコピーして比較実行すると効果的みたい
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況