Как рассчитать контрольную сумму .exe файла программы

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
AlesDales
Активист
Сообщения: 198
Зарегистрирован: 14 Июль 2005, 15:42

Как рассчитать контрольную сумму .exe файла программы

Сообщение AlesDales »

2 Игорь Столяров
AlesDales писал(а): Или есть возможность предоставить exe файл
Так я и думал. Защита информации это отдельная отрасль и когда лезешь туда со своими дилетантскими познаниями получается как раз “велосипед именно с квадратными колесами”
в стране слепых правит одноглазый король (c) ...
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7322
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Как рассчитать контрольную сумму .exe файла программы

Сообщение Игорь Столяров »

AlesDales писал(а): Так я и думал. Защита информации это отдельная отрасль
Полностью согласен, поэтому и написал.
Я извиняюсь, сейчас просто нет времени выполнять заявки на обучающие примеры. Может быть чуть позже ...

А идея простая.
1. Есть EXE файл (любой), мы его подписываем сертификатом (закрытым ключом RCA).
2. Программа при загрузке делает тоже самое: отсоединяет подпись от EXE файла и через открытый ключ проверяет ее достоверность.
В Win CryptoAPI весь необходимый функционал есть.

Все. Единственный возможный способ обойти - это отключить сам функционал проверки в коде программы.
Ну здесь уже его прячут кто как может: от нескольких точек входа, до шифрования кусков кода. В чем проблема-то ? ;)
За теми кто отстал - не возвращаться. (С) Кодекс
AlesDales
Активист
Сообщения: 198
Зарегистрирован: 14 Июль 2005, 15:42

Как рассчитать контрольную сумму .exe файла программы

Сообщение AlesDales »

Игорь Столяров писал(а): Я извиняюсь, сейчас просто нет времени выполнять заявки на обучающие примеры. Может быть чуть позже ...
Разумеется, трудно вспомнить то чего не знаешь :) Примеров не будет, только болтовня в связи с со страшной занятостью в выходной день :)
в стране слепых правит одноглазый король (c) ...
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7322
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Как рассчитать контрольную сумму .exe файла программы

Сообщение Игорь Столяров »

AlesDales писал(а): только болтовня в связи с со страшной занятостью в выходной день
Я далек от мысли мериться у кого длиннее, например язык. ;) К сожалению день не только выходной, но еще и конец первого квартала, в котором впервые будет сдача отчетности по НДС в электронном виде .... :(

Я ниже описал концепт проверки целостности файла ... ну давай попробую написать проще, с примерами ...
Например ключ для KIS идет практически в открытом текстовом виде с электронной подписью. Можно менять все, что хочешь.
Но если он не пройдет проверку снятия ЭЦП, то просто не будет принят. Да, гипотетически можно отключить проверку снятия ЭЦП
где-то в недрах программы. Но другого способа внести изменения в ключ нет. Конкретно, Касперский использует библиотеки
ЭЦП ЭЛКОМ, но в принципе все-то же самое (кроме патентованных алгоритмов) есть и Win Crypto API и может использоваться для
проверки целостности исполняемого файла через подпись его сертификатом. Вот и все ...
За теми кто отстал - не возвращаться. (С) Кодекс
AlesDales
Активист
Сообщения: 198
Зарегистрирован: 14 Июль 2005, 15:42

Как рассчитать контрольную сумму .exe файла программы

Сообщение AlesDales »

Игорь Столяров писал(а): Да, гипотетически можно отключить проверку снятия ЭЦП
К чему тогда вся твоя болтовня? Ты хочешь, что-то сказать или тебя просто тошнит словами (причем в области, в которой ты ничего не понимаешь :) )? Иди сдавай НДС :)
в стране слепых правит одноглазый король (c) ...
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7322
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Как рассчитать контрольную сумму .exe файла программы

Сообщение Игорь Столяров »

OK ! Я понял - нужен пример на CLarion проверки целостности исполняемого файла при запуске через ЭЦП.
Я сброшу немного позже, думаю, действительно для тебя так будет понятней.
А сейчас надо заниматься именно отчетностью. К сожалению, что есть - то есть ...
За теми кто отстал - не возвращаться. (С) Кодекс
AlesDales
Активист
Сообщения: 198
Зарегистрирован: 14 Июль 2005, 15:42

Как рассчитать контрольную сумму .exe файла программы

Сообщение AlesDales »

Да будет понятней если ты предоставишь хоть что то, кроме своей болтовни.
в стране слепых правит одноглазый король (c) ...
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3131
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 10 раз
Поблагодарили: 28 раз
Контактная информация:

Как рассчитать контрольную сумму .exe файла программы

Сообщение Дед Пахом »

мне одному кажется, что AlesDales хамит?
С уважением, ДП
Stalker
Активист
Сообщения: 127
Зарегистрирован: 01 Декабрь 2005, 20:47
Откуда: Минск
Контактная информация:

Как рассчитать контрольную сумму .exe файла программы

Сообщение Stalker »

Дед Пахом писал(а): мне одному кажется, что AlesDales хамит?
Уважаемые коллеги! Не думал когда открывал пост что может быть такая бурная дискуссия,
но все таки она должна вестись с уважением к мнению апонентов, у всех нас в данной области разный опыт и знания.Не стоит переходить определенные грани.
Думаю Игорь Столяров скинет пример для его изучения и разбора.
Игорь Столяров писал(а): OK ! Я понял - нужен пример на CLarion проверки целостности исполняемого файла при запуске через ЭЦП.
С уважением Stalker
Специализация - программы для образования, делопроизводство, складской учет
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7322
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Как рассчитать контрольную сумму .exe файла программы

Сообщение Игорь Столяров »

Дед Пахом писал(а): мне одному кажется, что AlesDales хамит?
Не надо парится на эту тему.
Здесь важна идея которую обсуждаем, а в какую форму это завернуть - каждый решает сам.
Тем более, что сегодня действительно выходной .... ;)
За теми кто отстал - не возвращаться. (С) Кодекс
AlesDales
Активист
Сообщения: 198
Зарегистрирован: 14 Июль 2005, 15:42

Как рассчитать контрольную сумму .exe файла программы

Сообщение AlesDales »

Конечно идея важна, когда она есть.
в стране слепых правит одноглазый король (c) ...
Аватара пользователя
Губин Игорь
✯ Ветеран ✯
Сообщения: 2301
Зарегистрирован: 16 Сентябрь 2005, 16:35
Откуда: Москва
Поблагодарили: 17 раз

Как рассчитать контрольную сумму .exe файла программы

Сообщение Губин Игорь »

Замечание: не всегда возможно проверить целостность файла задачи изнутри задачи. Некоторые навесные оболочки перехватывают обращение и на выходе получаем каждый раз новую контрольную сумму.
Это я только кажусь дураком! На самом деле я полный идиот!
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7322
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Как рассчитать контрольную сумму .exe файла программы

Сообщение Игорь Столяров »

Хотелось бы вернуться к нашему вопросу. ;)

1. Взял EXE файл. Подписал его.
sign2.jpg
2. Изменил HEXEDIT 1 byte
3. При запуске подпись слетела, в свойствах вижу
sign.jpg
4. Как добраться до этой информации изнутри программы через WinAPI - пока не знаю, но думаю, что можно.
За теми кто отстал - не возвращаться. (С) Кодекс
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7322
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Как рассчитать контрольную сумму .exe файла программы

Сообщение Игорь Столяров »

Для запрета запуска приложений с нарушения целостности исполняемых файлов можно использовать ключ реестра: ValidateAdminCodeSignatures (по умолчанию отключен). см. https://technet.microsoft.com/ru-ru/lib ... s.10).aspx

Наверно дальше уже можно и не копать - стандартными средствами администрирования Windows можно запрещать выполнение приложений с нарушением целостности при проверке электронной подписи.
За теми кто отстал - не возвращаться. (С) Кодекс
AlesDales
Активист
Сообщения: 198
Зарегистрирован: 14 Июль 2005, 15:42

Как рассчитать контрольную сумму .exe файла программы

Сообщение AlesDales »

Надеюсь уже хотя бы понятно, что сертификат никак не защищает код программы, а только может свидетельствовать о внесении в нее изменений. Или ты думаешь, что человек скачавший взломанную программу будет заглядывать в ее сертификат и с ужасом обнаружит, что “подпись слетела”?
Для тебя вообще есть разница между трехметровой бетонной стеной с пулеметной вышкой, которые защищают твой дом и свидетельством в суде пенсионера живущего напротив о том, что твой дом ограбили и вынесли все что хотели?
Игорь Столяров писал(а): Для запрета запуска приложений с нарушения целостности исполняемых файлов можно использовать ключ реестра: ValidateAdminCodeSignatures (по умолчанию отключен). см. https://technet.microsoft.com/ru-ru/lib ... 64(v=ws.10).aspx
А это вообще к чему? Запретить самому себе запускать взломанные программы?
Кстати ссылка битая.
Игорь Столяров писал(а): Наверно дальше уже можно и не копать - стандартными средствами администрирования Windows можно запрещать выполнение приложений с нарушением целостности при проверке электронной подписи.
Главное чтобы при защите своих программ (если они того стоят конечно) ты бы всегда руководствовался такими познаниями, это избавит от необходимости платить за них деньги.
в стране слепых правит одноглазый король (c) ...
Ответить