· Начало · Статистика · WASM.RU · Noir.Ru ·

 WASM Phorum (Оффлайн - 24.11.2003) —› WASM.RESEARCH —› FlexLM 8.0d trouble

Посл.отвђт Сообщенiе


Дата: Июл 11, 2003 09:33:32 · Поправил: Inez

Господа, не могли бы вы помочь с reverse engeneering'ом софта защищенного flex'ом версии 8.0d под линух? Закинули тут меня на практику в одну контору, а там задание повесили не совсем реальное для меня на данный момент. При том не понятно хакнули они его сам или нет. Что имеем в качестве исходных данных:
1. Ими хакнута версия под винды. Софт под винду собран халявно, т.е. флексовые функции не вкомпилены в экзешник, а выложены в отдельную dll'ку. Мне выданы обе dll'ки - модифицированная и немодифицированная для примера. Судя по дампу хакнуто "в лоб", т.е. модифицирована функция lc_checkout (могу запостить дампы изменений).
2. Версия под линух. Собрана в двух вариантах - статике и динамике, но в обоих случаях сделано по уму - флексовые функции вкомпилены. Функцию данную я нашел в дампе, но асмовый код линуховой версии этой функции немного отличается от виндовой версии. К сожалению я пока в reverse-engeneering не настолько силен чтобы разобраться что к чему.
Вариантов у меня пока два - либо также как и виндовую отвязать от лицензии напрочь, либо разобраться в механизме генерации лицензии, т.е. выцепить encryption seeds и vendor keys.
Хотелось бы конечно разобраться и со вторым пунктом, но для сдачи практики мне достаточно и первого. Со вторым просто самому из принципа интересно разобраться :) Может гуру подскажут в каком направлении копать по второму пункту?
В аттаче идет дамп виндовой и линуксовой версии функции. Подскажите плиз что и как поменять. Просто обидно будет из-за такой фигни как практика отчислиться из института :(

З.Ы. Все найденные статьи в инете по лому флекса я уже прочитал по несколько раз. Но там либо по виндовой версии все расписано, либо по очень древним юниксовым :(

_443977054__dump.asm


Дата: Июл 11, 2003 17:29:53

Не понял! Судя по тому как ты задал вопрос - мою статью ты не читал. Раздел - "Исследование программ" на данном сайте. Прочти по FlexLM. А сигнатуры от IDA тебе зачем положили на сайте?
А вариантов у тебя действительно два. Тут ты правильно сказал. И оба реализуемы.


Дата: Июл 11, 2003 22:40:38

Статью прочитал. В том числе и ту что в комментах пролетала плюс вот эту: http://www.hackzone.ru/articles/flexlm.html. Сигнатуру применил, но ничего не изменилось :( Что-то мне подсказывает что сигнатуры от виндового sdk не канают, или я что-то не так понимаю (плюс не зря же наверное GT раздают отдельно sdk под линух)? Потому как наложил я сигнатуру на виндовый файл и все стало несколько веселее, на линуксовом же это вызвало у ida ноль эмоций в плане коррекции исходника. Линуксового sdk версии 8.0d или хотя бы любого из ветки 8.0 я не нашел ни в осле и ни в одной из известных мне p2p сетей :(
Сорри что несколько коряво вопрос задал :( Просто программал я много (но под винду) и линукса админю в свбодное от учебы время, а вот обратную задачу (то бишь Rev. Eng.) решаю второй раз в жизни, да и то первый раз можно не считать - разбирал софт 500 килобайтный виндовый, но там все было прозрачно и понятно и генерилку я за вечер накидал. А тут дернул меня черт за язык сказать что имею некоторый опыт программанья на сях/асме и линуха знаю, но программал то я только под винды, а под юниксами только админил :( И сунули мне 15 метровый бинарник на взлом :( При том непонятно - то ли они его хакнули уже сами и хотят посмотреть каким путем я пойду, либо хотят чтобы я им крякнул этот софт :(
На данный момент хотелось бы услышать от гуру совет в каком же направлении мне копать, что юзать из тулзов (gdb для отладки скорее всего освоить не успею, т.к. мне 11 дней до конца практики осталось) и ваше мнение по дампу что я приложил - правильно ли я нашел функцию проверки валидности. Плюс не совсем понял - ломать надо и софт и демона flexlm или достаточно только софт? Т.к. в них обоих эта функция повторяется практически 1в1.
Если идти по второму варианту - как найти seeds примерно представляю, но не знаю чем лучше дебагать софт под линуха, т.е. простой в использовании связки disassm (по функциональности близкий к ida) плюс дебагер я не нашел. Если подскажете такую, то буду очень благодарен.


Дата: Июл 12, 2003 21:28:56 · Поправил: Inez

Так как же мне быть господа гуру? Что можете посоветовать?
Времени у меня все меньше и меньше :(
Или может есть возможность по асе проконсультировать чтобы форум не засорять?


Дата: Июл 13, 2003 07:36:04

Мдя...
Ассемблерного отладчика (нормального!) под линуксом просто нет. Разве что с горя можно попробовать idb (линк на интел компилер на этом сайте), но ты говоришь, что командную строку освоить не успеваешь...

Я бы на твоем месте шел в лоб. Есть ELF файл. Есть под него IDA или что-то еще - вперед! В тупую - находи ругательство программы (где она и как там она матюкается), потом смотри, ЧТО это ругательство тебе вызвало. Тебе глубоко наплевать Flexlm это, или нет. Просто смотри. Должна же программа как-то возмущаться! Как-то ругаться и т.п. Вот от этого и пляши.


Дата: Июл 13, 2003 07:38:06

А в дампе мог бы и указать, где пропатчено! Я что его, смотреть сам буду, что ли? fc сравнивать?
Да, а также линуху пропатчить не мог?


Дата: Июл 13, 2003 20:36:27

Сенькс за хелп!
В линухе точно также пропатчить не получилось - пошел несколько другим путем. Нашел где, что и как ругается, прошелся в обратном нарпавлении и проставил чтобы при любой лицензии она была валидной и дата окончания действия максимально возможная для функции. Плюс проверку hostid вообще нафик вырезал, точнее говоря заглушил с возвратом положительного ответа :) Короче я это сделал :)
Т.е. основную задачу выполнил, теперь чисто для себя хочу разобраться с механизмом генерации лицензии, но без знания gdb это судя по всему не получится, т.к. в ida облезу искать сиды без сигнатур линуксового флекса. Может кто поделится таковыми для версии 8.0d? Или подскажет где sdk слить?

З.Ы. Хотел аттач убрать дабы не смущать народ который по моим стопам надумает идти (т.к. тут от виндового патча толку 0, тем более как выяснилось я еще и не ту линуксовую функцию запендюрил), но судя по всему сделать это невозможно :( Кильните его плиз или сделайте возможность удаления аттачей.


Дата: Июл 13, 2003 21:43:20

FlexLm 8.1a под Windows у меня есть. Под Линукс никогда ничего не имел :(


Дата: Июл 14, 2003 12:40:00

А как аттачи на форуме килять? :)


Дата: Июл 14, 2003 13:28:44

А зачем? :)


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.075