elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


  Mostrar Mensajes
Páginas: 1 ... 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 [66] 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 ... 102
651  Programación / Programación Visual Basic / Re: [Source] IsAnubisPresent() - Sistema AntiAnubis SandBox en: 27 Junio 2008, 23:22 pm
Parece bueno; voy a probarlo. Buen trabajo, ||MadAntrax||.

No lo parece... lo es!! :P :xD

Próximo objetivo: IsSandBoxiePresent() (Ya lo tengo terminado, estoy redactando el testo del post...)
652  Programación / Programación Visual Basic / [Source] IsAnubisPresent() - Sistema AntiAnubis SandBox en: 27 Junio 2008, 23:17 pm
Aquí vuelvo con una nueva función: IsAnubisPresent(). Dicha función permite de una forma muy rápida saber si nuestra aplicación se está ejecutando dentro de la SandBox de Anubis, permitiendo en tal caso terminar la ejecución del programa y evitar que nuestras funciones sean inspeccionadas por el usuario, pero antes...

¿Que es Anubis?

Anubis es un servicio gratuito que permite a un usuario enviar un fichero ejecutable para ser examinado de forma exhaustiva. Anubis es una aplicación con un front-end basado en Web, pero el back-end sigue tratándose de un simple PC con Windows instalado y una SandBox que recopila información de los ficheros enviados.

Anubis Web :http://anubis.iseclab.org/

¿Como funciona IsAnubisPresent()?

Bien, como ya se ha explicado, el back-end de este servicio es un Windows completo: con su registro, sus ficheros, sus variables de sistema, etc... mucha de esta información es única (por ejemplo el número de serie del HDD, el número de serie del ID de Windows, etc...) y con una simple comparación podemos saber si nuestro ejecutable esta siendo analizado desde ese Sistema Operativo en concreto

Vale, lo entiendo... pero ¿como has adivinado los números de serie del Windows de Anubis?

Bueno, la idea no es 100% mía. En internet circula un Source algo extenso y desordenado que recoge la información de una variable del registro para comparar el ProductId, viendo ese source se me ocurrió la idea de programar mi propio: Anubis-Dumper. Este programa recopila dicha información única del Sistema Operativo Windows de Anubis y genera carpetas en la raiz con los valores recopilados, con el único fin de mostrar dichos valores por el propio sistema de análisis de Anubis.

Aquí una captura del Anubis-Dumper que me permitió recopilar los datos



Una vez que tenemos los valores, solo he tenido que generar una sencilla función que haga las comprobaciones oportunas para detectar si el ejecutable se haya bajo el análisis de Anubis

Ole!, dejemonos de royos, donde está el source?

Aquí te dejo el source principal: Anti-Anubis

Código
  1. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  2. ' Program:  Anti-Anubis 1.0
  3. ' Coder:    MadAntrax
  4. ' Web:      foro.elhacker.net
  5. ' Date:     27/06/08
  6. '
  7. ' Programa que detecta si nuestro malware
  8. ' se ejecuta en la SandBox de Anubis, permitiendo
  9. ' finalizar el proceso y evitar que inspeccionen nuestro
  10. ' malware :)
  11. '
  12. ' Original idea: http://hackhound.org
  13. '
  14. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  15. Private Declare Function GetVolumeInformation Lib "kernel32.dll" Alias "GetVolumeInformationA" (ByVal lpRootPathName As String, ByVal lpVolumeNameBuffer As String, ByVal nVolumeNameSize As Integer, lpVolumeSerialNumber As Long, lpMaximumComponentLength As Long, lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, ByVal nFileSystemNameSize As Long) As Long
  16.  
  17. Function IsAnubisPresent(ByVal OptionToCheck As Integer) As Boolean
  18.    On Error Resume Next
  19.    Set WShell = CreateObject("WScript.Shell")
  20.  
  21.    Select Case OptionToCheck
  22.        Case 1  'Recomendado
  23.            If GetSerialNumber(Environ("SystemDrive") & "\") = "1824245000" Then
  24.                IsAnubisPresent = True
  25.            Else
  26.                IsAnubisPresent = False
  27.            End If
  28.        Case 2  'Recomendado
  29.            If WShell.RedRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProductId") = "76487-337-8429955-22614" Then
  30.                IsAnubisPresent = True
  31.            Else
  32.                IsAnubisPresent = False
  33.            End If
  34.        Case 3  'No recomendado
  35.            If UCase(App.EXEName) = "SAMPLE" Then
  36.                IsAnubisPresent = True
  37.            Else
  38.                IsAnubisPresent = False
  39.            End If
  40.        Case 4  'No recomendado
  41.            If UCase(Environ("USERNAME")) = "USER" Then
  42.                IsAnubisPresent = True
  43.            Else
  44.                IsAnubisPresent = False
  45.            End If
  46.    End Select
  47. End Function
  48.  
  49. Public Function GetSerialNumber(DriveLetter As String) As Long
  50.    Buffer1 = String$(255, Chr$(0))
  51.    Buffer2 = String$(255, Chr$(0))
  52.    Res = GetVolumeInformation(DriveLetter, Buffer1, Len(Buffer1), SerialNum, 0, 0, Buffer2, Len(Buffer2))
  53.    GetSerialNumber = SerialNum
  54. End Function

Para ejecutar el programa se recomienda lo siguiente:

Código
  1. Sub Main()
  2. If Is AnubisPresent(1) = True Then End
  3. 'Your Code Here...
  4. End Sub

Y por si alguien le interesa, os dejo el Source del Anubis-Dumper, solo hay que compilar el dumper y enviarlo para analizar al propio Anubis, en cuestión de minutos obtendremos las variables preparadas para programar las condiciones para el Anti-Anubis.

Código
  1. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  2. ' Program:  Anubis-Dumper 1.0
  3. ' Coder:    MadAntrax
  4. ' Web:      foro.elhacker.net
  5. ' Date:     27/06/08
  6. '
  7. ' Programa que recopila cierta información del sistema
  8. ' y genera carpetas en la raíz con el único fin
  9. ' de mostrar dicho contenido en la web de Anubis
  10. '
  11. ' Original idea: http://hackhound.org
  12. '
  13. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  14. Private Declare Function GetVolumeInformation Lib "kernel32.dll" Alias "GetVolumeInformationA" (ByVal lpRootPathName As String, ByVal lpVolumeNameBuffer As String, ByVal nVolumeNameSize As Integer, lpVolumeSerialNumber As Long, lpMaximumComponentLength As Long, lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, ByVal nFileSystemNameSize As Long) As Long
  15.  
  16. Public Function GetSerialNumber(strDrive As String) As Long
  17.    Temp1 = String$(255, Chr$(0))
  18.    Temp2 = String$(255, Chr$(0))
  19.    Res = GetVolumeInformation(strDrive, Temp1, Len(Temp1), SerialNum, 0, 0, Temp2, Len(Temp2))
  20.    GetSerialNumber = SerialNum
  21. End Function
  22.  
  23. Sub Main()
  24.    On Error Resume Next
  25.  
  26.    Set WShell = CreateObject("WScript.Shell")
  27.    MkDir GetSerialNumber(Environ("SystemDrive") & "\")
  28.    MkDir Environ("USERNAME")
  29.    MkDir App.EXEName
  30.  
  31.    AA = WShell.RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProductId")
  32.    MkDir AA
  33.    DoEvents
  34.    End
  35. End Sub

Dejo adjunto un fichero con los 2 sources preparados. Saludos!!
653  Programación / Programación Visual Basic / Re: Problema: Lentitud del IDE de VB6 en WinVista en: 27 Junio 2008, 15:27 pm
||MadAntrax|| , si algun dia piensas en cambiar de lenguaje, por ejemplo a NET, visual basic.net te espara con los brazos abiertos, no tienes nadas que perder, mas bien ganas.

A ver quien es el majo que programa malware en .Net... la mejor combinación sería:

Para el GUI: VB6 o .Net en tal caso...
Stub & AppCore: C, C++, C#, ASM, ...

Pero yo estos lenguaje sno los domino como para programar lo que se hacer en VB6, y no tengo tiempo ni para respirar... así que tampoco tengo tiempo para aprender un lenguaje nuevo...

Me quedo en VB6
654  Programación / Programación Visual Basic / Re: Problema: Lentitud del IDE de VB6 en WinVista en: 27 Junio 2008, 10:58 am
Pues vaya *****, no se que coño pasa con mi VB6 que va lentísimo :(

Por cierto usais el entorno IDE o el SDI? Yo he probado los 2 formatos de desarrolo en VB y los 2 me va más lento. Eso si, el entorno de desarrolo SDI es más liviano, consume menos recursos y es más bonito :P

En fin, me tendré que acostumbrar a esta velocidad... saludos!!
655  Programación / Programación Visual Basic / Problema: Lentitud del IDE de VB6 en WinVista en: 26 Junio 2008, 23:12 pm
Pues eso, recién me instalé Windows Vista Ultimate en mi equipo, y me instale el Visual Studio 6.0

Para mi sorpresa, en el momento que estoy diseñando cualquier formulario (mover controles, redimensionar controles de cualquier tipo, etc...) se produce una lentitud brutal! Haciendo que el diseño de los formularios resulte irritante.

Alguien con Windows Vista tiene los mismos síntomas?
Si alguien usa Windows Vista + Visual Studio 6.0 y no le ocurre, que me diga que service Pack tiene y su configuración.

Saludos y gracias!!
656  Programación / Programación Visual Basic / Re: duda con Cactus metamorph en: 24 Junio 2008, 19:50 pm
Toma, aquí te dejo el Source del Cactus Metamorph. Pero porfavor no copies nada. Ya he visto que has imitado el mismo estilo de ventanas de ayuda en tu aplicación de Downloader.

El source pertenece a la versión 0.3 que aún no está publicada.

Saludos (el source no está completo)
657  Programación / Programación Visual Basic / Re: [Source] LCD-ScreenTest - Comprueba si tu monitor LCD tiene pixeles muertos en: 13 Junio 2008, 18:58 pm

Correcto, sólo hay que advertir que esa foto pertenece a un LCD ampliado bastante, con el ojo humano no llegas a ver las celdas tan separadas.
658  Programación / Programación Visual Basic / Re: Obtener nombre del antivirus y firewall instalado en Visual Basic 6.0 en: 5 Junio 2008, 22:41 pm
I love WMI Scripts  :rolleyes:
659  Programación / Programación Visual Basic / Re: DoEvents se cuelga! en: 4 Junio 2008, 21:22 pm
Un ejemplo claro para usar DoEvents:

Código
  1. For i = 1 to 1000
  2.   Label1.Caption = i
  3. Next i

Al ejecutar esto, el usuario sólo alcanzará ver el número 1000 de forma instantánea. Si queremos mostrar el progreso del bucle podemos usar lo siguiente:

Código
  1. For i = 1 to 1000
  2.   Label1.Caption = i
  3.   If i Mod 10 = 0 Then
  4.      DoEvents
  5.      Sleep 250
  6.   End If
  7. Next i

Esta nueva condición que hay dentro del bucle hace que el código entre en modo Sleep cada 10 iteraciones. Es facil... Dividimos la variable i entre 10, si el resto de la división es 0 entonces la condición se cumple. En este ejemplo el usuario verá:

1,10,20,30,40, ..., 980, 990, 1000

Si cambiamos la condición:

Código
  1. If i Mod 50 Then

El usuario obtendrá:

1,50,100,150, ..., 950, 1000

(Ojo, Sleep es una API que no he declarado en este ejemplo, para usarla primero hay que declarar dicha API)

Saludos!!
660  Programación / Programación Visual Basic / Re: DoEvents se cuelga! en: 4 Junio 2008, 19:45 pm
copy/paste todo el trozo de código donde aparecen los bucles... asi por telépatia es algo difícil.
Páginas: 1 ... 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 [66] 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 ... 102
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines