elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 23:42  


Tema destacado: [Overclocking] Récords de overclock del foro

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo, raul338)
| | |-+  [ANTI] AmISandboxied() - Saber si estamos siendo ejecutados dentro de Sandboxie
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [ANTI] AmISandboxied() - Saber si estamos siendo ejecutados dentro de Sandboxie  (Leído 985 veces)
Karcrack


Desconectado Desconectado

Mensajes: 2.192


Se siente observado ¬¬'


Ver Perfil
[ANTI] AmISandboxied() - Saber si estamos siendo ejecutados dentro de Sandboxie
« en: 13 Marzo 2011, 20:42 »

Código
Option Explicit
'NTDLL
Private Declare Function RtlGetCurrentPeb Lib "NTDLL" () As Long
'MSVBVM60
Private Declare Sub GetMem4 Lib "MSVBVM60" (ByVal Addr As Long, ByRef RetVal As Long)
 
'---------------------------------------------------------------------------------------
' Procedure : AmISandboxied
' Author    : Karcrack
' Date      : 13/03/2011
' Purpose   : Know if we are running under Sandboxie
'---------------------------------------------------------------------------------------
'
Public Function AmISandboxied() As Boolean
   Dim lUPP        As Long         '&RTL_USER_PROCESS_PARAMETERS
   Dim lFlags      As Long         'RTL_USER_PROCESS_PARAMETERS.Flags
   
   Call GetMem4(RtlGetCurrentPeb() + &H10, lUPP)
   Call GetMem4(lUPP + &H8, lFlags)
   AmISandboxied = (lFlags <> 1)
End Function
Bien simple, por alguna razon desconocida PEB.RTL_USER_PROCESS_PARAMETERS.Flags es distinto cuando esta siendo ejecutado dentro de Sandboxie ;)


En línea

Karcrack


Desconectado Desconectado

Mensajes: 2.192


Se siente observado ¬¬'


Ver Perfil
Re: [ANTI] AmISandboxied() - Saber si estamos siendo ejecutados dentro de Sandboxie
« Respuesta #1 en: 13 Marzo 2011, 21:58 »

Por si a alguien le interesa el código en ASM que utilicé en los tests:
Código
Main:
       cdq
       mov     edx, [FS:edx+$30]
       mov     edx, [edx+$10]
       mov     edx, [edx+$08]
       dec     edx
       jnz     Sandboxie
       ;Codigo
Sandboxie:
       ret    


En línea

ntaryl

Desconectado Desconectado

Mensajes: 95



Ver Perfil
Re: [ANTI] AmISandboxied() - Saber si estamos siendo ejecutados dentro de Sandboxie
« Respuesta #2 en: 15 Marzo 2011, 17:26 »

Nice  stuff Bro
+ rep from me 
En línea
Karcrack


Desconectado Desconectado

Mensajes: 2.192


Se siente observado ¬¬'


Ver Perfil
Re: [ANTI] AmISandboxied() - Saber si estamos siendo ejecutados dentro de Sandboxie
« Respuesta #3 en: 16 Marzo 2011, 00:00 »

Thank you ntaryl :-* Glad you liked it :)
En línea

philipjfry99

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: [ANTI] AmISandboxied() - Saber si estamos siendo ejecutados dentro de Sandboxie
« Respuesta #4 en: 19 Marzo 2011, 23:19 »

Hi Karcrack, love ur work :), this one works except for 7 64bit, do u know why ?
En línea
Karcrack


Desconectado Desconectado

Mensajes: 2.192


Se siente observado ¬¬'


Ver Perfil
Re: [ANTI] AmISandboxied() - Saber si estamos siendo ejecutados dentro de Sandboxie
« Respuesta #5 en: 20 Marzo 2011, 01:37 »

@philipjfry99:Maybe in 64bits the PEB structure differs, I can't reproduce the error now so I'll try
to fix it later.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines