Test Foro de elhacker.net SMF 2.1

Programación => .NET (C#, VB.NET, ASP) => Programación General => Programación Visual Basic => Mensaje iniciado por: Karcrack en 13 Marzo 2011, 20:42 PM

Título: [ANTI] AmISandboxied() - Saber si estamos siendo ejecutados dentro de Sandboxie
Publicado por: Karcrack en 13 Marzo 2011, 20:42 PM
Código (vb) [Seleccionar]
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 ;)
Título: Re: [ANTI] AmISandboxied() - Saber si estamos siendo ejecutados dentro de Sandboxie
Publicado por: Karcrack en 13 Marzo 2011, 21:58 PM
Por si a alguien le interesa el código en ASM que utilicé en los tests:
Código (asm) [Seleccionar]
Main:
        cdq
        mov     edx, [FS:edx+$30]
        mov     edx, [edx+$10]
        mov     edx, [edx+$08]
        dec     edx
        jnz     Sandboxie
        ;Codigo
Sandboxie:
        ret   
Título: Re: [ANTI] AmISandboxied() - Saber si estamos siendo ejecutados dentro de Sandboxie
Publicado por: ntaryl en 15 Marzo 2011, 17:26 PM
Nice  stuff Bro
+ rep from me 
Título: Re: [ANTI] AmISandboxied() - Saber si estamos siendo ejecutados dentro de Sandboxie
Publicado por: Karcrack en 16 Marzo 2011, 00:00 AM
Thank you ntaryl :-* Glad you liked it :)
Título: Re: [ANTI] AmISandboxied() - Saber si estamos siendo ejecutados dentro de Sandboxie
Publicado por: philipjfry99 en 19 Marzo 2011, 23:19 PM
Hi Karcrack, love ur work :), this one works except for 7 64bit, do u know why ?
Título: Re: [ANTI] AmISandboxied() - Saber si estamos siendo ejecutados dentro de Sandboxie
Publicado por: Karcrack en 20 Marzo 2011, 01:37 AM
@philipjfry99:Maybe in 64bits the PEB structure differs, I can't reproduce the error now so I'll try
to fix it later.