Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 17.02.2014
Сообщений: 3
1

Процесс обфускации. Куда пишется сам код, куда располагаем алгоритм к возвращению к нормальному состоянию

18.02.2014, 00:30. Показов 1805. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый вечер.
Занимаюсь C# недавно и на работу пока не устроился, т.е. совета спросить негде.
Предстоит писать собственный обфускатор под C#. Изучая сам процесс обфускации столкнулся с некоторыми трудностями.
Пока не смог уловить принцип. Открыть файл и считать код - понятно. Далее распознать, произвести, к примеру, смену названий переменных - тоже.

А вот то, как компилятор понимает измененный код, я не могу понять. И сам процесс записи тоже. Куда пишется сам код, куда располагаем алгоритм к возвращению к нормальному состоянию (и есть ли он) и каким образом он вызывается.

Буду благодарен, если кто-то опишет этот процесс подробно или поделится каким-нибудь базовым примером, на основе которого можно было бы разобрать данный процесс. Спасибо!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.02.2014, 00:30
Ответы с готовыми решениями:

Есть 4 потока. После осуществления блокировки барьером, 3 куда-то деваются, куда? (pthreads)
Друзья! Как мог упростил код, вот суть В цикле создаются 4 вспомогательных потока, кадый из...

Персонаж летит сам куда хочет
Всем здравствуйте. Начал изучать Unity недавно. Вот возникают трудности. Для Вас это может быть и...

PHP mail, куда здесь отправляется товар(сообщение), на почту? Или куда нибудь еще?
НЕМОГУ ПОНЯТЬ КУДА ЭТОТ PHP код ОТПРАВЛЯЕТ ДАННЫЕ??? Помогите пожалуйста! Если же здесь код...

Процесс w3wp.exe не вызывается. Куда присоединить отладчик?
Проблема какая есть сайт я к нему пишу сервис и пытаюсь удаленно его отладить. Сервис крутится у...

2
Почетный модератор
Эксперт .NET
8721 / 3673 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
18.02.2014, 01:24 2
Цитата Сообщение от tmch Посмотреть сообщение
Предстоит писать собственный обфускатор под C#
Всё таки задам, возможно, глупый вопрос, но зачем? Если думаете что напишите лучше существующих, то меня терзают сомнения. Изучите существующие и способы их обхода.
Цитата Сообщение от tmch Посмотреть сообщение
А вот то, как компилятор понимает измененный код, я не могу понять
CLR по сути пофиг на имена внутри сборки, только если они не указывают на другую сборку/модуль (грубо, не описывая все нюансы).
В .NET PE используется система таблиц-ссылок, где хранятся указатели на нужные строки/столбцы таблицы (это могут быть смещения или индексы).
Цитата Сообщение от tmch Посмотреть сообщение
И сам процесс записи тоже
Ну это просто () есть спецификация CLI (там же .NET PE - ECMA-335) в которой расписано что и где должно находиться, но есть и уловки которые там не описываются, правильнее наверно, игнорируются CLR.
Цитата Сообщение от tmch Посмотреть сообщение
куда располагаем алгоритм к возвращению к нормальному состоянию (и есть ли он) и каким образом он вызывается
Обфускация имён обычно не подразумевает обратную операцию, ибо от этой обфускации толку 0.
А вот обфускация кода, ну тут несколько вариантов: можно использовать динамические методы, можно расшифровывать на лету (без динамической компиляции, [мои небольшие изучения про этот способ]), это первое что в голову пришло...
1
0 / 0 / 0
Регистрация: 17.02.2014
Сообщений: 3
18.02.2014, 02:20  [ТС] 3
Цитата Сообщение от NickoTin Посмотреть сообщение
Всё таки задам, возможно, глупый вопрос, но зачем? Если думаете что напишите лучше существующих, то меня терзают сомнения. Изучите существующие и способы их обхода.
Последнюю неделю пытался найти тему для дипломного проекта (по тематике информационной безопасности, какой-нибудь софт). Задача была в том, чтобы найти тему, которая и уровню диплома сойдёт, и мне будет по силам её реализовать. По данной тематике много информации. Альтернативы не нашлось, а сроки подходят.

Цитата Сообщение от NickoTin Посмотреть сообщение
А вот обфускация кода, ну тут несколько вариантов: можно использовать динамические методы, можно расшифровывать на лету (без динамической компиляции, [мои небольшие изучения про этот способ]), это первое что в голову пришло...
Вряд ли будет простая обфускация имён. Мне кажется, это совсем просто для диплома.

Добавлено через 22 минуты
NickoTin, возможно, пока не поздно, можно и здесь на форуме поспрашивать по поводу возможных тем.
Спасибо за ответ!
0
18.02.2014, 02:20
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.02.2014, 02:20
Помогаю со студенческими работами здесь

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

Можно ли Nokia N8 (подделку) перепрошить и перевести к нормальному состоянию
Здравствуйте, ситуация такая, Nokia N8 (подделка) технические характеристики неизвестны, работает...

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

Дали задание, понятия не имею куда копать. Куда копать и в каком направлении?
Собственно и условие задачи: Есть почти ссылка: http://tinyurl.com/DA 9D C5 DE DD Нужно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru