作者changjeimin (小张)
看板Visual_Basic
标题[.NET] vb2008 注入相关问题
时间Sat Dec 26 20:26:47 2009
请问各位前辈们
注入的方式
类似如下
我所测试的就是 ...DLL 注入好像 必定 不是 VB 做出来的DLL才能注入?
我测试过VB做出来的DLL 用这方式注入没效果
但是如果是C++ 做出来的却是可以?
MyGetWindow = FindWindow("notepad", vbNullString)
If MyGetWindow = 0 Then
MsgBox("NotePad Not Found。」Exit")
Exit Sub
End If
GetWindowThreadProcessId(MyGetWindow, MyProcessID)
MyProcessHandle = OpenProcess(PROCESS_CREATE_THREAD Or
PROCESS_VM_OPERATION Or PROCESS_VM_WRITE, False, MyProcessID)
MyLoadDll = "G:\Windowed.dll"
MyStartAddr = GetProcAddress(GetModuleHandle("Kernel32"),
"LoadLibraryA")
MyBufferSize = 1 + Len(MyLoadDll)
Dim MySetMemory As Integer
MySetMemory = VirtualAllocEx(MyProcessHandle, 0, MyBufferSize,
MEM_COMMIT, PAGE_READWRITE)
WriteProcessMemory(MyProcessHandle, MySetMemory, MyLoadDll,
MyBufferSize, 0)
CreateRemoteThread(MyProcessHandle, 0, 0, MyStartAddr, MySetMemory,
0, 0)
MsgBox("ok")
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.36.32.248
1F:→ nobody1:注入是什麽东西? Orz 12/26 23:24
2F:→ MOONRAKER:是啊!为什麽要这样「注入」? 12/26 23:54
4F:→ changjeimin:我上面是很久以前的一个范例 12/27 02:02
5F:→ changjeimin:我是觉得为何vb做出的dll不能被注入呢? 12/27 02:03
6F:→ changjeimin:注入是目前比较广泛的说法... 12/27 02:04
7F:→ changjeimin:如果用类似工作管理员的那种程式(ProcessExplorer) 12/27 02:05
8F:→ changjeimin:就可以看到例如NOTEPAD下会有一堆DLL载入 12/27 02:06
9F:→ changjeimin:或许[注入]比较正常的说法应该是[载入]吧 12/27 02:06
10F:推 horngsh:你的方式较属於VB6的写法, 找找.NET的P/Invoke 12/27 11:00
11F:→ MOONRAKER:目前比较普遍?听都没听过。 12/27 11:16