-
12-05-2009, 04:29 PM #1Junior Member
- Ngày tham gia
- Sep 2015
- Đang ở
- hà nội
- Bài viết
- 0
source dll chống chương trình Cheat engine 5.5 và speed gear 6, giúp mình sửa lỗi?
antihack.cpp
Mã:#include "stdafx.h"#include "Antihack.h"#include <tlhelp32.h>#include <windows.h>#include <stdlib.h> #ifdef _MANAGED#pragma managed(push, off)#endif ANITHACK_PROCDUMP g_ProcessesDumps[MAX_PROCESS_DUMP] = { {0x606140, {0x8C, 0x79, 0x60, 0x00, 0xE0, 0xA8, 0x60, 0x00, 0x18, 0x70, 0x4D, 0x00, 0xE8, 0x18, 0x60, 0x00, 0x8C, 0xA0, 0x60, 0x00, 0xDC, 0x9C, 0x60, 0x00, 0x3C, 0x86, 0x60, 0x00, 0xD0, 0x9D, 0x60, 0x00}}, // Cheat Engine 5.5 {0x568F0C, {0xEB, 0x17, 0x86, 0xF4, 0x24, 0x55, 0xC0, 0xAE, 0x98, 0xC8, 0xB2, 0xC4, 0x57, 0x31, 0x4F, 0x2E, 0x4D, 0x27, 0xC1, 0x63, 0xBE, 0x41, 0xBC, 0x37, 0xDE, 0xE5, 0x31, 0x51, 0xAF, 0x21, 0x34, 0x7B}}, // Speed Gear 6 }; void SystemProcessesScan() { HANDLE hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); if(hProcessSnap != INVALID_HANDLE_VALUE) { PROCESSENTRY32 pe32; pe32.dwSize = sizeof(PROCESSENTRY32); if(Process32First(hProcessSnap, &pe32)) { do { HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, pe32.th32ProcessID); if(hProcess != NULL) { if(ScanProcessMemory(hProcess)) { MessageBoxA(0, "Found hack software in your system. Hint: Close all illegal programs and run application again.", "Software guard", MB_OK | MB_ICONSTOP); ExitProcess(0); } } } while(Process32Next(hProcessSnap, &pe32)); } } CloseHandle(hProcessSnap);} bool ScanProcessMemory(HANDLE hProcess) { for(int i = 0; i < MAX_PROCESS_DUMP; i++) { char aTmpBuffer[MAX_DUMP_SIZE]; SIZE_T aBytesRead = 0; ReadProcessMemory(hProcess, (LPCVOID)g_ProcessesDumps[i].m_aOffset, (LPVOID)aTmpBuffer, sizeof(aTmpBuffer), &aBytesRead); if(memcmp(aTmpBuffer, g_ProcessesDumps[i].m_aMemDump, MAX_DUMP_SIZE) == 0) { return true; break; } } return false;} BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved) { return TRUE;} #ifdef _MANAGED#pragma managed(pop)#endif
Mã:#ifndef ANTIHACK_ANTIHACK_H #define ANTIHACK_ANTIHACK_H #define MAX_DUMP_OFFSETS 47 #define MAX_DUMP_SIZE 32 #define MAX_PROCESS_DUMP 47 typedef struct ANITHACK_PROCDUMP { unsigned int m_aOffset; unsigned char m_aMemDump[MAX_DUMP_SIZE]; } *PANITHACK_PROCDUMP; extern ANITHACK_PROCDUMP g_ProcessesDumps[MAX_PROCESS_DUMP]; void SystemProcessesScan(); bool ScanProcessMemory(HANDLE hProcess); #endif //ANTIHACK_ANTIHACK_H
"Khi bật chương trình hack speed trước thì nó nhận ra"
"Vào game rồi mới bật hack thì nó lại không nhận ra được"
nhờ mấy anh hướng dẫn dùm phải thêm hoặc sửa thế nào để nó có thể chạy cùng với chương trình liên tục với
em chỉ làm theo hướng dẩn thôi nên còn non lắmView more random threads:
- Lấy chính xác tên máy tính trong lập trình VC++?
- Thuật toán Mã Hóa VMAC ?
- Win32API và C for Window có liên quan đến nhau không?
- inject DLL bằng SetWindowHookEx
- Sự khác nhau giữa std::map và std::vector
- Certificate của chương trình Exe
- Cách Sử Dụng Lớp ListView và ComboBox trong win32 API
- Ứng dụng 64Bit bị crash khi hook keyboard do nguyên nhân nào?
- Làm sao để cài đặt và sử dụng OpenGL trên Cfree ?
- Sử memcpy trong VC++ như thế nào?
-
13-05-2009, 10:01 AM #2Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
uhm đúng như anh nói em cần kiểm tra định kỳ khoảng 60 giây 1 lần.
file dll nhẹ mà load cái vèo là xong nên ko đáng lo.
em add hàm void MainThread() cho nó chạy lại SystemProcessesScan() mà không chạy không hiểu sai thế nào .
ai rành add dùm em với
-
13-05-2009, 11:27 AM #3Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
ai rành giúp em với
-
13-05-2009, 12:45 PM #4Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
File dll dĩ nhiên là rất nhẹ. Cái "nặng" mà mình nói chính là chi phí đề thực hiện hàm SystemProcessesScan(), trong đó ReadProcessMemory là mất nhiều thời gian nhất. Hơn nữa cheater có thể qua mặt rất dễ dàng, cho dù có cố công kiểm tra.
Thread phải chạy liên lục mới kiểm tra được. Có thể bạn gọi một lần rồi thôi nên thread dừng mất rồi.
Mã:DWORD ThreadProc(LPVOID param){ int i = 0; while (true) { Sleep(1000); i++; if (i >= 60) { SystemProcessesScan() ; i = 0; } }}
-
13-05-2009, 07:08 PM #5Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Sao thiếu file antihack.h nhỉ ? Theo mình nghĩ thì cách này chỉ dùng để kiểm tra định kỳ thôi, chứ kiểm tra liên tục thì khỏi chơi game luôn vì mất nhiều thời gian. Chưa kể nếu chương trình cheat nào "lấy độc trị độc", dùng dll này để anti-anti-cheat thì cách kiểm tra trên cũng bó tay.
-
14-05-2009, 01:40 PM #6Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Mình nghĩ việc bạn cố tìm cách nhận dạng cheat engine rất hao tốn tài nguyên máy và không hiệu quả. Cũng có nhiều cách khác chống cheat, không nhất thiết phải nhận dạng cheat engine.
Ví dụ như ta có biến HP ( từ 0->10000), giá trị hiện thời của nó là 8000, thì bạn làm như sau :
HP = 5000 - 8000 = -3000;
Như vậy, giá trị thực sự trong bộ nhớ là -3000. Các cheat engine sẽ cố gắng tìm số 8000 và chắc chắn sẽ không tìm chính xác.
Khi ta cần biết HP, ta tính ngược ra :
HP = 5000 - (-3000)
Rất đơn giản mà lại rất hiệu quả đó bạn.
Ngoài ra còn có một số kỹ thuật khác như "vùng nhớ ma", tức là tạo ra nhiều ô nhớ có địa chỉ khác nhau cùng lưu một giá trị, như thật ra khi dùng ta chỉ dùng một ô nhớ trong số đó mà thôi. Có thể Cheater sẽ tìm ra nhưng họ sẽ bị bối rối vì thấy có quá nhiều kết quả.
-
14-05-2009, 03:11 PM #7Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
hix không hiểu sao em compile lại không được chắc chỉnh sửa tùm lum trong config của visual c++.em dùng tạm cách khác.
em hook 1 dll có tính năng tương tự như gameguard vào trước dll của em trong file thực thi.dll đó có tính năng chạy nền load liên tục kéo theo cái dll của em cũng chạy theo luôn.hix cách này nặng máy hơn >_< (mà không sao máy game thủ bị chứ không phải máy mình) :P
-
01-08-2009, 06:39 PM #8Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Sao mình build ra nó bị lỗi vậy ~.~. Mình xài C++ 2008
-
16-03-2010, 04:00 PM #9Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
vùng nhớ ma j đi chăng nữa thì qua nhiều lần lọc thì vẫn tìm ra...
-
17-03-2010, 10:00 AM #10Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi slowlove
Trứng rung điều khiển từ xa Vibrator Spark Of Love Sản phẩm trứng rung bluetooth có điều khiển từ xa này được thiết kế với tông màu Rose Gold viền kim khí trải qua. kích tấc 7,4cm x 3,5cm giúp trứng...
TOP 3 trùy rung điều khiển từ xa...