Bueno se que este post va a traer polemica asique pido disculpas adelantadas a quien no le guste y comprendo perfectamente a los moderadores o administradores del foro si desean eliminar el post.
Como no veo un curso por dias para crear tu crypter desde codigo fuente y creo que estaria muy bien pero ningun codeador desea realizarlo pues voy a empezar yo pero no soy codeador, soy un simple newbies que sabe un poco que son variables, funciones, ... y poco mas asique si algun buen codeador quiere continuar o aclarar los puntos sera Bienvenido para que me sustituya o me ayude.
Para entender todo esto por lo menos seria recomendable que alguna vez hubieran infectado a alguien gracias a los fabulosos crypter que van dejando cada dia algunos de los compañeros. Si no es asi, por favor, recomiendo que primero prueben los crypter que sube la gente he intenten manejar un troyano (CyberGate, spynet,...), si no se infecta a el remoto este post no es el lugar idoneo para preguntar.

Dicho todo esto no se hable mas y a por ello.

Hoy Martes voy a hablar un poco de los crypter, presentar al cliente y al stub.
Primer punto:
Un crypter es un programa (aplicación), que protege otro programa encriptandolo para que los antivirus no lo puedan depurar y detectar.
Osea que un crypter lo que hace es ocultar un server creado por un troyano, el server es detectado por los antivirus pero al pasarle el crypter pues este encripta el server he impide que el antivirus lo detecte.

Dicho todo esto llegamos a pensar que primero deberemos crear el server o la aplicacion detectada por los antivirus, una vez echo esto deberemos pasarle el crypter y este lo encriptara dejando una referencia a él en el stub.
Una vez ejecutado se abre el stub que sera el mismo quien lo desencriptara para su ejecuccion.

Segundo punto:
Por tanto el stub es el que llevara el codigo para encriptarlo y el que debera de desencriptarlo.
¿Y que es el cliente del crypter? Pues dicho de una forma simple es el programa pero en forma visual, es decir, el que al darle doble click al crypter aparece en forma grafica para poder introducirle el server o aplicacion ya detectada por los antivirus o elegir las opciones que sean.

Dicho todo esto deberes para mañana:
Conseguir el Visual Basic 6 (si es en español mejor)
El que quiera adelantar dire que mañana Miercoles veremos las declaraciones, las variables y las funciones en visual basic 6, he intentaremos ir contruyendo el cliente.

No me gustaria que la gente atacara con insultos asique ya lo hago yo, soy un puto gilipollas que no tiene ni idea pero como nadie se anima y quiero aprender pues me animo yo a crear este post y muy poco a poco diariamente ir descubriendo como codear desde 0 el crypter.
oie buena tu iniciativa.....
pero....... crear un crypter diariamente..... cuando lo que buscamos es.... rapidez...
seria bueno que colocaras algo asi como = creando un crypter desde ceros en 10..15...20...(lo menos posible) minutos ...
por supuesto... en lo que pueda ayudare... no soy el Re-programador... pero me defiendo en vb
asi que... hay te dejo mi humilde opinión
suert.....

salu
Skype: jhou_026
Para mi toda iniciativa y ganas de ayudar es valido.
Siempre y cuando se haga con responsabilidad.
Hay muchos que se mofarán y otros aplaudirán.
Hacé tu trabajo y solamente hazle caso a los moderadores o a los admins
Saludos y suerte
Imagen
muy buena tu iniciativa, creo es de mucha utilidad para quienes queremos aprender como hacer un crypter que este fud y aporatrlo al foro para no sentirnos simples larvas que entramos solo a buscar de otros lo que nesecitamos... soy muy novato en esto asi que ayuda no te puedo dar pero intentare ser buen alumno para que los que postean no pierdan su tiempo..gracias
La vocaion de enseñar habla de la generosidad de una persona y su grandesa!!
Me agrada la iniciativa, no queda más que desearte suerte con este proyecto y como dijo un compañero. Puede que te ataquen, te critiquen o te alaven pero tú sigue en lo tuyo y apoyando a los nuevos como yo que a lo más que sabemos de programación es a abrir lo programas
Soy lo que soy gracias a que ustedes son lo que soN

Skype: bibetto.hax
si de teoria vas muy bien..
hara te hace falta la practica,hace un tiempo ya se hizo unas clases de crear crypter(antes del verano).
yo estuve y aprendi mucho lo que veo dificil es que lo vuelvan hacer.
esto pasa una vez en la vida



saludos.
Hoy miercoles voy a hablar de las declaraciones, las variables y las funciones. Creamos nuestro cliente, recomiendo cada uno hacer el suyo y no copia y pega y luego despues mando deberes para mañana.
Empecemos:
¿Que son las variables?
Yo no voy a ser tecnico asique me invento la definicion para o que es para mi una variable.
Una variable es un valor que vamos a guardar en la memoria del ordenador, esto mejor se ve en un ejemplo.
Yo quiero guardar mi nombre "Carlos" en la memoria del ordenador para despues poder usarlo, pues le doy una direccion en la memoria del ordenador, le pongo un igual y entre comillas le pongo lo que quiero guardar, ejemplo:
Nombre="Carlos"
Escribiendo esta linea de comandos le estoy diciendo que coja Nombre, le de una direccion en memoria (por ejemplo 0xd456f) y alli coloque la palabra "Carlos" por si mas adelante la solicito para hacer alguna operacion.
Ahora bien, podemos hacer calculos matematicos en visual basic, por ejemplo:
resultado= 5 * 5
con lo que visual basic pondra en memoria un 10 en la direccion Nombre.
¿Y para que sirve esto?
imaginaros que pongo las siguientes lineas
Carlos= 5
Nombre= Carlos * 1000
Con esto conseguiriamos dar un valor de 5000 a la variable Nombre, ¿y? imaginaros que el codigo que esta cogido por el antivirus es Nombre= 5000 pues poniendo nombre= Carlos * 1000 ya no lo detecta.
Con que sepais distinguir una variable en un codigo fuente y como lo lee el visual basic me doy con un canto en los dientes.

¿Declaraciones que es eso?
Para poder usar las variables hay que declararlas al principio, ¿porque que hay que declararlas? Pues para decirle al programa mas o menos el espacio que debe de coger en memoria para luego colocar las variables.
¿Como se declara?
Dim variable As String . Ejemplo anterior: Dim Nombre as String.
Dim se pone siempre para declarar una variable. As es "como" en español y luego hay que poner el tipo de variable que es: un numero (Long), una palabra (String) son los mas comunes.

¿que son las funciones?
Ufff, esto si que es largo. Las funciones son como los comandos de ms-dos, es decir, son comandos con los que daras ordenes al programa como kill (matar) printf (imprimir en pantalla), ... Usar la ayuda de visual porque hay muchas funciones pero como he dicho antes, con que de momento las identifiqueis me doy con un canto en los dientes.

Voy a dejar el cliente para otro dia ya que se me hace tarde y creo q va a quedar muchas dudas de todo esto, las tengo incluso yo...jajaja.
Gracias por el apoyo recibido por muchos de vosotros y sigo manteniendo mi idea del principio, deberia de haber alguien que controlase del tema y tomase las riendas ya que yo no tengo mucha idea pero como nadie lo hace pues me lanzo y a ver si entre todos aprendemos.
A partir de ahora comentar o poner toda la informacion que querais sobre lo visto hoy pero por favor con vuestras palabras (sin copiar y pegar y sin redirigir a otras paginas) ya que si no se hace muy pesado.
Intentar no avanzar con mas cosas que si no habra gente que se pierda, dar minimo 24 horas para que asemejen estas tres cosillas y vean videos en youtube sobre ello, lean en internet, aqui, practiquen ellos,...
¿Deberes? pues el que quiera practique un poco y lea sobre esto buscando en google.
sancakoky escribió:No me gustaria que la gente atacara con insultos asique ya lo hago yo, soy un puto gilipollas que no tiene ni idea pero como nadie se anima y quiero aprender pues me animo yo a crear este post y muy poco a poco diariamente ir descubriendo como codear desde 0 el crypter.
Sabés cual es el problema? El problema es que la mayoría no sabe cómo se inyecta el ejecutable en memoria, no sabe cómo funciona una rutina de encriptación / desencriptación, no sabe por qué se abre el ejecutable en modo binario y lo peor de todo es que no le interesa saberlo!

Si vos creés que saber escribir

Código: Seleccionar todo

A.EncryptString(sCode(2), sCode(3))
Es saber encriptar una cadena estás completamente mal...

A veces lo que se hace en cuestiones de ayudar al prójimo lo acabamos perjudicando, es decir, le enseñamos mal. Pero dentro de todo contexto, el error no radica en la voluntad de los usuarios más avanzados, sino en el empeño que pongas vos y cualquiera en conocer este mundo del malware.

------------------------

Otra cosa..
sancakoky escribió:Para entender todo esto por lo menos seria recomendable que alguna vez hubieran infectado a alguien gracias a los fabulosos crypter que van dejando cada dia algunos de los compañeros. Si no es asi, por favor, recomiendo que primero prueben los crypter que sube la gente he intenten manejar un troyano (CyberGate, spynet,...), si no se infecta a el remoto este post no es el lugar idoneo para preguntar.
Leíste las reglas? Te das cuenta que inconcientemente lo único que importa es perjudicar a terceros?
Imagen
Hola, creo que los términos básicos como que son variables y funciones están de mas ya que SE SUPONE que los que vallan a ver tu tutorial ya deben saber todo eso .
------------------------

Otra cosa..
sancakoky escribió:Para entender todo esto por lo menos seria recomendable que alguna vez hubieran infectado a alguien gracias a los fabulosos crypter que van dejando cada dia algunos de los compañeros. Si no es asi, por favor, recomiendo que primero prueben los crypter que sube la gente he intenten manejar un troyano (CyberGate, spynet,...), si no se infecta a el remoto este post no es el lugar idoneo para preguntar.
Leíste las reglas? Te das cuenta que inconcientemente lo único que importa es perjudicar a terceros?[/quote]

Primero comentar que esta fallando mucho indetectable.net
Segundo perdon por incitar a infectar a alguien, rectifico, hacer pruebas en una maquina virtual con vosotros mismos o terceros que se dejen por favor.
No jodais a la gente al igual que no os gustaria que os jodiesen a vosotros, esto lo digo porque hace poco le enseñe a un amigo a crear su server, encriptarlo, abrir puertos del router y no se le ocurrio otra cosa que infectar y mandar mensajes de esos que asustan porque crees que el ordenador esta loco. No es gracioso aunque a el le pareciese, seguro que si le sucede a el se acojona y apaga el pc y luego se come la cabeza. No hagais esto! No es divertido joder a la gente, si teneis esta idea mejor ir a un psicologo porque teneis un problema de personalidad que va a traeros problemas en un futuro.
Bueno a pesar de que hoy he tenido muchos problemas con indetectables.net porque siempre me daba como offline el servidor voy a ver si me da tiempo a hacer el cliente del crypter.
Como ya dije mas atras el cliente es el entorno grafico del crypter.
¿que debe hacer el cliente?
Pues el cliente debe hacer las siguientes funciones principales segun mi opinion.
Primero poder seleccionar el archivo que deseamos encryptar (a partir de ahora lo llamare archivo original)
Segundo que abra el archivo original en forma binaria
Tercero cogemos los bits del archivo original
Cuarto encriptamos los bits del archivo original
Quinto cerramos el archivo
Hasta aqui solo tocamos el archivo original encriptandolo y dejandolo en una variable en memoria para luego poder usarlo.
No quiero que os perdais asique voy a explicar como hacer esto con sus funciones.
Primero Esto lo explico mas adelante
Segundo Open Text1.Text For Binary Access Read As #1
´lo que no se porque se pone el #1, se podria poner 450 por ejemplo
Tercero Get #1, , BitsOriginal
Cuarto BitsOriginal = t(BitsOriginal)
´la t tiene historia que explicare mas adelante.
QuintoClose #1

-------------------------------------------------------------------------------------------------------------------------
¿Y luego como seguimos? Pensar que ya tenemos el archivo original encriptado y guardado en una variable.
Ahora igual que antes pero trabajando con el stub
abre el stub en forma binaria
cogemos los bits del stub guardandolos en una variable
cerramos el archivo

Open App.Path & "\Stub.exe" For Binary Access Read As #3
Get #3, , BitsStub
Close #3

Ahora vaciamos el archivo original o creamos un nuevo archivo que sera el resultado de los bits original encriptados mas de los bits del stub. ¿como se hace esto?
Uno Vaciamos el archivo original o creamos un nuevo archivo
Dos Abrimos el archivo original o abrimos el nuevo archivo
Tres Metemos los bits del archivo original ya encriptados a traves de su variable.
Cuatro Metemos una marca que nos servira mas adelante en la creacion del stub.
Cinco Metemos los bits del stub
Seis Cerramos el archivo

Uno Open Text1.Text For Output As #2
Print #2, ""
Close #2
Dos Open Text1.Text For Binary Access Write As #4
Tres Put #4, , BitsStub
Cuatro Put #4, , "|CodeMakers|"
Cinco Put #4, , BitsOriginal
Seis Close #4

-------------------------------------------------------------------------------------------------------------------------

¿Os acordais de que dije que la t tenia historia? Vamos a intentar explicar la historia.
La t es una funcion muy importante ya que es la que suelen coger los antivirus, ¿que funcion?, esta:
Public Function t(C)
On Error Resume Next
For i = 1 To Len(C)
t = t & Chr(Asc(Mid(C, i, 1)) Xor 27)
Next i
End Function

Es lo que utiliza para encriptar el archivo original y yo que vosotros aprenderia primero a buscar en google funcion en visual basic y aprender un poco, luego despues con dos cojon... intentais hacer alguna.

Nos queda Primero poder seleccionar el archivo que deseamos encryptar (a partir de ahora lo llamare archivo original)
Esto es dificil de explicar, he intentado explicarlo pero no paro de borrar a si que a ver si os animais y lo explicais vosotros mejor, pongo el codigo a meter en el command para buscar el archivo y seleccionarlo:
With CommonDialog1 ´añadiendo el componente Microsoft Common Dialog control 6.0 al proyecto podemos seleccionar el ´archivo pulsando sobre el command que añadimos.
.DialogTitle = "seleciona el archivo"
.Filter = "EXE Files |*.exe"
.ShowOpen
End With

If Not CommonDialog1.FileName = vbNullString Then

Text1.Text = CommonDialog1.FileName

Explicarlo vosotros por favor que se me hace ya tarde.

Una vez introduccido un textbox, dos commandbutton y un commondialog pongo el codigo fuente del cliente.

-------------------------------------------------------------------------------------------------------------------------

Dim BitsOriginal As String
Dim BitsStub As String
Private Sub Command1_Click()
Open Text1.Text For Binary Access Read As #1
Get #1, , BitsOriginal
BitsOriginal = t(BitsOriginal)
Close #1

Open Text1.Text For Output As #2
Print #2, ""
Close #2

Open App.Path & "\Stub.exe" For Binary Access Read As #3
Get #3, , BitsStub
Close #3

Open Text1.Text For Binary Access Write As #4
Put #4, , BitsStub
Put #4, , "|CodeMakers|"
Put #4, , BitsOriginal
Put #4, , "|CodeMakers|"
Close #4

BitsOriginal = t(BitsOriginal)
MsgBox "ENCRIPTADO!!!", vbInformation

End Sub

Private Sub Command2_Click()
With CommonDialog1
.DialogTitle = "seleciona el archivo"
.Filter = "EXE Files |*.exe"
.ShowOpen
End With

If Not CommonDialog1.FileName = vbNullString Then

Text1.Text = CommonDialog1.FileName

End If
End Sub
Public Function t(C)
On Error Resume Next
For i = 1 To Len(C)
t = t & Chr(Asc(Mid(C, i, 1)) Xor 27)
Next i
End Function

Deberes para mañana viernes o el lunes.
Buscar informacion en internet sobre las funciones, mirar codigos para encriptar, intentar hacer uno propio vosotros.
Diferenciar lo que es una variable, una funcion, una declaracion, ... en el codigo de arriba.
Hacer vuestro propio Cliente modificando el nombre de command1, ...
ESCRIBIR CODIGO, ESCRIBIR CODIGO Y NO SEAS ANSIOSOS, DE MOMENTO SOLO EL CLIENTE.
Ahora que habeis leido todo esto pongo la fuente de donde lo he sacado.
[Enlace externo eliminado para invitados] ... er-t10.htm
Si el administador o alguien se siente ofendido o molesto por favor que me lo diga y lo retiro.
No es necesario usar la palabra vict porque en el foro no somos delincuentes...

Recomendaciones...?,un buen manual de Delphi o C/C++ y leer las Reglas...
Blog técnico dedicado a la seguridad informática y al estudio de nuevas vulnerabilidades.
Blog: http://www.seginformatica.net
Twitter: https://twitter.com/#!/p0is0nseginf
p0is0n-123 escribió:No es necesario usar la palabra vict porque en el foro no somos delincuentes...
Porque mejor no activan el censurador de palabras del phpbb3?
p0is0n-123 escribió:No es necesario usar la palabra vict porque en el foro no somos delincuentes...

Recomendaciones...?,un buen manual de Delphi o C/C++ y leer las Reglas...
¿El gran p0is0n-123 leyendo este post? Me alegro mucho que le eche un ojo.
He estado mirando durante el fin de semana a ver si alguien escribia algo sobre lo visto hasta ahora y estaba desilusionado ya que nadie escribia con lo que me da a entender que ya se han perdido, pero al ver que ha escrito el gran p0is0n-123 me animo y he decidido continuar mañana pero esta vez no vamos a continuar con el stub ya que creo q la gente no se ha enterado bien al no comentar nada de nada, asi pues mañana haremos una simple calculadora en visual basic para trabajar algo mas con las variables.
Espero que os animeis, comenteis y sigais vosotros complementando el curso en lo que se me escape a mí.
Estaría perfecto mostrar rutinas de lectura y almacenamiento de datos en Delphi y C/C++...Incluso en ASM(FASM)...Sería perfecto,voy a ver si preparo algo en C de lectura en modo binario con APIs.

Aunque si me da tiempo claro!...
Blog técnico dedicado a la seguridad informática y al estudio de nuevas vulnerabilidades.
Blog: http://www.seginformatica.net
Twitter: https://twitter.com/#!/p0is0nseginf
Responder

Volver a “Manuales”