したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | メール | |

プログラミングについて話すスレ

19さむらい鼠:2004/06/09(水) 20:42
童話王国の解析してるんだけど、カーバノレさんにどんどん
遅れとってるよぉ。デバッガ使いこなすのって難しいな。
なんでカーバルさんはあんなに仕事が早いのだろうか?ア
センブラ見てパッとやってることがわかっちゃうのかな。

でも、童話つまんないw 何か他のゲーム探そうかなorz

20升屋な名無しさん:2004/06/09(水) 22:16
ターゲットのAPIを探したら、その前後のループの先頭とかにブレークポイントを
置いて、どこでそのデータが作られてるのか場所を突き止めてます。
「API発見」→「APIのデータを書き換えてるCall場所発見」→
「コール先のMOV命令発見」ってパターンです。
「暗号 ⇔ 平文」を一文字ずつ書き換えてるMOV命令が見つかれば、その前後をノートに
メモリ、レジスタがどう変わるのか1行ずつ書き出しながらやってます。
頭の中だけでは4,5行読んだら最初の行の内容を忘れますw

あとね、有利なのはシーケンサで使ってた応用命令は、ほとんどアセンブラなので
命令名を見ればだいたい、その命令は何をする命令なのか?ってのは判ります。

21さむらい鼠:2004/06/11(金) 19:22
// レシーブしたパケットをデコードする。
// numOfTable : 何枚目のテーブルを使うか。
// key : デコード用の暗号キー
// buff1 : パケットのバッファー
// buff2 : パケットのバッファー
// len : バッファーのサイズ

BYTE* pTable;//デコード用テーブル先頭へのポインタ

char DecodeRecvPacket(int numOfTable, DWORD key, DWORD* buff1, DWORD* buff2, int len)
{
int a;//暗号キーの処理結果を格納する変数
int b;//for文のカウンタ
int c;//バファ退避用


for(b = 0; b < len; b++){
//暗号キーの下位1バイトをビット操作
if ((a = key & 0x0ff & 0x80000007) < 0){
a--;
a |= 0xfffffff8;
a++;
}

//バッファを書き換える
(BYTE)buff1[b] = (BYTE)(pTable + numOfTable * 256 + (BYTE)buff1[b]);

if( key & 0xff & (1 << a) != 0 ) {
c = (BYTE)buff1[b];
//バファを書き換える
(BYTE)buff2[b] = (BYTE)((BYTE)buff1[b] ^ (key & Oxff));
//暗号キーの下位1バイトを書き換える
key = key & (BYTE)c;
continue;
} else {
if ((a = key & 0xff & 0x80000003) < 0){
a--;
a = a | 0xfffffff8;
a++;
}
}

if (key & 0x0ff & (1 << a) != 0 ) {
c = (BYTE)buff1[b];
//バファを書き換える
(BYTE)buff2[b] = (BYTE)buff1[b] - (key & 0xff);
//暗号キーの下位1バイトを書き換える
key = key & (BYTE)c;
continue;
} else {
c = (BYTE)buff1[b];
//バッファを書き換える
(BYTE)buff2[b] = (BYTE)((BYTE)buff[b] + key & 0x0ff);
key = key & (BYTE)c;
}
}

return key;
}

22さむらい鼠:2004/06/11(金) 19:23
うわ。コピペしたらインデント狂ったw

23さむらい鼠:2004/06/11(金) 19:38
関数の戻り値型はcharじゃなくて,intでしたね。
なんか他にもいっぱい間違いありそう。
どなたか添削よろしこw

暇だったので丸1日かけて解析してみました。
ゼエゼエハァハァ。
やっとアセンブラに少し眼が慣れて来た感じ。

次は、この関数を呼び出すプロシージャを解析して、
その後は、Sendのエンコード方式を解析しないといけ
ない…。なんか1週間は掛りそうw ムリポ…。
カーバノレさんは、これを全部1日で解析しちゃうんですね。

24升屋な名無しさん:2004/06/11(金) 23:15
Cは良くわかんないけど、そんな感じだったぽ。
解析には2、3日くらい掛かってます。初めに大体の感じをつかんで
面倒くさそうなんで放置して、しばらくしてから悔しくなって詳しく
解析しましたw

片側でデコードパターンをつかむと、反対のSend側は比較的サクサク
出来ると思いますよ。

あと、おいらの解析は、トライアンドエラーの繰り返しってのもあり
ます。Delphiで適当にデコード回路組んでやってみてダメだったら
修正の繰り返し。この作業中は深く検証せず、思いつきでもチャレンジ
してたりしますw
で、うまくいったときには完成! ってなってますw

25さむらい鼠:2004/06/13(日) 09:58
Recv側の暗号キーはパケごとに、鯖から送られてくる
んですね。なんか不思議な仕様。
レシーブしたパケの1バイト目がキー。そのキーを
10で割った余りが、何枚目のデコードテーブルを使う
のかを決定する数値。テーブルの内容は、005F9180か
らの.rdataセクションに書いてあるのでそのまま使え
そうですね。

いまは、Send側をやってます。かなりアセンブラに眼
が慣れてきたポルヌ(^o^)

26さむらい鼠:2004/06/13(日) 14:22
var
pTable: PChar; //テーブルへのポインタ

//Sendパケをエンコードする関数。
//num:何枚目のテーブルを使うかを指定する。
//key:暗号キー
//buff1:バッファ
//buff2:バッファ
//len:バッファの長さ
function EncodeSendPacket(num :Integer; key :Char; var buff1 :PChar;
            var buff2 :PChar; len :Integer):Char;
var
  i :Integer;
  tmp :Integer;
begin
  for i := 0 to len - 1 do
  begin
    tmp := ord(key) and 7;
    if (ord(key) and (1 shl tmp)) <> 0 then begin
      buff2[i] := Char(ord(buff1[i]) xor ord(key));
      key := buff2[i];
      buff2[i] := pTable[num * 256 + ord(buff2[i])];
      continue;
    end;

    tmp := ord(key) and 3;
    if (ord(key) and (1 shl tmp)) <> 0 then begin
      buff2[i] := Char(ord(buff1[i]) + ord(key));
      key := buff2[i];
      buff2[i] := pTable[num * 256 + ord(buff2[i])];
      continue;
    end;

    buff2[i] := Char(ord(buff1[i]) - ord(key));
    key := buff2[i];
    buff2[i] := pTable[num * 256 + ord(buff2[i])];
  end;
  result := key;
end;

27さむらい鼠:2004/06/13(日) 14:43
sendの場合は1バイトずつ上の関数が呼ばれる。

パケットの1バイト目と2バイト目が特別な意
味を持っていて、3バイト目からがデータ本体
ぽ。この関数を呼び出す側の処理を解析しない
と1バイト目と2バイト目の意味がわからない。
予想では、1バイト目がキー、2バイト目がテ
ーブルナンバーを導き出すキー。

28升屋な名無しさん:2004/06/13(日) 19:59
なぬ!
パケの1、2バイト目にそんな秘密があったとは!
まったく気付いてませんですたw

29升屋な名無しさん:2004/06/15(火) 01:27
なんか、違うような気がするぽ

30さむらい鼠:2004/06/15(火) 16:39
orz

31さむらい鼠:2004/06/15(火) 17:56
デバッガーでアセンブラ見て解析してるばかり
でなく実際のパケを見ないと、解析も捗らない
ということがいまさらながら、よくわかって来た
今日この頃。
パケ横取りソフトを作ってみようかな。面倒だな〜。

ところで、1バイト目、2バイト目の意味はともかく、
3バイト目からデータ本体が始まるっていうのは間違
ってるでしょうか?

32升屋な名無しさん:2004/06/15(火) 22:37
わかった!
その部分はゲーム前のログイン情報の部分だよ。
ゲームが始まってからは、そのデコードコールは使われなくなり
その下のコール文でデコードが実行されます。

>3バイト目からデータ本体が始まる
そこがまた落し穴なんですよw
その部分がおいらの6月8日の日記ですw

33さむらい鼠:2004/06/16(水) 17:50
>わかった!
>その部分はゲーム前のログイン情報の部分だよ。

おっしゃる通りでしたw

34升屋な名無しさん:2004/06/18(金) 20:44
おいらのDLLがXPに対応できますた!
いりますか?

35さむらい鼠:2004/06/18(金) 21:17
>>34
おめでと〜。関数のordinal値はdumpbinで調べたの?
よかったら、鶴欲しいです^^

ちなみに私のツールはやっとデコード前のパケを表示
できるようになったばかり。暗号処理はそのうちでき
るようにするつもりだけど、今度はその処理はDelphi
で書こうと思ってます。

36升屋な名無しさん:2004/06/18(金) 22:19
メール発射しますた

37さむらい鼠:2004/06/19(土) 12:56
>>36
うちの環境でも動いたー!すげっ
DLLのソースに少し目を通したけど、sendや
recvもそうだけど、特に興味深いのはGetMe
moryDataでしたねw
あと、DLL初期化後1秒後に、GET_MESSAGEの
フックを掛けるところとか。

ありがとうございました。
COMのフックの仕方を私もいずれはよく研究
してみたいと思いますた。

38さむらい鼠:2004/06/19(土) 13:07
あと、キャラが画面上で勝手に動きまわるのも、
見ていて面白かった。

39升屋な名無しさん:2004/08/02(月) 17:35
最近1ヶ月ほどプログラミングまったくしてないです。
1ヶ月でも遠ざかってると細かい文法なんかどんどん
忘れちゃうんだよね〜。
とりあえず、デルファイの起動方法はまだ忘れてませ
んがw なんか適当なソフトでも作ってリハビリしな
いとあかんわ。

40升屋な名無しさん:2004/08/27(金) 21:30
「ぬるぽ」って↓だって知ってた?

public class 「NullPointerException」
extends 「RuntimeException」

オブジェクトが必要な場合に、アプリケーションが null を使おうとすると
スローされます。たとえば、以下のような場合があります。

null オブジェクトのインスタンスメソッドの呼び出し
null オブジェクトのフィールドに対するアクセスまたは変更
null の長さを配列であるかのように取得
null のスロットを配列であるかのようにアクセスまたは修正
null を Throwable 値であるかのようにスロー

null オブジェクトの不正な使用を示す場合は、このクラスのインスタンスを
アプリケーション側でスローするようにしてください。

