같이 노력해 보아요!!

Korea - 한국

Moderator: Moderators

Forum rules
This server is currently not maintained and tables folder (including connection info) maybe outdated. Read the wiki for instructions on how to update those information and please contribute when you obtain them. Contact Cozzie to join the team as a regular server supporter.
noinzang
Human
Human
Posts: 26
Joined: 10 Jul 2008, 11:31
Noob?: No
Location: Rep. South Korea

Re: 같이 노력해 보아요!!

#21 Post by noinzang »

adorably//
현재의 패킷은 유동패킷이기 때문에 가장먼저 해야 할 부분은 패킷의 유동공식을 찾는게 가장먼저입니다.
패킷의 유동공식을 먼저 찾아 샌드패킷의 전송을 정확히 한 후에 리시브를 수정해야 하는사항이고요..
그렇다면 유동패킷이 원래 항시 적용되는 패킷이고 간혹 고정패킷으로 바뀌는 것인가요? 아니면 그 반대
인가요?

이전에 포스팅된 글을 찾아보니 원래 Send Packet 은 유동적이며 1달~2달에 한번에서 2번정도
Send Packet 이 고정적으로 변한다는 글을 봤습니다.

SendMove 패킷만 따로 뺀건데요. 유동 Packet 은 아래처럼 이렇게 변하는걸 말씀하시는거죠?

Code: Select all

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  B5 00 38 64 66 00 2A 05 80                         ..8df.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  AD 44 31 65 63 00 2A 05 90                         .D1ec.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  51 A8 31 66 39 00 2A 05 80                         Q.1f9.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  25 C6 33 66 36 00 2A 05 90                         %.3f6.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  09 D7 30 63 33 00 2A 05 80                         ..0c3.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  DD 3F 36 34 31 00 2A 05 90                         .?641.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  41 48 37 33 31 00 2A 05 80                         AH731.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  55 E6 32 35 34 00 2A 05 90                         U.254.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  39 74 63 62 36 00 2A 05 80                         9tcb6.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  4D 74 65 36 39 00 2A 05 90                         Mte69.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  71 52 35 37 63 00 2A 05 80                         qR57c.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  C5 21 32 36 66 00 2A 05 90                         .!26f.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  29 5B 30 66 33 00 2A 05 80                         )[0f3.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  FD A4 38 35 36 00 2A 05 90                         ..856.*..
Ch@Os
adorably
Noob
Noob
Posts: 13
Joined: 29 May 2008, 07:01
Noob?: Yes

Re: 같이 노력해 보아요!!

#22 Post by adorably »

그렇다면 유동패킷이 원래 항시 적용되는 패킷이고 간혹 고정패킷으로 바뀌는 것인가요? 아니면 그 반대
인가요?
이전에 포스팅된 글을 찾아보니 원래 Send Packet 은 유동적이며 1달~2달에 한번에서 2번정도
Send Packet 이 고정적으로 변한다는 글을 봤습니다.
유동패킷은 아래 코드와 같이 샌드 패킷이 변화된다는 것을 말하고요..
간혹 고정패킷으로 바뀌는 경우가 있습니다.
즉 이때도 공식만 약간 바뀌었을뿐 유동패킷과 틀을 같이 합니다.
고정된다고 말하긴 하지만 실제로 패킷이 고정되는 것이 아니라..
연산을 하다가 도중에 멈춘다고 봐야겠지요..
현재의 Send Packet 패킷은 매주 1회 바뀝니다.
리시브 패킷은 매시간 바뀌고요..

Code: Select all

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  B5 00 38 64 66 00 2A 05 80                         ..8df.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  AD 44 31 65 63 00 2A 05 90                         .D1ec.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  51 A8 31 66 39 00 2A 05 80                         Q.1f9.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  25 C6 33 66 36 00 2A 05 90                         %.3f6.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  09 D7 30 63 33 00 2A 05 80                         ..0c3.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  DD 3F 36 34 31 00 2A 05 90                         .?641.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  41 48 37 33 31 00 2A 05 80                         AH731.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  55 E6 32 35 34 00 2A 05 90                         U.254.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  39 74 63 62 36 00 2A 05 80                         9tcb6.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  4D 74 65 36 39 00 2A 05 90                         Mte69.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  71 52 35 37 63 00 2A 05 80                         qR57c.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  C5 21 32 36 66 00 2A 05 90                         .!26f.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  29 5B 30 66 33 00 2A 05 80                         )[0f3.*..

192.168.0.56:49305  211.172.246.132:4500  9  Send  
0000  FD A4 38 35 36 00 2A 05 90                         ..856.*..
올려주신 이 패킷이 무슨 패킷인지 모르겠군요..
싱크 패킷이라면 11바이트여야 하는데.. 이건 9바이트군요..

코어 수정시 가장 먼저 찾아야 할 패킷이 접속유지를 해야 하니 싱크 패킷이겠죠..
recvpackets.txt 에 정의된 싱크 패킷의 길이는 11바이트 입니다.
싱크패킷만 유동으로 바뀌는 것이 아니라 보내는 모든 샌드 패킷이 유동으로 바뀌므로..
원래의 싱크패킷 코드를 먼저 찾아야겠죠..
원래의 싱크 패킷 번호가 0011 이라 가정할 경우..
recvpackets.txt 에서 0011 은 11 바이트로 지정되어 있겠죠..
마찬가지로 맵 로디드는 2바이트로 지정되어 있고요
OKN에서 강좌한 부분이 있지만..
연산 공식은 Utils.pm 파일에 함수로 지정한 후..ServerType8_1.pm 등의 샌드패킷에서 불러와야 합니다.
Utils.pm 에서 추가된 변수중 전역변수로 사용되어야 할 변수는 Globals.pm 에 전역변수로 지정이 되어야 하고요..
noinzang
Human
Human
Posts: 26
Joined: 10 Jul 2008, 11:31
Noob?: No
Location: Rep. South Korea

Re: 같이 노력해 보아요!!

#23 Post by noinzang »

adorably//
제가 위에 나열된 Packet은 SendMove Packet이였구요. adorably님이 말씀 하신
SendSync 패킷은 아래 코드인것 같은데요. 이 Packet 역시 랜덤으로 돌아 가네요.

Code: Select all

192.168.0.56:49758  211.172.246.132:4500  11  Send  
0000  8F B3 32 66 31 62 00 71 30 30 00                   ..2f1b.q00.

211.172.246.132:4500  192.168.0.56:49758  6  Recv  
0000  30 03 1E 44 90 0A                                  0..D..

211.172.246.132:4500  192.168.0.56:49758  6  Recv  
0000  87 01 7A 53 11 00                                  ..zS..

192.168.0.56:49758  211.172.246.132:4500  11  Send  
0000  9B 00 63 61 64 64 00 56 5F 30 00                   ..cadd.V_0.

211.172.246.132:4500  192.168.0.56:49758  6  Recv  
0000  30 03 ED 72 90 0A                                  0..r..

211.172.246.132:4500  192.168.0.56:49758  6  Recv  
0000  87 01 7A 53 11 00                                  ..zS..

192.168.0.56:49758  211.172.246.132:4500  11  Send  
0000  37 C4 61 34 61 30 00 3B 8E 30 00                   7.a4a0.;.0.
결국 kore의 정상 동작을 위해서는 기초적인 Perl Programming 이 필수가 되겠군요.
예전에 단순히 패킷만 바꿔가며 적용했던 시절과는 절대 틀리네요.:(

우선은 관련된 코드들을 살펴보면서 차근차근 해야 될것 같습니다.
Ch@Os
noinzang
Human
Human
Posts: 26
Joined: 10 Jul 2008, 11:31
Noob?: No
Location: Rep. South Korea

Re: 같이 노력해 보아요!!

#24 Post by noinzang »

알려 주신 내용으로 SendSync 패킷을 살펴보니 Sync Packet 의 총 길이는 11byte 이고 그 구조는
ServerType8_1.pm 에서 아래와 같이 찾을수 있었습니다.

Code: Select all

sub sendSync {
	my ($self, $initialSync) = @_;
	my $msg;
	# XKore mode 1 lets the client take care of syncing.
	return if ($self->{net}->version == 1);

	$syncSync = pack("V", getTickCount());
	
	my $msg = pack("C2 x5", 0x89, 0x00) . $syncSync;
	$self->sendToServer($msg);
	debug "Sent Sync\n", "sendPacket", 2;
}
현재 모든 Send Packet 이 유동패킷이므로 0x89, 0x00 의 형태는 전혀 맞지 않으니 결국 아래의 패킷
번호조합 역시 Util.pm 에 getTickCount() 변수에 대한 정의를 해놓은것 처럼 똑같이 해줘야 제대로 동작
한다는 말씀이시고 저 공식을 알아내지 못하면 고정패킷이 될때만 사용가능한 반쪽짜리 봇이 될수 밖에
없겠네요.

Code: Select all

192.168.0.56:49758  211.172.246.132:4500  11  Send  
0000  8F B3 32 66 31 62 00 71 30 30 00                   ..2f1b.q00.
     ------ -------------- -----------
     패킷번호      (?)        getTickCount()
혹시 유동 Send Packet 은 kro 만 유독 이런건가요?
Ch@Os
noinzang
Human
Human
Posts: 26
Joined: 10 Jul 2008, 11:31
Noob?: No
Location: Rep. South Korea

Re: 같이 노력해 보아요!!

#25 Post by noinzang »

오늘이 정기점검날인데 아직까지 바포섭은 점검중이여서 본섭에 들어가서 Packet Dump 를
떠봤습니다.

역시나 Send Packet 은 Random 이군요. 이래선 도저히 답이 안나오겠네요.
패킷번호 2자리가 계속해서 증가하는걸 보면 gettickCount 처럼 계산해서 뽑아내는 형태일텐데
어떠한 공식일지 도저히 감이 안오네요.

Code: Select all

1  211.172.246.192:4500  192.168.0.56:49332  6  Recv  
0000  87 01 7A 53 11 00                                  ..zS..

2  192.168.0.56:49332  211.172.246.192:4500  11  Send  
0000  A9 70 64 33 30 62 00 A8 52 7C 01                   .pd30b..R|.

3  211.172.246.192:4500  192.168.0.56:49332  6  Recv  
0000  47 03 79 38 53 01                                  G.y8S.

4  211.172.246.192:4500  192.168.0.56:49332  6  Recv  
0000  87 01 7A 53 11 00                                  ..zS..

5  192.168.0.56:49332  211.172.246.192:4500  11  Send  
0000  F6 21 31 38 35 36 00 8D 81 7C 01                   .!1856...|.

6  211.172.246.192:4500  192.168.0.56:49332  6  Recv  
0000  47 03 59 67 53 01                                  G.YgS.

7  211.172.246.192:4500  192.168.0.56:49332  6  Recv  
0000  87 01 7A 53 11 00                                  ..zS..

8  192.168.0.56:49332  211.172.246.192:4500  11  Send  
0000  53 FC 31 66 35 35 00 72 B0 7C 01                   S.1f55.r.|.

9  211.172.246.192:4500  192.168.0.56:49332  6  Recv  
0000  47 03 39 96 53 01                                  G.9.S.

10  211.172.246.192:4500  192.168.0.56:49332  6  Recv  
0000  87 01 7A 53 11 00                                  ..zS..
Ch@Os
rush100
Noob
Noob
Posts: 7
Joined: 17 Jul 2008, 14:37
Noob?: Yes

Re: 같이 노력해 보아요!!

#26 Post by rush100 »

noinzang님 쪽지도 봤었는데...어쨌든 열심히 하시는군요

결론부터 말씀드리면 답은 있습니다.

힌트는 센드패킷만 몇만개 단위로 죽어라 뽑아보세요.

~_~ã…‹ã…‹

물론 한가지 더 말씀드리자면 xor 연산도 하셔야 할것임~

더이상은 노코멘트~

그렇게 뽑는게 불가능하고 할 시간도 없으시다면 일찌감치 포기하시길

휘릭~
noinzang
Human
Human
Posts: 26
Joined: 10 Jul 2008, 11:31
Noob?: No
Location: Rep. South Korea

Re: 같이 노력해 보아요!!

#27 Post by noinzang »

:twisted:
Last edited by noinzang on 04 Aug 2008, 20:35, edited 1 time in total.
Ch@Os
rush100
Noob
Noob
Posts: 7
Joined: 17 Jul 2008, 14:37
Noob?: Yes

Re: 같이 노력해 보아요!!

#28 Post by rush100 »

클라를 분석해서 알수 있으면 더 좋겠지요.

하지만 그건 상당히 프로그래밍적 지식이 필요한 분야라 평균적으로 힘들지요 ^^;

전 센드 패킷을 추출한 것 만으로도 규칙을 찾았습니다.
(패킷추출을 끊지 않고 처음부터 연속으로 2만개 정도 뽑았습니다.)

대충 살펴보니 다음부터는 샘플로 센드 패킷 1000개 정도만 뽑으면 규칙을 찾을 수 있겠더군요.

물론 어느정도 눈썰미는 있어야 하겠지만요~

패킷만으로 규칙 찾아내고 그 규칙을 센드에 펄 구문화해서

돌리고 있습니다. ~_~

그리고 참고적으로 센드 헤더 첫번째의 변화는 16개*16줄 = 256개이고(이후 반복)

센드 헤더 두번째의 변화는 256개*256줄 = 65536개 입니다.(이후 반복)

어쨌든 이러한 방법도 가능하다고 말씀드리는 것임~
noinzang
Human
Human
Posts: 26
Joined: 10 Jul 2008, 11:31
Noob?: No
Location: Rep. South Korea

Re: 같이 노력해 보아요!!

#29 Post by noinzang »

:twisted:
Last edited by noinzang on 04 Aug 2008, 20:36, edited 1 time in total.
Ch@Os
rush100
Noob
Noob
Posts: 7
Joined: 17 Jul 2008, 14:37
Noob?: Yes

Re: 같이 노력해 보아요!!

#30 Post by rush100 »

계산순서와 고정값, 변화하는 값등을 올려야 도움을 드려도 드리죠~