Регистрация Главная Сообщество
Сообщения за день Справка Регистрация

Взятие таргета

-

Общение разработчиков

- Программирование для Perfect World, общение и обсуждене разработок

Ответ
 
Опции темы
Старый 29.03.2020, 18:55   #1
 Разведчик
Аватар для ivasik
 
ivasik скоро будет известенivasik скоро будет известенivasik скоро будет известен
Регистрация: 23.12.2009
Сообщений: 42
Популярность: 275
Сказал(а) спасибо: 33
Поблагодарили 3 раз(а) в 2 сообщениях
 
Post Взятие таргета

Пытаюсь эмулировать взятие в таргет цели. Нашел функцию, которая берет этот самый таргет

Код:
CPU Disasm
Address   Hex dump          Command                                  Comments
00451E2F      90            NOP
00451E30  /$  8B5424 04     MOV EDX,DWORD PTR SS:[ARG.1]             ; elementclient.00451E30(guessed Arg1)
00451E34  |.  8B42 10       MOV EAX,DWORD PTR DS:[EDX+10]
00451E37  |.  83F8 34       CMP EAX,34
00451E3A  |.  75 34         JNE SHORT 00451E70
00451E3C  |.  8B42 0C       MOV EAX,DWORD PTR DS:[EDX+0C]
00451E3F  |.  8B10          MOV EDX,DWORD PTR DS:[EAX]
00451E41  |.  C781 F40A0000 MOV DWORD PTR DS:[ECX+0AF4],0
00451E4B  |.  8BC2          MOV EAX,EDX
00451E4D  |.  8991 F00A0000 MOV DWORD PTR DS:[ECX+0AF0],EDX
00451E53  |.  8B0D EC3E9B00 MOV ECX,DWORD PTR DS:[9B3EEC]
00451E59  |.  50            PUSH EAX                                           ;<-- тут WID моба
00451E5A  |.  68 9C469500   PUSH 0095469C                            ; UNICODE "Select %x"
00451E5F  |.  68 00FFFFFF   PUSH -100
00451E64  |.  51            PUSH ECX
00451E65  |.  E8 B6E7FDFF   CALL 00430620
00451E6A  |.  83C4 10       ADD ESP,10
00451E6D  |.  C2 0400       RETN 4
00451E70  |>  83F8 27       CMP EAX,27
00451E73  |.  75 0A         JNE SHORT 00451E7F
00451E75  |.  C781 F00A0000 MOV DWORD PTR DS:[ECX+0AF0],0
00451E7F  \>  C2 0400       RETN 4
00451E82      90            NOP
Я попытался сэмулировать этот код на AutoIt:

Код:
Func SelectTarID($id)
	Local $pRemoteThread, $vBuffer, $loop, $result, $OPcode
	; --- save the position of the allocated memory ---
	$pRemoteMem = DllCall($kernel32, 'int', 'VirtualAllocEx', 'int', $PROCESS_INFORMATION[1], 'ptr', 0, 'int', 0x46, 'int', 0x1000, 'int', 0x40)
	; --- build up the asm code ---

		$OPcode &= '60'
		$OPcode &= '68'&_hex($id)		;							 PUSH EAX <---- EAX contains Mob-ID, $id - something like 2148547734
		$OPcode &= '689C469500'			;00451E5A  |.  68 9C469500   PUSH 0095469C
		$OPcode &= '6800FFFFFF'			;00451E5F  |.  68 00FFFFFF   PUSH -100
		$OPcode &= '689B4578'			;00451E64  |.                PUSH ECX      <-- временно пытаюсь засунуть значение, которое получил в OllyDbg
		$OPcode &= 'E8B6E7FDFF'			;00451E65  |.  E8 B6E7FDFF   CALL 00430620
		$OPcode &= '61'				;Высвобождаю регистр
		$OPcode &= '61'				;Высвобождаю регистр
		$OPcode &= '61'				;Высвобождаю регистр
		$OPcode &= 'C3'

	; --- enter the asm code to to a dllstruct, which can be used with WriteProcessMemory ---
	$vBuffer = DllStructCreate('byte[' & StringLen($OPcode) / 2 & ']')
	For $loop = 1 To DllStructGetSize($vBuffer)
		DllStructSetData($vBuffer, 1, Dec(StringMid($OPcode, ($loop - 1) * 2 + 1, 2)), $loop)
	Next
	; --- now letz write the code from our dllstruct ---
	DllCall($kernel32, 'int', 'WriteProcessMemory', 'int', $PROCESS_INFORMATION[1], 'int', $pRemoteMem[0], 'int', DllStructGetPtr($vBuffer), 'int', DllStructGetSize($vBuffer), 'int', 0)
	; --- now we run the asm code we've just written ---
	$hRemoteThread = DllCall($kernel32, 'int', 'CreateRemoteThread', 'int', $PROCESS_INFORMATION[1], 'int', 0, 'int', 0, 'int', $pRemoteMem[0], 'ptr', 0, 'int', 0, 'int', 0)
	; --- wait till the thread did his job ---
	Do
		$result = DllCall('kernel32.dll', 'int', 'WaitForSingleObject', 'int', $hRemoteThread[0], 'int', 50)
	Until $result[0] <> 258
	Sleep(250)
	; --- close everything we've opened ---
	DllCall($kernel32, 'int', 'CloseHandle', 'int', $hRemoteThread[0])
	DllCall($kernel32, 'ptr', 'VirtualFreeEx', 'hwnd', $PROCESS_INFORMATION[1], 'int', $pRemoteMem[0], 'int', 0, 'int', 0x8000)
	Return True
