首页
社区
课程
招聘
[求助]菜鸟shellcode搜索API函数LoadLibraryA地址问题
发表于: 2008-5-7 18:06 5877

[求助]菜鸟shellcode搜索API函数LoadLibraryA地址问题

2008-5-7 18:06
5877
nop
                        CLD        ; clear flag DF
                        ;store hash
                        push 0x1e380a6a        ;hash of MessageBoxA
                        push 0x4fd18963        ;hash of ExitProcess
                        push 0x0c917432        ;hash of LoadLibraryA
                        mov esi,esp        ; esi = addr of first function hash
                        lea edi,[esi-0xc]        ; edi = addr to start writing function

                       

                        ; make some stack space
                        xor ebx,ebx
                        mov bh, 0x04                          
                        sub esp, ebx
                       

                       
                        ; push a pointer to "user32" onto stack
                        mov bx, 0x3233                 ; rest of ebx is null
                        push ebx
                        push 0x72657375
                        push esp
                        xor edx,edx

                ; find base addr of kernel32.dll
                        mov ebx, fs:[0x30]         ; ebx = address of PEB
                        mov ecx, [ebx + 0x0c]                
                        mov ecx, [ecx + 0x1c]
                        mov ecx, [ecx]                                
                        ;mov ecx,[ecx]
                        ;mov ecx,[ecx]
                        mov ebp, [ecx + 0x08]        
                                               
                find_lib_functions:
               
                        lodsd                                        
                        cmp eax, 0x1e380a6a
                                                                        ; LoadLibrary("user32")
                        jne find_functions
                        xchg eax, ebp                        

                        call [edi - 0x8]                 ; LoadLibraryA
                        xchg eax, ebp                 ; restore current
;hash, and update ebp
                                                                       
第五章查找函数地址的一段代码,其中找到        LoadLibraryA地址后调用是为什么没有压栈传递参数,这里加载的是user32模块!菜鸟恳请指教!

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

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
找到了 不好意思 嘿嘿
      ; push a pointer to "user32" onto stack
      mov bx, 0x3233     ; rest of ebx is null
      push ebx
      push 0x72657375
      push esp
      xor edx,edx
2008-5-7 18:24
0
游客
登录 | 注册 方可回帖
返回
//