找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 174|回复: 0

华夏 call注入

[复制链接]

1793

主题

457

回帖

0

积分

管理员

积分
0
发表于 2013-9-7 10:12:19 | 显示全部楼层 |阅读模式
unit myDLl;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls , ComCtrls, XPMan;

type
TForm1 = class(TForm)
    Timer1: TTimer;
   &#160ageControl1: TPageControl;
    TabSheet1: TTabSheet;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    StaticText3: TStaticText;
    StaticText2: TStaticText;
    StaticText1: TStaticText;
    TabSheet2: TTabSheet;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    TabSheet3: TTabSheet;
    XPManifest1: TXPManifest;
    Button5: TButton;
    Button6: TButton;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    Edit7: TEdit;
    Edit8: TEdit;
    Button7: TButton;
    Button8: TButton;
    Button9: TButton;
    Button10: TButton;
    Button11: TButton;
    procedure Timer1Timer(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);

    procedure Button6Click(Sender: TObject);
    procedure Button8Click(Sender: TObject);
    procedure Button7Click(Sender: TObject);
    procedure Button9Click(Sender: TObject);
    procedure Button10Click(Sender: TObject);
    procedure Button11Click(Sender: TObject);

  


private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
function HookProc(nCode:Integer;WParam: WPARAM;LParamPARAM)RESULT;stdcall;
function HookOn(lpHwnd:HWND;lpTypeongint)ongint;stdcall;export;
function HookOff:Boolean;stdcall;export;

implementation

var
hHk: HHOOK=0;
mhwnd:HWND=0;
bShow:Integer=1;
hThread: Cardinal;
hmod: Pointer; //Hinstance
hProcessId: Cardinal;
mMode:Integer;

{$R *.dfm}

function HookProc(nCode:Integer;WParam: WPARAM;LParamPARAM)RESULT;stdcall;
begin
//接收按键F8开始挂钩DLL
if (bShow=1) And (wParam=VK_MULTIPLY) then
    begin
bShow:=5;
Form1:=TForm1.Create(Application);
Form1.Show;
ShowCursor(true);
end;
if (bShow=2) And (wParam=VK_MULTIPLY) then
    begin
bShow:=6;
  form1.hide;
end;

if (bShow=3) And (wParam=VK_MULTIPLY) then
    begin
bShow:=2;
end;

if (bShow=4) And (wParam=VK_MULTIPLY) then
    begin
bShow:=1;
end;
if (bShow=5) then bShow:=3;
if (bShow=6) then bShow:=4;
Result := CallNextHookEx(hHk,nCode,WParam,LParam);
end;

function HookOn(lpHwnd:HWND;lpTypeongint): Longint;stdcall; export;
begin
hThread :=GetWindowThreadProcessId(lpHwnd,hmod);
//注入开始
hHk :=SetWindowsHookEx(lpType,@HookProc,hInstance,hThread); // WH_KEYBOARD
Result :=hHk
end;

function HookOff:Boolean;stdcall; export;
begin
if hHk<>0 then
begin
//移除挂钩
UnHookWindowsHookEx(hHk);
hHk :=0;
Result :=true;
end
else
Result :=false;

&#160;&#160;end;



procedure TForm1.Timer1Timer(Sender: TObject);


var
WHandle:hwnd;
hPID:hwnd;
pHandle:hwnd;
base,addr,num,nameAddr:dword;
hp,maxhp,mp:cardinal;
name:array[0..32]of wideChar;
begin
WHandle := FindWindow(&#39;ZElementClient Window&#39;, &#39;Element Client&#39;);
GetWindowThreadProcessId(WHandle, @hPID);
PHandle := OpenProcess(PROCESS_ALL_ACCESS, False, hPID);
ReadProcessMemory(PHandle, Pointer($9404A4),@Base, 4, Num);
ReadProcessMemory(PHandle, Pointer(Base+$28), @Addr, 4, Num);
ReadProcessMemory(PHandle,Pint(Addr+$254),@HP,4,Num);
ReadProcessMemory(PHandle,Pint(Addr+$26c),@maxhP,4,Num) ;
ReadProcessMemory(PHandle,Pint(Addr+$258),@mP,4,Num) ;

ReadProcessMemory(PHandle,pointer(Addr +$3A4), @nameAddr, 4, Num);
ReadProcessMemory(PHandle,pointer(nameAddr), @name[0], 36, Num);
Form1.Label1.Caption:=inttostr(hp)+&#39;/&#39;+inttostr(maxhp);
Form1.Label2.Caption:=inttostr(mp);
Form1.Label3.Caption:=name;
end;




procedure TForm1.Button1Click(Sender: TObject);
var
neirong:string;
duixiang:string;
fangshi:string;
Addressointer;
begin

&#160;&#160;Address:=Pointer($0045B868);
&#160;&#160;neirong:=edit3.text;
&#160;&#160;duixiang:=&#39;freeb8&#39;;
&#160;&#160;fangshi:=&#39;轻声&#39;;
&#160;&#160;asm
&#160;&#160;&#160;&#160;pushad
&#160;&#160;&#160;&#160;mov ebx, $00DD7170

&#160;&#160;&#160;&#160;push neirong

&#160;&#160;&#160;&#160;push fangshi

&#160;&#160;&#160;&#160;push duixiang
&#160;&#160;&#160;&#160;push ebx
&#160;&#160;&#160;&#160;call address
&#160;&#160;&#160;&#160;add&#160;&#160;&#160;&#160; esp, $10
&#160;&#160;&#160;&#160;popad
&#160;&#160;end;
end;



procedure TForm1.Button2Click(Sender: TObject);
var
Addressointer;
begin
Address:=Pointer($07E77258);
asm
&#160;&#160;pushad
&#160;&#160;mov ecx,$07F1DC30
&#160;&#160;call address
&#160;&#160;popad

end;
end;

procedure TForm1.Button3Click(Sender: TObject);
var
Addressointer;
begin
Address:=Pointer($0040A389);&#160;&#160; //攻击
asm

&#160;&#160;push 50
&#160;&#160;push 50
&#160;&#160;push 100
&#160;&#160;push 100
&#160;&#160;push $1c
&#160;&#160;push 1
&#160;&#160;push 8
&#160;&#160;call address
&#160;&#160;add esp,$1c

end;
end;
procedure TForm1.Button4Click(Sender: TObject);
var
Addressointer;
str:string;
begin
Address:=Pointer($0040A389);
str:=edit4.text;
asm

&#160;&#160;push str
&#160;&#160;push 2
&#160;&#160;push $1A

&#160;&#160;call address
&#160;&#160;add esp,$0c
&#160;&#160;
end;

end;



procedure TForm1.Button5Click(Sender: TObject);
var
Addressointer;
str:string;
begin
Address:=Pointer($0040a389);
str:=edit5.text;
asm
&#160;&#160;pushad
&#160;&#160;push str
&#160;&#160;push 01
&#160;&#160;push $16
&#160;&#160;call address
&#160;&#160;add esp,$0c
&#160;&#160;popad;
end;
end;
procedure TForm1.Button6Click(Sender: TObject);
var
address:pointer;
neirong:string;

begin
&#160;&#160;address:=pointer($09394ae1);

&#160;&#160;neirong:=edit3.text;

&#160;&#160;asm
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;pushad

&#160;&#160;&#160;&#160;&#160;&#160; push neirong
&#160;&#160;&#160;&#160;&#160;&#160; push $08612B30

&#160;&#160;&#160;&#160;&#160;&#160; push 1

&#160;&#160;&#160;&#160;&#160;&#160; mov ecx, $093F0430
&#160;&#160;&#160;&#160;&#160;&#160; mov edx,$093C17F4
&#160;&#160;&#160;&#160;&#160;&#160; mov ebx,$C0000000
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;call address

&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;popad
&#160;&#160;end;

end;


procedure TForm1.Button8Click(Sender: TObject);

&#160;&#160;&#160;&#160;var
&#160;&#160;&#160;&#160;address:pointer;
neirong: string;
fangshi: string;
duixiang:string;

begin
address:=pointer($0045b868);
neirong:=&#39;第一次说话&#39; ;
fangshi:=&#39;第一次说话&#39;&#160;&#160;;
duixiang:=&#39;老狼&#39;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;;

&#160;&#160;asm
pushad
mov ebx,$00e77170
push&#160;&#160;neirong&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; //内容
push&#160;&#160;fangshi&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;//方式
push&#160;&#160;duixiang&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; //对象
push&#160;&#160;ebx&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; //常量
call address
add esp,$10
popad
end;
end;
procedure TForm1.Button7Click(Sender: TObject);
var
address:pointer;
i,j:integer;

begin
address:=pointer($0045992c);
i:=strtoint(edit1.text);
j:=strtoint(edit2.text);

asm
pushad
mov ebx,$00e77170
push j
push i
push ebx
call address
popad

end;
end;
procedure TForm1.Button9Click(Sender: TObject);
var
address:pointer;

begin
address:=pointer($00451aa8);

asm
pushad
mov eax,$00D91FC4
mov ecx,$00000001
mov edx,$00000032
mov ebx,$00D91FC4

call&#160;&#160; address
popad

end;
end;
procedure TForm1.Button10Click(Sender: TObject);

var
address:pointer;
i,j:integer;
begin
address:=pointer($0045aafc);
i:=strtoint(edit1.text);
j:=strtoint(edit2.text);
asm
pushad;
mov ecx,i
mov edx,j
mov eax,$00e77170;
call address
popad;
end;
end;
procedure TForm1.Button11Click(Sender: TObject);
var
address:pointer;
begin
address:=pointer($00581BF0);
asm
pushad
mov ecx,$80012716
call address
popad

end;

end;


end.

http://yunpan.cn/QXhZZC2K8LMVf
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

果子博客
扫码关注微信公众号

Archiver|手机版|小黑屋|风叶林

GMT+8, 2026-2-1 04:39 , Processed in 0.136072 second(s), 21 queries .

Powered by 风叶林

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表