チート初心者スレpart2 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
今時観戦や殺された相手のリプレイ機能がないネトゲなんてないんだからそれでバレる要素があるチートを使う奴は理解出来ん
捨て垢別環境ならまだしもメイン環境でやるのはアホだろ 使用しただけで逮捕って言っときゃ抑止力大きいからな
多分他にも色々やってたんだろ チート初心者って言葉に釣られてきたら上級者しかいないやん。 >>433
BFかなんかはゲームのスクショではなくWindowsのスクショ取ってくるんじゃなかったっけ
だからオーバーレイもバレバレなのでスマホや別PCにレーダー表示させるくらいしか出来ないってゲームがあったはず そこまでやるともうウイルスだな…
HAXXさんの言ってたこともあながち間違ってなかったのかも >>438
何を勘違いしてるのか知らんが、BFに導入されてるPunkbusterは昔からスクショ取ることで有名だけど
ゲーム内だけだから、関係ない
ってか利用規約に書いておけば仮にデスクトップ全体取ってても違法にならないかもしれないが
プライバシー侵害との兼ね合いもあるからそんなグレーなことはさすがにやってないでしょ
あと常識的に考えてリアルタイムの対戦ゲーでいちいち流れてるパケットなんか
記録してるわけないだろ
私電磁的記録不正作出はそういう事を言ってるんじゃなくて
チートプレイの結果生まれたK/Dみたいな戦績はすべて不正に作出されたことになるし
そしてそれは他人にも影響してるわけだから
客(他人)への不利益 = 営業妨害もプラスされるわけだ haxx(笑)とかいうやつが売ってたチートは
全部真っ黒なものなので、逮捕されて当たり前・・
むしろホームページであんな中二っぽいこと書いててなんで逃れられると思ったのだろうか >>440
録画機能付いてるゲームやったことないん?
勿論動画として録画をすると容量的に効率バカ悪いから鯖側でパケット記録されててそれを好きなときにこっちで再現できる
1試合丸々、他プレイヤー全員の視点も自由に変えられる >>442
え?・・・これは笑うところですか?・・・ >>443
実際ある機能を言ってるだけなんだが突っ込みたい所あるならどうぞ リプレイが鯖側に保存されてるわけねーだろ、バカか
リプレイってのはローカルにゲーム側が指定したフォーマットで保存されるんだが・・
リプレイ機能のあるゲームなんか何個も知ってますわw リプレイか。
ヴァーチャレーシングに搭載されてそんなにメモリに余裕あるのかと思ったな。 >>442
リプレイがあってもESP使用の証拠にはならないんじゃね?
妙に決め撃ちがうまいとか、怪しい程度だろ >>450
セキュリティ突破を省けばチーターにとってはespが最高峰の技術だからな プロセス間通信について質問
今現在はRead,WriteProcessMemoryやマップドファイル作って自作ツールとゲームのやり取りしていてこれで十分目的は達成出来てるのだけど
上二つのやり方だと例えば自キャラのHP値を取得するとき、*HPからバッファや共有メモリへ一旦コピーが発生するのが気に食わない
OSの管理をぶち壊すくらい危険な事とは承知だけど別プロセスのメモリを直接参照する方法って無いの? ドライバ使えば文字通り直接メモリ操作できるよ
アクセス違反が発生したらプロセスクラッシュどころかブルースクリーンになるけどな >>457
ドライバのMmCopyMemoryとかってプロセス単位ではなく障壁無しに物理メモリからコピーを取ってこれるというだけで直接参照ではなくないか?
別にコピーでも1回1回の呼び出しにオーバーヘッドが無いなら大きなバッファ用意する必要なくなるしそれで良いんだけどね
ReadProcessMemoryはオーバーヘッドが大きいから出来る限り1回で調達するために大きいバッファ用意しないといけないのが困る 目的がメモリの改ざんならdll作ってインジェクトして対象プロセス内部で読み書きするでもいいのでは?
これなら早いしAPI使う必要もないよ 頻度としては書き込みよりも圧倒的に読みのほうが多い
それも要素数が数千単位のEntitiesListなどが主だからそれをコンテナ全て読み取ってからこちら側でforで回すって方式でやってる
もし直接参照が出来ればそのままforで回せるからメモリ節約できる
とはいえ現状でも特に困ってはいないし節約といっても数MBなので本当に自己満足レベル
ただどうせ機械に近いレベルのプログラミングをしてるからには細かい所まで自分の思うようにしたい 最初に思いついた手段に拘りすぎて目的を見失ってそう
というか自分の中で勝手に完結してて他人に説明するのが下手そう
高速化やメモリ節約が目的なら
もっとスマートでシンプルな方法がいくらでもあるで 取り組むべきようなことはこんな過疎スレで聞いたりしないからあわよくば程度の事なんだけどな
参照と言ってるのに値渡しの答えばかり返ってくるようなとこには別に期待はしてない 普通に考えて、プロセスを分けてる以上値の受け渡しが必要なのは仕方ない
ユーザ空間ではそれぞれのプログラムが干渉しあうなんてことはあってはならない
って前提のもとにOSは作られてるわけだから、OS自体がそんなことできるような
機能を提供しているわけがないし、もしそんなことができたらそれはOSの欠陥だからw
質問自体がナンセンス オーバーヘッド減らしたいならforで回すの止めれば良いのに OSの管理をぶち壊す上でって予め言ってるよな
説明が悪いとか言われたけど参照ってことも最初から言ってるのに参照と値渡しの違いも理解してない、つまりはチーターにとって基礎事項のポインタすらも理解してないレベルはさすがにご遠慮願いたい
まぁ初心者スレで聞いてる俺の方がスレチか OSの管理をぶち壊す上で(笑)ってそんなことできないのが当たり前でしょ
現代OSがなぜプロセスという形で独立させているか、意図をちゃんと理解していれば
そもそもそんなナンセンスな発想自体浮かばないって話だよ
仮にそういうことができちゃったらMicrosoftに報告すれば金もらえるレベルの話だと思うが?
オペレーティングシステムの基礎くらいはちゃんと勉強しような^^; チートエンジンをNOXのアプリ(モバ7)に使用しているのですが
メモリ書き換えは出来てもspeedhackのチェック欄にチェックを入れると
「Failure cofiguring speedhack part1: 13:offset too big」とエラーポップアップが出てきました。
海外サイトを調べても対処法が書いておらず…どなたか分かりませんか… こんにちは>>31です 久々(2年ぶり!)にこのスレ見た
前回は見事な三日坊主っぷりだったぜ
また三日で挫折するけど久々に取り組んでみる >>466
直接参照したいならdllぶち込めば済む話だろ。
rpmが遅いなんて聞くまでもないし、そもそも外部でやる意味ね。内部でいいじゃん。
ちなみに、値渡しってよりも正確には読み取りだけどね。 アセンブラとかバイナリがわかんねぇー
素早く身につける方法教えてくれ このスレ意味ないだろ
低レベルな上に時々妙にイキった>>466みたいな無知が現れるだけじゃないか ImageDirectoryEntryToData関数使って関数名とアドレスを一覧表示しようとしてるんだけど
メモリエラーなるわ windows10の64bitだからなのかな >>485
関数なんか使わないで、IMAGE_NT_HEADERSからマニュアルで取得すれば良い ブラウザゲーならどのプロセスで動いてるのかさえ特定できれば
プロセスメモリエディタで好き放題できるだろ 495様
そういった知識が0なのでご教授願いたいです 師匠 >>486
iat hookにチャレンジしたいのよ
その前段階
>>485
でけた
Baseの前の(char*)が無いとでかい数値になってメモリアクセス違反が発生して
(char*)つけたら上手く動作した
なんでこれが必要なのか分からん
アドレスの足し算にキャストが必要な理由がわかってないからいっぺん死んでくる
for (; pImageImportDescriptor->Characteristics != 0; pImageImportDescriptor++) {
printf("-%s\n", ((char*)Base) + pImageImportDescriptor->Name);
IMAGE_THUNK_DATA64* pINT = (IMAGE_THUNK_DATA64*)((char*)Base + pImageImportDescriptor->OriginalFirstThunk);
for (; pINT->u1.AddressOfData; pINT++) {
if (IMAGE_SNAP_BY_ORDINAL64(pINT->u1.Ordinal)) {
}
else {
IMAGE_IMPORT_BY_NAME* tName = (IMAGE_IMPORT_BY_NAME*)((char*)Base + pINT->u1.AddressOfData);
printf("%s\n", tName->Name);
}
}
} 今更ながら>>57のアドバイスを参考に何気なく過去スレ見てみたら
(反応できてなくてゴメンよ)
めちゃくちゃレベル高い解析者いて感動した
【xtrap】不正プロテクトの回避や解析方法【npro】
https://schiphol.5ch.net/test/read.cgi/mmosaloon/1208457391/
雲の上のレベルの話だけどモチベアップしたわ(+三日) その頃はどんな書き込みしても教えてくれる人がいたんだな
羨ましい 羨ましいね
iat hookとdll injection(createremotethread)それぞれ独立だけど出来た
dll injectionって同じプロセスに対して一回しか出来ないのね 何でだろ >>503
原因わかった
1回目のinjectionだとfdwReasonがDLL_PROCESS_ATTACHだから
該当の処理が実行されるけど
2回目のinjectionだとそうならないみたい
switchの外に処理を書く もしくは freelibrary使ってアンロードすれば2回目以降も動作するっぽい
switch (fdwReason) {
case DLL_PROCESS_ATTACH:
MessageBox(NULL, “test”, “test”, MB_SYSTEMMODAL);
break;
} http://inaz2.はてなぶろぐ.com/entry/2015/08/10/193103
この記事真似してみたけど失敗した
windows10のメモ帳はshellabout呼んでないみたい setwindowtextあたりで再チャレンジ 明日 GoogleChromeでRPGアツマールのゲーム加速すらできない……
チートエンジンのProcessesタブのchorome.exeを片っ端から開いて加速設定していっても一切変化がない
オンライン要素皆無のゲームだから対策されてるわけでもないと思うんで誰かやり方教えてください ツクール系ならCEよりうさみみハリケーンの方が対応してると思うが ゲームの才能無い割に某TPSでアジアランカーに入れる程度のスキルは身に付いたが
この分野って結局は自力で発明しなきゃいけないこと多すぎてそれに懸けてきた労力も相まってあんまり他人に教える気無くなるんだよな
ハッカー文化とは真逆の思想に行き着いてすまん 少なくとも>>504みたいなクレクレ君には教える気にならない >>505
同一のdllを複数回injectするのならCreateRemoteThread,LoadLibraryを使った通常の方法だと2回目以降は失敗するけど、
PEBのモジュールリンクからinjectしたDLLを外せば何度でも同一DLL inject出来る。
DLLのロード後にリンク外すか、LoadLibrary使わないでマニュアルでinjectするかすれば良い。
そもそも同一のDLLじゃなくても失敗するんだったら、コードが悪いとか言えない。 >>506
x86->x86, x64->x64とか、同一のアーキテクチャ同士ならkernel32.dllとかシステムモジュールのロード位置(アドレス)はプロセス間でも同じだから、
そのまま従来の方法でアドレス渡せるけど、x86->x64とかならロードされるアドレスの相違上、inject対象のプロセスからReadProcessMemory等使ってPEB読み取って、
エクスポートテーブルからCreateRemoteThreadに渡したいAPIのアドレス取得しないと失敗する。
だから、x64でFreeLibrary実行が難しい〜って言うよりもx64->x64にすれば良いだけ。 とりえあず、メモ帳のタイトル変えることはできた
>>513
レスありがとう
>PEBのモジュールリンクからinjectしたDLLを外す
調べてみる
>>514
うん、freelibraryの実行自体は簡単だと思うんだけど
freelibraryに読み込んだDLLのアドレスを渡すのが大変そうだと思った 放置少女とかいう○ゲーでチート(アイテム増殖など)はできないですかね? >>512
教える気にならないんじゃなくてできないから教えられないんだろ? >>518
ここはある程度できる人が躓いてるところを補う場所であって
>>494>>504>>517みたいな乞食に施すスレではないので 初心者から上級者まで基本的に英語出来るかグーグル翻訳をある程度補完できる知能があるやつなら英語圏のサイトですべて事足りる
よってここもそうだが上級者スレは尚更需要無いだろうな
なんとなくワンチャン5ちゃんねらー特有の情報出てくるかなーと思ってロムったり何度かレスしたりしたが未だ価値ある情報は一つも見たことがない >>521
ならどんな書き込みがあっても文句は言えないな https://www.keicode.com/windows/win08.php
これ真似したけど失敗した
どうやらwindows7以降は署名がないと動かない模様
https://docs.microsoft.com/ja-jp/windows/win32/win7appqual/appinit-dlls-in-windows-7-and-windows-server-2008-r2
Microsoft is modifying the AppInit DLLs facility in Windows 7 and Windows Server 2008 R2 to add a new code-signing requirement. Win10の最新でもAppInitのインジェクションはできるよ
Win7以降からはマイクロソフトが証明書つけた方がいいんじゃねって言いだしただけで、RequireSignedAppInit_DLLsの値を変えれば普通に動く ありがとう
確かに記事の下に書いてあったわ
RequireSignedAppInit_DLLs
0 Load any DLLs.
1 Load only code-signed DLLs.
でも試してみたけどだめだった
たぶんどっか間違ってるんだけだろうけどもういいや(このやり方にあまり興味がない)
https://stackoverflow.com/questions/9027642/simple-dll-injection-not-working-using-appinit-dlls-dllmain-not-getting-callev ■ このスレッドは過去ログ倉庫に格納されています