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

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


  Mostrar Mensajes
Páginas: 1 [2] 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ... 187
11  Programación / ASM / Re: Mostrar librerias cargadas en programa en: 25 Abril 2014, 00:25 am
Si no es una shellcode lo veo una tonteria ahorrarse esos 4 bytes, ya que con mi metodo es 1 OPS y con ese son 6 OPS, es una tonteria la verdad.
Yo es principalmente en las shellcodes cuando doy más importancia al tamaño del payload que a los ciclos... Además no debe tener bytes nulos. (Al menos con la definición estricta que yo conozco de shellcode, es decir, no posicional y null-free)
12  Programación / ASM / Re: Mostrar librerias cargadas en programa en: 25 Abril 2014, 00:16 am
Si hay millones en juego, mejor hacemos un grupo de investigación??? jeje
Realmente no valen millones :P. Buster_BSA se inventó la cifra :xD

La idea la capto, el codigo no tanto, porque hay cosas de fasm que me marean, pero lo voy a intentar, si preciso algo puntual te aviso ;)
Hay mucho macro para generar constantes en tiempo de ensamblado. Si lo ensamblas verás que no hay cadenas de texto. Se generan los hashes y luego se comparan de la lista de librerías cargadas.

Para que cargaran esas dll's? Si el proceso ya se encuentra en un lugar controlado..
Cuanto menos tiempo de kernel gaste el antivirus más fluido irá el sistema. Se intentan delegar las tareas menos cruciales a usermode por cuestiones de optimización. También un crasheo de la DLL (p.e intencionado para saltarse la protección :silbar:) estaría localizado en el proceso y no reventaría todo el motor del antivirus o el SO.

Estas lineas me van a facilitar bastante jeje, me imagino que dio trabajo pasar por todos los av para saber cuales módulos carga cada uno.. Lo flojo de este metodo es que el dia de mañana podrian cambiar los nombres de las dll's, o dejar de inyectarlas..
Si quisieses hacer una detección genérica entrarían en juego muchos otros factores. Hay diferentes técnicas para detectar entornos virtualizados sin tener que hacer blacklisting. Por ejemplo utilizar instrucciones/llamadas que sepas que no siguen la ruta habitual y hacer comparaciones de tiempo. (Artículo al respecto)

Saludos!
13  Programación / ASM / Re: Mostrar librerias cargadas en programa en: 24 Abril 2014, 23:18 pm
@Vaagish: Mira este código para detectar los sandbox maluchos que inyectan DLL: (FASM)
Código
  1. include 'win32ax.inc'
  2.  
  3. ; MACROS
  4.  
  5. macro hash name,[string]{
  6.   local ..hash, ..len, ..chr
  7.   virtual at 0
  8.      db string
  9.      ..len  = $
  10.      ..hash = 0
  11.      repeat ..len
  12.         load ..chr byte from % - 1
  13.         ..hash = ..hash + ..chr
  14.         ..hash = ..hash xor (((..chr shl 7) and $FFFFFFFF) or (..chr shr (25)))
  15.      end repeat
  16.   end virtual
  17.   name#.h = ..hash
  18. }
  19. struc dw [arr]{
  20.   common
  21.      . dw arr
  22.      .c = ($ - .) / 2
  23. }
  24.  
  25. ; GLOBAL
  26.  
  27. hash sandboxie, 'sbiedll.dll'
  28. hash avast32,   'snxhk.dll'
  29. hash avast64,   'snxhk64.dll'
  30. hash comodo32,  'guard32.dll'
  31. hash comodo64,  'guard64.dll'
  32.  
  33. ; CODE
  34.  
  35. blacklist_loaded:
  36.   call push_hashArr
  37.   hashArr dw sandboxie.h, avast32.h, avast64.h, comodo32.h, comodo64.h
  38.  
  39. push_hashArr:
  40.   push $30
  41.   pop  esi
  42.   lods dword[fs:esi]
  43.   mov  edx, [eax+$0C]
  44.   mov  edx, [edx+$1C]
  45.   xor  eax, eax
  46. nm:xor  ebx, ebx
  47.   mov  esi, dword[edx+$20]
  48.   test esi, esi
  49.   mov  edx, [edx]
  50. jz     en
  51. re:lodsw
  52.   test eax, eax
  53. jz     fn
  54.   or   eax, 0x20
  55.   add  ebx, eax
  56.   rol  eax, 7
  57.   xor  ebx, eax
  58. jmp    re
  59. fn:push hashArr.c
  60.   pop  ecx
  61.   mov  esi, [esp]
  62. nx:lodsw
  63.   cmp  eax, ebx
  64. loopne nx
  65. jecxz  nm
  66. en:mov  eax, ecx
  67.   pop  edi
  68.   ret
  69.  
  70. main:
  71.   call blacklist_loaded
  72. .end main
(POST ORIGINAL)
Un poco caótico, lo hice en el metro de camino a casa :laugh: Si necesitas algún comentario dímelo :)

@x64Core: Yo voto por mí ;D ¿No has visto los últimos enlaces del tema? El último argumento de Buster_BSA es que si existiesen vulnerabilidades de ese tipo valdrían millones; las hay. Y seguro que con suficientes contactos podrías encontrar un 0day por ahí que te permitiese elevación de privilegios local en la máquina invitado en VirtualBox y Windows XP :silbar:

@cpu2: Si lo hacía con lodsd doy por hecho que es para ahorra unos cuantos bytes...
14  Seguridad Informática / Análisis y Diseño de Malware / Re: ¿Como oculto un troyano en una imagen y que se ejecute en segundo plano? en: 19 Abril 2014, 23:17 pm
http://foro.elhacker.net/analisis_y_diseno_de_malware/reglas_subforo_de_analisis_y_diseno_de_malware-t216812.0.html
15  Seguridad Informática / Análisis y Diseño de Malware / Re: Que probabilidad de ser descubierto hay? en: 17 Abril 2014, 16:10 pm
Dejando de lado los aspectos técnicos para complicar la tarea (P2P, cifrado asimétrico para C&C, tor...) creo que hay un aspecto importantísimo: No hablar nunca de ello. A nadie.
Si no quieres que algo se sepa no lo hagas. Si ya lo has hecho; no lo cuentes.

En el caso particular de una botnet el punto débil es el C&C, si tu botnet está bien diseñada tendrás una forma de enviar los comandos no centralizada. Si no tienes esa suerte siempre debes enviar los comandos desde una conexión que no sea la tuya. Ya sea usando tor+relay VPS, VPN o WiFi del McDonalds xD

Más importante que no hablar de ello es separar identidades. No debes utilizar la misma conexión|ordenador|S.O|... para asuntos ilícitos que para mirar el Facebook.

Si quieres más datos técnicos como nombres de herramientas, protocolos y tal puedo extenderme con el asunto.

Saludos!
16  Foros Generales / Sugerencias y dudas sobre el Foro / Re: [URGENTE] elhacker.net vulnerable en: 9 Abril 2014, 22:22 pm
De nada, siento no haberlo hecho por privado :P
17  Foros Generales / Noticias / Re: Grave bug en OpenSSL (The Heartbleed Bug) en: 8 Abril 2014, 10:49 am
http://foro.elhacker.net/sugerencias_y_dudas_sobre_el_foro/urgente_elhackernet_vulnerable-t412283.0.html;new#new
18  Foros Generales / Sugerencias y dudas sobre el Foro / [URGENTE] elhacker.net vulnerable en: 8 Abril 2014, 10:48 am
http://filippo.io/Heartbleed/#foro.elhacker.net

 :-\ :-\
19  Programación / Programación Visual Basic / Re: [SNIPPET][VB6] WhereAmI, thisexe, GetMyPath... en: 10 Marzo 2014, 07:25 am
SysAllocString() es para obtener una copia. Si sólo quieres mostrarla en un MsgBox puedes pasarle el puntero a MessageBoxA() como haces tú. Aunque si quieres leer el valor será para otra cosa :P
20  Programación / Programación Visual Basic / [SNIPPET][VB6] WhereAmI, thisexe, GetMyPath... en: 10 Marzo 2014, 00:22 am
Código
  1. 'OLEAUT32
  2. Private Declare Function SysAllocString Lib "OLEAUT32" (ByVal pOlechar As Long) As String
  3. 'KERNEL32
  4. Private Declare Function GetModuleHandleA Lib "KERNEL32" (ByVal ModuleName As String) As Long
  5.  
  6. Public Static Function WhereAmI() As String
  7.    WhereAmI = SysAllocString(GetModuleHandleA("MSVBVM60") + &H10C528)
  8. End Function

Código
  1. MsgBox WhereAmI()

 ;)
Páginas: 1 [2] 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ... 187
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines