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


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


  Mostrar Mensajes
Páginas: 1 ... 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 [83] 84 85 86 87 88 89 90 91 92 93 94
821  Programación / Ingeniería Inversa / Re: (Consulta) cambiar la crc32 De una dll Y de la code section en: 7 Diciembre 2016, 21:08 pm
(...)Quiero hacer que la crc del archivo cambie, y aparte, quiero hacer que la crc de la code section cambie, con qué programas y como

Con crear una función que "no haga nada" :silbar:, la llamás en la dll y luego la modificás vos creando un programa que lea y escriba la sección ".text", busque esa función y luego la modifique :P


B#
822  Programación / Programación C/C++ / Re: Duda, CS 1.6, codes en: 6 Diciembre 2016, 06:42 am
Hola, bueno quiero plantear mi duda ya que estoy empezando en el tema y por ahí alguno pueda saber responderme.
El tema es que quiero hacer algo simple para poder entender en el CS 1.6, teniendo por ejemplo un nospread y un norecoil, sus 2 respectivos codes (.h y .cpp), que hago después de ya tenerlos.
Me refiero a que hago con ellos para juntarlos, en una dll para poder cargarlos en el CS 1.6. Como los "junto" porque no se como se diría, y con que programa.
Ya si pueden tomarse un tiempito para responderme les agradezco.  :rolleyes:

Se las pone en funciones interceptadas por el juego, normalmente en los hook de CL_CreateMove y HUD_PostRunCmd...

FastEDIT: Esto debería ir en C/C++...


B#
823  Programación / .NET (C#, VB.NET, ASP) / Re: Adaptar código de C++ deLinux a C# de Windows en: 5 Diciembre 2016, 06:47 am
(...)Para los que entiendan bien el C++ bajoj Linux, quiero hacer esta aplicación en Windows bajo C#.(...)
Al menos quiero saber que archivos hay que adaptarlo, haber si cojo el truco. Funciona en modo consola.
Hay partes del programa que si puedo,como los if else, switch y demás, lo sencillo, en cuanto a otros aspecto no lo veo en C# ni loco.

solo viendo este archivo

https://github.com/fbriere/linux-dexdrive/blob/master/dexdrive.c

tienes más problemas que simplemente traducirlo... y es traducir a windows las librerías base de linux o conseguir compatibles...

No eso no es lo peor: uno es un ejecutable (compilando dexattach.c) que asumiendo que "pueda" convertirlo a la lógica de C# va a depender del otro archivo que es un driver de linux (compilando dexdrive.c) que a su vez lo tiene que adaptar para drivers de windows y .NET no tiene capacidad alguna de generar un driver...

Como poder adaptarlo a Windows aclaro que se puede, pero no es simplemente modificando if y elses nomás...


B#
824  Programación / Programación General / Re: [OpenCL] ¿Cómo instalarlo? {Ubuntu 14} en: 29 Noviembre 2016, 08:27 am
Tengo una R7 250X, y estoy en Ubuntu 14 antes usaba el 16 pero pensé que cambiadome a Ubuntu 14 compilaría el driver, ... y no fue el caso.
Los bajé de acá http://support.amd.com/en-us/download, pero no compilan, recuerdo que uno lo hice compilar pero cuando iniciaba sesión me volvía a pedir la contraseña, es decir no iniciaba la sesión


¿Qué podría intentar hacer? Ya probé varias cosas.

Podrías probar el tutorial de Penguins Recordings que es para ubuntu 16.04 solamente para tu posible caso. Digo posible porque vos tenés una placa que capaz no la soporte el mínimo dice R7 260X, aunque capaz con suerte te lo permita... :silbar:


B#
825  Sistemas Operativos / GNU/Linux / Re: Failed to load Ldlinux.c32 (Kali linux ayuda) en: 29 Octubre 2016, 09:06 am
(...)Al instante sale ese aviso, Failed to load ldlinux.c32. Y ya.(...)

Lo primero que me sale en google al buscar ese mensaje...  ;-)
https://www.youtube.com/watch?v=fSDwuAqZK1Y


B#
826  Programación / Ingeniería Inversa / Re: Ayuda con ollydbg en: 20 Octubre 2016, 13:32 pm
(...)BloodSharp, si no he entendido mal la solución del CALL no sería viable enotnces?(...)
Para este caso no... en otras situaciones capaz que si...

(...)MCKSys, la solucion que me comentas de activar el flag para que pase la igualdad (entiendo que  la idea es hacer que esta igualdad siempre se cumple (strcmp(password, "PARIS")==0)) me parece buena idea, lo que no entiendo es como "NOPear esa instrucción".(...)

Lo que él te sugiere sería equivalente a hacer algo como esto:

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. void passwordOK();
  6.  
  7. int main()
  8. {
  9. char password[4];
  10. int isOK = 0;
  11. int i =0;
  12. while(isOK == 0 && i<3)
  13. {
  14. i++;
  15. printf("Password: ");
  16. gets(password);
  17. strcmp(password, "PARIS");
  18. isOK = 1;
  19. };
  20. if (isOK ==1)
  21. {
  22. passwordOK();
  23. }
  24. else
  25. {
  26. printf("ERROR: 3 passwords NOT OK\n");
  27. system("PAUSE");
  28. }
  29. return 0;
  30. }
  31.  
  32. __declspec(noinline)void passwordOK()
  33. {
  34.     printf("Password OK\n ");
  35.     system("PAUSE");
  36. }

...pero solo modificando el ejecutable así:

Link de imagen




B#

827  Programación / Ingeniería Inversa / Re: Ayuda con ollydbg en: 20 Octubre 2016, 01:51 am
Revisa el código. Saltar a ése printf en particular no rompe nada pues no PUSHea nada al stack, lo usa directamente.
Ahora, si usas un CALL como pones, ahí sí romperás el stack y tendrás una excepción.

Saludos!

Si cierto, mala mía :P ahí revisé bien el código y efectivamentelo el caller se va a cualquier lado.
Poniendo el call igual muestra el mensaje pero cuando termina la rutina passwordOK explota, además que el call es más largo que el jmp short :S (5bytes vs 2bytes).
Lo compilé en mingw (sin optimizaciones) y quedó identico...
Dejo las rutinas completas:

Código
  1. 00401340 <testcode.sub_401340>       | 55                       | push ebp                                |
  2. 00401341                             | 89 E5                    | mov ebp,esp                             |
  3. 00401343                             | 83 E4 F0                 | and esp,FFFFFFF0                        |
  4. 00401346                             | 83 EC 20                 | sub esp,20                              |
  5. 00401349                             | E8 72 06 00 00           | call testcode.4019C0                    |
  6. 0040134E                             | C7 44 24 1C 00 00 00 00  | mov dword ptr ss:[esp+1C],0             |
  7. 00401356                             | C7 44 24 18 00 00 00 00  | mov dword ptr ss:[esp+18],0             |
  8. 0040135E                             | EB 4B                    | jmp testcode.4013AB                     |
  9. 00401360                             | 83 44 24 18 01           | add dword ptr ss:[esp+18],1             |
  10. 00401365                             | C7 04 24 24 30 40 00     | mov dword ptr ss:[esp],testcode.403024  | 403024:"Password: "
  11. 0040136C                             | E8 BF 08 00 00           | call <testcode.printf>                  |
  12. 00401371                             | 8D 44 24 14              | lea eax,dword ptr ss:[esp+14]           |
  13. 00401375                             | 89 04 24                 | mov dword ptr ss:[esp],eax              |
  14. 00401378                             | E8 BB 08 00 00           | call <testcode.gets>                    |
  15. 0040137D                             | C7 44 24 04 2F 30 40 00  | mov dword ptr ss:[esp+4],testcode.40302 | 40302F:"PARIS"
  16. 00401385                             | 8D 44 24 14              | lea eax,dword ptr ss:[esp+14]           |
  17. 00401389                             | 89 04 24                 | mov dword ptr ss:[esp],eax              |
  18. 0040138C                             | E8 AF 08 00 00           | call <testcode.strcmp>                  |
  19. 00401391                             | 85 C0                    | test eax,eax                            |
  20. 00401393                             | 75 0A                    | jne testcode.40139F                     |
  21. 00401395                             | C7 44 24 1C 01 00 00 00  | mov dword ptr ss:[esp+1C],1             |
  22. 0040139D                             | EB 0C                    | jmp testcode.4013AB                     |
  23. 0040139F                             | C7 04 24 35 30 40 00     | mov dword ptr ss:[esp],testcode.403035  | 403035:"Password NOT OK"
  24. 004013A6                             | E8 9D 08 00 00           | call <testcode.puts>                    |
  25. 004013AB                             | 83 7C 24 1C 00           | cmp dword ptr ss:[esp+1C],0             |
  26. 004013B0                             | 75 07                    | jne testcode.4013B9                     |
  27. 004013B2                             | 83 7C 24 18 02           | cmp dword ptr ss:[esp+18],2             |
  28. 004013B7                             | 7E A7                    | jle testcode.401360                     |
  29. 004013B9                             | 83 7C 24 1C 01           | cmp dword ptr ss:[esp+1C],1             |
  30. 004013BE                             | 75 07                    | jne testcode.4013C7                     |
  31. 004013C0                             | E8 21 00 00 00           | call <testcode.sub_4013E6>              |
  32. 004013C5                             | EB 18                    | jmp testcode.4013DF                     |
  33. 004013C7                             | C7 04 24 45 30 40 00     | mov dword ptr ss:[esp],testcode.403045  | 403045:"ERROR: 3 passwords NOT OK"
  34. 004013CE                             | E8 75 08 00 00           | call <testcode.puts>                    |
  35. 004013D3                             | C7 04 24 5F 30 40 00     | mov dword ptr ss:[esp],testcode.40305F  | 40305F:"PAUSE"
  36. 004013DA                             | E8 71 08 00 00           | call <testcode.system>                  |
  37. 004013DF                             | B8 00 00 00 00           | mov eax,0                               |
  38. 004013E4                             | C9                       | leave                                   |
  39. 004013E5                             | C3                       | ret                                     |
  40. 004013E6 <testcode.sub_4013E6>       | 55                       | push ebp                                |
  41. 004013E7                             | 89 E5                    | mov ebp,esp                             |
  42. 004013E9                             | 83 EC 18                 | sub esp,18                              |
  43. 004013EC                             | C7 04 24 65 30 40 00     | mov dword ptr ss:[esp],testcode.403065  | 403065:"Password OK\n "
  44. 004013F3                             | E8 38 08 00 00           | call <testcode.printf>                  |
  45. 004013F8                             | C7 04 24 5F 30 40 00     | mov dword ptr ss:[esp],testcode.40305F  | 40305F:"PAUSE"
  46. 004013FF                             | E8 4C 08 00 00           | call <testcode.system>                  |
  47. 00401404                             | C9                       | leave                                   |
  48. 00401405                             | C3                       | ret                                     |


B#
828  Programación / Ingeniería Inversa / Re: Ayuda con ollydbg en: 19 Octubre 2016, 07:40 am
Imagino que estoy equivocado pero mirando bien lo que me me comentáis me da la impresión que si lo cambio a
 00401393         JMP  004013EC lo que hace es mostrar por pantalla el ok pero no ejecuta la función que comentaba, no??

Salta directamente al printf de la otra función y mostrara password correcta, pero estoy casi seguro que va a fallar el programa cuando llegue a una instrucción ret


B#
829  Programación / Ingeniería Inversa / Re: Ayuda con ollydbg en: 19 Octubre 2016, 07:36 am
00401393           75 0A          JNZ SHORT pac1.0040139F

a
 00401393         JMP  004013EC
Hola!

Como ha colocado apuromafo, si modificas el salto de 00401393 para que salte siempre (cambiar el JNZ por JMP), aceptará cualquier password (incluída la correcta).

Saludos!

En mi preferencia a ese código hay que tener cuidado... sobre todo porque se salta directo ahí al printf de otra función y la stack es distinta aparentemente y cuando el caller apunte a cualquier lado puff...

yo reemplazaría ahí
Código
  1. 00401393           75 0A          JNZ SHORT pac1.0040139F
por
Código
  1. call 004013E6


B#
830  Sistemas Operativos / GNU/Linux / Re: Gnu/linux libre o no en: 1 Octubre 2016, 07:54 am
(...)Bien veamos de forma simple ¿seria bueno aprender y desarrollar en un sistema en un sistema certificado por la FSF que es completamente Open Source o usar aquellos no certificados que combinan ambos?(...)

Prueba armarte un sistema LFS/BLFS, ese lo armás desde cero a tu gusto desde código fuente completo...

http://www.linuxfromscratch.org/


B#
Páginas: 1 ... 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 [83] 84 85 86 87 88 89 90 91 92 93 94
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines