首页
社区
课程
招聘
[旧帖] [原创]汇编源码-线程注入DLL 0.00雪花
发表于: 2012-11-13 10:47 3369

[旧帖] [原创]汇编源码-线程注入DLL 0.00雪花

2012-11-13 10:47
3369

;主要功能:让exe启动的时候加载我们自己的DLL

;感谢蓝天师傅和CK牛,帮了我不少,刚学汇编,大多都是API,代码不规范,希望大家指点一下,小菜好学,哪个大牛好心收了我吧

;QQ:897701810

;留个QQ,说不定哪个大牛好心就收下我了,嘿嘿
.386
.model flat, stdcall
option casemap:none

include windows.inc
include user32.inc
include kernel32.inc
includelib user32.lib
includelib kernel32.lib

.data?
stStartUp       STARTUPINFO <?>
stProcInfo      PROCESS_INFORMATION <?>
hMemory         dd ?
hh              dd ?

.data
szDllKernel     db  'Kernel32.dll',0
szLoadLibrary   db  'LoadLibraryA',0
szFile          db  'test.exe',0
szDll           db  'Patch.dll',0
szCaption       db  '错误!!',0
szText          db  '进程创建失败,请确认文件存在',0

.code

Main:      
                invoke GetStartupInfo,offset stStartUp
                invoke CreateProcess,offset szFile,NULL,NULL,NULL,NULL,CREATE_SUSPENDED,NULL,NULL, offset stStartUp,offset stProcInfo
                cmp eax,0
                jz exit
                invoke VirtualAllocEx,stProcInfo.hProcess,NULL,12,MEM_COMMIT,PAGE_EXECUTE_READWRITE
                mov hMemory,eax
                invoke lstrlen,offset szDll
                inc eax
                invoke WriteProcessMemory,stProcInfo.hProcess,hMemory,offset szDll,eax,NULL
                invoke GetModuleHandle,offset szDllKernel
                invoke GetProcAddress,eax,offset szLoadLibrary
                mov hh,eax
                invoke CreateRemoteThread,stProcInfo.hProcess,NULL,1000H,hh,hMemory,NULL,NULL
                invoke ResumeThread,stProcInfo.hThread
                invoke CloseHandle,stProcInfo.hProcess
                invoke CloseHandle,stProcInfo.hThread
                invoke ExitProcess,0   
        exit:   invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK
                invoke ExitProcess,NULL  
end Main
               
        
            
                       


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 7
支持
分享
最新回复 (4)
雪    币: 154
活跃值: (91)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
2
CreateRemoteThread都被杀成shit了。。。
R3下用CreateProcess,可以改EP写shellcode,可以改IAT,可以APC,可以.....
其中改EP上花门很多。。。比如为了防止检测,可以计算原EP代码,一般不是第一行就是CALL(第二行JMP)的,可以改第二行。。。如果是CALL的,就改CALL的offset。。。
IAT有点麻烦。。。。
APC需要一些条件,或者你手动创造这些条件,不过这样还不如改EP了。。。
2012-11-13 15:30
0
雪    币: 6598
活跃值: (4577)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
3
有点听不懂,求实例
2012-11-13 15:49
0
雪    币: 51
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
学了这么久了,居然还是没学懂,请LZ加我QQ带动菜鸟学习。
2012-11-13 16:48
0
雪    币: 216
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
收藏了..刚好用上了..哈哈
2013-7-8 11:31
0
游客
登录 | 注册 方可回帖
返回
//