| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 564 人关注过本帖
标题:放下代码,能弹个对话框哟
只看楼主 加入收藏
zhu224039
Rank: 8Rank: 8
等 级:贵宾
威 望:17
帖 子:862
专家分:792
注 册:2012-7-29
结帖率:59.52%
收藏
已结贴  问题点数:10 回复次数:2 
放下代码,能弹个对话框哟
.386
.model flat,stdcall
option casemap:none
GetKernelBase   proto   
GetApiAddress   proto  :dword,:dword,:dword
.data
    szFuctionName db 'LoadLibraryA',0
    szFuctionName1 db "GetProcAddress",0
    szFuctionName2 db "MessageBoxA",0
    szkernel32    db "kernel32",0
    szuser32    db "user32",0
    szCaption       db "我的实验",0
    sztext          db  "病毒的开始",0
   
    loadlibary dword 0
    keneraddrbase dword ?
    getapi        dword ?
    user32        dword ?
    messageb      dword ?
    kernelbase    dword ?
.code
   
start:
    mov esi,[esp]
    invoke GetKernelBase
    MOV    kernelbase,eax
    invoke GetApiAddress,offset szFuctionName,sizeof szFuctionName,kernelbase
    mov  loadlibary ,eax
   
    invoke GetApiAddress,offset szFuctionName1,sizeof szFuctionName1,kernelbase
    mov getapi,eax
   
    push offset szkernel32
    call loadlibary
    mov keneraddrbase,eax
   

    push offset szuser32
    call loadlibary
    mov user32,eax

    push offset szFuctionName2
    push user32
    call getapi
   
    mov messageb,eax
   
    push  0
    push  offset szCaption
    push  offset sztext
    push  0
   
    call messageb   
   
    mov   ebx,eax
    jmp $
   
GetKernelBase   proc uses esi
    .while 1
        xor si,si
        .if word ptr [esi]=="ZM"
            mov eax,[esi+3ch]
            .if word ptr [esi+eax]=="EP"
                mov eax,esi
                .break
            .endif
        .endif
        dec esi
        .if esi<=70000000h
            .break
        .endif
    .endw
        ret
GetKernelBase   endp

GetApiAddress proc uses esi ecx ebx szfunctionname:dword,ncount:dword,kernelbas:dword
    LOCAL ad:dword
    mov eax,kernelbas
    mov ebx,[eax+3ch]
    add ebx,eax
    add ebx,078h
    mov ebx,[ebx]
    add ebx,eax
    push ebx
   
    mov ebx,[ebx+020h]
    add ebx,eax
    mov ad,ebx
   
   
   
   
    cld
    xor edx,edx
next1:
    mov ebx,ad
    mov ebx,[ebx]
    add ebx,eax
    mov esi,ebx
    mov ecx,ncount
    mov edi,szfunctionname
next:
    cmpsb
    jz continue
    inc edx
    mov ebx,ad
    pop ebx
    push ebx
    cmp edx,[ebx+18h]
    ja  nofind
    add ad,4
    jmp next1
   
continue:
    loop next
   
    push eax
    mov  eax,2
    mul  edx
    mov  edx,eax
   
    pop  eax
    pop  ebx
    push ebx
    mov  ebx,[ebx+24h]
    add  ebx,eax
    add  edx,ebx
    movzx  edx,word ptr [edx]
   
        
   
    push eax
    mov  eax,4
    mul  edx
    mov  edx,eax
   
    pop  eax
    pop  ebx
    mov  ebx,[ebx+01ch]
    add  ebx,eax
   
    add  edx,ebx
    add  eax,[edx]
    ret
nofind:
    mov eax,0
    ret



GetApiAddress endp
   
end start
搜索更多相关主题的帖子: 对话框 
2014-03-10 20:12
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:5 
硬编码??不能过安软??

DO IT YOURSELF !
2014-03-15 08:06
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:5 
以下是引用wp231957在2014-3-15 08:06:58的发言:

硬编码??不能过安软??

现在360什么不报啊。。
2014-03-16 11:40
快速回复:放下代码,能弹个对话框哟
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012601 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved