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

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  [SRC] Self CRC32 Check 0.1 (POC)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 3 Ir Abajo Respuesta Imprimir
Autor Tema: [SRC] Self CRC32 Check 0.1 (POC)  (Leído 10,012 veces)
Elemental Code


Desconectado Desconectado

Mensajes: 622


Im beyond the system


Ver Perfil
[SRC] Self CRC32 Check 0.1 (POC)
« en: 25 Enero 2012, 02:54 am »

Antes que nada, esto es POC. Proof Of Concept
Es una mera prueba para ver si es posible. Es medio dificil de implementar en software de terceros o que no esten hechos en vb.
El codigo que lo hace funcionar es basicamente esto:
(REQUIERE UNA CLS APARTE, QUE CALCULA EL CRC32!!!)
Código
  1. Option Explicit
  2.  
  3. 'Code by Elemental Code
  4. 'Proof of concept
  5. 'SELF CRC32 CHECK
  6. 'Make sure nobody tampers with your software
  7. 'Dedicated, as always, to my Girlfriend <3
  8. 'Argentina 24/1/2012
  9.  
  10. Sub Main()
  11.    Dim bArray() As Byte 'Byte Array With the code.
  12.    Dim MySelf As String 'My exe file
  13.    Dim mymixedcode As String 'all the bin together
  14.    Dim MyCode() As String ' The splitted code
  15.    Dim lCrC32 As Long 'the CRC32
  16.    Dim clsCRC32 As New cCRC32
  17.  
  18.    'Get my own exe file in a way invisible to kaspersky (Fuck you)
  19.    MySelf = Chr$(101) & Chr$(120) & Chr$(101) & Chr$(46) & StrReverse(App.EXEName) & Chr$(92) & StrReverse(App.Path)
  20.  
  21.    'Get my Binary code
  22.    Open StrReverse(MySelf) For Binary As #1
  23.    mymixedcode = Space(LOF(1))
  24.    Get #1, , mymixedcode
  25.    Close #1
  26.  
  27.    'Split My code
  28.    MyCode() = Split(mymixedcode, "[#@$|$@#]")
  29.    '0 My file | 1 Right CRC32
  30.  
  31.    'Convert to Byte array
  32.    bArray() = StrConv(MyCode(0), vbFromUnicode)
  33.  
  34.    'Get CRC32
  35.    lCrC32 = clsCRC32.GetByteArrayCrc32(bArray)
  36.  
  37.    'Compare CRC32
  38.    If Hex(lCrC32) = MyCode(1) Then
  39.        MsgBox "Success!!" & vbCrLf & "CRC32 Match, You are using the ORIGINAL Software" & vbCrLf & "Press OK to launch the application", vbExclamation, "SELF CRC32 Checker v 0.1"
  40.        'Show your Form HERE!!
  41.    Else
  42.        MsgBox "ERROR: CRC32 MISSMATCH!!" & vbCrLf & "CRC32 Missmatch means this file was edited!!" & vbCrLf & "GET THE ORIGINAL ONE NOW!!", vbCritical, "SELF CRC32 Checker v 0.1"
  43.    End If
  44. End Sub


Para hacer funcionar esto, tendrias que abrir con algun editor tipo notepad ++ tu ejecutable final y agregarle ahi el crc32 correcto.
Para hacer esto, busca el final del archivo y agregale el SEPARADOR + el CRC32 Correcto.

Separador
Código:
[#@$|$@#]

Ejemplo
Código:
[#@$|$@#]5186AC9D

YO SE QUE ESTO ES MUUUUY RUSTICO, pero ya aclare, es una prueba de concepto y salio bien :D

Descarga Source completo + Binario de CRC32 Correcto + Binario de CRC32 INCORRECTO.

Código:
http://www.mediafire.com/?2qb7tnzkt9gu159



Intente hacer una version que tuviera una especie de stub para que sirviera para cualquier exe ya compilado pero me trabe, ya que necesitaria hacer un RUN PE del archivo original despues de verificar que el CRC32 fuera correcto y no se nada sobre la estructura PE :S


En línea

I CODE FOR $$$
Programo por $$$
Hago tareas, trabajos para la facultad, lo que sea en VB6.0

Mis programas
CAR3S?


Desconectado Desconectado

Mensajes: 343


Level xXx


Ver Perfil
Re: [SRC] Self CRC32 Check 0.1 (POC)
« Respuesta #1 en: 25 Enero 2012, 07:52 am »

mmmmmmm interesante, gran aporte!


En línea

BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.148


I'Love...!¡.


Ver Perfil WWW
Re: [SRC] Self CRC32 Check 0.1 (POC)
« Respuesta #2 en: 25 Enero 2012, 08:27 am »

Pense que habias hecho tu el codigo de CRC32... pero nada que ver usas una clase ajena... mas que nada un POC de crc32 es una tactica trucha para el malware...

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

Dulces Lunas!¡.
En línea

The Dark Shadow is my passion.
Elemental Code


Desconectado Desconectado

Mensajes: 622


Im beyond the system


Ver Perfil
Re: [SRC] Self CRC32 Check 0.1 (POC)
« Respuesta #3 en: 25 Enero 2012, 13:54 pm »

no se porque o que tiene que ver el malware en esto.
Caso aparte, debi aclarar que el modulo de crc32 no era mio, pero sin embargo la idea y el codigo los pense yo (pese a que no soy ni el primero ni el ultimo.)
No crei que fuera tan malo, ahora cuando tenga tiempo voy a ver si logro armar un metodo de hash por mi cuenta
En línea

I CODE FOR $$$
Programo por $$$
Hago tareas, trabajos para la facultad, lo que sea en VB6.0

Mis programas
MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 4.990


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: [SRC] Self CRC32 Check 0.1 (POC)
« Respuesta #4 en: 25 Enero 2012, 15:26 pm »

ahora cuando tenga tiempo voy a ver si logro armar un metodo de hash por mi cuenta

Querés inventar el agujero del mate?  :)

El algoritmo de CRC es bastante conocido y muy estable.

Sino podrias hacer un MD5 del archivo y en vez de un DWORD al final del archivo, le attachas 4 (o bien como string, pero ya serian 16 bytes)

PD: Me gustó el codigo...  :P
En línea

MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."

Elemental Code


Desconectado Desconectado

Mensajes: 622


Im beyond the system


Ver Perfil
Re: [SRC] Self CRC32 Check 0.1 (POC)
« Respuesta #5 en: 25 Enero 2012, 15:52 pm »

jaajajaja
Me referia a hacer un codigo propio que haga crc32 para que blackzero no se queje tanto :P
En línea

I CODE FOR $$$
Programo por $$$
Hago tareas, trabajos para la facultad, lo que sea en VB6.0

Mis programas
STARZ

Desconectado Desconectado

Mensajes: 34



Ver Perfil
Re: [SRC] Self CRC32 Check 0.1 (POC)
« Respuesta #6 en: 25 Enero 2012, 18:27 pm »

Muy bueno, gracias
« Última modificación: 25 Enero 2012, 18:29 pm por STARZ » En línea

BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.148


I'Love...!¡.


Ver Perfil WWW
Re: [SRC] Self CRC32 Check 0.1 (POC)
« Respuesta #7 en: 25 Enero 2012, 22:11 pm »

Me referia a hacer un codigo propio que haga crc32 para que blackzero no se queje tanto :P

El titulo es engañoso, igual no es nada grave.

Consejo: Carga el EXE en un array de bytes para que evites strconv().

P.D.: Nunca dije que era malo, solo que me ilucionaste.

Dulces Lunas!¡.
« Última modificación: 25 Enero 2012, 22:24 pm por BlackZeroX (Astaroth) » En línea

The Dark Shadow is my passion.
Maurice_Lupin


Desconectado Desconectado

Mensajes: 353

GPS


Ver Perfil WWW
Re: [SRC] Self CRC32 Check 0.1 (POC)
« Respuesta #8 en: 26 Enero 2012, 02:58 am »

 ;D justo lo que buscaba aunque yo también encontre el md5, me pregunto cual es más recomendable para verificar la integridad de mi programa el crc32 o el md5 ?

Saludos.
En línea

Un error se comete al equivocarse.
Crawe

Desconectado Desconectado

Mensajes: 14


Ver Perfil
Re: [SRC] Self CRC32 Check 0.1 (POC)
« Respuesta #9 en: 26 Enero 2012, 03:12 am »

Lo he probado pero no me funciona, o lo estoy haciendo mal.
Pongo el module con el [#@$|$@#] , pongo el CLAS que figura en el codigo fuente del proyecto que vos hiciste, es decir copie todo. Lo compilo .exe, después lo abro con notepad++ y pongo  [#@$|$@#]5186AC9D

Lo hago exe de nuevo, entro desde un editor edito alguna letra ponele y se puede seguir abriendo.. No se que estoy haciendo mal.Una ayudita?
En línea

Páginas: [1] 2 3 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
ADE32, md5, SHA, y crc32
Ingeniería Inversa
EL PRINTERO 3 3,391 Último mensaje 14 Enero 2008, 00:09 am
por Shaddy
Como quitar crc32 - ate - blowfish
Ingeniería Inversa
Incognitum-x 0 1,475 Último mensaje 23 Febrero 2008, 16:29 pm
por Incognitum-x
CRC32
Ingeniería Inversa
Master_crack1 6 6,125 Último mensaje 4 Noviembre 2010, 02:57 am
por jackgris
setup factory 9.1 (check box. radio check) ¿?
Programación Visual Basic
stifmstr 2 3,034 Último mensaje 5 Diciembre 2013, 21:25 pm
por stifmstr
(Consulta) cambiar la crc32 De una dll Y de la code section
Ingeniería Inversa
Marcoski 4 1,384 Último mensaje 7 Diciembre 2016, 21:39 pm
por Marcoski
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines