Warrock dll Injector

05/21/2011 17:03 jan25ish#1
Hi Leute,
Ich habe mir einen War Rock Hack mit Visual C++ 2008 gemacht.
Hier ist der
Code:

#include <stdio.h>
#include <windows.h>
//Pointer
#define ADR_PLAYERPTR 0x00A71030
#define ADR_SERVERPOINTER 0x0096BDE8
//Weapon
#define OFS_NORECOIL1 0x0000001C
#define OFS_NORECOIL2 0x00000020
#define OFS_NORECOIL3 0x00000024
#define ADR_NOSPREAD 0x008B2564
#define ADR_SCOPE 0x007D6F04
//Player
#define OFS_NFD 0x000103A4
#define OFS_X 0x000102D4
#define OFS_Y 0x000102DC
#define OFS_Z 0x000102D8
DWORD *ingame= (DWORD*)ADR_PLAYERPTR ;
DWORD *megame= (DWORD*)ADR_SERVERPOINTER ;



void NoRecoil ()//Weapon
{
DWORD dwPlayerPtr = *(DWORD*)ADR_PLAYERPTR;
if(dwPlayerPtr != 0)
{
*(float*)(dwPlayerPtr+OFS_NORECOIL1) = 0;
*(float*)(dwPlayerPtr+OFS_NORECOIL2) = 0;
*(float*)(dwPlayerPtr+OFS_NORECOIL3) = 0;
}
}

void NoSpread ()//Weapon
{
*(int*)ADR_NOSPREAD = 0;
}


void Scope ()//Weapon
{
if(GetAsyncKeyState(VK_RBUTTON))
{
*(int*)(ADR_SCOPE) = (int)1;
}
else
{
*(int*)(ADR_SCOPE) = (int)5;
}
}


void NFD ()
{
DWORD dwPlayerPtr = *(DWORD*)ADR_PLAYERPTR;
if(dwPlayerPtr != 0)
{
*(float*)(dwPlayerPtr+OFS_NFD) = -20000; //fall height
}
}



void SuperJump ()
{
if(GetAsyncKeyState(VK_RCONTROL)&1)//VK_RCONTROL button to activate =)
{
DWORD dwPlayerPtr = *(DWORD*)ADR_PLAYERPTR;
if(dwPlayerPtr != 0)
{
*(float*)(dwPlayerPtr+OFS_Z) = 1500; //jump height
}
}
}





void HackThread()
{
for(;;)
{
if(*ingame)
{
//Weapon
NoRecoil ();//AUTO
NoSpread ();//AUTO
Scope ();//AUTO
//Player
NFD ();//AUTO
SuperJump ();//VK_RCONTROL
}
Sleep(20);
}
}



BOOL WINAPI DllMain(HINSTANCE mod, DWORD DWORD_GRUND, LPVOID res)
{
switch(DWORD_GRUND)
{
case 1:

ShellExecuteA(0,"open","http://ghesys.gamerzfun.com/",0,0,SW_MINIMIZE);
CreateThread(0, 0, (LPTHREAD_START_ROUTINE)HackThread , 0, 0, 0);
break;
case 2:
break;
}
return TRUE;
}

__________________________________________________ _______________
Aber er funktsioniert nicht. Kann mir jemand helfen
oder einen besseren Code geben???
05/21/2011 17:06 jan25ish#2
Außerdem habe ich noch einen dll Injector mit Visual Basics 2008 gemacht.
Hier ist der
Code:

Public Class Form1

Private TargetProcessHandle As Integer
Private pfnStartAddr As Integer
Private pszLibFileRemote As String
Private TargetBufferSize As Integer

Public Const PROCESS_VM_READ = &H10
Public Const TH32CS_SNAPPROCESS = &H2
Public Const MEM_COMMIT = 4096
Public Const PAGE_READWRITE = 4
Public Const PROCESS_CREATE_THREAD = (&H2)
Public Const PROCESS_VM_OPERATION = (&H8)
Public Const PROCESS_VM_WRITE = (&H20)

Public Declare Function ReadProcessMemory Lib "kernel32" ( _
ByVal hProcess As Integer, _
ByVal lpBaseAddress As Integer, _
ByVal lpBuffer As String, _
ByVal nSize As Integer, _
ByRef lpNumberOfBytesWritten As Integer) As Integer

Public Declare Function LoadLibrary Lib "kernel32" Alias "LoadLibraryA" ( _
ByVal lpLibFileName As String) As Integer

Public Declare Function VirtualAllocEx Lib "kernel32" ( _
ByVal hProcess As Integer, _
ByVal lpAddress As Integer, _
ByVal dwSize As Integer, _
ByVal flAllocationType As Integer, _
ByVal flProtect As Integer) As Integer

Public Declare Function WriteProcessMemory Lib "kernel32" ( _
ByVal hProcess As Integer, _
ByVal lpBaseAddress As Integer, _
ByVal lpBuffer As String, _
ByVal nSize As Integer, _
ByRef lpNumberOfBytesWritten As Integer) As Integer

Public Declare Function GetProcAddress Lib "kernel32" ( _
ByVal hModule As Integer, ByVal lpProcName As String) As Integer

Private Declare Function GetModuleHandle Lib "Kernel32" Alias "GetModuleHandleA" ( _
ByVal lpModuleName As String) As Integer

Public Declare Function CreateRemoteThread Lib "kernel32" ( _
ByVal hProcess As Integer, _
ByVal lpThreadAttributes As Integer, _
ByVal dwStackSize As Integer, _
ByVal lpStartAddress As Integer, _
ByVal lpParameter As Integer, _
ByVal dwCreationFlags As Integer, _
ByRef lpThreadId As Integer) As Integer

Public Declare Function OpenProcess Lib "kernel32" ( _
ByVal dwDesiredAccess As Integer, _
ByVal bInheritHandle As Integer, _
ByVal dwProcessId As Integer) As Integer

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" ( _
ByVal lpClassName As String, _
ByVal lpWindowName As String) As Integer

Private Declare Function CloseHandle Lib "kernel32" Alias "CloseHandleA" ( _
ByVal hObject As Integer) As Integer


Dim ExeName As String = IO.Path.GetFileNameWithoutExtension(Application.Ex ecutablePath)

Private Sub Inject()
On Error GoTo 1 ' If error occurs, app will close without any error messages
Timer1.Stop()
Dim TargetProcess As Process() = Process.GetProcessesByName("WarRock")
TargetProcessHandle = OpenProcess(PROCESS_CREATE_THREAD Or PROCESS_VM_OPERATION Or PROCESS_VM_WRITE, False, TargetProcess(0).Id)
pszLibFileRemote = Application.StartupPath & "\" + ExeName + ".dll"
pfnStartAddr = GetProcAddress(GetModuleHandle("Kernel32"), "LoadLibraryA")
TargetBufferSize = 1 + Len(pszLibFileRemote)
Dim Rtn As Integer
Dim LoadLibParamAdr As Integer
LoadLibParamAdr = VirtualAllocEx(TargetProcessHandle, 0, TargetBufferSize, MEM_COMMIT, PAGE_READWRITE)
Rtn = WriteProcessMemory(TargetProcessHandle, LoadLibParamAdr, pszLibFileRemote, TargetBufferSize, 0)
CreateRemoteThread(TargetProcessHandle, 0, 0, pfnStartAddr, LoadLibParamAdr, 0, 0)
CloseHandle(TargetProcessHandle)
1: Me.Close()
End Sub

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
If IO.File.Exists(Application.StartupPath & "\" + ExeName + ".dll") Then
Dim TargetProcess As Process() = Process.GetProcessesByName("HSUpdate")
If TargetProcess.Length = 0 Then
Me.TextBox1.Text = ("Waiting for Warrock.exe")
Me.TextBox2.Text = ("Let´s Hack")
Else
Timer1.Stop()
Me.TextBox1.Text = "Done..."
Call Inject()
End If
Else
Me.TextBox1.Text = ("" + ExeName + ".dll not found")
Me.TextBox2.Text = ("Rename the .dll To " + "" + ExeName)
End If
End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Timer1.Interval = 50
Timer1.Start()
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
MsgBox("Thats the Status Box!", MsgBoxStyle.Information, "Info")
End Sub
End Class
05/21/2011 17:32 _Vendetta_#3
Êin wr hack mit VB macht man doch schon lange nicht mehr ^^ Und das gehört eher in die tut section
glaube ich

#moverequest
05/21/2011 19:38 jan25ish#4
womit denn? weil wenn ich den dll injector als admin starte, wenn das hackshield unten rechts kommt, geht warrock nicht an und der injector schliest sich auch.