|
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
|
|
Подмена контроля25.10.2010, 22:50. Показов 3767. Ответов 23
Метки нет (Все метки)
В .NET возможна подмена контроля при доступе приложения к библиотекам? Т.е. когда приложение пытается получить доступ к библиотеке, а какое-нибудь другое риложение перехватывает запрос, и далее связь осуществляется через это приложение, и оно имеет контроль над всеми вызовами.
0
|
|
| 25.10.2010, 22:50 | |
|
Ответы с готовыми решениями:
23
Подмена имени компьютера Подмена превью для Vkontakte |
|
Почетный модератор
|
||
| 25.10.2010, 22:55 | ||
|
Если ты хочешь отлавливать обращение к библиотеке от любого приложения, то ты вряд ли этого добьёшься с помощью .NET, т.к. скорее всего придется перехватывать API.
И вообще, что ты имеешь ввиду под этим
0
|
||
|
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
|
|
| 25.10.2010, 23:57 [ТС] | |
|
Я написал приложение на .NET. Можно ли гарантировать, что приложение будет напрямую обращаться к библиотекам, а не через посредника, котооый захочет контролировать мои действия.
Не обязательно программа, перехватывающая обращения написана на .NET. Меня пока только интересует, возможно контролировать приложения, написанные на .NET или эта платформа каким-либо образом контролирует подлинность библиотек и способов, через которые она с ними связывается.
0
|
|
|
12 / 12 / 6
Регистрация: 14.07.2010
Сообщений: 19
|
||
| 26.10.2010, 00:10 | ||
|
Если ты о native dll с p/invoke - да, ставь хук (SetWindowsHookEx и дальше по гуглу) и наслаждайся ревом антивируса (хе-хе).
А если перехватить из .NET - обломаешься. Единственный способ - обойти GAC, внедрить в Assembly свою сборку, и замаскировать от этого же GAC-а исходную либу. Но если она подписана (что в 99% так и есть), то твой ковырный план обречен на провал ,) Добавлено через 2 минуты
1
|
||
|
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
|
|||
| 26.10.2010, 00:24 [ТС] | |||
|
Добавлено через 1 минуту
0
|
|||
|
Почетный модератор
|
|
| 26.10.2010, 01:23 | |
|
.::.DIMA.::., можно создать dll посредника и заменить им твою dll, к которой будет обращаться твоя программа. Используй проверку целостности файла - CRC.
Советую сильно не заморачиваться, кто захочет, тот сделает как ему надо и ты об этом даже не узнаешь. Рефлекторы, дизассемблеры ещё никто не отменял. vikser, интересно какой ты собрался ставить хук (через SetWindowsHookEx) на перехват dll, а нука посвяти не знающих
1
|
|
|
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
|
|
| 26.10.2010, 01:46 [ТС] | |
|
Можно подробнее про рефлекторы?
Меня интересует такой вопрос: возможна ли такая схема, как на этой картинке, только доступ осуществляется не на сервер, а к dll. Проверка контрольной суммы - хороший вариант, но меня интересует, какие методы защиты предоставляет .NET.
0
|
|
|
Почетный модератор
|
||||
| 26.10.2010, 01:57 | ||||
|
Сразу напишу: Обфускатор - это программа, которая затрудняет декомпилятору (в данном случае рефлектору, тот же декомпилятор) получить исходный код программы в первозданном виде. Хороший обфускатор стоит очень дорого )
1
|
||||
|
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
|
|
| 26.10.2010, 02:16 [ТС] | |
|
0
|
|
|
Почетный модератор
|
|||||||||||
| 26.10.2010, 02:27 | |||||||||||
|
Создать dll с такими же классами (методами, свойствами и т.д.) и при этом ссылаться на твою оригинальную dll, и твоя программа будет обращаться сначала к "псевдо" dll, а только потом к твоей.
Вот пример: 1)У тебя есть dll, написанная тобой:
0
|
|||||||||||
|
1322 / 995 / 127
Регистрация: 08.12.2009
Сообщений: 1,299
|
|
| 26.10.2010, 02:35 | |
|
SSTREGG, в корне не верно. проблема DllHell в .NET как раз решена - строгие имена и версии сборок четко изолируют логику. я даже больше скажу: если есть 3 длл: первая ссылается на вторую, вторая - на третью, то перекомпилировав вторую (отдельно от всех) весь тракт работать не будет как ты ожидаешь (ну всмысле если начнешь переопределять и перекрывать члены классов налево-направо во второй длл)... тут call и callvirt в IL (а вызов виртуальных методов - это далеко не так тривиально, как в книгах пишут) по точным сигнатурам уберегут или раскрошат связи
а вот по сабжу скажу, что точно можно производить инъекции бизнес-логики на лету и поменять и смотреть всё, что хочешь... любой профилировщик (трассировщик) - тому пример (качай JetBrains dotTrace). вот только сам я никогда с этим не сталкивался и не знаю(
1
|
|
|
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
|
|
| 26.10.2010, 11:05 [ТС] | |
|
А при доступе проверяется цифровая подпись или контрольная сумма?
И где можно прочитать про доступ к библиотекам: стандарты или где-нибудь ещё?
0
|
|
|
Почетный модератор
|
|||
| 26.10.2010, 13:36 | |||
|
1
|
|||
|
61 / 60 / 10
Регистрация: 11.08.2010
Сообщений: 199
|
||
| 26.10.2010, 13:52 | ||
|
Если у вас strong named assembly,то проверяется. Вот из Рихтера цитата:
т.е. если кто-то подменит вашу сборку с таким же именем и такими же названиями методов, то хеш для нее все равно не сойдется, и должно вывалиться исключние
1
|
||
|
153 / 113 / 25
Регистрация: 23.06.2008
Сообщений: 320
|
|
| 26.10.2010, 14:08 | |
|
А если ссылаться не на библиотеку, а работать через интерфейс?
Берешь реализовываешь в двух разных библиотеках один и тот же интерфейс. Указываешь твоей программе путь к dll не важно как она называется, главное чтобы в ней был класс с которым ты будешь работать за счет интерфейса. Вот и все
0
|
|
|
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
|
||
| 26.10.2010, 14:42 [ТС] | ||
|
0
|
||
|
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
|
||
| 26.10.2010, 15:11 [ТС] | ||
|
0
|
||
|
61 / 60 / 10
Регистрация: 11.08.2010
Сообщений: 199
|
||||||
| 26.10.2010, 15:22 | ||||||
|
Все стандартные библиотеки и так strong named, иначе кто бы гарантировал их подлинность?
Добавлено через 9 минут Вы создайте пустой проект, соберите его, откройте в ILDasm.exe, там выбираете show metainfo, и в нем в конце будет идти что-то типа такого:
1
|
||||||
| 26.10.2010, 15:22 | |
|
Помогаю со студенческими работами здесь
20
Подмена source IP в UDP пакете
Подмена стандартного окна входа в систему Перехват и подмена имени .dll файла Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
|
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях.
Задача: при копировании документа очищать определенные реквизиты и табличную. . .
|