Page 1 sur 1

CrackMe TestCrypto WannaCrypt - 5 Ko

MessagePosté: 23 Juin 2017, 09:29
par virevolte
Bonsoir tout le monde, besoin de votre aide svp
Linux 64bit - pour cette fois, Il s’agit d’un programme qui crypt tous fichiers passé en argument et le renomme automatiquement du genre text.txt deviendra text.txt-1494939104.crypt. Avec la fonction srand qui se base sur le nombre de seconde écoulé depuis j'anvier 1970 00H00
Voilà le programme de Test : http://mtnb.be/TestCrypto.rar
le but c'était de trouver un moyen de renverser le chiffrement de CryptoLocker.

Comment inversé du coup la fonction peut être srand pour obtenir l’effet inverse c’est-à-dire pour que tous les fichiers passé en arguments soient décrypter et non crypter. :|
objdump -d ./TestCrypto
Code: Tout sélectionner
Test Crypto:     format de fichier elf64-x86-64


Déassemblage de la section .init:

00000000000007f0 <.init>:
 7f0:   48 83 ec 08             sub    $0x8,%rsp
 7f4:   48 8b 05 e5 17 20 00    mov    0x2017e5(%rip),%rax        # 201fe0 <rand@plt+0x201700>
 7fb:   48 85 c0                test   %rax,%rax
 7fe:   74 02                   je     802 <puts@plt-0x1e>
 800:   ff d0                   callq  *%rax
 802:   48 83 c4 08             add    $0x8,%rsp
 806:   c3                      retq   

Déassemblage de la section .plt:

0000000000000810 <puts@plt-0x10>:
 810:   ff 35 f2 17 20 00       pushq  0x2017f2(%rip)        # 202008 <rand@plt+0x201728>
 816:   ff 25 f4 17 20 00       jmpq   *0x2017f4(%rip)        # 202010 <rand@plt+0x201730>
 81c:   0f 1f 40 00             nopl   0x0(%rax)

0000000000000820 <puts@plt>:
 820:   ff 25 f2 17 20 00       jmpq   *0x2017f2(%rip)        # 202018 <rand@plt+0x201738>
 826:   68 00 00 00 00          pushq  $0x0
 82b:   e9 e0 ff ff ff          jmpq   810 <puts@plt-0x10>

0000000000000830 <fclose@plt>:
 830:   ff 25 ea 17 20 00       jmpq   *0x2017ea(%rip)        # 202020 <rand@plt+0x201740>
 836:   68 01 00 00 00          pushq  $0x1
 83b:   e9 d0 ff ff ff          jmpq   810 <puts@plt-0x10>

0000000000000840 <strlen@plt>:
 840:   ff 25 e2 17 20 00       jmpq   *0x2017e2(%rip)        # 202028 <rand@plt+0x201748>
 846:   68 02 00 00 00          pushq  $0x2
 84b:   e9 c0 ff ff ff          jmpq   810 <puts@plt-0x10>

0000000000000850 <__stack_chk_fail@plt>:
 850:   ff 25 da 17 20 00       jmpq   *0x2017da(%rip)        # 202030 <rand@plt+0x201750>
 856:   68 03 00 00 00          pushq  $0x3
 85b:   e9 b0 ff ff ff          jmpq   810 <puts@plt-0x10>

0000000000000860 <printf@plt>:
 860:   ff 25 d2 17 20 00       jmpq   *0x2017d2(%rip)        # 202038 <rand@plt+0x201758>
 866:   68 04 00 00 00          pushq  $0x4
 86b:   e9 a0 ff ff ff          jmpq   810 <puts@plt-0x10>

0000000000000870 <snprintf@plt>:
 870:   ff 25 ca 17 20 00       jmpq   *0x2017ca(%rip)        # 202040 <rand@plt+0x201760>
 876:   68 05 00 00 00          pushq  $0x5
 87b:   e9 90 ff ff ff          jmpq   810 <puts@plt-0x10>

0000000000000880 <fgetc@plt>:
 880:   ff 25 c2 17 20 00       jmpq   *0x2017c2(%rip)        # 202048 <rand@plt+0x201768>
 886:   68 06 00 00 00          pushq  $0x6
 88b:   e9 80 ff ff ff          jmpq   810 <puts@plt-0x10>

0000000000000890 <fputc@plt>:
 890:   ff 25 ba 17 20 00       jmpq   *0x2017ba(%rip)        # 202050 <rand@plt+0x201770>
 896:   68 07 00 00 00          pushq  $0x7
 89b:   e9 70 ff ff ff          jmpq   810 <puts@plt-0x10>

00000000000008a0 <srand@plt>:
 8a0:   ff 25 b2 17 20 00       jmpq   *0x2017b2(%rip)        # 202058 <rand@plt+0x201778>
 8a6:   68 08 00 00 00          pushq  $0x8
 8ab:   e9 60 ff ff ff          jmpq   810 <puts@plt-0x10>

00000000000008b0 <time@plt>:
 8b0:   ff 25 aa 17 20 00       jmpq   *0x2017aa(%rip)        # 202060 <rand@plt+0x201780>
 8b6:   68 09 00 00 00          pushq  $0x9
 8bb:   e9 50 ff ff ff          jmpq   810 <puts@plt-0x10>

00000000000008c0 <fopen@plt>:
 8c0:   ff 25 a2 17 20 00       jmpq   *0x2017a2(%rip)        # 202068 <rand@plt+0x201788>
 8c6:   68 0a 00 00 00          pushq  $0xa
 8cb:   e9 40 ff ff ff          jmpq   810 <puts@plt-0x10>

00000000000008d0 <exit@plt>:
 8d0:   ff 25 9a 17 20 00       jmpq   *0x20179a(%rip)        # 202070 <rand@plt+0x201790>
 8d6:   68 0b 00 00 00          pushq  $0xb
 8db:   e9 30 ff ff ff          jmpq   810 <puts@plt-0x10>

00000000000008e0 <rand@plt>:
 8e0:   ff 25 92 17 20 00       jmpq   *0x201792(%rip)        # 202078 <rand@plt+0x201798>
 8e6:   68 0c 00 00 00          pushq  $0xc
 8eb:   e9 20 ff ff ff          jmpq   810 <puts@plt-0x10>

Déassemblage de la section .plt.got:

00000000000008f0 <.plt.got>:
 8f0:   ff 25 02 17 20 00       jmpq   *0x201702(%rip)        # 201ff8 <rand@plt+0x201718>
 8f6:   66 90                   xchg   %ax,%ax

Déassemblage de la section .text:

0000000000000900 <.text>:
 900:   31 ed                   xor    %ebp,%ebp
 902:   49 89 d1                mov    %rdx,%r9
 905:   5e                      pop    %rsi
 906:   48 89 e2                mov    %rsp,%rdx
 909:   48 83 e4 f0             and    $0xfffffffffffffff0,%rsp
 90d:   50                      push   %rax
 90e:   54                      push   %rsp
 90f:   4c 8d 05 7a 04 00 00    lea    0x47a(%rip),%r8        # d90 <rand@plt+0x4b0>
 916:   48 8d 0d 03 04 00 00    lea    0x403(%rip),%rcx        # d20 <rand@plt+0x440>
 91d:   48 8d 3d 83 03 00 00    lea    0x383(%rip),%rdi        # ca7 <rand@plt+0x3c7>
 924:   ff 15 ae 16 20 00       callq  *0x2016ae(%rip)        # 201fd8 <rand@plt+0x2016f8>
 92a:   f4                      hlt   
 92b:   0f 1f 44 00 00          nopl   0x0(%rax,%rax,1)
 930:   48 8d 3d 59 17 20 00    lea    0x201759(%rip),%rdi        # 202090 <rand@plt+0x2017b0>
 937:   48 8d 05 59 17 20 00    lea    0x201759(%rip),%rax        # 202097 <rand@plt+0x2017b7>
 93e:   55                      push   %rbp
 93f:   48 29 f8                sub    %rdi,%rax
 942:   48 89 e5                mov    %rsp,%rbp
 945:   48 83 f8 0e             cmp    $0xe,%rax
 949:   76 15                   jbe    960 <rand@plt+0x80>
 94b:   48 8b 05 7e 16 20 00    mov    0x20167e(%rip),%rax        # 201fd0 <rand@plt+0x2016f0>
 952:   48 85 c0                test   %rax,%rax
 955:   74 09                   je     960 <rand@plt+0x80>
 957:   5d                      pop    %rbp
 958:   ff e0                   jmpq   *%rax
 95a:   66 0f 1f 44 00 00       nopw   0x0(%rax,%rax,1)
 960:   5d                      pop    %rbp
 961:   c3                      retq   
 962:   0f 1f 40 00             nopl   0x0(%rax)
 966:   66 2e 0f 1f 84 00 00    nopw   %cs:0x0(%rax,%rax,1)
 96d:   00 00 00
 970:   48 8d 3d 19 17 20 00    lea    0x201719(%rip),%rdi        # 202090 <rand@plt+0x2017b0>
 977:   48 8d 35 12 17 20 00    lea    0x201712(%rip),%rsi        # 202090 <rand@plt+0x2017b0>
 97e:   55                      push   %rbp
 97f:   48 29 fe                sub    %rdi,%rsi
 982:   48 89 e5                mov    %rsp,%rbp
 985:   48 c1 fe 03             sar    $0x3,%rsi
 989:   48 89 f0                mov    %rsi,%rax
 98c:   48 c1 e8 3f             shr    $0x3f,%rax
 990:   48 01 c6                add    %rax,%rsi
 993:   48 d1 fe                sar    %rsi
 996:   74 18                   je     9b0 <rand@plt+0xd0>
 998:   48 8b 05 51 16 20 00    mov    0x201651(%rip),%rax        # 201ff0 <rand@plt+0x201710>
 99f:   48 85 c0                test   %rax,%rax
 9a2:   74 0c                   je     9b0 <rand@plt+0xd0>
 9a4:   5d                      pop    %rbp
 9a5:   ff e0                   jmpq   *%rax
 9a7:   66 0f 1f 84 00 00 00    nopw   0x0(%rax,%rax,1)
 9ae:   00 00
 9b0:   5d                      pop    %rbp
 9b1:   c3                      retq   
 9b2:   0f 1f 40 00             nopl   0x0(%rax)
 9b6:   66 2e 0f 1f 84 00 00    nopw   %cs:0x0(%rax,%rax,1)
 9bd:   00 00 00
 9c0:   80 3d c9 16 20 00 00    cmpb   $0x0,0x2016c9(%rip)        # 202090 <rand@plt+0x2017b0>
 9c7:   75 27                   jne    9f0 <rand@plt+0x110>
 9c9:   48 83 3d 27 16 20 00    cmpq   $0x0,0x201627(%rip)        # 201ff8 <rand@plt+0x201718>
 9d0:   00
 9d1:   55                      push   %rbp
 9d2:   48 89 e5                mov    %rsp,%rbp
 9d5:   74 0c                   je     9e3 <rand@plt+0x103>
 9d7:   48 8b 3d aa 16 20 00    mov    0x2016aa(%rip),%rdi        # 202088 <rand@plt+0x2017a8>
 9de:   e8 0d ff ff ff          callq  8f0 <rand@plt+0x10>
 9e3:   e8 48 ff ff ff          callq  930 <rand@plt+0x50>
 9e8:   5d                      pop    %rbp
 9e9:   c6 05 a0 16 20 00 01    movb   $0x1,0x2016a0(%rip)        # 202090 <rand@plt+0x2017b0>
 9f0:   f3 c3                   repz retq
 9f2:   0f 1f 40 00             nopl   0x0(%rax)
 9f6:   66 2e 0f 1f 84 00 00    nopw   %cs:0x0(%rax,%rax,1)
 9fd:   00 00 00
 a00:   48 8d 3d e1 13 20 00    lea    0x2013e1(%rip),%rdi        # 201de8 <rand@plt+0x201508>
 a07:   48 83 3f 00             cmpq   $0x0,(%rdi)
 a0b:   75 0b                   jne    a18 <rand@plt+0x138>
 a0d:   e9 5e ff ff ff          jmpq   970 <rand@plt+0x90>
 a12:   66 0f 1f 44 00 00       nopw   0x0(%rax,%rax,1)
 a18:   48 8b 05 c9 15 20 00    mov    0x2015c9(%rip),%rax        # 201fe8 <rand@plt+0x201708>
 a1f:   48 85 c0                test   %rax,%rax
 a22:   74 e9                   je     a0d <rand@plt+0x12d>
 a24:   55                      push   %rbp
 a25:   48 89 e5                mov    %rsp,%rbp
 a28:   ff d0                   callq  *%rax
 a2a:   5d                      pop    %rbp
 a2b:   e9 40 ff ff ff          jmpq   970 <rand@plt+0x90>
 a30:   55                      push   %rbp
 a31:   48 89 e5                mov    %rsp,%rbp
 a34:   48 8d a4 24 d0 ef ff    lea    -0x1030(%rsp),%rsp
 a3b:   ff
 a3c:   48 83 0c 24 00          orq    $0x0,(%rsp)
 a41:   48 8d a4 24 20 10 00    lea    0x1020(%rsp),%rsp
 a48:   00
 a49:   48 89 7d f8             mov    %rdi,-0x8(%rbp)
 a4d:   48 8b 45 f8             mov    -0x8(%rbp),%rax
 a51:   48 89 c7                mov    %rax,%rdi
 a54:   b8 00 00 00 00          mov    $0x0,%eax
 a59:   e8 02 fe ff ff          callq  860 <printf@plt>
 a5e:   bf 01 00 00 00          mov    $0x1,%edi
 a63:   e8 68 fe ff ff          callq  8d0 <exit@plt>
 a68:   55                      push   %rbp
 a69:   48 89 e5                mov    %rsp,%rbp
 a6c:   48 8d a4 24 a0 ee ff    lea    -0x1160(%rsp),%rsp
 a73:   ff
 a74:   48 83 0c 24 00          orq    $0x0,(%rsp)
 a79:   48 8d a4 24 20 10 00    lea    0x1020(%rsp),%rsp
 a80:   00
 a81:   48 89 bd d8 fe ff ff    mov    %rdi,-0x128(%rbp)
 a88:   48 89 b5 d0 fe ff ff    mov    %rsi,-0x130(%rbp)
 a8f:   48 89 95 c8 fe ff ff    mov    %rdx,-0x138(%rbp)
 a96:   64 48 8b 04 25 28 00    mov    %fs:0x28,%rax
 a9d:   00 00
 a9f:   48 89 45 f8             mov    %rax,-0x8(%rbp)
 aa3:   31 c0                   xor    %eax,%eax
 aa5:   48 8d 95 f0 fe ff ff    lea    -0x110(%rbp),%rdx
 aac:   b8 00 00 00 00          mov    $0x0,%eax
 ab1:   b9 20 00 00 00          mov    $0x20,%ecx
 ab6:   48 89 d7                mov    %rdx,%rdi
 ab9:   f3 48 ab                rep stos %rax,%es:(%rdi)
 abc:   48 8b 85 c8 fe ff ff    mov    -0x138(%rbp),%rax
 ac3:   89 c7                   mov    %eax,%edi
 ac5:   e8 d6 fd ff ff          callq  8a0 <srand@plt>
 aca:   48 8b 8d c8 fe ff ff    mov    -0x138(%rbp),%rcx
 ad1:   48 8b 95 d0 fe ff ff    mov    -0x130(%rbp),%rdx
 ad8:   48 8d 85 f0 fe ff ff    lea    -0x110(%rbp),%rax
 adf:   49 89 c8                mov    %rcx,%r8
 ae2:   48 89 d1                mov    %rdx,%rcx
 ae5:   48 8d 15 bc 02 00 00    lea    0x2bc(%rip),%rdx        # da8 <rand@plt+0x4c8>
 aec:   be 00 01 00 00          mov    $0x100,%esi
 af1:   48 89 c7                mov    %rax,%rdi
 af4:   b8 00 00 00 00          mov    $0x0,%eax
 af9:   e8 72 fd ff ff          callq  870 <snprintf@plt>
 afe:   48 8d 85 f0 fe ff ff    lea    -0x110(%rbp),%rax
 b05:   48 89 c6                mov    %rax,%rsi
 b08:   48 8d 3d a5 02 00 00    lea    0x2a5(%rip),%rdi        # db4 <rand@plt+0x4d4>
 b0f:   b8 00 00 00 00          mov    $0x0,%eax
 b14:   e8 47 fd ff ff          callq  860 <printf@plt>
 b19:   48 8d 85 f0 fe ff ff    lea    -0x110(%rbp),%rax
 b20:   48 8d 35 a0 02 00 00    lea    0x2a0(%rip),%rsi        # dc7 <rand@plt+0x4e7>
 b27:   48 89 c7                mov    %rax,%rdi
 b2a:   e8 91 fd ff ff          callq  8c0 <fopen@plt>
 b2f:   48 89 85 e8 fe ff ff    mov    %rax,-0x118(%rbp)
 b36:   48 83 bd e8 fe ff ff    cmpq   $0x0,-0x118(%rbp)
 b3d:   00
 b3e:   75 0c                   jne    b4c <rand@plt+0x26c>
 b40:   48 8d 3d 82 02 00 00    lea    0x282(%rip),%rdi        # dc9 <rand@plt+0x4e9>
 b47:   e8 e4 fe ff ff          callq  a30 <rand@plt+0x150>
 b4c:   c6 85 e1 fe ff ff 00    movb   $0x0,-0x11f(%rbp)
 b53:   48 8b 85 d0 fe ff ff    mov    -0x130(%rbp),%rax
 b5a:   48 89 c7                mov    %rax,%rdi
 b5d:   e8 de fc ff ff          callq  840 <strlen@plt>
 b62:   89 85 e4 fe ff ff       mov    %eax,-0x11c(%rbp)
 b68:   eb 50                   jmp    bba <rand@plt+0x2da>
 b6a:   e8 71 fd ff ff          callq  8e0 <rand@plt>
 b6f:   88 85 e3 fe ff ff       mov    %al,-0x11d(%rbp)
 b75:   0f b6 85 e2 fe ff ff    movzbl -0x11e(%rbp),%eax
 b7c:   32 85 e3 fe ff ff       xor    -0x11d(%rbp),%al
 b82:   89 c1                   mov    %eax,%ecx
 b84:   0f be 85 e3 fe ff ff    movsbl -0x11d(%rbp),%eax
 b8b:   99                      cltd   
 b8c:   f7 bd e4 fe ff ff       idivl  -0x11c(%rbp)
 b92:   89 d0                   mov    %edx,%eax
 b94:   48 63 d0                movslq %eax,%rdx
 b97:   48 8b 85 d0 fe ff ff    mov    -0x130(%rbp),%rax
 b9e:   48 01 d0                add    %rdx,%rax
 ba1:   0f b6 00                movzbl (%rax),%eax
 ba4:   31 c8                   xor    %ecx,%eax
 ba6:   0f be c0                movsbl %al,%eax
 ba9:   48 8b 95 e8 fe ff ff    mov    -0x118(%rbp),%rdx
 bb0:   48 89 d6                mov    %rdx,%rsi
 bb3:   89 c7                   mov    %eax,%edi
 bb5:   e8 d6 fc ff ff          callq  890 <fputc@plt>
 bba:   48 8b 85 d8 fe ff ff    mov    -0x128(%rbp),%rax
 bc1:   48 89 c7                mov    %rax,%rdi
 bc4:   e8 b7 fc ff ff          callq  880 <fgetc@plt>
 bc9:   88 85 e2 fe ff ff       mov    %al,-0x11e(%rbp)
 bcf:   80 bd e2 fe ff ff ff    cmpb   $0xff,-0x11e(%rbp)
 bd6:   75 92                   jne    b6a <rand@plt+0x28a>
 bd8:   48 8b 85 e8 fe ff ff    mov    -0x118(%rbp),%rax
 bdf:   48 89 c7                mov    %rax,%rdi
 be2:   e8 49 fc ff ff          callq  830 <fclose@plt>
 be7:   48 8d 85 f0 fe ff ff    lea    -0x110(%rbp),%rax
 bee:   48 89 c6                mov    %rax,%rsi
 bf1:   48 8d 3d eb 01 00 00    lea    0x1eb(%rip),%rdi        # de3 <rand@plt+0x503>
 bf8:   b8 00 00 00 00          mov    $0x0,%eax
 bfd:   e8 5e fc ff ff          callq  860 <printf@plt>
 c02:   90                      nop
 c03:   48 8b 45 f8             mov    -0x8(%rbp),%rax
 c07:   64 48 33 04 25 28 00    xor    %fs:0x28,%rax
 c0e:   00 00
 c10:   74 05                   je     c17 <rand@plt+0x337>
 c12:   e8 39 fc ff ff          callq  850 <__stack_chk_fail@plt>
 c17:   c9                      leaveq
 c18:   c3                      retq   
 c19:   55                      push   %rbp
 c1a:   48 89 e5                mov    %rsp,%rbp
 c1d:   48 8d a4 24 c0 ef ff    lea    -0x1040(%rsp),%rsp
 c24:   ff
 c25:   48 83 0c 24 00          orq    $0x0,(%rsp)
 c2a:   48 8d a4 24 20 10 00    lea    0x1020(%rsp),%rsp
 c31:   00
 c32:   48 89 7d e8             mov    %rdi,-0x18(%rbp)
 c36:   48 8b 45 e8             mov    -0x18(%rbp),%rax
 c3a:   48 89 c6                mov    %rax,%rsi
 c3d:   48 8d 3d ac 01 00 00    lea    0x1ac(%rip),%rdi        # df0 <rand@plt+0x510>
 c44:   b8 00 00 00 00          mov    $0x0,%eax
 c49:   e8 12 fc ff ff          callq  860 <printf@plt>
 c4e:   48 8b 45 e8             mov    -0x18(%rbp),%rax
 c52:   48 8d 35 aa 01 00 00    lea    0x1aa(%rip),%rsi        # e03 <rand@plt+0x523>
 c59:   48 89 c7                mov    %rax,%rdi
 c5c:   e8 5f fc ff ff          callq  8c0 <fopen@plt>
 c61:   48 89 45 f8             mov    %rax,-0x8(%rbp)
 c65:   48 83 7d f8 00          cmpq   $0x0,-0x8(%rbp)
 c6a:   75 0c                   jne    c78 <rand@plt+0x398>
 c6c:   48 8d 3d 56 01 00 00    lea    0x156(%rip),%rdi        # dc9 <rand@plt+0x4e9>
 c73:   e8 b8 fd ff ff          callq  a30 <rand@plt+0x150>
 c78:   bf 00 00 00 00          mov    $0x0,%edi
 c7d:   e8 2e fc ff ff          callq  8b0 <time@plt>
 c82:   48 89 c2                mov    %rax,%rdx
 c85:   48 8b 4d e8             mov    -0x18(%rbp),%rcx
 c89:   48 8b 45 f8             mov    -0x8(%rbp),%rax
 c8d:   48 89 ce                mov    %rcx,%rsi
 c90:   48 89 c7                mov    %rax,%rdi
 c93:   e8 d0 fd ff ff          callq  a68 <rand@plt+0x188>
 c98:   48 8b 45 f8             mov    -0x8(%rbp),%rax
 c9c:   48 89 c7                mov    %rax,%rdi
 c9f:   e8 8c fb ff ff          callq  830 <fclose@plt>
 ca4:   90                      nop
 ca5:   c9                      leaveq
 ca6:   c3                      retq   
 ca7:   55                      push   %rbp
 ca8:   48 89 e5                mov    %rsp,%rbp
 cab:   48 8d a4 24 c0 ef ff    lea    -0x1040(%rsp),%rsp
 cb2:   ff
 cb3:   48 83 0c 24 00          orq    $0x0,(%rsp)
 cb8:   48 8d a4 24 20 10 00    lea    0x1020(%rsp),%rsp
 cbf:   00
 cc0:   89 7d ec                mov    %edi,-0x14(%rbp)
 cc3:   48 89 75 e0             mov    %rsi,-0x20(%rbp)
 cc7:   83 7d ec 01             cmpl   $0x1,-0x14(%rbp)
 ccb:   7f 0c                   jg     cd9 <rand@plt+0x3f9>
 ccd:   48 8d 3d 34 01 00 00    lea    0x134(%rip),%rdi        # e08 <rand@plt+0x528>
 cd4:   e8 57 fd ff ff          callq  a30 <rand@plt+0x150>
 cd9:   48 8d 3d 48 01 00 00    lea    0x148(%rip),%rdi        # e28 <rand@plt+0x548>
 ce0:   e8 3b fb ff ff          callq  820 <puts@plt>
 ce5:   c7 45 fc 01 00 00 00    movl   $0x1,-0x4(%rbp)
 cec:   eb 23                   jmp    d11 <rand@plt+0x431>
 cee:   8b 45 fc                mov    -0x4(%rbp),%eax
 cf1:   48 98                   cltq   
 cf3:   48 8d 14 c5 00 00 00    lea    0x0(,%rax,8),%rdx
 cfa:   00
 cfb:   48 8b 45 e0             mov    -0x20(%rbp),%rax
 cff:   48 01 d0                add    %rdx,%rax
 d02:   48 8b 00                mov    (%rax),%rax
 d05:   48 89 c7                mov    %rax,%rdi
 d08:   e8 0c ff ff ff          callq  c19 <rand@plt+0x339>
 d0d:   83 45 fc 01             addl   $0x1,-0x4(%rbp)
 d11:   8b 45 fc                mov    -0x4(%rbp),%eax
 d14:   3b 45 ec                cmp    -0x14(%rbp),%eax
 d17:   7c d5                   jl     cee <rand@plt+0x40e>
 d19:   b8 00 00 00 00          mov    $0x0,%eax
 d1e:   c9                      leaveq
 d1f:   c3                      retq   
 d20:   41 57                   push   %r15
 d22:   41 56                   push   %r14
 d24:   41 89 ff                mov    %edi,%r15d
 d27:   41 55                   push   %r13
 d29:   41 54                   push   %r12
 d2b:   4c 8d 25 a6 10 20 00    lea    0x2010a6(%rip),%r12        # 201dd8 <rand@plt+0x2014f8>
 d32:   55                      push   %rbp
 d33:   48 8d 2d a6 10 20 00    lea    0x2010a6(%rip),%rbp        # 201de0 <rand@plt+0x201500>
 d3a:   53                      push   %rbx
 d3b:   49 89 f6                mov    %rsi,%r14
 d3e:   49 89 d5                mov    %rdx,%r13
 d41:   4c 29 e5                sub    %r12,%rbp
 d44:   48 83 ec 08             sub    $0x8,%rsp
 d48:   48 c1 fd 03             sar    $0x3,%rbp
 d4c:   e8 9f fa ff ff          callq  7f0 <puts@plt-0x30>
 d51:   48 85 ed                test   %rbp,%rbp
 d54:   74 20                   je     d76 <rand@plt+0x496>
 d56:   31 db                   xor    %ebx,%ebx
 d58:   0f 1f 84 00 00 00 00    nopl   0x0(%rax,%rax,1)
 d5f:   00
 d60:   4c 89 ea                mov    %r13,%rdx
 d63:   4c 89 f6                mov    %r14,%rsi
 d66:   44 89 ff                mov    %r15d,%edi
 d69:   41 ff 14 dc             callq  *(%r12,%rbx,8)
 d6d:   48 83 c3 01             add    $0x1,%rbx
 d71:   48 39 dd                cmp    %rbx,%rbp
 d74:   75 ea                   jne    d60 <rand@plt+0x480>
 d76:   48 83 c4 08             add    $0x8,%rsp
 d7a:   5b                      pop    %rbx
 d7b:   5d                      pop    %rbp
 d7c:   41 5c                   pop    %r12
 d7e:   41 5d                   pop    %r13
 d80:   41 5e                   pop    %r14
 d82:   41 5f                   pop    %r15
 d84:   c3                      retq   
 d85:   90                      nop
 d86:   66 2e 0f 1f 84 00 00    nopw   %cs:0x0(%rax,%rax,1)
 d8d:   00 00 00
 d90:   f3 c3                   repz retq

Déassemblage de la section .fini:

0000000000000d94 <.fini>:
 d94:   48 83 ec 08             sub    $0x8,%rsp
 d98:   48 83 c4 08             add    $0x8,%rsp
 d9c:   c3                      retq   

Re: CrackMe TestCrypto WannaCrypt - 5 Ko

MessagePosté: 26 Juin 2017, 08:06
par etherlord
Cryptolocker utilise du chiffrement RSA. La plupart des ransomwares utilisent des chiffrements récents utilisant un couple clé publique - clé privée, et le chiffrement n'est lancé que lorsque la clé privée peut être communiquée au serveur de commande.

Il y a des cas ou des bugs d'implémentation ont permis la création d'outils pouvant déchiffrer le contenu, mais dans le cas d'une implémentation bien faite, excepté lorsqu'on récupère des éléments liés à la clé privée, on ne peut pas revenir en arrière aussi simplement.

L'exercice peut être intéressant mais je doute que tu déchiffre du cryptolocker en reverser la fonction random...

etherlord

Re: CrackMe TestCrypto WannaCrypt - 5 Ko

MessagePosté: 18 Juillet 2017, 00:53
par virevolte
j'ai déja résolu l'épreuve. c'est bien la fonction sran qu'il faut comprendre pour resoudre l'epreuve.
merci.