Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - BlackZeroX

#541
Habra que poner detectores de modificacion e instalar un A.V. para ver donde y que modifican, o revisar un SRC.

Dulces Lunas!¡.
#542
@Elemental Code

De hecho si se me ocurre algo y es redireccionar el EntryPoint del exe a otro lugar donde este un trozo de codigo agregado... esta redirreción seria a un bloqueque se introduzca con ASM para que calcule el CRC32 (puedes preguntarle a RHL)... y que al terminar llame nuevamente al EntryPoint Original... mirate este enlace:

http://foro.elhacker.net/analisis_y_diseno_de_malware/taller_asi_funcionan_los_crypters_encriptando_malware_a_mano-t262806.0.html

Dulces Lunas!¡.
#543
.
Perdon escribi si leer bien.

Si es la que dice #const INSERTCRC32TOEXE = False, despues edita la otra linea que se dice y por ultimo ejecuta desde el IDE... subi un proyecto practicamente configurado ya, revisa el 1er post.

Dulces Lunas!¡.
#544
Lo que pasa es que NO debes compilar con la constante en true ya que claramente dice:

Ejecuta el proyecto desde este IDE, si todo a ido correctamente les aparecera un mensaje {"CRC32 configurado Correctamente"}.

Dulces Lunas!¡.
#545
Para algo como esto no... pero si te das cuenta se carga todo el archivo en memoria y acceso a los bytes directamente, mapear el archivo en memoria es hacer lo mismo, crear una copia del archivo en la memoria pero con APIS espesificas, y bueno esto seria viable en BDD o cosas por el estilo donde el archivo deba estar siempre en memoria y en este caso solo se carga una vez y despues se descarga dicho bloque de bytes.

Dulces Lunas!¡.
#546
De hecho puedes hacerlo con el api: GetFileAttributes http://msdn.microsoft.com/en-us/library/windows/desktop/aa364944%28v=vs.85%29.aspx, si te retorna 0 es que no existe...
#547
@Elemental Code.
Quisas te interese ver una alternativa en donde no hay tanto lio con editores Hexadecimales, Tabs no se que, NotePad++, etc... solo requieres tu EXe ya compilado y tu IDE, y obviamente mi funcion (siguiendo los pasos).

[SRC] itsOkCRC32

Dulces Lunas!¡.
#548
Programación Visual Basic / [SRC] itsOkCRC32
27 Enero 2012, 00:06 AM
.
La funcion lo que realiza es una verificación del exe para saber si a ido modificaco o no (es una seguridad muy basica).

Edito--->
(NO ES NECESARIO) OJO si lo van a usar deberan realinear el formato PE... o usar los ultimos 4 bytes de el exe (habitualmente son bytes 0)

En un modulo...

Código (vb) [Seleccionar]


Option Explicit

#Const INSERTCRC32TOEXE = False

Public Function itsOkCRC32() As Boolean
'   //
'   //  Funcion itsOkCRC32 creada por BlackZeroX (http://infrangelux.hostei.com)
'   //
'   //  Instrucciones:
'   //  * COMPILA TU EXE FINAL con la constante INSERTCRC32TOEXE = false.
'   //  * Cambia INSERTCRC32TOEXE de false a true ( #Const INSERTCRC32TOEXE = true )
'   //  * Cambia la linea  {Open "c:\testCRC32.exe" For Binary As hFile} de este proceso con
'   //  la ruta del exe que compilaste anteriormente, por ejemplo {Open "c:\testCRC32.exe" For Binary As hFile}
'   //  * Ejecuta el proyecto desde este IDE, si todo a ido correctamente les aparecera un mensaje {"CRC32 configurado Correctamente"}.
'   //  * Comprube tu EXE Final {c:\testCRC32.exe} ejecutandolo directamente.
'   //  Si todo a hido correctamente el exe te mostrara {"CRC32 Correcto"} si solo has generado el exe y no cambiaste {INSERTCRC32TOEXE a true} te mostrara {"CRC32 erroneo"} en este ejemplo.

Dim byteData()              As Byte
Dim dwSizeFile              As Long
Dim dwCRC32ReadFile         As Long
Dim dwCRC32Generate         As Long
Dim oCRC32                  As cCRC32
Dim hFile                   As Integer

    hFile = FreeFile
#If (INSERTCRC32TOEXE = False) Then
    Open App.Path & "\" & App.EXEName & ".exe" For Binary As hFile
#Else
    Open "c:\testCRC32.exe" For Binary As hFile
#End If
        dwSizeFile = LOF(hFile)
        If ((dwSizeFile - 4) > 0) Then
#If (INSERTCRC32TOEXE = True) Then
            ReDim byteData(0 To (dwSizeFile - 1))
#Else
            ReDim byteData(0 To (dwSizeFile - 1 - 4))
#End If
            Get 1, , byteData
            Get 1, , dwCRC32ReadFile
           
            Set oCRC32 = New cCRC32
            dwCRC32Generate = oCRC32.GetByteArrayCrc32(byteData)
            Set oCRC32 = Nothing
           
            If (dwCRC32Generate = dwCRC32ReadFile) Then
                itsOkCRC32 = True
#If (INSERTCRC32TOEXE = True) Then
                MsgBox "CRC32 Ya se encontraba configurado."
            Else
                Put hFile, , dwCRC32Generate
                MsgBox "CRC32 configurado Correctamente."
                End
#End If
            End If
        End If
    Close hFile
   
End Function



cCRC32.cls (Modulo de clase)



Option Explicit

' This code is taken from the VB.NET CRC32 algorithm
' provided by Paul (wpsjr1@succeed.net) - Excellent work!

Private crc32Table() As Long

Public Function GetByteArrayCrc32(ByRef buffer() As Byte) As Long
Dim crc32Result     As Long:    crc32Result = &HFFFFFFFF
Dim i               As long
Dim iLookup         As long
   
   For i = LBound(buffer) To UBound(buffer)
      iLookup = (crc32Result And &HFF) Xor buffer(i)
      crc32Result = ((crc32Result And &HFFFFFF00) \ &H100) And 16777215 ' nasty shr 8 with vb :/
      crc32Result = crc32Result Xor crc32Table(iLookup)
   Next i
   
   GetByteArrayCrc32 = Not (crc32Result)

End Function



Private Sub Class_initialize()

    ' This is the official polynomial used by CRC32 in PKZip.
    ' Often the polynomial is shown reversed (04C11DB7).
    Dim dwPolynomial As Long
    dwPolynomial = &HEDB88320
    Dim i As Integer, j As Integer

    ReDim crc32Table(256)
    Dim dwCrc As Long

    For i = 0 To 255
        dwCrc = i
        For j = 8 To 1 Step -1
            If (dwCrc And 1) Then
                dwCrc = ((dwCrc And &HFFFFFFFE) \ 2&) And &H7FFFFFFF
                dwCrc = dwCrc Xor dwPolynomial
            Else
                dwCrc = ((dwCrc And &HFFFFFFFE) \ 2&) And &H7FFFFFFF
            End If
        Next j
        crc32Table(i) = dwCrc
    Next i

End Sub

Private Sub Class_Terminate()
    Erase crc32Table
End Sub



Ejemplo:

Código (vb) [Seleccionar]


option explicit

Sub main()
    If (itsOkCRC32) Then
        MsgBox "CRC32 Correcto"
    Else
        MsgBox "CRC32 erroneo"
    End If
End Sub



Decargar Ejemplo (Compilar en "C:\" el proyecto con el nombre "testCRC32.exe" o configurar las lineas segun lo requieran y con la constante en false, despues solo ejecutar desde el IDE con la constante en true):
http://infrangelux.sytes.net/FileX/index.php?dir=/BlackZeroX/Programacion/vb6/ejemplos%20VB6&file=itsOKCRC32.zip



Alternativa: http://foro.elhacker.net/programacion_visual_basic/src_self_crc32_check_01_poc-t351610.0.html

Dulces Lunas!¡.
#549
Cita de: m0rf en 26 Enero 2012, 10:57 AM
Me parece que no estas muy informado sobre las acciones de anonymouse, solo se dedica a realizar ddos?

Ademas de subir pornografia a sitios como youtube y declararlos como videos para niños... esto es una estupides y que son "protestas" realmente son denigrantes.
Lo mas destacable y hablado son los DDOS y es lo que mas abunda en la susodicha "legion".

Dulces Lunas!¡.
#550
Si programas en un S.O. (p.j Windows) para otro S.O. (P.J. OpenBSD), lo que nesesitas si no mal recuerdo son un compilador Cross Compiler... https://es.wikipedia.org/wiki/Compilador_cruzado

Dulces Lunas!¡.