Как взламывают .Net приложения?
От: nen777w  
Дата: 03.11.21 16:46
Оценка:
Добрый час.
Меня интересует как ломают .Net приложения.

Есть одно приложение от одной очень известной фирмы-производителя оптики.
Которое не хочет работать со "старым" оборудованием.
Хотя функционально они ничем не отличаются (старое оборудование от нового).

При подключении старого оборудования какое то время все работает и потом через время приложение ругается на то что оно (оборудование) не лицензионное.

Есть .Net собрка, предположительно написана на C# назовем ее license.dll в которой как мне кажется происходит вся "магия" проверки серийного номера оборудования.

В этой dll по сути два класса CKeyLicense с интересным методом isValid и DES в котором имплементирован как я предполагаю из название одноименноый алгоритм.
Проблема в том что весь код обфусцирован.

Все что можно подсмотреть я подсмотрел через dnSpy и dotPeek.

Что я уже делал: — побыстренькому набросал свою сборку с классом CKeyLicense в котором реализовал не обфусцированные методы. И подменил оригинальную dll своей.
Приложение стартует и даже работает. Но при подключении оборудования падает. Наверно потому что не все методы реализованы.

Вопрос 1: Можно ли как то деобфусцировать все прилоэение целиком и при этом сохранить его работоспособоность, так что бы поковырять/поправить его код.
Вопрос 2: Можно ли частично переписать/переопределить метод у класс у офусцированной dll
Вопрос 3: Приложение работает c оборудование через COM порт. Для этого оно утсанавливает драйвер com0com (http://vse-draivera.net/manufacturers/vyacheslav+frolov/others.html).
Можно ли как то подслушать что там ходит?

Что вообще можно сделать?
Какие инструменты, тулы и гайды посоветуете?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.