скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Взлом за 1.5 минуты - SuperFTP v2.04 for Win



Оформил: DeeCo
Автор: http://www.cracklab.narod.ru

Объект: Super FTP v2.04 for Windows95/98/NT4.0
Адрес: http://www.sppd.co.jp/sugama/english/


Вступление:
Я продолжал искать самый рульный ФТП клиент и наткнулся на это "чудо", в полном смысле этого слова :)

Обзор:
Я запустил прогу и вижу MessageBox "Trial ... 14 days" Плохо, потому как с виду весч неплохая, по крайней мере красивая :) Стоит ли она $ 4.0 ?
Ну да ладно. Захожу в меню Help->Registration и вижу, что надо ввести какой-то пароль. Ну думаю, совсем чудесно. Ctrl-D и Ставлю бряк:
bpx GetDlgItemTextA
Снова Ctrl-D и ввожу вместо пароля "123321". Жму кнопочку и вываливаюсь в Soft-Ice здесь:
015F:00415A5A  6800020000          PUSH      00000200			
015F:00415A5F  6860594200          PUSH      00425960			<--Куда считывать введенный пароль
015F:00415A64  6825040000          PUSH      00000425			   
015F:00415A69  8B4508              MOV       EAX,[EBP+08]
015F:00415A6C  50                  PUSH      EAX
015F:00415A6D  FF1538265900        CALL      [USER32!GetDlgItemTextA]	<--считали
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; по адресу [00423EC0] лежит строка: "KFOGMTPXRLM"	;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
015F:00415A73  0FBE05C03E4200      MOVSX     EAX,BYTE PTR [00423EC0]	<--Взяли первый символ строки "KFOGMTPXRLM", т.е. "K"	
015F:00415A7A  48                  DEC       EAX			<--Отняли 1, т.е. получили "J"
015F:00415A7B  0FBE0D60594200      MOVSX     ECX,BYTE PTR [00425960]	<--и сравниваем с первым символом введённого пароля
015F:00415A82  3BC1                CMP       EAX,ECX			<--то же самое со 2-ми символами
015F:00415A84  0F8545010000        JNZ       00415BCF			<--И так 11 раз...
015F:00415A8A  0FBE05C13E4200      MOVSX     EAX,BYTE PTR [00423EC1]
015F:00415A91  48                  DEC       EAX
015F:00415A92  0FBE0D61594200      MOVSX     ECX,BYTE PTR [00425961]
015F:00415A99  3BC1                CMP       EAX,ECX
015F:00415A9B  0F852E010000        JNZ       00415BCF
015F:00415AA1  0FBE05C23E4200      MOVSX     EAX,BYTE PTR [00423EC2]
015F:00415AA8  48                  DEC       EAX
015F:00415AA9  0FBE0D62594200      MOVSX     ECX,BYTE PTR [00425962]
015F:00415AB0  3BC1                CMP       EAX,ECX
015F:00415AB2  0F8517010000        JNZ       00415BCF
Т.е. достаточно отнять от каждого символа строки "KFOGMTPXRLM" единицу и мы получим строку: "JENFLSOWQKL", которая и будет правильным паролем. Вводим "KFOGMTPXRLM" и убеждаемся, что японские программисты - самые рульные на свете :) Так держать пацаны!

P.S. Простенько и со вкусом.

Исследовал и наваял туториал:
vallkor //PTDS
e-mail: vallkor@chat.ru (vallkor@etel.dn.ua)
Page : http://vallkor.chat.ru






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook