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


Tema destacado: Grupo de Facebook de elhacker.net

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo, raul338)
| | |-+  [BRAINSTORMING] KPC v3 (Karcrack Project Crypter)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 3 Ir Abajo Respuesta Imprimir
Autor Tema: [BRAINSTORMING] KPC v3 (Karcrack Project Crypter)  (Leído 7,373 veces)
Karcrack


Desconectado Desconectado

Mensajes: 2.192


Se siente observado ¬¬'


Ver Perfil
[BRAINSTORMING] KPC v3 (Karcrack Project Crypter)
« en: 20 Enero 2011, 22:23 »

Hola, hola!

Ya hace mucho que no acabo ningún proyecto en VB6... tengo una gran cantidad a medias... y se me ocurrió reanudar el Karcrack Project Crypter...
Más información sobre el proyecto:
Código:
http://foro.elhacker.net/programacion_vb/sourceactualizado_karcrack_project_crypter_encripta_tus_proyectos_en_vb-t221869.0.html
http://foro.elhacker.net/analisis_y_diseno_de_malware/karcrack_project_crypter_v21_kpc-t256127.0.html

Y se me ocurrió que la mejor forma de saber que necesita la gente a la hora de hacer indetectables sus proyectos era iniciar una lluvia de ideas :)

Simplemente propongan :P Por ahora tengo esta lista:
  • Ofuscación de APIs (Varios métodos, un par secretos :P)
  • Cifrado de cadenas (Varios métodos, se me ocurrió añadir la posibilidad de usar algoritmos propios)
  • Cifrado de APIs (AKA Invoke/Zombie_Invoke/CallByName/CallByHash...)
  • Ofuscación de funciones (GoTo y añadir basurilla :P)
  • Cambio 'avanzado' de opciones del proyecto :rolleyes:

Alguna sugerencia?! Un saludo :D


En línea

_katze_

Desconectado Desconectado

Mensajes: 99



Ver Perfil WWW
Re: [BRAINSTORMING] KPC v3 (Karcrack Project Crypter)
« Respuesta #1 en: 20 Enero 2011, 23:59 »

y que otros metodos se pueden hacer pero atraves de code....yo ni idea de esto pero creo q los av's t colocan firma tambien donde compilas el proyecto seria modificar esto,agregar variantes al split,LOF y demas q tienen firmass... :S


En línea
BlackZeroX (Astaroth)
Wiki

Desconectado Desconectado

Mensajes: 2.831


I'Love...!¡.


Ver Perfil WWW
Re: [BRAINSTORMING] KPC v3 (Karcrack Project Crypter)
« Respuesta #2 en: 21 Enero 2011, 00:54 »

.
Solo se me ocurrio una.

 * dividir la funcione donde se encuentren sentencias if then, Select Case, u otras, pero sin perder la congruencia de la misma.

es decir:

Código
Private Sub Form_Load()
Dim i       As Integer
Dim str_v   As String
   If Caca_Malware(6, 6, 6) = Pedos_frijoleros(6, 9) Then
       str_v = o4215(i)
   Else
       str_v = awuiwiche(45) + i
   End If
 
   MsgBox str_v
End Sub
 

Pasarlo a funciones:

Código
 
Private Sub Form_Load()
Dim i       As Integer
Dim str_v   As String
   Call compareifthen(str_v, i)
   MsgBox str_v
End Sub
 
Private Sub compareifthen(ByRef str_v As String, ByRef i As String)
   If Caca_Malware(6, 6, 6) = Pedos_frijoleros(6, 9) Then
       Call icacamalware_frijolero(str_v, i)
   Else
       Call strv_wilwuicho
   End If
End Sub
Private Sub icacamalware_frijolero(ByRef str_v As String, ByRef i As Integer) ' // esto es trivial pero bueno
   str_v = o4215(i)
End Sub
Private Sub strv_wilwuicho(ByRef str_v As String, ByRef i As Integer) ' // esto es trivial pero bueno
   str_v = awuiwiche(45) + i
End Sub
 
 

Nota: En mi forma de pensar este tema es OFF-Topic, citando las reglas le pese a quien le pese.

Dulces Lunas!¡.
« Última modificación: 21 Enero 2011, 01:12 por BlackZeroX▓▓▒▒░░ » En línea

Web Principal-->[ Blog(VB6) | Host File (Public & Private) | Scan Port | (New)MyInfraPC (Descubre mi Contraseña venefi. $) ]



The Dark Shadow is my passion.
El infierno es mi Hogar, mi novia es Lilith y el metal mi
raul338
Moderador
***
Conectado Conectado

Mensajes: 2.371


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: [BRAINSTORMING] KPC v3 (Karcrack Project Crypter)
« Respuesta #3 en: 21 Enero 2011, 01:06 »

Y que pasa con lo basico de todo protector, ofuscacion de variables? Es una pequeña trabita mas, pero es pesada al menos :xD

Nota: En mi forma de pensar este tema es OFF-Topic, citando las reglas le pese a quien le pese.
Para mi deberia ir mejor en criptografia, pero nose :rolleyes:
En línea

BlackZeroX (Astaroth)
Wiki

Desconectado Desconectado

Mensajes: 2.831


I'Love...!¡.


Ver Perfil WWW
Re: [BRAINSTORMING] KPC v3 (Karcrack Project Crypter)
« Respuesta #4 en: 21 Enero 2011, 01:15 »

Para mi deberia ir mejor en criptografia, pero nose :rolleyes:

Foro Libre, hay nadie no vera feo.

Dulces Luans!¡.
En línea

Web Principal-->[ Blog(VB6) | Host File (Public & Private) | Scan Port | (New)MyInfraPC (Descubre mi Contraseña venefi. $) ]



The Dark Shadow is my passion.
El infierno es mi Hogar, mi novia es Lilith y el metal mi
LeandroA
Moderador
***
Desconectado Desconectado

Mensajes: 693


Seguime


Ver Perfil WWW
Re: [BRAINSTORMING] KPC v3 (Karcrack Project Crypter)
« Respuesta #5 en: 21 Enero 2011, 04:09 »

Muy buena iniciativa Karcrack, realmente no se me ocurren muchas ideas para aportar si no mas bien preguntas, yo con el tema de mi proyecto estoy investigando un poco de todo esto de la indetectabilidad, la pregunta es si vos vas a utilizar Ofuscación de APIs, que garantía hay de que esto pueda ser seguro con todas las apis, me refiero al funciona miento, osea algunas apis utilizan byref, y otras byval para los parámetros, si no me equivoco cuando es byref se utiliza VarPtr entonces el crypter seria capaz de reconocer cada parámetro de cada api y hacer que esto funcione automaticamente?

por otro lado no seria mejor hacerlo sobre un ejecutable, en vez desde el proyecto? (Pregunto por que no se)
si uno crearía un crypter "indetectable" y enveviera el .exe dentro de si mismo (con alguna encriptacion) ,luego lo extrae y lo ejecuta inyectandolo dentro del mismo crypter, esto podría ser detectado?

bueno por el momento me vienen esas intrigas.
En línea

Elemental Code


Desconectado Desconectado

Mensajes: 499


Im beyond the system


Ver Perfil
Re: [BRAINSTORMING] KPC v3 (Karcrack Project Crypter)
« Respuesta #6 en: 21 Enero 2011, 06:18 »

va a sonar loco pero yo me saque de ensima unas firmas una vez haciendo lo siguiente:

Que siempre haya un form:
al parecer al avast no le gusta que ejecutes codigo desde el sub_main sin mostrar forms.

Que tenga un icono personalizado:
NO PREGUNTEN, cambie el icono de vb y panda no lo detecto.

y este es el mas loco de todos.
Cifre las cadenas estaticas :S
si cuando me tengo que abrir a mi mismo para usar un stub o algo asi lo hago de la sig forma:

Código
MySelf = "exe." & StrReverse(App.EXEName) & "\" & StrReverse(App.Path)

Por alguna razon, Kaspersky le parece menos sospechoso esto que decirle

Código
MySelf = app.path & "\" & app.exename & ".exe"


ahora yo pregunto, el nombre con el que se declara una constante para usar alguna api o funcion

ej:
Private Const INTERNET_CONNECTION_MODEM_BUSY As Long = &H8
Private Const INTERNET_RAS_INSTALLED As Long = &H10
Private Const INTERNET_CONNECTION_OFFLINE As Long = &H20
Private Const INTERNET_CONNECTION_CONFIGURED As Long = &H40

influye en algo?

este... no se me ocurre mas nada.
Cuando me caiga la ficha de algo mas vuelvo.

PD: hay alguna diferencia para un av en compilarlo en P.code o codigo nativo?
En línea

Karcrack


Desconectado Desconectado

Mensajes: 2.192


Se siente observado ¬¬'


Ver Perfil
Re: [BRAINSTORMING] KPC v3 (Karcrack Project Crypter)
« Respuesta #7 en: 21 Enero 2011, 14:30 »

@_katze_:
Me parece una buena idea el reemplazo automatizado de funciones/metodos como Split, App.Exename... etc :)

@BlackZeroX▓▓▒▒░░:
Es interesante, pero me parece que a la hora de generar el algoritmo se liarian las cosas :-\

@raul338:
Es la parte que mas rabia me da de los ofuscadores, cambiar los nombres de las variables por aswWdsa1sA no sirve para nada, como mucho quita las firmas estáticas que ya tengas en tu proyecto... Y ademas, puedes decirle al compilador que no mete los nombres de variables en el fichero compilado, asi que esa opcion ya esta en mi lista :P

@LeandroA:
Es relativamente sencillo automatizar el cifrado de las APIs (El metodo de Invoke/CallByName...) siempre que tengas la declaracion, aunque tambien habria que fijarse un poquito en como se llama a la función, ya que a pesar de que en la declaracion este ByRef el usuario puede especificar ByVal...
Respecto a lo de crear un crypter... no le veo intereses, lo que mola es modificar el código y dejarlo indetectable :)

@Elemental Code:
Los AVs han abusado muchísimo con sus firmas y detecciones heurísticas, de tal forma que un proyecto vació de VB6 ya es detectado por varios AVs... Lo del formulario es cierto, pero eso es un falso positivo... si que es cierto que algunos AVs detectan el uso de ciertas combinaciones como: Sub Main() + App.Path, pero eso se solucionaria con la idea de _katze_ :)
Respecto a las constantes, hasta donde yo se no aparecen los nombres, solo los de las variables, pero como he dicho antes eso se puede modificar ;)
Y por último, sí, existe diferencia al compilar en P-CODE o N-CODE y también si vas modificando otros parámetros de la compilación... esto es debido a que el fichero compilado varia, y por lo tanto la detección también

@Todos: Gracias por la ayuda :-*

@Mods: Si veis necesario moverlo hacedlo... Lo puse aquí porque es donde más programadores de VB6 lo podrán ver... Ademas no lo veo Off-Topic, por que se están debatiendo temas relacionados con el lenguaje de programación VB6, este subforo no es solo para preguntar y pegar codes :P

Un saludo :)
« Última modificación: 21 Enero 2011, 14:34 por Karcrack » En línea

_katze_

Desconectado Desconectado

Mensajes: 99



Ver Perfil WWW
Re: [BRAINSTORMING] KPC v3 (Karcrack Project Crypter)
« Respuesta #8 en: 22 Enero 2011, 00:55 »

creo q deveriamos abrir un topic y hacer variaciones de funciones que simulen a las mismas para ir ganando tiempo al proyecto hacer split y etc y q las mejorcitas c vallan agregando...
En línea
Karcrack


Desconectado Desconectado

Mensajes: 2.192


Se siente observado ¬¬'


Ver Perfil
Re: [BRAINSTORMING] KPC v3 (Karcrack Project Crypter)
« Respuesta #9 en: 22 Enero 2011, 01:07 »

No te preocupes _katze_, ya me encargo yo de la programación :P Esto no es ningún proyecto comunitario ni nada así, solo necesito algunas ideas que nos interesen a los programadores de VB6 :xD
En línea

_katze_

Desconectado Desconectado

Mensajes: 99



Ver Perfil WWW
Re: [BRAINSTORMING] KPC v3 (Karcrack Project Crypter)
« Respuesta #10 en: 22 Enero 2011, 01:49 »

pero seria bueno como reto jejeje y no digo q sea comunitario
En línea
xpro

Desconectado Desconectado

Mensajes: 10


Ver Perfil
Re: [BRAINSTORMING] KPC v3 (Karcrack Project Crypter)
« Respuesta #11 en: 22 Enero 2011, 12:51 »

Para mi beneficio, te diría que buscaras alternativas a las típicas cadenas que todos usamos, como por ejemplo..

El típico Split, se podría crear una función nueva o alguna alternativa a esto ( que no sea el resource, que salta kav. ). Por otra parte se podría intentar aquello de ejecutar las strings desde memoria..

Lo de ofuscar las api's, pues es una muy buena idea espero que funcione perfectamente. Por otro lado, puesto que este programa casi siempre se utiliza para ofuscar el code de crypters ( generalmente ), buscaría alguna manera de ofuscar los ya imposible de Fuddear runpe's.. y bueno, poco más te puedo decir creo que cualquier idea que se te ocurra a tí siempre será mucho mejor que lo que yo pueda decir.

Un saludo !


PD: Aquí, yo al menos en vb6 te echaba de menos..
En línea
The Swash

Desconectado Desconectado

Mensajes: 104


Programmer


Ver Perfil WWW
Re: [BRAINSTORMING] KPC v3 (Karcrack Project Crypter)
« Respuesta #12 en: 24 Enero 2011, 04:21 »

Bueno Karcrack, digamos que puedo dar una pequeña idea que no reemplazaria al ofuscamiento de API pero depronto sea útil.

Recuerdo que hace un tiempo cuando usaba VB (pasado) un día Avira detectaba DllFunctionCall, que justamente iba en el invoke, al modificar la libreria MSVBVM60 uno de sus caracteres Avira se iba, pero todo quedaba no funcional.

Pero resulta que la declaración de esa DLL no se ocupa hasta llamar la función entonces digamos que se puede hacer algo al abrir el ejecutable, sería cambiar en la declaración la libreria por xDDD.DLL un ejemplo, y cuando ejecuten el archivo llamar a un pequeño Copy(Encryptado("MSVBVM60.DLL"),"xDDD.DLL").

Te recalco algunas funciones que en si son detectadas
Split - Kaspersky
LOF - Avira, A-squared
App.Path + App.ExeName + ".exe", Avira creo.

Strings detectadas como "Stub", "HKCU../CurrentVersion/Run"

Espero de algo te sirva, Animo con eso Karcrack!

Como te digo es una pequeña experiencia que quizás sirva.
Un saludo y gran iniciativa como siempre Karcrack!

PD: Que detalle el de Kruzty  ;D
En línea
mixer

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: [BRAINSTORMING] KPC v3 (Karcrack Project Crypter)
« Respuesta #13 en: 25 Enero 2011, 21:56 »

Ideas para considerar:

- Agregar funciones alternativas a Split, LOF y Apertura, lectura de archivos.
- Que pueda agregar una buena cantidad de API reales pero inofensivas, o API falsas
- Varios modulos o forms con código Basura
- Reemplazar cadenas de Constantes
- Algo que muchos AV detectan la asignacion de valores constantes  podriamos ofuscarlo un poco

Por ejemplo si me detecta Var1 = &H4
puedo usar:

Var2 = &H4 + 15
Var1 = Var2 - 15

al final Var1 tomará el mismo valor. Con esos sacas a Nod, MSEssentials y varios más.
En línea
Karcrack


Desconectado Desconectado

Mensajes: 2.192


Se siente observado ¬¬'


Ver Perfil
Re: [BRAINSTORMING] KPC v3 (Karcrack Project Crypter)
« Respuesta #14 en: 25 Enero 2011, 22:03 »

Es interesante la ofuscación de constantes :) Aunque lo de agregar módulos/funciones basura no me gusta la verdad... para mi es importante que el codigo resultante tenga una lectura tan sencilla como estaba antes... aunque lo que dices de meter APIs a diestro y siniestro puede ser útil :)

Ah! Otra idea que tuve es permitir el cambio de convención a la hora de llamar a las APIs, es decir, en vez de importarlas directamente desde el código (DllFunctionCall) hacerlo desde la IAT (TypeLiBrary)

Ya tengo una buena lista :) Creo que este fin de semana empezaré con los algoritmos :)
En línea

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

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Karcrack T2B [TrojanToBomb]
Análisis y Diseño de Malware
Karcrack 2 2,248 Último mensaje 2 Octubre 2007, 18:26
por Karcrack
KPS [Karcrack Pen Stealer]
Análisis y Diseño de Malware
Karcrack 8 1,879 Último mensaje 2 Noviembre 2007, 10:40
por GN1000
[SOURCE][ACTUALIZADO] Karcrack Project Crypter, cifra tus proyectos en VB « 1 2 3 »
Programación Visual Basic
Karcrack 31 10,725 Último mensaje 31 Mayo 2009, 13:04
por Karcrack
[^]Karcrack Project Crypter v2.1 [KPC] « 1 2 »
Análisis y Diseño de Malware
Karcrack 16 8,663 Último mensaje 21 Septiembre 2009, 11:23
por Jubjub
[BRAINSTORMING] Troyano / Botnet ?
Programación Visual Basic
ANation 1 839 Último mensaje 18 Febrero 2011, 23:21
por Elemental Code
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines