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 - ahaugas

#1
bueno una parte ya esta solucionado, solo tengo que corregir un pequeño problemilla que me queda:

la encriptacion y desencriptacion funciona correctamente al pasar los argumentos, sin embargo solo lee las 2 primeras caracteres introducidas.

que puede estar fallando?
utilizo el argv[2], que es el argumento con el que opero la contraseña

Citar
   const int size = 32;
   unsigned char aesKey[size];
   char* p;

   for (int i = 1; i < argc || i < size; ++i)
   {
      aesKey = (unsigned char)strtol(argv[2], &p, 16);
   }

gracias
#2
bueno lo que quiero es que me lea la clave desde donde esta aesKey, en forma hexadecimal o en normal da igual. (la idea era hacerlo igual)

en forma estatica me lee la clave bien tanto para cifrar como descifrar, pero si lo pongo con un argumento para que sea dinamica al cifrar me lo cifra pero no descifra bien.

esto es lo que tengo, es mas o menos la instruccion mas completa no voy a poner todo por que ocupa como unas tres paginas y creo que con esto es suficiente.

segun las modificaciones que he hecho funciona a medias con tu ayuda, pero muchas gracias por tu esfuerzo.


//*********** Check the arguments ************
if (argv[2] == NULL)
{
help();
return 0;
}
//******************************************************
puts("Desecriptando...");


//****************** AES decryption ********************
unsigned char aesKey[32];    // <----------------------|
//        |
//Aqui se copia todo lo que hay en argv[2] a aesKey ---|
memcpy(aesKey,argv[2],32);

unsigned char *buf;

aes256_context ctx;
aes256_init(&ctx, aesKey);

for (unsigned long i = 0; i < lSize/16; i++) {
buf = text + (i * 16);
aes256_decrypt_ecb(&ctx, buf);
}

aes256_done(&ctx);
//******************************************************



no sale del todo bien, y no se donde puede estar el fallo, si fuera php ya lo tendria resuelto.
#3
gracias me faltaba .text al final y un espacio entremedias

asi me funciona correctamente

proces.StartInfo.Arguments = txtSourceFile.Text + " " + Password1.Text
#4
hola queria saber o si me pueden orientar a pasar una cadena char que obtengo desde un argumento a una cadena constant char en forma hexadecimal.

de c++ se bastante poco

lo que obtengo mediante un argumento

unsigned char mensaje[32];
strncpy((char *) mensaje, argv[2], 32);


el constant char esta definido con una clave por defecto pero me gustaria sustituirlo por uno dinamico al obtener por el argumento citado arriba.


unsigned char aesKey[32] = {
0x53, 0x28, 0x40, 0x6e, 0x2f, 0x64, 0x63, 0x5d, 0x2d, 0x61, 0x77, 0x40, 0x76, 0x71, 0x77, 0x28,
0x74, 0x61, 0x7d, 0x66, 0x61, 0x73, 0x3b, 0x5d, 0x66, 0x6d, 0x3c, 0x3f, 0x7b, 0x66, 0x72, 0x36
};


la idea es obtener:

unsigned char mensaje[32];
strncpy((char *) mensaje, argv[2], 32);

unsigned char aesKey[32] = mensaje (hexadecimal);


gracias
si tienen alguna duda o correccion porfavor pregunten o hagan alguna sugerencia
#5
ya lo he intentado pero me dice que el operador + no esta definido para los tipos "string" y Windows.System.Forms.TextBox

yo de todas formas de visual basic se muy poco la otra opcion seria unir dos campos de texto pero no se como
#6
hola estoy haciendo un encriptador con forma grafica, el archivo original lo hago en c++ en modo consola pasandole los argumentos tipo msdos.

utilizo visual basic 2010 proffesional

al ejecutar el programa lo hago de la siguiente forma


                        'Abrimos el proceso y mandamos el archivo
                        Dim proces As New Process()
                        proces.StartInfo.FileName = "MyDecrypter.exe"
                        proces.StartInfo.Arguments = txtSourceFile.Text
                        'proces.StartInfo.UseShellExecute = False
                        'proces.StartInfo.RedirectStandardInput = True
                        'proces.StartInfo.RedirectStandardOutput = True
                        'proces.StartInfo.CreateNoWindow = False
                        proces.Start()


esto trozo me funciona correctamente pero al añadir otro textbox con las variables ya no funciona tal que asi:


proces.StartInfo.Arguments = txtSourceFile.Text Password1.Text


alguna idea?

gracias
#7
has probado con un firewall que te avise las conexiones con las alertas?
por ejemplo comodo firewall, configuralo para que cualquier tipo de conexion se te avise, te digo porque este firewall es muy bueno.

o como dicen mas arriba wireshark, puedes hacer un filtro de tcpip de tu maquina para descartar conexiones locales y despues por http ftp o ssh... u tros...o optaria por http.

otra opcion seria el resource hacker o el win32dasm ya que CASI NADIE LE PROGRAMA ANTIS...

si el resource hacker te dice que el ejecutable esta protegido con compresores de EXE usa el upx para descomprimirlo...

como puedes ver hay un monton de tecnicas muy sencillas...... y muchas mas
#8
bueno esto ya esta resuelto,
tal y como dije las medidas de seguridad que he implementado al código funcionan de maravilla aparte de cambiar las rutas de acceso.

tanto en windows xp como windows 7 la ejecucion normal tampoco pide permiso para ejecutarlo luego automaticamente se une al proceso del stub el archivo que esta dentro del stub y coge permisos administrativos saltandose la seguridad uac.

seguire haciendo la otra parte del programa que es la de cargar modulos si no existen... tipo radia y software manager de hp.

bueno gracias
#9
lo que he hecho por ahora es implementar anti emuladores de sandbox, anti debbugers, anti dessemblers y anti maquinas virtuales y por ahora parece que no me lo pone en la sandbox tambien he aumentado el sleep() de 3000 a 5000 y seria ver si en mi maquina ejecutarlo en modo administrador salta el aviso o no, pero por ahora parece que va bien.
#10
ok

se podria hacer algo como....:
¿si esta en un sandbox de un av que no lo ejecute o que ejecute otra cosa? porque no solo es avast si no tambien gdata, o aumentar el tiempo del sleep aunque es una muy mala idea ya que pueden tener tambien el escaner de comportamiento.

he pensado en un certificado digital pero no me convenció la idea al principio y si no queda otra pues lo tendre que hacer si no hay mas ideas.

gracias