Пытаюсь разгадать x-пазл. Поможете набраться опытом?

Тема в разделе "WASM.BEGINNERS", создана пользователем ajak, 25 авг 2008.

  1. ajak

    ajak New Member

    Публикаций:
    0
    Регистрация:
    24 окт 2007
    Сообщения:
    463
    Код (Text):
    1.  00000000: BA6301                       mov       dx,00163 ;" c"              
    2.  00000003: B409                         mov       ah,009 ;" "                  
    3.  00000005: CD21                         int       021                          
    4.  00000007: B40A                         mov       ah,00A ;" "                  
    5.  00000009: BA7B01                       mov       dx,0017B ;" {"              
    6.  0000000C: CD21                         int       021                          
    7.  0000000E: BA7801                       mov       dx,00178 ;" x"              
    8.  00000011: B409                         mov       ah,009 ;" "                  
    9.  00000013: CD21                         int       021                          
    10.  00000015: EB0A                         jmps     000000021   -------- (1)    
    11.  00000017: 155DD4                       adc       ax,0D45D ;"Ф]"              
    12.  0000001A: 06                           push      es                          
    13.  0000001B: C602B6                       mov       b,[bp][si],0B6 ;"¶"          
    14.  0000001E: 14F8                         adc       al,0F8 ;"ш"                  
    15.  00000020: 24BE                         and       al,0BE ;"ѕ"                  
    16.  00000022: 0000                         add       [bx][si],al                  
    17.  00000024: B90900                       mov       cx,00009 ;"  "              
    18.  00000027: 8A9C0001                     mov       bl,[si][00100]              
    19.  0000002B: 009C1701                     add       [si][00117],bl              
    20.  0000002F: 8ABC7D01                     mov       bh,[si][0017D]              
    21.  00000033: 30BC6301                     xor       [si][00163],bh              
    22.  00000037: 8084630199                   add       b,[si][00163],099 ;"™"      
    23.  0000003C: 46                           inc       si
    24.  0000003D: E2E8                         loop      000000027   -------- (1)    
    25.  0000003F: FC                           cld                                    
    26.  00000040: 8D361701                     lea       si,[00117]                  
    27.  00000044: 8D3E6301                     lea       di,[00163]                  
    28.  00000048: B90900                       mov       cx,00009 ;"  "              
    29.  0000004B: F3A6                         repe      cmpsb                        
    30.  0000004D: E302                         jcxz      000000051   -------- (2)    
    31.  0000004F: 7508                         jne       000000059   -------- (3)    
    32.  00000051: B409                         mov       ah,009 ;" "                  
    33.  00000053: BA6D01                       mov       dx,0016D ;" m"              
    34.  00000056: CD21                         int       021                          
    35.  00000058: C3                           retn                                  
    36.  00000059: B409                         mov       ah,009 ;" "                  
    37.  0000005B: BA7101                       mov       dx,00171 ;" q"              
    38.  0000005E: CD21                         int       021                          
    39.  00000060: C3                           retn                                  
    40.  00000061: EBE8                         jmps      00000004B   -------- (4)    
    41.  00000063: 7061                         jo        0000000C6                    
    42.  00000065: 7373                         jae       0000000DA                    
    43.  00000067: 776F                         ja        0000000D8                    
    44.  00000069: 7264                         jb        0000000CF                    
    45.  0000006B: 3A24                         cmp       ah,[si]                      
    46.  0000006D: 4F                           dec       di
    47.  0000006E: 4B                           dec       bx                          
    48.  0000006F: 2124                         and       [si],sp                      
    49.  00000071: 57                           push      di                          
    50.  00000072: 52                           push      dx                          
    51.  00000073: 4F                           dec       di                          
    52.  00000074: 4E                           dec       si                          
    53.  00000075: 47                           inc       di                          
    54.  00000076: 2124                         and       [si],sp                      
    55.  00000078: 0D0A24                       or        ax,0240A ;"$ "              
    56.  0000007B: 0A00                         or        al,[bx][si]
    Выдран полный текст проги из Хива. прога начинает выполняться с
    00000000: BA6301 ?
    Почему идёт прерывание ввода текста а потом сразу вывода на консоль а где проверка кода? И где здесь данные?

    Код (Text):
    1.  00000000:  BA 63 01 B4-09 CD 21 B4-0A BA 7B 01-CD 21 BA 78  єc ґ Н!ґ є{ Н!єx  
    2.  00000010:  01 B4 09 CD-21 EB 0A 15-5D D4 06 C6-02 B6 14 F8   ґ Н!л  ]Ф Ж ¶ ш  
    3.  00000020:  24 BE 00 00-B9 09 00 8A-9C 00 01 00-9C 17 01 8A  $ѕ  №  Љњ   њ  Љ  
    4.  00000030:  BC 7D 01 30-BC 63 01 80-84 63 01 99-46 E2 E8 FC  ј} 0јc Ђ„c ™Fвиь  
    5.  00000040:  8D 36 17 01-8D 3E 63 01-B9 09 00 F3-A6 E3 02 75  Ќ6  Ќ>c №  у¦г u  
    6.  00000050:  08 B4 09 BA-6D 01 CD 21-C3 B4 09 BA-71 01 CD 21   ґ єm Н!Гґ єq Н!  
    7.  00000060:  C3 EB E8 70-61 73 73 77-6F 72 64 3A-24 4F 4B 21  Глиpassword:$OK!  
    8.  00000070:  24 57 52 4F-4E 47 21 24-0D 0A 24 0A-00           $WRONG!$  $
     
  2. ajak

    ajak New Member

    Публикаций:
    0
    Регистрация:
    24 окт 2007
    Сообщения:
    463
    Надо узнать правильный пасс
     
  3. Velheart

    Velheart New Member

    Публикаций:
    0
    Регистрация:
    2 июн 2008
    Сообщения:
    526
    Лучше засунь в Иду, там все сразу понятней станет, второй вывод -- это просто переход на новую строку, а вывод правильности-неправильности пароля -- ниже, после того как там расшифровываются байты по смещению 117h и сравниваютя с введенным паролем..
     
  4. ajak

    ajak New Member

    Публикаций:
    0
    Регистрация:
    24 окт 2007
    Сообщения:
    463
    Нету иды, дайте линк .
    А откуда там смещение -117h. Максимальное то почти 80
     
  5. Velheart

    Velheart New Member

    Публикаций:
    0
    Регистрация:
    2 июн 2008
    Сообщения:
    526
    Ну со 100h начинается код =), а Ида вот: http://www.cracklab.ru/download.php?action=list&n=NQ==, может и на вазме где-нибудь лежит..
     
  6. ajak

    ajak New Member

    Публикаций:
    0
    Регистрация:
    24 окт 2007
    Сообщения:
    463
    Чёт ни хрена не понял. Ида показывает сразу 3 вызова int21 сначала на вывод текста потом на ввод потом снова на вывод, а уж потом джамп, чёт не пойму, проверка паса ниже а он уже говорит на 3-ем int о правильности или не правильности. Подскажите?
     
  7. Velheart

    Velheart New Member

    Публикаций:
    0
    Регистрация:
    2 июн 2008
    Сообщения:
    526
    Ну первый int21h -- это приглашение ввести пароль, второй -- ввод пароля, третий --- вывод перехода на новую строку, и есть еще четвертый и пятый, которые выводят правильный пароль или нет.