+ Reply to Thread
Page 1 of 7 1 2 3 6 ... LastLast
Results 1 to 20 of 130

Thread: Kaspersky keygenme

  1. #1

    Default Kaspersky keygenme

    Привет, любитель пореверсить!
    Приглашаем тебя попробовать свои силы во взломе в реверс-инжиниринге.
    Если определишь правильный серийник для нашего xaker_crackme_01_s.exe, то можешь себя считать готовым к борьбе с вирусами.

    LOL
    Первые 30 финалистов получат интересные призы и возможность посетить нашу святая святых – вирлаб «Лаборатории Касперского»

    http://www.kaspersky.ru/crackme

    На краклабе была ветка, но развели срач и модеры прикрыли.

    Я рубанул aka hack http://www.kaspersky.ru/crackme/crackers

    Алюшин первый с большим отрывом, впечатление такое, что каспер дает ему инвойс, пока на лабе ветку не подняли никто и не знал, что такое проходит.
    Attached Files
    Last edited by Darwin; 27-07-2014 at 14:04. Reason: Добавил в тему крякми

  2. 6 пользователя(ей) сказали cпасибо:
    Dark Koder (25-07-2014) Darwin (26-07-2014) Datchanin (28-07-2014) SQx (28-07-2014) root (28-07-2014) ximera (27-07-2014)
  3. #2
    ARCHANGEL's Avatar

    Default Re: Kaspersky keygenme

    Таск интересен в плане обучения. Разное крипто позволяет на практике почувствовать, что алгоритмы над учить. Трезво оценивая ситуацию, понимаю, что в 30 не войти, но ради повышения скила попробую посмотреть.
    Добрым быть просто - достаточно обратить свой гнев на негодяев...

  4. Пользователь сказал cпасибо:
    ximera (27-07-2014)
  5. #3

    Default Re: Kaspersky keygenme

    ARCHANGEL: понимаю, что в 30 не войти

    Не прибедняйся, скила у тебя достаточно. Таск уже висит больше трех недель, и пока только пятерка нарисовалась. В письме приглашают "посетить нашу святая святых" на 8е августа, так, что еще 2 недели у тебя есть. Все алго уже на лабе разобрали. Дальше только лишнее откинуть и собрать оставшееся. Ну подходящую атаку на RSA прийдется все же найти. Если не будет срача, то всех желающих буду подталкивать.

  6. Пользователь сказал cпасибо:
    ximera (27-07-2014)
  7. #4
    Dark Koder's Avatar

    Default Re: Kaspersky keygenme

    OKOB, такой вопрос - каким образом вообще на RSA или другой ключ в таких кейгенми атаку делают?
    просто крутиться только 2 идеи - либо сам алго разбирают и ключ генерируют (а-ля найдите валидный серийник для кейгена), либо кодят брутер и атакуют просто перебором ключей...
    Magicus Technicus
    Магистр Кодерус


  8. #5

    Default Re: Kaspersky keygenme

    Если в общем, то исходить нужно из того, что алго дожен быть обратим, т.к. автор/вендор должны валидные пары (имя\ключ) генерить. И если в большинстве случаев алгоритм проверки самопальный, то алгоритм проверки удается пошагово обратить. При коротких ключах можно рипать алго проверки и брутить, для длинных больше 8 на полном словаре особо не побрутишь. Тут тоже ключ 32 хэкс символа. Так что путь один лезть в алго. А какой в RSA алго? c = m^e mod n и все, так что разбирать нечего. Все реализуется на MIRACL powmod https://certivox.org/display/EXT/9.+The+MIRACL+Routines (9.2.45 powmod) - void powmod(x,y,z,w) - w=x^y mod z. Что касается брута, то RSA 4096 не побрутишь или пофактеризуешь, о чем не двусмысленно указывается в заключительном окне.

    Мы не криптоаналитики и придумать новую атаку не осилим, поэтому выбираем что нибудь из известного http://lazyurix.narod.ru/myworks/rsa_crypto_sys.htm.
    В сабже кроме RSA еще MD4? AES128 и модифицированный MD5.
    Last edited by OKOB; 26-07-2014 at 20:50.

  9. 3 пользователя(ей) сказали cпасибо:
    Dark Koder (27-07-2014) dukeBarman (08-08-2014) ximera (26-07-2014)
  10. #6
    Darwin's Avatar

    Default Re: Kaspersky keygenme

    Какое назначение каждого из алгоритмов?

    MD4 ?
    MD5 ?
    AES128 ?
    RSA - DecryptText ?

    Сколько ушло времени на полный разбор (примерно)?
    Last edited by Darwin; 26-07-2014 at 14:45.

  11. #7

    Default Re: Kaspersky keygenme

    Разбор там простой, все лежит в одной функции и вышеизложенная схема видна фактически сразу.
    Львиная часть времени (практически все) ушла на попытки найти в чем же состоит модификация MD5, так и не нашел, тупо рипнул их код и прикрутил.
    Изюмина в том, как придумать обращение, и под какую из известных атак на RSA подходят имеющиеся параметры.
    Last edited by OKOB; 26-07-2014 at 17:13.

  12. 3 пользователя(ей) сказали cпасибо:
    Dark Koder (27-07-2014) Darwin (26-07-2014) ximera (26-07-2014)
  13. #8
    REU's Avatar

    Default Re: Kaspersky keygenme

    Да уже поздно, оно отложилось в моем мозгу =\
    Last edited by REU; 26-07-2014 at 17:16.

  14. #9

    Default Re: Kaspersky keygenme

    Я решил попробовать для общего развития, закейгенить эту штуку. Но скила моего тут мало, поэтому было бы здорово если будешь наталкивать на правильные мысли, статьи, ссылки и т.д.

    Ну начал изучение с иды и с соответствующей ветки на краклабе.

    Для начало бы хотел узнать как определить это просто функция или какая-то реализация хеша md4/md5/rsa etc.. ?? Парень создавший ветку выложил на pastebin его видение алгоритма http://pastebin.com/6Lt7EBZQ. И там есть например такой момент.

    Code:
    ctxmd4.state[1] = 0xEFCDAB89u;
          ctxmd4.state[2] = 0x98BADCFEu;
          ctxmd4.state[3] = 0x10325476u;
          ctxmd4.total[0] = 0;
          ctxmd4.total[1] = 0;
          md4_update(&ctxmd4, (int)tmp0, strlen((const char *)tmp0));
          md4_result((int)&hash2, (int)&ctxmd4);
          aes_128_set_key((int)&hash2, &ctxaes128);
          aes_ecb_decrypt((int)k, (int)k, &ctxaes128);
    так вот как он определил что это именно md4_update ? или там md4_result?

    Предполагаю что тут просто нужно было до этого знать алгоритм данного хеша, и просто узнать его очертания в хекс - рейсе, или я ошибаюсь и есть какие то маркеры функций хеширования?

    Второй момент, где можно толково ознакомиться с данными алгоритмами. Мне подсказали, что нужно OpenSSL скачать и там копаться, но я насколько понял нашел лишь какие-то тесты и хедеры (*\Desktop\openssl-1.0.1h\openssl-1.0.1h\crypto\md4) а сам код? (например MD4_Update).

  15. 2 пользователя(ей) сказали cпасибо:
    Dark Koder (28-07-2014) ximera (27-07-2014)
  16. #10

    Default Re: Kaspersky keygenme

    Quote Originally Posted by benedict View Post
    Второй момент, где можно толково ознакомиться с данными алгоритмами. Мне подсказали, что нужно OpenSSL скачать и там копаться, но я насколько понял нашел лишь какие-то тесты и хедеры (*\Desktop\openssl-1.0.1h\openssl-1.0.1h\crypto\md4) а сам код? (например MD4_Update).
    Первая ссылка.
    https://www.google.com.ua/search?cli...est&gws_rd=ssl

  17. 4 пользователя(ей) сказали cпасибо:
    Dark Koder (27-07-2014) SQx (27-07-2014) benedict (26-07-2014) ximera (26-07-2014)
  18. #11
    Darwin's Avatar

    Default Re: Kaspersky keygenme

    Посмотрел, в целом идея ясна. Нужно только с эмулировать это хозяйство...
    Last edited by Darwin; 26-07-2014 at 22:28.

  19. 2 пользователя(ей) сказали cпасибо:
    Dark Koder (28-07-2014) ximera (28-07-2014)
  20. #12
    Darwin's Avatar

    Default Re: Kaspersky keygenme

    Статья по идентификации функций MIRACL
    Attached Files
    Last edited by Darwin; 27-07-2014 at 10:50.

  21. 3 пользователя(ей) сказали cпасибо:
    Dark Koder (28-07-2014) benedict (28-07-2014) ximera (28-07-2014)
  22. #13

    Default Re: Kaspersky keygenme

    Я, видать, совсем дурачок, раз задаю такой вопрос. Но всё же - как, чёрт побери, докопаться до проверки серийника?! После расжатия upx'ом получаю неработоспособный файлик, который вполне годится для статического анализа. Пробовал искать по RegisterClass'у, чтобы найти хэндлер кнопки - не нашёл. Смотрение на функи, юзающие GetWindowTextW пользы тоже не принесло. Узнал, что у Оли есть некая фича, помогающая в нахождении оных хэндлеров. При попытке поставить бряк на она ругается на невалидность адреса...
    MFC-based приложения никогда не реверсил, уже ушёл про них читать.
    Просветите меня, будьте добры.

  23. 2 пользователя(ей) сказали cпасибо:
    Dark Koder (28-07-2014) ximera (28-07-2014)
  24. #14
    REU's Avatar

    Default Re: Kaspersky keygenme

    Quote Originally Posted by ololoshenka View Post
    Я, видать, совсем дурачок, раз задаю такой вопрос. Но всё же - как, чёрт побери, докопаться до проверки серийника?! После расжатия upx'ом получаю неработоспособный файлик, который вполне годится для статического анализа. Пробовал искать по RegisterClass'у, чтобы найти хэндлер кнопки - не нашёл. Смотрение на функи, юзающие GetWindowTextW пользы тоже не принесло. Узнал, что у Оли есть некая фича, помогающая в нахождении оных хэндлеров. При попытке поставить бряк на она ругается на невалидность адреса...
    MFC-based приложения никогда не реверсил, уже ушёл про них читать.
    Просветите меня, будьте добры.
    UPX нужно распаковывать самим UPX, а не всякими другими распаковщикими или скриптами. И будет тебе счастье.

    Ну я нашел нужное место через GetWindowTextW. Нужно не смотреть на функции где оно юзается, а ставить бряки и отлавливать нужное.

  25. 2 пользователя(ей) сказали cпасибо:
    Dark Koder (28-07-2014) ximera (28-07-2014)
  26. #15

    Default Re: Kaspersky keygenme

    Quote Originally Posted by BoRoV View Post
    UPX нужно распаковывать самим UPX
    Так и делал.
    Quote Originally Posted by BoRoV View Post
    Нужно не смотреть на функции где оно юзается, а ставить бряки и отлавливать нужное.
    Так как нормально не распаковалось, запускал исходный в файл и в рантайме в олли ставил бряк на GetWindowTextW в USER32. Брякалось постоянно при активации окна. Как фильтровать бряки по состоянию call stack'а в ольге я не знаю.

  27. Пользователь сказал cпасибо:
    ximera (28-07-2014)
  28. #16
    REU's Avatar

    Default Re: Kaspersky keygenme

    Ну тогда вот тебе еще один общий сценарий.

    Запустили программу в OllyDbg. Открыли список окон (Alt+W), ищем там окна с именем класса Edit.


    Копируем handle, переходим к функции GetWindowTextW и ставик бряк с условием (Shift+F2) в появившемся окне пишем [esp+4]==<handle>.
    Вот и всё, теперь оно брякнется только при обращении к этому эдиту.

  29. 3 пользователя(ей) сказали cпасибо:
    BaronPabloz (13-04-2015) Dark Koder (28-07-2014) ximera (28-07-2014)
  30. #17

    Default Re: Kaspersky keygenme

    Сработало, спасибо!

  31. #18

    Default Re: Kaspersky keygenme

    Я в начале тоже пытался так делать, и даже вручную в хекс редакторе пытался править таблицу импорта, но все было тлен потом забил открыл и открыл иду.

    Начинается все на инструкции pushad и потом ставишь бряк на инструкции popad, потом пропускаешь цикл (он там в 3-5 строчек) и тот jmp после цикла будет прыгать на код. Идешь туда проходишь несколько инструкций и весь код распакован у тебя в оперативе. Теперь я просто искал текст Serial или invalid, через некоторое время увидишь знакомые надписи а там уже понятно, можно будет разобраться.

    Понимаю способ достаточно топорный, кто знает как сделать лучше пишите будет интересно узнать.

  32. 2 пользователя(ей) сказали cпасибо:
    Dark Koder (28-07-2014) ximera (28-07-2014)
  33. #19
    korsader's Avatar

    Default Re: Kaspersky keygenme

    правая кнопка Search for -> All referenced text strings
    правая кнопка -> Search for text: Serial is valid
    скроллим экран вверх, до начала процедуры

  34. 2 пользователя(ей) сказали cпасибо:
    Dark Koder (28-07-2014) ximera (28-07-2014)
  35. #20
    ARCHANGEL's Avatar

    Default Re: Kaspersky keygenme

    Суть в том, что при анпаке upx то анпакет, но там стоят флаги (в заголовке PE), что приводит к ребэйзу ехе при загрузке. И там, где аслр включен, делается ребейз - и распакованный ехе падает, ибо нет в нём релоков. А при запуске упакованного код распаковывается и ребейзится самим upx, поэтому оно и работает. Вывод - анпакаем упыхом, а потом обнуляем флаги, которые Optional header -> Dll flags.
    Добрым быть просто - достаточно обратить свой гнев на негодяев...

  36. 4 пользователя(ей) сказали cпасибо:
    Dark Koder (28-07-2014) benedict (03-08-2014) dukeBarman (08-08-2014) ximera (28-07-2014)
+ Reply to Thread

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
All times are GMT. The time now is 01:29
vBulletin® Copyright ©2000 - 2018
www.reverse4you.org