ROOTKITS.SU
Здравствуйте, Гость  
Главная
Новости
Программы
Статьи
Ссылки друзей
Форум
Хостинг
Вход на сайт
Логин 
Пароль 
Последние темы на форуме
21.06.2010 19:41:45 — Exploiting Online Games: Cheating Massively Distributed Systems ZUNAMI (0)
21.05.2010 9:44:45 — Настройка отладочного комплекса на базе WMWare red mould (2)
10.05.2010 20:50:41 — нужна помощь с copyhook в Delphi 7 star007 (0)
29.04.2010 19:40:17 — PAGE_FAULT_IN_NONPAGED_AREA kraby (6)
29.04.2010 0:47:56 — Отладочные символы и Windbg Asm0Dey (1)
15.03.2010 23:12:51 — Выбор метдов скрытия процесса. Asm0Dey (6)
19.02.2010 23:26:25 — XP->Vista. Сплайсинг. kraby (4)
Статьи
Правда о KeUserModeCallback()
Это даже не статья, а маленькая заметочка. Заметочка на тему избитой всеми функции KeUserModeCallback().
Автор 
Оконные хуки: взгляд изнутри
В последнее время на форумах все чаще стали проскальзывать вопросы о том, как получить список оконных хуков, установленных на события мыши или клавиатуры... Автор статьи - Twister.
Автор 
«Сырая» загрузка драйвера
Загрузка драйвера с использованием native-функции NtLoadDriver(…)
Автор 
Инжект: лезем через окно
Одним из самых соблазнительных мест для преступника, пытающегося пробраться в чужую квартиру, безусловно, является окно...
Автор 
Все статьи | Добавить статью

Регистрация Eastegger 2.9
Прога Eastegger 2.9 это база данных пасхальных яиц. Она работает нормально без регистрации, но в справке упоминается  о возможности бесплатной регистрации через интернет,  после чего появляются дополнительные функции при работе с прогой.
Регистрация Eastegger 2.9

Введение:


Прога Eastegger 2.9 это база данных пасхальных яиц. Она работает нормально без регистрации, но в справке упоминается  о возможности бесплатной регистрации через интернет,  после чего появляются дополнительные функции при работе с прогой. Для этой регистрации требуется назвать еще несколько пасхальных яиц, которых нет в  данной версии проги. С желанием  получить полнофункциональную версия продукта я решил “посмотреть” как программа реагирует на введенные данные…

Подробности:

При первом осмотре проги PEiD показал “Microsoft Visual Basic 5.0 / 6.0”. Я вначале огорчился, т.к. не представлял как проги на Basic’е вообще работают!:)

Взлом:

После предосмотра я уже не надеялся на успешный взлом, но запустив Олю (OllyDbg) я убедился в обратном:

Прога реально написана на Basic’е, но не в P-коде!!!:)

Попробуем найти место, где выводится сообщение о неудачной регистрации:

Загрузим в Олю наш файл (Eastegger 2.9.exe), затем внимательно осмотрим импорт, т.к. в проге на VB все через ж#пу! Находим нечто похожее на вывод сообщения (должно быть: rtcMsgBox), ставим на него бряк, запускаем прогу, вводим какую-нибудь х#йню и жмем по кнопке “Активировать”.

После этого падаем на бряке и видим следующее:



004D82E2   . 8D8D 7CF6FFFF  LEA ECX,DWORD PTR SS:[EBP-984]

004D82E8   . FF15 18114000  CALL DWORD PTR DS:[<&MSVBVM60.__vbaVarDu>;  MSVBVM60.__vbaVarDup

004D82EE   . 8D8D 4CF6FFFF  LEA ECX,DWORD PTR SS:[EBP-9B4]

004D82F4   . 51             PUSH ECX

004D82F5   . 8D95 5CF6FFFF  LEA EDX,DWORD PTR SS:[EBP-9A4]

004D82FB   . 52             PUSH EDX

004D82FC   . 8D85 6CF6FFFF  LEA EAX,DWORD PTR SS:[EBP-994]

004D8302   . 50             PUSH EAX

004D8303   . 6A 00          PUSH 0

004D8305   . 8D8D 7CF6FFFF  LEA ECX,DWORD PTR SS:[EBP-984]

004D830B   . 51             PUSH ECX

004D830C   . FF15 64104000  CALL DWORD PTR DS:[<&MSVBVM60.#595>]     ;  MSVBVM60.rtcMsgBox

004D8312   . 8D95 4CF6FFFF  LEA EDX,DWORD PTR SS:[EBP-9B4]

004D8318   . 52             PUSH EDX

004D8319   . 8D85 5CF6FFFF  LEA EAX,DWORD PTR SS:[EBP-9A4]

004D831F   . 50             PUSH EAX

004D8320   . 8D8D 6CF6FFFF  LEA ECX,DWORD PTR SS:[EBP-994]

004D8326   . 51             PUSH ECX

004D8327   . 8D95 7CF6FFFF  LEA EDX,DWORD PTR SS:[EBP-984]

004D832D   . 52             PUSH EDX

004D832E   . 6A 04          PUSH 4

004D8330   . FF15 28104000  CALL DWORD PTR DS:[<&MSVBVM60.__vbaFreeV>;  MSVBVM60.__vbaFreeVarList

004D8336   . 83C4 14        ADD ESP,14

004D8339   . C745 FC 180000>MOV DWORD PTR SS:[EBP-4],18

004D8340   . FF15 24104000  CALL DWORD PTR DS:[<&MSVBVM60.__vbaEnd>] ;  MSVBVM60.__vbaEnd


На этом не следует останавливаться!!!

Пролистаем выше на 1273 строки:), и увидим следующее:

004D70CD   . 68 CC754100    PUSH Eastegge.004175CC                   ;  UNICODE "WFF8V-QQ27X-HXJ7C-QFQTJ-HKC86"

004D70D2   . FF15 90104000  CALL DWORD PTR DS:[<&MSVBVM60.__vbaStrCm>;  MSVBVM60.__vbaStrCmp

004D70D8   . F7D8           NEG EAX

004D70DA   . 1BC0           SBB EAX,EAX

004D70DC   . 40             INC EAX

004D70DD   . F7D8           NEG EAX

004D70DF   . 66:0BF0        OR SI,AX

004D70E2   . 8B8D 3CFBFFFF  MOV ECX,DWORD PTR SS:[EBP-4C4]

004D70E8   . 51             PUSH ECX

004D70E9   . 68 0C764100    PUSH Eastegge.0041760C                   ;  UNICODE "F4H4B-3KTWJ-CTK6Q-XYK4G-39WTY"

004D70EE   . FF15 90104000  CALL DWORD PTR DS:[<&MSVBVM60.__vbaStrCm>;  MSVBVM60.__vbaStrCmp

004D70F4   . F7D8           NEG EAX

004D70F6   . 1BC0           SBB EAX,EAX

004D70F8   . 40             INC EAX

004D70F9   . F7D8           NEG EAX

004D70FB   . 66:0BF0        OR SI,AX

004D70FE   . 8B95 38FBFFFF  MOV EDX,DWORD PTR SS:[EBP-4C8]

004D7104   . 52             PUSH EDX

004D7105   . 68 4C764100    PUSH Eastegge.0041764C                   ;  UNICODE "DJKMY-YGVQM-BXYTG-J4XJB-43J7M"

004D710A   . FF15 90104000  CALL DWORD PTR DS:[<&MSVBVM60.__vbaStrCm>;  MSVBVM60.__vbaStrCmp

004D7110   . F7D8           NEG EAX

004D7112   . 1BC0           SBB EAX,EAX

004D7114   . 40             INC EAX

004D7115   . F7D8           NEG EAX

004D7117   . 66:0BF0        OR SI,AX

004D711A   . 8B85 34FBFFFF  MOV EAX,DWORD PTR SS:[EBP-4CC]

004D7120   . 50             PUSH EAX

004D7121   . 68 8C764100    PUSH Eastegge.0041768C                   ;  UNICODE "PYFPV-BKWB4-FPH7M-9XHMJ-9K3GJ"

004D7126   . FF15 90104000  CALL DWORD PTR DS:[<&MSVBVM60.__vbaStrCm>;  MSVBVM60.__vbaStrCmp


Если хорошо подумать, то что это может быть…конечно это возможные варианты регистрационных строк:)  Если быть точным, то их будет 297.

После проверки мы убеждаемся, что это действительно серийные номера!:)

Для лучшего использования полученных нами данных выделим в Оле  все необходимые нам строки и чтобы не мучаться напишем небольшую прогу на Delphi для выполнения автоматического выдирания строк регистрации. Я написал следующую:

procedure TForm1.Button1Click(Sender: TObject);

var

  f,g:textfile;

  buf, tmp:string;

  i:integer;

begin

  AssignFile(f,'1.txt');

  AssignFile(g,'2.txt');

  Reset(f);

  Rewrite(g);

  while not (eof(f)) do begin

   ReadLn(f,buf);

   tmp:='';

   i:=0;

   if pos('"',buf)<>0 then

   begin

    while buf<>'"'do

      i:=i+1;

    i:=i+1;

    while buf[i]<>'"'do

    begin

      tmp:=tmp+buf[i];

      i:=i+1;

    end;

    tmp:='("'+tmp+'"),';

    WriteLn(g,tmp);

   end

   else Continue;

  end;

  CloseFile(f);

  CloseFile(g);

end;

После выполнения этой проги у нас появляется файл “2.txt”, в котором содержатся все возможные серийные номера!:)

Но это еще не все! Теперь напишем генератор ключей на Visual C++ (у меня v6):

Для этого запустим Visual C++, кому как удобнее, но я выбрал MFC, создадим форму и добавим нужные компоненты, после чего создадим обработчик нажатия на кнопку генерации.

Для этого в самом начале текста проги объявим массив из наших серийников следующего вида:

char keys[297][30] =

{("H6KVY-23T9P-2JB43-GRX8G-V76YW"),

("T7MT4-XFVWT-X9XQB-RFPJC-H7RPW"),

("BBYFR-V64C6-VQ9FP-K9V9R-WXKW8"),

("KTPBH-GKHXF-QVQ8Q-RB66Q-2CG78"),

("VQ7T6-FTY84-RWT4P-GXQTW-WRCY8"),

("MGCJJ-G6G7B-QFM9X-X6HHC-CGR9M"),

…………………….

("DJKMY-YGVQM-BXYTG-J4XJB-43J7M"),

("PYFPV-BKWB4-FPH7M-9XHMJ-9K3GJ")

};


После этого объявим глобальную переменную целого типа и присвоим ей значение 0:

int i=0;


Далее при клике по нашей кнопке напишем следующий незамысловатый код:

SetDlgItemText(IDC_EDIT2,keys[i]);

if (i<297) i=i+1;

else i=0;


Теперь можно компилировать и в базу кряков:)

Но на этом мы не остановимся!!!

Взлом. Вариант2:

Хотелось бы узнать как и куда Eastegger 2.9 заносит наш серийник и другую регистрационную инфу!

Для достижения нашей цели прогоним Eastegger 2.9 через FileMon, осмотрим полученный список и увидим интересные названия файлов: Eastegger_city.dat, Eastegger_Register.dat, Eastegger_user.dat. Сразу бросается в глаза слово “Register”! Ок, заархивируем его, попробуем удалить все эти файлы. Запустим Eastegger 2.9 и видим, что от нас требуют снова зарегистрироваться! Делаем вывод: в этих файлах хранится регистрационная информация! Для проверки наших предположений пытаемся зарегистрироваться под другими данными и другим серийником… Затем вновь взглянем на подозрительный файл “Eastegger_Register.dat” и посмотрим его содержимое. Просто так на вскидку сказать трудно, но если прогнать этот и предыдущий (он сейчас в архиве) файлы через прогу сравнения файлов (я использовал WinMerge), то можно увидеть, что данные файлы ничем не различаются!!!

Можно предположить, что данный файл при успешной регистрации должен иметь именно такое содержание…

Проверим! Сохраняем этот файл(Eastegger_Register.dat) где-нибудь, регистрируемся вновь, удаляем наши 3 файла, запускаем вновь и видим, что регистрация не удалась, теперь помещаем туда наш Eastegger_Register.dat и видим что Прога зарегистрирована!:)

[i]
Автор: Error13Tracer

Все советы, пожелания и посылания Error13Tracer@rambler.ru

Error13Tracer
Здесь прокат бизнес автомобилей от Каратрент. . LG GR-F459 BTKA .
Все документы, программы, исходные тексты на этом сайте (далее - «Информация») равно как и на всех его поддоменах собраны исключительно для образовательных целей, мы не побуждаем к какому бы то ни было действию/бездействию и не отвечаем ни за какие последствия, которые имели место как следствие использования Информации. Вы используете все вышеперечисленное на свой страх и риск. В случае выявления несогласия с данным публичным договором-офертой, Вы обязаны отказаться от просмотра и копирования Информации. При возникновении спорных ситуаций Вы имеете право известить об этом администрацию сайта.
© «Rootkits», 2007. Все права защищены.