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

 

 


Tema destacado: Estamos en la red social de Mastodon


  Mostrar Mensajes
Páginas: 1 [2] 3
11  Programación / Programación General / Re: Principiante en: 31 Marzo 2022, 18:41 pm
Aprende C, es básico y con ese se te puede facilitar todos los lenguajes de programación.

Ya cuando hayas aprendido, puedes moverte a otro lenguaje que te funcioné mejor, y ya solo será acostumbrarse al cambio y no a tener que aprender desde cero "todo" otra vez.
12  Programación / Programación General / Consejo sobre multiplataforma para programar gráficos. en: 31 Marzo 2022, 17:51 pm
Buenas.

Espero se encuentren muy bien, tengo una pregunta sobre multiplataforma.

¿Qué GUI me recomiendan que sea multiplataforma, o por lo menos compatible con linux y windows?.

Les cuento, estoy haciendo un programa que funciona por separado, una versión que sirva en windows y otra que sirva en linux, pero quisiera hacerlo compatible con los dos, pero, con gráficos.

Como todos ya saben, se puede en modo consola usando las definiciones win32 o linux, pero como quiero colocarle una ventana para su funcionamiento, no sé cual lenguaje de programación me funcionaría mejor.

Al principio pensé en el básico java, pero me desespera un poco cuando sale una actualización, porque puede que no pasé nada como puede que haya partes del código que ya no funcionen y tengo que estar actualizando y buscando y preguntando que puedo hacer y no soy full java.

Después pensé en C# pero al parecer es solo para windows, después python con gtk, aunque si es complicado los HBOX y VBOX, que si no sabes acomodar los objetos en cada caja, es un desastre la ventana, pero igual sí funciona, pues nimodo, me esforzaré. Y ya no sé cual más.

Espero me puedan aconsejar que lenguaje de programación me ayudaría a hacer una aplicación multiplataforma para que los gráficos funcionen en las dos plataformas aunque tenga que definir por separado en el código que parte va a funcionar en cada plataforma.

Saludos.
13  Programación / Programación C/C++ / Re: fread me muestra algunos hexadecimales de forma incorrecta en: 2 Febrero 2022, 18:37 pm
Vale, tienes razón, ya lo arreglé.

Gracias por los links.  ;D
14  Programación / Programación C/C++ / fread me muestra algunos hexadecimales de forma incorrecta en: 2 Febrero 2022, 05:47 am
Hola

Dos preguntas, cuando intento sacar los hexadecimales de un binario, utilizando fopen y fseek, me aparecen unos de forma extraña, por ejemplo:

0xaf 0x3c 0xffffffa9 0x4c.... 0xbc 0xaf 0xffffff4c...etc.

¿A que se debe esto?

Citar
0xffffffa9 .... 0xffffff4c

¿hay alguna forma de evitarlo?

en el printf utilizo, "%02x", pero no entiendo porque me aparecen algunos hexadecimales de esa forma, incluso uso antes memset para dejar el buffer de fread en '\0', pensando que podría algo interferir, pero no, sigue haciendo lo mismo.

También lo verifique con un editor de hexadecimal y si me aparecen los hexadecimales correctos, pero a diferencia del editor, a mi me salen de la forma rara que explique arriba.

Espero me puedan explicar.

Saludos.

15  Programación / Programación C/C++ / Re: ¿Me pueden explicar unas dudas sobre ReadProcessMemory? en: 23 Enero 2022, 17:56 pm
Ok gracias.

Al principio no entendí bien el punto 3, parecía adivinanza jeje, pero logré modificarlo y por si las dudas usé GetLastError en VirtualQueryEx, pero no pasó nada malo y ya funciona, o eso parece... el bucle ya se detiene y me muestra el resultado esperado.

Gracias de nuevo Eternal. 
16  Programación / Programación C/C++ / ¿Me pueden explicar unas dudas sobre ReadProcessMemory? en: 23 Enero 2022, 04:09 am
Hola

Estoy haciendo una herramienta para reverse, bueno... un intento de reverse jeje, y leyendo en MSDN encontré que hay funciones que sirven para debugger.

Estoy usando "VirtualQueryEx" y "ReadProcessMemory", pero tengo 3 preguntas, espero me puedan explicar algunos detalles.

Muestro parte del código donde necesito ayuda.

Código:
while(iniAddr < (unsigned char*)sInfo.lpMaximumApplicationAddress){

if(VirtualQueryEx(procPath, iniAddr, &mbI, sizeof(mbI)) != 0){

ddump = (PBYTE)malloc(mbI.RegionSize);

if(mbI.Protect == PAGE_READWRITE && mbI.State == MEM_COMMIT){

ReadProcessMemory(procPath, mbI.BaseAddress, ddump, mbI.RegionSize, &ridbyts);

for(int b = 0; b < ridbyts; b++){

printf("%c", ddump[b]);
}

}

}

Cuando dejo solo while, no tarda nada en terminar la ejecución, ahorita entenderán porque lo menciono.

Al parecer el código funciona bien, me tarde en lograrlo, pero creo funciona, bien, si encuentran algo mal, espero puedan corregirme.

Primera pregunta.

¿ReadProcessMemory, esta bien formulado?, porque buscando información, encontré diferentes maneras de usarlo, por ejemplo, yo utilicé BaseAddress, pero he visto quien a utilizado el buffer de VirtualQueryEx que sería iniAddr.

Segunda pregunta.

En el For, yo utilicé ridbyts, que es readbytes de "ReadProcessMemory", pero he visto que otros utilizan RegionSize, que sería mbI.RegionSize... pero cual sería el indicado, ¿readbytes o RegionSize?.

Tercera pregunta.

Relacionado a la segunda pregunta, con cualquiera de los dos (readbytes o RegionSize), no parece tener fin cuando empieza a mostrar el dumpeo del proceso, al principio no sabía si funcionaba, utilice block de notas, pero lo que había escrito no lo encontré, solo me apareció "Edito de texto", y otras cosas como nombre del archivo y path, etc,.. pero después utilice notepad++ y me salio lo que había escrito en notepad junto con otra pestañas que tenía abierta, lo que significa que funciona el código.

Pero repito, no tiene fin. ¿Creen que lo que hace readprocessmemory es darme tooooodo lo que hay en memoria, o me esta dando toooodo lo que el proceso utiliza en memoria, o el For es tan grande que no solo estoy leyendo el proceso, sino que ademas estoy leyendo cosas que no tienen nada que ver?, o es normal.

Los ejemplos que encuentro casi son parecidos, todo te piden que les especifiques una dirección o en el bloc de notas una frase y cuando el código encuentra la frase se detiene y te dice la dirección en hexadecimal. Y es interesante, pero yo no quiero especificar algo, bueno talvez después, pero ahorita que todavía estoy tratando de entender, quiero ver como debe funcionar consiguiendo el analisis completo.

Espero me puedan ayudar con esas dudas.
17  Comunicaciones / Redes / Re: ¿Què opciones hay para recibir conexiones entrantes si tu ISP no lo permite? en: 20 Diciembre 2021, 15:34 pm
Citar
#!drvy,
ok intentaré lo que mencionas. Y es cierto, no me había puesto a pensar en eso

Citar
Esto no es recomendable. Usa un hosting o un VPS ya sea de pago o gratuito que te permita subir tu página web y tener una IP fija. Usar tu conexión personal para estas cosas trae tiempos de caída anormales y te limita en tu día (imagínate si tienes que reiniciar tu PC, se cae tu web).

Citar
Randomize
si, no tengo de otra, y si puedo, pero no he tenido problemas con el servicio, en twitter se hacen tendencias las otras compañías por sus fallos, y en la que tengo no me ha pasado nada, por eso no me quiero retirar, pero es tedioso tener que discutir con ellos para que al final no me resuelvan nada y en change,org vi comentarios que exigen hasta pagos mas elevados.

Bueno, mientras hago lo que menciona drvy, hablaré con las empresa, sino me tendré que ir a un ciber y poner mi servidor en una de sus computadoras  jaja... NO ES CIERTO, es broma, no me vayan a empezar a buscar porque piensan que voy a poner mi página de jackeos y cryptos y quien sabe que más cosas. Ya hay mucha gente muy paranoica.

Gracias, saludos. 
18  Comunicaciones / Redes / ¿Què opciones hay para recibir conexiones entrantes si tu ISP no lo permite? en: 19 Diciembre 2021, 23:57 pm
Hola

Tengo una pregunta, espero alguien tenga una idea de que podrìa hacer.

Mi ISP me tiene encerrado en un NAT, no me permite conexiones entrantes, ya intente DMZ, abrir puertos, etc... simplemente no se puede.

Ahorita me puse a hacer diseños en Threejs, porque soy un diseñador con gusto por la programaciòn, pero querìa subir una pàgina web donde pudiera mostrar diseños y venderlos si es posible, pero almenos tener evidencias por si hay interesados.

Desafortnadamente nadie puede ver mì pàgina, solo si se conectan a mi router.

Aquì la pregunta. ¿alguien sabe que puedo hacer para recibir conexiones entrantes?, tengo planeado hablar con la empresa, pero descubrì que ya hay incluso un change.org donde se esta pidiendo que abran los puertos, asì que serà algo complicado que me hagan caso.

Pero mientras logro que me hagan caso y me dejen tener conexiones entrantes, quisiear saber si tengo alguna otra opciòn, por ejemplo, ¿se puede con vpn?, lo intentè con datos de celular, pero tambièn me enterè que hay un firewall que tampoco permite conexiones entrantes y no se me ocurre que otra cosa puedo hacer, el objetivo es no tener que pelearme durante dìas y/o tener que cambiar la compañia.

Tal vez no tenga otra opciòn, o pagar un hosting, pero no se si soporten threejs ademàs que no puedo estar pagando màs servicios por ahorita.

Espero hayan opciones e ideas, sino, nimodo, tendrè que hablar con la empresa para que me dejen tener acceso y entradas libres.

Saludos.
19  Programación / ASM / Re: Problema con CreateProcessA en nasm. en: 24 Noviembre 2021, 08:44 am
Código:
No se rompan mucho la cabeza como yo, el problema es solo esto.

mov [r12+104], rcx <---
mov [r12+116], rcx <---
mov [r12+120], dword ecx <----
mov [r12+124], dword ecx <--- la suma de todo es 24


Seguiría 0x50 para el espacio, pero hay que sumar esos 24

Código:
sub rsp, 0x68  <----> 0x50  = rsp+80 + 24 = 0x68
xor r9, r9
lea r9, [r12+104]
mov [rsp+72], r9
lea r9, [r12]
mov [rsp+64], r9
mov [rsp+56], rcx
mov [rsp+48], rcx
mov [rsp+40], rcx
xor rax, rax
inc rax
mov [rsp+32], rax
xor r8, r8
xor r9, r9
xor rax, rax
call r13

Aquí en adelante es ProcessInfo.
Código:
lea r9, [r12+104]
mov [rsp+72], r9

que sería esta parte

Código:
mov [r12+104], rcx
mov [r12+116], rcx
mov [r12+120], dword ecx
mov [r12+124], dword ecx

Aquí en adelante es el inicio de STARTUPINFOA

Código:
lea r9, [r12]
mov [rsp+64], r9

Luego continua un par de null's, hasta InheritHandles = 1

siguen otros null, cmd, otro null y la ejecución de CreateProcessA.

Bueno... muchas gracias por la paciencia y la ayuda. Saludos.




Ya lo logré... después de varios intentos me di cuenta que algo no encajaba con ProcessInfo y el shadow space de CreateProcessA.

Ya funcionó.
20  Programación / ASM / Re: Problema con CreateProcessA en nasm. en: 22 Noviembre 2021, 20:42 pm
Ok, lo voy a seguir revisando. Solo voy a mostrar algo que me di cuenta, tal vez no voy tan mal.

algo que note en el código de C++ fue...

Código:
rsp,0E8h

Eso significa que es un espacio de 0x58 + 0x90 = E8

Otra cosa que note es...

Código:
dword ptr [rsp+70h],68h

No me fije que le estaba asignando 44 pero debería ser 104 = 0x68

Fui siguiendo los registros con los mios y al parecer están bien, el único que me puso en duda es...

Código:
dword ptr [rsp+28h],eax

Pero igual el parametro siguiente es null, así que no veo que perjudique que yo le haya puesto...

Código:
mov [rsp+40], rdx

Pues bueno, así me quedó ahora

Código:
mov r13, rdx

xor rdx, rdx
xor r15, r15
mov edx, 0x646d6361
shr edx, 8
push rdx
mov r15, rsp    ;cmd

xor r12, r12
xor rcx, rcx
xor rdx, rdx
mov rcx, 0x90

lop_nul:
push rdx
loop lop_nul

xor rax, rax
mov al, 0x68

lea r12, [rsp]
mov [r12], dword eax
mov [r12+4], rcx
mov [r12+12], rcx
mov [r12+20], rcx
mov [r12+24], rcx

xor rdx, rdx
mov dl, 255
inc rdx

mov [r12+0x3c], edx
mov [r12+0x50], rdi
mov [r12+0x58], rdi
mov [r12+0x60], rdi


xor rdx, rdx

sub rsp, 0x58

lea r9, [r12]
mov [rsp+64], r9
lea r9, [r12+104]
mov [rsp+72], r9
mov [rsp+56], rdx
mov [rsp+48], rdx
mov [rsp+40], rdx
xor rax, rax
inc rax
mov [rsp+32], rax
xor r8, r8
xor r9, r9
mov rdx, r15
xor rcx, rcx

call r13

Solo por curiosidad pase RCX de 0x78 hasta 0xa0, pero igual no se acomodó el stack xP.

Seguiré pensando que más puedo hacer. Gracias.

 
Páginas: 1 [2] 3
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines