Перейти к содержанию

∟DarkPan

Пользователи
  • Постов

    42
  • Зарегистрирован

  • Посещение

Весь контент ∟DarkPan

  1. ребята , помогите не хочет сканировать и менять сигнатуру , сканирую в браузере опера вообще не катит, вот функциии прроцедуры var m_pID: integer; m_hProc: THandle; module: TModuleEntry32; m_Sign: integer; procName: string; function DataCompare(data: PByte; sign: PByte; mask: PAnsiChar): boolean;begin while mask^ <> #0 do begin if ((mask^ = 'x') and (data^ <> sign^)) then begin result := false; exit; end; inc(mask); inc(data); inc(sign); end; result := true;end; function GetModuleInfo(const module_name: PChar; main_process: boolean): TModuleEntry32;var snapshot: THandle; module: TModuleEntry32;begin snapshot := CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, m_pID); module.dwSize := sizeof(TModuleEntry32); if (Module32First(snapshot, module)) then begin if (main_process) then begin CloseHandle(snapshot); result := module; end; while (Module32Next(snapshot, module)) do begin if (StrIComp(PChar(ExtractFileName(module.szModule)), PChar(module_name)) = 0) then begin CloseHandle(snapshot); result := module; end; end; end; result := module;end; procedure GetPID;var snapshot: THandle; pInfo: PROCESSENTRY32;begin snapshot := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); pInfo.dwSize := sizeof(PROCESSENTRY32); if (Process32First(snapshot, pInfo)) then begin while (Process32Next(snapshot, pInfo)) do begin if pInfo.szExeFile = procName then begin m_pID := pInfo.th32ProcessID; CloseHandle(snapshot); exit; end; end; end; end; procedure Write(ProcessID: SIZE_T; WriteAdress: Integer; WriteValue: array of Byte);var pHandle:LongInt; Bytes : SIZE_T; Aob_old_Protect_OFF: dword; Aob_old_Protect_ON:dword;begin pHandle:=OpenProcess(PROCESS_VM_READ or PROCESS_VM_WRITE or PROCESS_VM_OPERATION,false,ProcessID); VirtualProtectEx(pHandle,ptr(WriteAdress),SizeOf(WriteValue),PAGE_EXECUTE_READWRITE,Aob_old_Protect_OFF);//Снятие протекции с памяти Application.ProcessMessages; WriteProcessMemory(pHandle,ptr(WriteAdress),(@WriteValue),SizeOf(WriteValue),Bytes); VirtualProtectEx(pHandle,ptr(WriteAdress),SizeOf(WriteValue),Aob_old_Protect_OFF,Aob_old_Protect_ON);//Востановление протекции с памяти CloseHandle(pHandle);End; function ScanSignature(base: Cardinal; size: SIZE_T; sign: PByte; mask: PAnsiChar): integer;var mbi: MEMORY_BASIC_INFORMATION; offset: integer; buffer: PByte; BytesRead: SIZE_T; i: integer;begin offset := 0; while (offset < size) do begin VirtualQueryEx(m_hProc, Pointer(base + offset), &mbi, sizeof(MEMORY_BASIC_INFORMATION)); if (mbi.State <> MEM_FREE) then begin GetMem(buffer, mbi.RegionSize); ReadProcessMemory(m_hProc, mbi.BaseAddress, buffer, mbi.RegionSize, BytesRead); for i := 0 to mbi.RegionSize do begin if (DataCompare(buffer + i, sign, mask)) then begin FreeMem(buffer); result := integer(mbi.BaseAddress) + i; exit; end; end; FreeMem(buffer); end; offset := offset + mbi.RegionSize; end; result := 0; // end; procedure TForm2.sCheckBox1Click(Sender: TObject);const poisk: array [0..10] of byte = ($66,$0F,$D6,$8D,$58,$FF,$FF,$FF,$C7,$85,$60); //Сигнатура поиска zamena: array [0..10] of byte = ($90,$90,$90,$90,$90,$90,$90,$90,$C7,$85,$60); //Сигнатура замены Mask = 'xxxxxxxxxx';begin if sCheckBox1.Checked then begin GetPID(); if (m_pID <> 0) then begin module := GetModuleInfo(nil, true); m_hProc := OpenProcess(PROCESS_ALL_ACCESS, false, m_pID); m_Sign := ScanSignature(integer(module.modBaseAddr), module.modBaseSize, @poisk, Mask); if m_Sign = 0 then begin sCheckBox1.Caption := 'Ошибка'; end else begin Write(m_pID,m_Sign,zamena); sCheckBox1.Caption := 'Деактивировать'; end; end; CloseHandle(m_hProc); end else if sCheckBox1.Checked = False then begin Write(m_pID,m_Sign,poisk); sCheckBox1.Caption := 'Активировать'; end;end; Как я понял, нету просто доступа к правам памяти( ReadOnly/ и т.д.) но как же мне поправить это делоделаю на ХЕ5 //NullAlex: заголовок темы изменил, с "ПОМОГИТЕ" на более информативный - "Проблема с поиском по сигнатуре". На будущее прошу учесть, что темы нужно называть информативно, чтобы заголовок отражал суть вопроса. Предупреждение устное, на этот раз.
  2. Вот лови исходник + модули сканера, и выбора процессов! https://yadi.sk/d/FlD-IeQwcKFVt Есть ещё модуль у меня, memoriscan.pas, сканиурет быстро, разные байты только нету "??", есть "xx" Поподробнее в скайпе можно, так же могу привести пример трейнера, Сканирование в потоке! Вот пример сканирования: Сканер для XE_2 varAddress2: Tscanner_Faddress;====================================AOBScan(0, $7FFFFFFF, 'FF xx FF xx FF' , True, True);// True, True - это параметры доступа ( чтение, запись) WriteB('90 90 90', 0); case RunCheat(Address2) of if_Activated: begin Result := 4; end; if_NotConnected: begin Result := 2; end; if_ErrorActivate: begin Result := 1; end; end;//NullAlex: используем тег [code_][_/code] (без нижнего подчеркивания)
  3. Дай свой скайп, я гворю у меня есть намного круче! нужно поговорить!, или вк свой дай
  4. Добавь в скайп, cheater-33, я тебе покажу тоже кое чего, нет я не хвастался, а не увидел сообщение одно и всё, или дай свой скайп, надо обсудить кое что, вот мой выбор процесса:
  5. Это не твой модуль, а reenWizard, он писал его по заказу макса, и pas у тебя нету! у меня он есть! И выбор процесса круче! И есть дополнения к модулю Я знаю автора, очень хороший человек Кстати: Search.OPT_READPAGE_READONLY := True; вот это право поиска, оно 0 толку даёт, и удлиняяет время поиска!
  6. Вот скрипт по инстереснее +Также с некаторымы сигнатурами активация за 1 секунду! +Вылазиет сообщение "Сигнатура не найдена" +Короче +В 1 кнопку! +xD Ставим репку! ====================================================================== function CEButton1Click(sender) results=AOBScan("?? ?? ?? ?? ?? ?? ?? ?? ?? ??", "+X-W-C) if(results==nil)then messageDialog('Сигнатура не найдена!',1,2) return end count=stringlist_getCount(results) for i=0,(count-1),1 do adressDarkPan=stringlist_getString(results,i) writeBytes(adressDarkPan, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??) end messageDialog('Активировано!',2,2)--Script by DarkPan end ====================================================================== ====================================================================== function CEButton1Click(sender) byte = "?? ?? ?? ?? ?? ?? ?? ?? ?? ??" results=AOBScan(byte, "+X-W-C) --Флаги сканирования if(results==nil)then messageDialog('Сигнатура не найдена!',1,2) return end count=stringlist_getCount(results) for i=0,(count-1),1 do adressDarkPan=stringlist_getString(results,i) writeBytes(adressDarkPan, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??) end messageDialog('Активировано!',2,2)--Script by DarkPan end ====================================================================== А еслит ещо в поток поместить вообще супр будет, трейнер не будет виснуть! ====================================================================== Ставим спасибки :-D HackingMemory, Dart Vanya, спасибо вам, за мои знания!
  7. ∟DarkPan

    Помогите {Важно}

    Привет всем, отзовитесь на данное сообщение я хочу написать трейнер {Сканер сигнатур} на Delphi но не знаю как Вот если как то можно реализовать вот этот скрипт в Delphi function CEButton1Click(sender) results=AOBScan("Сигнатура!", "+X-W-C) if(results==nil)then showMessage(Сигнатура не найдена!) return end count=stringlist_getCount(results) for i=0,(count-1),1 do adress=stringlist_getString(results,i) writeBytes(adress, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??) end showMessage("Активировано!") end Данный скрипт из Lua Буду очень благодарен!
  8. Я научился создавать сначала на Дуа потомм на С++ВВ
  9. Ребятки кенг все прочитайте я хочу сканер сигнатур на делфи кто может? или надо писать длл?
  10. А на Lua автообновление я знаю надо много Фалов Луа создавать Но незнаю что писать
  11. Да!!! [Я ОЧЕНЬ СОЖАЛЕЮ О ТОМ, ЧТО ПОЗВОЛИЛ СЕБЕ ИСПОЛЬЗОВАТЬ МАТ В ДИАЛОГЕ СО СТОЛЬ ВЫСОКОИНТЕЛЛЕКТУАЛЬНЫМИ ЛИЧНОСТЯМИ НА СИМ ФОРУМЕ. НАДЕЮСЬ Я НЕ ПРИЧИНИЛ НИКОМУ ВРЕДА, МОРАЛЬНЫХ СТРАДАНИЙ. ПРОШУ МЕНЯ ПРОСТИТЬ ЗА СТОЛЬ ДЕРЗКИЙ ПОСТУПОК. МНЕ ИСКРЕННЕ ЖАЛЬ] //Kvazimado Строгое замечание, за плохо завуалированный мат.
  12. Почему можно сделать вклатки например хватит Control'ов с Visible и вот вам вкладки что там делать)
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.