EndFunc		;==>
Это крашит клиент((( Я не прошу решить мою проблему, я лишь прошу помощи. В какую сторону копать?
  Ответить с цитированием
Старый 03.04.2020, 03:07   #2
 Разведчик
Аватар для den57
 
den57 излучает ауруden57 излучает ауруden57 излучает ауруden57 излучает ауруden57 излучает ауруden57 излучает ауру
Регистрация: 24.11.2010
Сообщений: 12
Популярность: 580
Сказал(а) спасибо: 1
Поблагодарили 2 раз(а) в 2 сообщениях
 
По умолчанию Re: Взятие таргета

Взятие в таргет. SummerPW 1.5.5
Код:
procedure TargetCall(aPParams: PParams); stdcall;
var
  CallAddress: Pointer;
  P1: DWord;
begin
  P1 := aPParams^.WID;  //WID моба - к примеру  $80107A73 
  CallAddress := Pointer($0080DED0);
  asm
        MOV     EDI, P1
        MOV     EAX, DWORD PTR DS:[$E444A4]
        PUSH    EDI
        MOV     ECX, DWORD PTR DS:[EAX + $20]
        ADD     ECX, $0F4
        CALL    CallAddress
  end;
end;
Ты кажется что-то не то нашел
  Ответить с цитированием
Пользователь сказал cпасибо:
ivasik (03.04.2020)
Старый 03.04.2020, 21:00   #3
 Разведчик
Аватар для ivasik
 
ivasik скоро будет известенivasik скоро будет известенivasik скоро будет известен
Регистрация: 23.12.2009
Сообщений: 42
Популярность: 275
Сказал(а) спасибо: 33
Поблагодарили 3 раз(а) в 2 сообщениях
 
По умолчанию Re: Взятие таргета

Благодарю за ваш ответ, для меня очень интересно разобратся с самим процессом инекций. Прошу прощения за такое упущение - я искал на клиенте 1.3.6.
Я почитал ваш asm код, и мне сама модификация интересна. Могли б вы показать код, как он в оригинале клиента выглядит? (OllyDbg, CE).
  Ответить с цитированием
Старый 23.04.2020, 17:08   #4
 Разведчик
Аватар для den57
 
den57 излучает ауруden57 излучает ауруden57 излучает ауруden57 излучает ауруden57 излучает ауруden57 излучает ауру
Регистрация: 24.11.2010
Сообщений: 12
Популярность: 580
Сказал(а) спасибо: 1
Поблагодарили 2 раз(а) в 2 сообщениях
 
По умолчанию Re: Взятие таргета

Есть тема на форуме, https://zhyk.ru/forum/showthread.php?t=207760 там все наглядно рассказано как искать.
  Ответить с цитированием
Старый 04.09.2020, 21:42   #5
 Разведчик
Аватар для nind
 
nind никому не известный тип
Регистрация: 05.07.2011
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: Взятие таргета

Подскажите можно ли как искать адреса для инжекта без запуска отладчика. Когда я запускаю клиент под отладкой то клиент просто вылетает с ошибкой.
  Ответить с цитированием
Старый 05.09.2020, 10:14   #6
Super Moderator
 Маршал
Аватар для Тигрь
 
Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(
Регистрация: 05.05.2009
Сообщений: 875
Популярность: 48955
Золото Zhyk.Ru: 850
Сказал(а) спасибо: 155
Поблагодарили 739 раз(а) в 274 сообщениях
 
По умолчанию Re: Взятие таргета

Цитата:
Сообщение от nindПосмотреть сообщение
Подскажите можно ли как искать адреса для инжекта без запуска отладчика. Когда я запускаю клиент под отладкой то клиент просто вылетает с ошибкой.

конечно можно если ты телекинезом обладаешь и силой мысли можешь их искать.
________________
Продаю приват читы для AION Absolute, desteny 3.5, Legend, Cataclysm, Ru, EU, NA
Продаю многооконку на R2 Пишу читы на заказ под любые игры. Предложения в ЛС.
Все мои читы/программы/статьи тут: http://zhyk.ru/forum/showpost.php?p=38501&postcount=21
  Ответить с цитированием
Старый 06.09.2020, 14:20   #7
 Разведчик
Аватар для den57
 
den57 излучает ауруden57 излучает ауруden57 излучает ауруden57 излучает ауруden57 излучает ауруden57 излучает ауру
Регистрация: 24.11.2010
Сообщений: 12
Популярность: 580
Сказал(а) спасибо: 1
Поблагодарили 2 раз(а) в 2 сообщениях
 
По умолчанию Re: Взятие таргета

Цитата:
Сообщение от nindПосмотреть сообщение
Подскажите можно ли как искать адреса для инжекта без запуска отладчика. Когда я запускаю клиент под отладкой то клиент просто вылетает с ошибкой.

Попробуй менять отладчик, или скачай другой софт для отладки
  Ответить с цитированием
Старый 11.09.2020, 20:00   #8
 Разведчик
Аватар для nind
 
nind никому не известный тип
Регистрация: 05.07.2011
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: Взятие таргета

К сожалению телекинезом не обладаю, но не помешало бы ). Я имел ввиду когда в CE выполняю пункт 'Кто получает доступ к адресу' то клиент сразу с этой ошибкой вылетает. В x32dbg и OllyDbg просто вылетает клиент.

Последний раз редактировалось nind; 11.09.2020 в 20:08.
  Ответить с цитированием
Старый 11.09.2020, 23:44   #9
Super Moderator
 Маршал
Аватар для Тигрь
 
Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(
Регистрация: 05.05.2009
Сообщений: 875
Популярность: 48955
Золото Zhyk.Ru: 850
Сказал(а) спасибо: 155
Поблагодарили 739 раз(а) в 274 сообщениях
 
По умолчанию Re: Взятие таргета

Цитата:
Сообщение от nindПосмотреть сообщение
К сожалению телекинезом не обладаю, но не помешало бы ). Я имел ввиду когда в CE выполняю пункт 'Кто получает доступ к адресу' то клиент сразу с этой ошибкой вылетает. В x32dbg и OllyDbg просто вылетает клиент.

антиотладочная защита присутствует, при подключении дебагера сразу закрывается отлаживаемое приложение. открывай гугл и начинай изучать какие антиотладочные приемы разработчики применяют для противостояния отладчикам. изучай их а потом разбирайся с тем как их обойти. после этого нужно будет понять какие именно антиотладочные приемы используются в исследуемом тобой софте и обойти их, после этого отладчик будет работать нормально. все в твоих руках как говорится.
________________
Продаю приват читы для AION Absolute, desteny 3.5, Legend, Cataclysm, Ru, EU, NA
Продаю многооконку на R2 Пишу читы на заказ под любые игры. Предложения в ЛС.
Все мои читы/программы/статьи тут: http://zhyk.ru/forum/showpost.php?p=38501&postcount=21
  Ответить с цитированием
Старый 13.09.2020, 08:57   #10
 Разведчик
Аватар для nind
 
nind никому не известный тип
Регистрация: 05.07.2011
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: Взятие таргета

Удалось запустить под отладкой хоть и криво(ошибка отображается, но клиент не закрывается). Нашел адрес функции для взятия в таргет, делаю инжект. Функция взятия в таргет срабатывает, то есть моб в таргете, но когда нажимаю любой скилл, ESC или переключаю таргет происходит дисконект. Как быть в таком случае ?
  Ответить с цитированием
Старый 01.10.2020, 02:08   #11
 Разведчик
Аватар для lethargy
 
lethargy никому не известный тип
Регистрация: 18.09.2015
Сообщений: 1
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 1 раз в 1 сообщении
 
По умолчанию Re: Взятие таргета

А не проще будет отправить пакет? оО
  Ответить с цитированием
Старый 01.10.2020, 08:18   #12
Super Moderator
 Маршал
Аватар для Тигрь
 
Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(
Регистрация: 05.05.2009
Сообщений: 875
Популярность: 48955
Золото Zhyk.Ru: 850
Сказал(а) спасибо: 155
Поблагодарили 739 раз(а) в 274 сообщениях
 
По умолчанию Re: Взятие таргета

Цитата:
Сообщение от lethargyПосмотреть сообщение
А не проще будет отправить пакет? оО

если вам проще отправить пакет то отправляйте пакет.
________________
Продаю приват читы для AION Absolute, desteny 3.5, Legend, Cataclysm, Ru, EU, NA
Продаю многооконку на R2 Пишу читы на заказ под любые игры. Предложения в ЛС.
Все мои читы/программы/статьи тут: http://zhyk.ru/forum/showpost.php?p=38501&postcount=21
  Ответить с цитированием
Старый 01.10.2020, 21:27   #13
 Разведчик
Аватар для lethargy
 
lethargy никому не известный тип
Регистрация: 18.09.2015
Сообщений: 1
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 1 раз в 1 сообщении
 
По умолчанию Re: Взятие таргета

Там в вызове ошибка, или я ошибаюсь?

e8 b6 e7 fd ff = call 0xfffde7bb

Последний раз редактировалось lethargy; 01.10.2020 в 21:30.
  Ответить с цитированием
Старый 02.10.2020, 09:51   #14
Super Moderator
 Маршал
Аватар для Тигрь
 
Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(Тигрь сломал счётчик популярности :(
Регистрация: 05.05.2009
Сообщений: 875
Популярность: 48955
Золото Zhyk.Ru: 850
Сказал(а) спасибо: 155
Поблагодарили 739 раз(а) в 274 сообщениях
 
По умолчанию Re: Взятие таргета

Цитата:
Сообщение от lethargyПосмотреть сообщение
Там в вызове ошибка, или я ошибаюсь?

e8 b6 e7 fd ff = call 0xfffde7bb

конечно ты ошибаешься, для начала расскажи как ты получил это значение, тогда я смогу тебе сказать где твоя ошибка. и другим будет полезно узнать.
________________
Продаю приват читы для AION Absolute, desteny 3.5, Legend, Cataclysm, Ru, EU, NA
Продаю многооконку на R2 Пишу читы на заказ под любые игры. Предложения в ЛС.
Все мои читы/программы/статьи тут: http://zhyk.ru/forum/showpost.php?p=38501&postcount=21
  Ответить с цитированием
Старый 03.10.2020, 14:04   #15
 Разведчик
Аватар для lethargy
 
lethargy никому не известный тип
Регистрация: 18.09.2015
Сообщений: 1
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 1 раз в 1 сообщении
 
По умолчанию Re: Взятие таргета



Да, действительно. Разобрался в чем проблема. Я просто перевернул байты, потому что привык делать вызов по адресу в регистре. А в данном случае идет вызов относительно текущего адреса. 0xfffde7bb на самом деле = -137285. На скрине выше тоже такой же пример.

UPD: Но проблема все равно скорее всего там. Адрес выделятся всегда в разное место, а тут его захардкодили и оно указывает всегда в разное место.
Изображения
Тип файла: png xg_rLylksMDp1.png (4.8 Кб, 161 просмотров)

Последний раз редактировалось lethargy; 03.10.2020 в 14:31.
  Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Помогите!] Инжект таргета и др. Jok3r666 Общение разработчиков 11 19.01.2015 06:43
[Файл] ХП таргета в процентах Aghast Rising Force Online 0 10.11.2011 14:42
[Помогите!] Утилита для таргета. NekitoS Общение разработчиков 3 21.09.2011 00:53
[Помогите!] id таргета k2_target Общение и обсуждение Aion 3 04.07.2011 12:43

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 12:34.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net