41升屋な名無しさん:2004/08/28(土) 06:24
∧_∧
(,, ・∀・) | | ガッ
と    ) | |
Y /ノ 人
/ )    <  >_∧∩
_/し' //. V`Д´)/ ←>>311
(_フ彡        /

42升屋な名無しさん:2004/09/01(水) 19:35
>>43782892374390489023849023840849023849023842903482903482904890238490124892384902148921849284923849238490123489023489023849023481293482948928423948129489234893572348653482563489512389712384723856123728934792384712389472874823478234701742307485634785612389472341234123423141241242

43123456:2005/02/12(土) 20:32:03
かなりショボーンな質問で申し訳ないのですがもし周知の方おられましたら
返事いただければと思います。
エタカクライアントそのものでメモリを除いてみるとアドレスが稀に
(ゾーン移動をした後)などに変更してしまっているようなのですが
これを追っかけるのはどの変をいじればよろしいのでしょうか?

今魔杖の残り残段数を調べてそれをまんま表示させるというものを
作っているのですが起動する度にメモリアドレスが変わっているようなので
どのような対処をすればよいのかよろしければご教授願います。

44升屋な名無しさん:2005/02/14(月) 11:40:13
そのアドレスを指しているポインタを見つけてみては?

45123456:2005/02/14(月) 16:01:39
そですか〜〜。マジアリガトウございます。色々試して見ますよ。

46123456:2005/02/19(土) 20:18:47
とりあえず技術的にアセンブリ見てもよく分からなかったので
傾向からメモリアドレスを毎回探す方式をとって完成しました。
これやってて思ったことはやっぱCOMプログラミングも作れたほうが
ある程度今解析されてますし便利ですね。

47升屋な名無しさん:2007/10/27(土) 06:20:16
衣服を透かして女性の裸体を盗撮する透視カメラというものが市販(無線雑誌ラジオライフなどに広告掲載)されており、それを改造したもので「家やマンションの中の様子を建物の塀や壁を透かしてくっきりと盗撮」する盗撮器を所持!!
警察無線の傍受も行っている北朝鮮国籍の要注意人物!
通報情報
名前 杞山 岳史(キヤマ タケシ)
本籍 大阪府東大阪市太平寺2丁目3番4号

住所 大阪府東大阪市柏田東10-9

通報先
大阪府警 公安課
0669454744
大阪府警 メールで通報・犯罪者を逮捕しよう!
gazo110@abeam.ocn.ne.jp警視庁 公安課
0335814321
東北公安調査局
0222564161
中部公安調査局
0529514531
中国公安調査局
0822285141
四国公安調査局
0878226666
九州公安調査局
0927211845

犯罪者逮捕協力者ヘの警察表彰の審査基準をみたしており、通報しておくと杞山岳史が逮捕された後で犯罪者逮捕協力者として警察から表彰が送られる案件です。

検索キーワード 「北朝鮮」「杞山岳史」「北朝鮮 盗撮」など。

48升屋な名無しさん:2008/04/22(火) 12:50:13
今、某MMOの画像データ引っこ抜きたくて解析してるんだ。
PACKを分割するところまではデータ見てモロ分りなんだが
圧縮タイプがわからなくて、逆アセ見てるけど関数がDLLに格納されてて酷くマンドクセ
もっとスキル上げたいぜ・・・。

49升屋な名無しさん:2010/07/10(土) 02:43:40
毎日更新! おもしろ動画サイト
http://dougadedouka.blog133.fc2.com/

50バーバリー 斜めがけバッグ:2012/11/15(木) 19:21:58
カッコいい!興味をそそりますね(^m^)
バーバリー 斜めがけバッグ http://www.burberryofficialoutlets.com/バーバリー-バッグ-レディース-斜めがけバッグ-c-24_30_26.html

51コーチ 財布 アウトレット:2014/06/28(土) 06:01:19
An important thing to deliver after purifying a not easy lenses often take aperture outside your eye area and include the idea during your hand.
コーチ 財布 アウトレット http://www.highervisionwellness.com/

52プラダ バッグ 新作 2014:2014/07/10(木) 11:01:33
as a general rule really should happen to be licensed they will certainly absolutely not go beyond the guidelines established in status licensing statement.
プラダ バッグ 新作 2014 http://www.buffaloinnandsuites.com/

53アディダス スニーカー 人気:2014/07/12(土) 12:01:01
If however you might have highly accommodating not to mention fitness masters you ought to manage a range otherwise bend over criminal offenses as well as the mantoman or alternatively demands defence.
アディダス スニーカー 人気 http://www.fuelcafe.biz/

54SEIKO 5 自動巻き:2014/07/12(土) 12:04:45
Certainly it's fundamental for the volunteers that need be attired sufficiently and that is a good create.No
SEIKO 5 自動巻き http://www.jesusemptytomb.com/

55フェリージ ショルダーバッグ:2014/07/12(土) 13:14:13
Padded Maritime Stream pockets were initially made available to persons in most of the committee made by Wexford institution Promotex who happen to be located in Kerlogue Aggressive Assets.
フェリージ ショルダーバッグ http://www.sunrisehomebuilding.com/

56サマンサタバサ バッグ 2014:2014/07/30(水) 06:23:05
He arrived within a white Bentley and partied down promoter Alex Gidewon along with V103 Kenny Burns.
サマンサタバサ バッグ 2014 http://www.tea4tots.net/

57万年筆 セーラー:2014/08/07(木) 05:21:18
His / her commute grew by two miles, but his new doing work environment reflects light years of change.
万年筆 セーラー http://www.pompespiscine.com/

58パトリック スニーカー アイリス:2014/08/07(木) 05:54:04
His / her commute grew by not one but two miles, but his new working environment reflects light years of change.
パトリック スニーカー アイリス http://www.freedomsfuture.net/

59マリークワント 財布:2014/08/19(火) 06:18:23
His commute grew by a couple miles, but his new doing the job environment reflects light years of change.
マリークワント 財布 http://www.courtreporterworld.com/

60ケイトスペード バッグ:2014/08/19(火) 06:18:42
The commute grew by a couple of miles, but his new doing work environment reflects light many years of change.
ケイトスペード バッグ http://www.wisemovesafelist.com/

61A BATHING APE キャップ:2014/09/11(木) 08:06:00
He arrived in the white Bentley and partied along with promoter Alex Gidewon along with V103 Kenny Burns.
A BATHING APE キャップ http://www.foothillsorganics.net/

62イルビゾンテ バッグ 人気:2014/09/14(日) 10:26:05
I am really loving the theme/design of your blog. Do you ever run into any browser compatibility issues? A small number of my blog audience have complained about my site not operating correctly in Explorer but looks great in Firefox. Do you have any tips to help fix this issue?|
イルビゾンテ バッグ 人気 http://www.randome.info/

63アディダス オリジナルス:2014/09/14(日) 10:26:48
This is the right blog for everyone who hopes to understand this topic. You realize so much its almost tough to argue with you (not that I really will need toa?|HaHa). You certainly put a fresh spin on a topic that's been written about for a long time. Excellent stuff, just excellent!|
アディダス オリジナルス http://www.alexlabriola.com/

64アディダス スーパースター:2014/09/14(日) 10:51:11
I am really impressed with your writing skills and also with the layout on your blog. Is this a paid theme or did you customize it yourself? Anyway keep up the nice quality writing, it is rare to see a nice blog like this one today.|
アディダス スーパースター http://www.alexlabriola.com/

65コルボ 財布 メンズ:2014/09/14(日) 15:08:02
Schoene Webseite, ich komme mal wieder vorbei.|
コルボ 財布 メンズ http://www.whenabwa.org

66ケイトスペード バッグ:2014/09/15(月) 13:33:38
But there isn't correct "art" galleries although.
ケイトスペード バッグ http://www.heroncoveconcerts.com

67orobianco オロビアンコ 3386:2014/09/15(月) 13:33:59
For the whole bunch from the huge talent precisely where these are generally draining creative bottom.
orobianco オロビアンコ 3386 http://www.chumleyssteakhouse.com/

68ポロラルフローレン:2014/09/15(月) 13:50:11
There rrs really a journey taking you to 5 to 6 musicians house inside the everyday travel, and you just are able to honestly enjoy the the work they do.
ポロラルフローレン http://www.myownbankruptcy.com/

69コーチファクトリーアウトレット:2014/09/15(月) 13:53:20
Many details posting companies which are able to provide computer data discover support or perhaps 2 typing strategy to ensure precision.
コーチファクトリーアウトレット http://www.diving-whitsundays.com/

70ミュウミュウ長財布:2014/09/15(月) 13:58:29
, in last few years there initially were even more of an actual increasing artwork community forum.
ミュウミュウ長財布 http://www.paulnavidad.com/

71パトリック スニーカー セール:2014/09/15(月) 14:14:30
Largely figures a way in outfits using the finished numbers article production appearing in merely logical system therefore the .
パトリック スニーカー セール http://www.shortship.com/

72ラルフローレン アウトレット:2014/09/15(月) 17:26:11
Twice over entering strategy means concerning typing the actual a number of personal files which happens to be then you should in contrast to into computer files as partners to produce ideal results in you retailers.
ラルフローレン アウトレット http://www.myownbankruptcy.com/


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板