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

 

 


Tema destacado: Tutorial básico de Quickjs


  Mostrar Mensajes
Páginas: [1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1  Programación / Ingeniería Inversa / Ing inversa código sobre VxWorks en: 4 Julio 2018, 18:50 pm
Necesito información para sacar el código de alguna aplicación en este tipo de sistemas operativos. Más concretamente para depurar un binario de un PCC B&R. Sé que el entorno de programación utiliza gcc y gdb para la depuración. Los objetos generados son .o pero no he encontrado ningún tipo de información sobre los binarios de estos PCC (.br) y con un editor hexadecimal, en principio no se parecen a nada que haya visto en sistemas operativos convencionales.

Por lo que he leido estos sistemas operativos suelen compartir el espacio de memoria de modo que un task podría leer información del resto. Si alguien sabe algo sobre esto también me sería de ayuda.

Cualquier información que sirva para iniciarme en el funcionamiento, la programación y la depuración de binarios en este tipo de sistemas (tanto el VxWorks como la implementación del fabricante) sería muy agradecida y de mucha ayuda.

Gracias de antemano.

Sa1uDoS

EDIT: Si a alguien más le interesa el proyecto podría facilitarle binarios y un software básico, a modo de crackme para pruebas.
2  Programación / Programación C/C++ / Re: Duda Programa Sencillo (simulación) en: 2 Abril 2015, 19:08 pm
Ahí tienes una mezcla rara de C y C++.

Me ha parecido buena idea para practicar un poco con clases intentar hacer la simulación, aquí os lo dejo, todavía quedan cosas.

Código
  1. #include <iostream>
  2. #include <cstdlib>
  3.  
  4. using namespace std;
  5.  
  6. class Arbol
  7. {
  8. public:
  9. Arbol(int x, int y): quemado(false) {p_x=x;p_y=y;};
  10. void fuego(){quemado=true;};
  11. int p_x, p_y;
  12. bool quemado;
  13. };
  14.  
  15. class Bosque
  16. {
  17. public:
  18. Bosque(int a);
  19. void Llenar(float probabilidad);
  20. void iniciar_incendio();
  21. ~Bosque();
  22. private:
  23. int elementos;
  24. void incendio(int x, int y);
  25. Arbol ***matriz;
  26. };
  27.  
  28. Bosque::Bosque(int a)
  29. {
  30. elementos=a;
  31. matriz=new Arbol**[a];
  32. for(int i=0;i<=a;i++)
  33. matriz[i]=new Arbol*[a];
  34. }
  35.  
  36. void Bosque::Llenar(float probabilidad)
  37. {
  38. int x, y;
  39. float i;
  40. srand(time(NULL));
  41.  
  42. for(i=elementos*elementos*probabilidad;i>0;i--)
  43. {
  44. do
  45. {
  46. x=rand()%elementos;
  47. y=rand()%elementos;
  48. }while(matriz[x][y] != NULL);
  49. matriz[x][y]=new Arbol(x,y);
  50. }
  51. }
  52.  
  53. void Bosque::iniciar_incendio()
  54. {
  55. int x, y;
  56.  
  57. do
  58. {
  59. x=rand()%elementos;
  60. y=rand()%elementos;
  61. }while(matriz[x][y] == NULL);
  62.  
  63. incendio(x, y);
  64. }
  65.  
  66. void Bosque::incendio(int x, int y)
  67. {
  68. int i, j;
  69. for(i=-1;i<=1;i++)
  70. {
  71. for(j=-1;j<=1;j++)
  72. {
  73. if(((x+i)>=0 && (x+i)<elementos) && ((y+j)>=0 && (y+j)<elementos))
  74. {
  75. if(matriz[x+i][y+j]!=NULL&&matriz[x+i][y+j]->quemado==false)
  76. {
  77. matriz[x+i][y+j]->fuego();
  78. incendio(x+i, y+j);
  79. }
  80. }
  81. }
  82. }
  83. }
  84.  
  85. Bosque::~Bosque()
  86. {
  87. int i;
  88. for(i=0;i<elementos;i++)
  89. for(int j=0;j<elementos;j++)
  90. delete matriz[i][j];
  91. for(i=0;i<elementos;i++)
  92. delete[] matriz[i];
  93. delete[] matriz;
  94. }
  95.  
  96. int main()
  97. {
  98. Bosque bosque(10);
  99. bosque.Llenar(0.3);
  100.  
  101. bosque.iniciar_incendio();
  102.  
  103. return 0;
  104. }
  105.  

Sa1uDoS
3  Programación / Ingeniería Inversa / Re: [KeygenMe] Matrix en: 28 Marzo 2015, 23:40 pm
Ahí va el código del KeygenMe :).

http://pastebin.com/dV100yjg

Muy buen trabajo ViejoMajara, me gustaría ver un tutorial.

¿Opiniones? Os ha gustado? Ingenioso? Difícil?

Sa1uDoS
4  Programación / Ingeniería Inversa / Re: [KeygenMe] Matrix en: 27 Marzo 2015, 12:41 pm
Ahora solo tienes que hacer lo siguiente:
Como un keygen genera pass para un determinado usuario, ya sabes lo que valen las sumas del usuario.

Ahora tienes 9 incógnitas y una ecuación, dejas todo en función de 1 variable y generas las otras para sacar todas las soluciones.

Tienes que tener en cuenta que, para simplificar, todas las variables tienen que estar en el intervalo [97,122]

Sa1uDoS
5  Programación / Ingeniería Inversa / Re: [KeygenMe] Matrix en: 26 Marzo 2015, 18:59 pm
¡Hola!

Con los datos que habéis ido reseñando, he comprobado que disponiendo el nombre y la clave en forma matricial de 3x3 y multiplicándolas, la suma de los valores de la matriz obtenida es el valor que se compara con 4CDFB.

...

Ahora voy a repasar mis antiguos conocimientos de matrices para ver si, conociendo el valor del producto de dos matrices y una de ellas se puede sacar la otra.

Saludos

Multiplicándolas en forma matricial, eso es :).

No se puede sacar la otra, es un sistema con muchas más incógnitas que ecuaciones, 3x3=9 incógnitas frente a una única ecuación, se da un sistema compatible indeterminado :P.

Sigue por ahí que ya has hecho lo más difícil, ya sólo te queda resolver la parafernalia matemática y crear un pequeño código que calcule las soluciones posibles :).

Sa1uDoS
6  Programación / Ingeniería Inversa / Re: [KeygenMe] Matrix en: 25 Marzo 2015, 17:44 pm
Venga, que una vez sacada la relación el Keygen es una estupidez, además hay como 3000 contraseñas válidas por usuario.

Quiero que me digáis si os ha gustado.

Sa1uDoS
7  Programación / Ingeniería Inversa / Re: [KeygenMe] Matrix en: 25 Marzo 2015, 15:55 pm
mr blood tiene razón,se puede hacer por ejemplo si usan como usuario zzzzzzzzz y clave zzzzzzzz ya sabemos que son 9 caracteres para cada uno, el valor obtenido al final es mucho mayor que el buscado, pero me da problemas para cualquier usuario, tiene que ser muy especifico ya que la diferencia entre los valores de los caracteres es de 138 14b y 13f lo cual dificulta encontrar un serial válido para cualquiera. yo usando tincopasa (ni siquiera puedo usar mi nick completo, con eeppnnppp me paso del valor buscado y después la convinación no me permite seguir porque me paso o me quedo corto con el valor final, así que tendré que inventar un usuario, pero ya deja de ser keygen

ahhhh y supongo que lo de matrix es por usar matrices para la resolución.

Eres el que más se ha acercado momento.

Y sí, por ahí van los tiros.

EDITO:

el análisis de mcksys está incompleto, lo que el hizo es básicamente el principio, para mi es como resolver una matriz de a.b donde a y b tienen 9 elementos ubicados en cada matriz con 3 columnas y 3 filas, por lo que las operaciones se repiten 3 veces. soy muy malo para explicar.

Cada vez afinas un poco más xD.

Sa1uDoS
8  Programación / Ingeniería Inversa / Re: [KeygenMe] Matrix en: 25 Marzo 2015, 15:10 pm
No seré quien se meta con sus resultados, pero reitero que existe, al menos, una pareja usuario contraseña utilizando caracteres en el intervalo a-z en minúsculas.

Lo que puso MCKSys no concuerda con el código que yo hice.

Sa1uDoS
9  Programación / Ingeniería Inversa / Re: [KeygenMe] Matrix en: 25 Marzo 2015, 14:20 pm
La verdad es que no pensé demasiado en como generar las claves, pero aseguro que al menos tiene un usuario y contraseña válidos, sólo con minúsculas.

Sa1uDoS
10  Programación / Ingeniería Inversa / [KeygenMe] Matrix en: 24 Marzo 2015, 18:46 pm
Aquí os dejo un KeygenMe, espero que os guste. Está programado en C++ no sé que nivel de dificultad decir que tiene, para crackearlo será nivel 0, pero el reto es hacer un keygen :).

https://mega.co.nz/#!CBdAyZhS!nhpX7Mji2TzPJSk3JAGlSttlsxQFX-h_kVnSLa1r9Ag

SaluDoS
Páginas: [1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines