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

#61
MCKSys Argentina lo hizo Checkmate en su primer post

Máximo ahora es reproducir su código en otros lenguajes

algo como Linux.....

Código (bash) [Seleccionar]
#!/bin/bash

alfa1=0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
alfa2=AHyukjsdfkjsdfnPQU5xWERY67345aq9nFyR
alfa3=o3zYzaI1982Tv2FasgjkkjhkjlJt5Dpe32Ax

username=`echo "${1}" | tr '[a-z]' '[A-Z]'`
ini=0
size=${#1}

           serial="${username:$ini:1}"
           serial=`echo "${serial}" | tr '[0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ]' '[AHyukjsdfkjsdfnPQU5xWERY67345aq9nFyR]'`
           let ini=$ini+1
           serial="${username:$ini:1}"
           serial=`echo "${serial}" | tr '[0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ]' '[o3zYzaI1982Tv2FasgjkkjhkjlJt5Dpe32Ax]'`



Pero creo que ha terminado el desafío
Felicitaciones

Saludos
#62
¡Hola Sr. MCKSys Argentina.

Lo que define el final del lazo  while vuelta >= 0: ?
No estoy entendiendo


Saludos

#63
Geovane = snj92YF-1211005067 = Good Boy :)

Saludos
#64
¡Hola

¿Qué modelo de clave?
Windows?
32 o 64?


Saludos
#65
Cita de: MCKSys Argentina en 15 Enero 2019, 17:46 PM
Te recomiendo debuggear con x64dbg


Ola, también te recomiendo p52sarup .

tengo una amplia experiencia con IDA en binarios .ELF (Linux), sin embargo, x64dbg es mi elección cuando se trata de binarios PE.

saludos
#66
   ¿Podría WhatsApp estar exponiendo tus mensajes?

        Sí, este es el propósito principal de las redes sociales, poseer y vender información.


La información es poder
El poder es dinero

Saludos y cuidado con las redes  :o
#67
Foro Libre / Re: ¿Remedio gatuno?
14 Enero 2019, 23:01 PM
¡Hola

Solución muy simple

Puesto que su gato también quiere programar, basta con dar una computadora a él.
Usted sólo tiene que poner una mesa, un poco lejos, a causa del cigarrillo.


Saludos
#68
Ingeniería Inversa / Re: KeyGenME fary - v1.0
14 Enero 2019, 22:21 PM
Hello friends

Hasta ahora tenemos un keygen que busca el primer serial válido.
Tenemos uno que busca mediante fuerza bruta


¿Dónde está lo que busca la contraseña correcta?

Recuerda a los amigos (ver los bits !!!)


Tengo la solución, voy a publicar si nadie encuentra.

Saludos.

#69
Cita de: karmany en  9 Enero 2019, 09:51 AM
Un adversario con los conocimientos y el equipamiento necesario podría llegar a reconstruir parte de la información gracias a técnicas que permiten distinguir entre si el dato era un 0 o un 1 convertido a 0"

Muchas gracias
No lo sabía, esta información es muy importante.


Saludos
#70
Ingeniería Inversa / Re: KeyGenME fary - v1.0
13 Enero 2019, 19:13 PM
Gracias karmany por compartir, realmente tiempo es un problema, cuando el desafío exige mucho tiempo de nosotros

Aquí esta Keygen
Parece que "reinventó la rueda", con las funciones ....

El propósito y analizar lo más profundo posible en la lógica
Pero tiene como mejorar mucho el código.
Agradecimientos especiales a todos los que participaron en este desafío.
Aprendí mucho, con todos.

¿Quién puede mejorar el código, favor dice

Código (delphi) [Seleccionar]
function HexToBin(Hex: String): String;
var
  Bin: String;
  k: Byte;
Begin
  Bin:='';
  For k:=1 to Length(Hex) do
     if      Hex[k]='0' then Bin:=Bin+'0000'
     else if Hex[k]='1' then Bin:=Bin+'0001'
     else if Hex[k]='2' then Bin:=Bin+'0010'
     else if Hex[k]='3' then Bin:=Bin+'0011'
     else if Hex[k]='4' then Bin:=Bin+'0100'
     else if Hex[k]='5' then Bin:=Bin+'0101'
     else if Hex[k]='6' then Bin:=Bin+'0110'
     else if Hex[k]='7' then Bin:=Bin+'0111'
     else if Hex[k]='8' then Bin:=Bin+'1000'
     else if Hex[k]='9' then Bin:=Bin+'1001'
     else if Hex[k]='A' then Bin:=Bin+'1010'
     else if Hex[k]='B' then Bin:=Bin+'1011'
     else if Hex[k]='C' then Bin:=Bin+'1100'
     else if Hex[k]='D' then Bin:=Bin+'1101'
     else if Hex[k]='E' then Bin:=Bin+'1110'
     else if Hex[k]='F' then Bin:=Bin+'1111';
  HexToBin:=Bin;
End;

function BinToHex(Bin: String): String;

var
  k: Byte;
  s: String;
  Hex: String;
Begin
  Hex:='';
  While Length(Bin) mod 4<>0 do Bin:='0'+Bin;
  For k:=0 to Length(Bin) div 4 -1 do
  Begin
     s:=Copy(Bin,k*4+1,4);
     if      s='0000' then s:='0'
     else if s='0001' then s:='1'
     else if s='0010' then s:='2'
     else if s='0011' then s:='3'
     else if s='0100' then s:='4'
     else if s='0101' then s:='5'
     else if s='0110' then s:='6'
     else if s='0111' then s:='7'
     else if s='1000' then s:='8'
     else if s='1001' then s:='9'
     else if s='1010' then s:='A'
     else if s='1011' then s:='B'
     else if s='1100' then s:='C'
     else if s='1101' then s:='D'
     else if s='1110' then s:='E'
     else if s='1111' then s:='F';
     Hex:=Hex+s;
  End;
  BinToHex:=Hex;
End;

function StrToHex(Str: String): Integer;
var
  Hex:Integer;
Begin

  if (str.Length=7) Then
  Begin
       str:='0' + str;
  end;

  if (str.Length=6) Then
  Begin
       str:='00' + str;
  end;

  Hex:=       (strToInt(copy(Str,1,1))*128);
  Hex:= Hex + (strToInt(copy(Str,2,1))*64);
  Hex:= Hex + (strToInt(copy(Str,3,1))*32);
  Hex:= Hex + (strToInt(copy(Str,4,1))*16);
  Hex:= Hex + (strToInt(copy(Str,5,1))*8);
  Hex:= Hex + (strToInt(copy(Str,6,1))*4);
  Hex:= Hex + (strToInt(copy(Str,7,1))*2);
  Hex:= Hex + (strToInt(copy(Str,8,1))*1);
  StrToHex:=Hex;
end;

function shLeft(Str:String;N:integer): String;
var
  s:String;
Begin
        s:=copy(Str,N+1,32-N)+copy(Str,1,N);
        shLeft:=s;
  end;

procedure TForm1.Button1Click(Sender: TObject);
     var
        A,B:String;
        C:Integer;
Label
rotacionar,ciclo;
                     //F6C53333    Caractere >=32 <=126  $20 $7E
begin
     A:= 'F6C53333';
     B:= HexToBin(A);

     ciclo:
     // 8 bits
     C:= strToHex(copy(B,25,8));
     IF (C>31) and (C<127) Then
     Begin
       Edit1.text:= (intTohex(C,2)) + Edit1.text ;
       B:= (Copy(B,1,24)) + '00000000';
       GOTO rotacionar;
     end;  // fin 8 bits


     //7 bits
     C:= strToHex(copy(B,26,7));
     IF (C>31) and (C<127) Then
     Begin
       Edit1.text:= (intTohex(C,2)) + Edit1.text;
       B:= (Copy(B,1,25)) + '0000000';
       GOTO rotacionar;
     end;   //fin 7 bits


     //6 bits  (Con 6 bits positivos no passa valor $7E  No precisa testar con 5)
     C:= strToHex(copy(B,27,6));
     IF (C>31) and (C<127) Then
     Begin
       Edit1.text:=  (intTohex(C,2)) + Edit1.text;
       B:= (Copy(B,1,26)) + '000000';
       GOTO rotacionar;
     end;    //fin 6 bits


     rotacionar:
     IF ((Copy(B,1,32)) <> '00000000000000000000000000000000') Then
     begin
       B:=shLeft(B,13);
       goto ciclo;
      //Showmessage(B);
     end;
end;                        


Esto se basa en la lógica que ya he posteado

F6C53333      11110110110001010011001100110011
                                                                         110011 33---3
                     11110110110001010011001100000000
                     10100110011000000001111011011000 58---X
                                                               
                     10100110011000000001111010000000
                     00000011110100000001010011001100 4C---L
                                                                 
                     00000011110100000001010010000000
                     00000010100100000000000001111010 7A---z
                                                     
                     00000010100100000000000000000000
                                                           0000001010010 52---R  

RzLX3


En texto, función, después al final .......

Código (delphi) [Seleccionar]
Function HexToStr(s: String): String;
Var i: Integer;
Begin
 Result:=''; i:=1;
 While i<Length(s) Do Begin
   Result:=Result+Chr(StrToIntDef('$'+Copy(s,i,2),0));
   Inc(i,2);
 End;
End;


Código (delphi) [Seleccionar]
Showmessage(hexTostr(Edit1.text));

Fary ¡Muy bueno su codigo, excelente desafío !!!!!

Actualización 1

Usted puede intentar con otro valor.
Pero el valor necesita estar correctamente construido, mediante función inversa!


Para evitar este error, antes rotacionar:
¿Por qué con 6 bits no encontró valor válido !!!!



Código (delphi) [Seleccionar]

    Showmessage('¡Hummmm, valor incorrecto !!!!!');
    rotacionar:
     IF ((Copy(B,1,32)) <> '00000000000000000000000000000000') Then
     begin
       B:=shLeft(B,13);
       goto ciclo;
      //Showmessage(B);
     end;




Gracias, Saludos