powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / СRC exe-файла в нем самом
29 сообщений из 29, показаны все 2 страниц
СRC exe-файла в нем самом
    #34077268
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть алго подсчета crc. Можно ли каким нить макаром прошить crc-ехешника в нем самом?
Имеется ввиду след:
при запуске файл считает свое црц и если не совпадает - завершает работу?
Я ниче не могу придумать толком, есть одна идея, но не совсем то, что нужно:

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

Есть еще варианты?
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34077397
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
где нибудь прописываешь литерал нужного размера с известным содержимым, другой программкой ищещь это самое содержимое и бубенишь туды подпись.
Проверять мона из самой программки.

И никаких записей в конец файла
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34077453
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пардон, но после "забубенивания" црс измениться - вот с этим у меня проблема...
или я неправильно понял?
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34077480
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я думаю, что тут только перебор:
т.е. на место литерала мы пишем все возможные коминации по очереди, считаем сошлось ли црц и так для всех...
но мне кажется что не всегда такое будет возможно, раз.

по теории для 100% ответа надо 8 байт (если црц 4 байта), т.е. в таком случае я никогда не переберу все варианты, наверное....
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34077656
aleks2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H.A.M.Пардон, но после "забубенивания" црс измениться - вот с этим у меня проблема...
или я неправильно понял?

Блин... ну дык когда проверяешь на место этого CRC запиши исходное значение или вовсе не включай в CRC это место.
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34077677
Фотография S.G.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Записывай уж в ini-файл, какая разница. Тот, кто знает что такое CRC, сможет выдрать его и из ini-файла, и из exe-файла, и из рееестра...
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34077711
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H.A.M.Пардон, но после "забубенивания" црс измениться - вот с этим у меня проблема...
или я неправильно понял?

а руки на что ?
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34077760
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторБлин... ну дык когда проверяешь на место этого CRC запиши исходное значение или вовсе не включай в CRC это место.
хех, а смысл? если не включать - любой дурень напишет туды чего угодно...

авторЗаписывай уж в ini-файл, какая разница. Тот, кто знает что такое CRC, сможет выдрать его и из ini-файла, и из exe-файла, и из рееестра...
выдрать! пускай - я могу его на тайтл повесить. Но поменять-то ниче нельзя будет.
автора руки на что ?
Конструктивнее, конструктивнее, товарищ :)
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34077776
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
here что-то похожее (я так хочу). Но там утверждают, что 4 байта - достаточно для корректировки результата. Я читал - 8 минимум.
А чтоб ваще без них?
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34077875
Den_di
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А какой смысл. Если даже это случайно получится, т.е станет невозможно изменить программу, то что помешает злоумышленнику проделать тоже. Т.е подправить ,сакжем, ветвление на проверке пароля, пересчитать CRC и записать. Без полного перебора алгоритма нет. Т.е это трудно сделать как тебе, так и ему! Стоит попробовать подобрать начальное значение CRC так, чтобы оно совпадало с самим собой. А ещё можно использовать шифрование с ассиметричным ключём. Т.е пудличным расшифровываем и смотрим соответствие CRC.
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34077942
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можно создать ехешник, затем в нем прописать крк, причем в ехешнике оно должно проверятся.
а создав новый ехешник снова проджелать ту же процедуру

аффтопитезь
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34078184
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторА какой смысл. Если даже это случайно получится, т.е станет невозможно изменить программу, то что помешает злоумышленнику проделать тоже. Т.е подправить ,сакжем, ветвление на проверке пароля, пересчитать CRC и записать. Без полного перебора алгоритма нет. Т.е это трудно сделать как тебе, так и ему!
Резонно. Гм... Не знаю чего и сказать...
автор Стоит попробовать подобрать начальное значение CRC так, чтобы оно совпадало с самим собой.
О... Это нереально.
авторА ещё можно использовать шифрование с ассиметричным ключём. Т.е пудличным расшифровываем и смотрим соответствие CRC.
Хм... вариант.
Т.е. зашифровать црс, при проверке его расшифровывать.
Ключ на шифрование у меня дома и его никто не знает...
Интересный вариант. Очень даже. Буду так делать.

Осталось проверить, хватит ли 4 байта для подбора црц.
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34078782
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H.A.M.Конструктивнее, конструктивнее, товарищ :)

Блин, какой ты утомительный

1. Используем MD5, в hex-е чтобы було подлинее
2. В исходнике объявляем константу, нужной длины с известной нам лабудой
3. после компиляции ищем лабуду, подписываем все кроме нее и бубуним подпись на ее место
4. При запуске (подпись нам известна из константы), ищем свой файл, ищем в нем известную нам подпись, подписываем все кроме нее, сравниваем и кричим ай яй яй ежель не совпадет
5. От кракеров это все одно не защитит, но от тупой вирусни - запросто
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34080522
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поломать такую защиту - лишь вопрос времени. Тем более, что вы пытаетесь защитится от кракера (другому и в голову не придет ковырять бинарник).

Если-же вы планируете НУ ОЧЧЕНЬ СЕРЬЕЗНО защитить свой софт - создайте многозвенку и перенесите критичный код в выделеный сервер. Взаимодействие можно осуществлять через RPC, Remoting, RMI и.т.д.
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34080655
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan) H.A.M.Конструктивнее, конструктивнее, товарищ :)

Блин, какой ты утомительный

1. Используем MD5, в hex-е чтобы було подлинее
2. В исходнике объявляем константу, нужной длины с известной нам лабудой
3. после компиляции ищем лабуду, подписываем все кроме нее и бубуним подпись на ее место
4. При запуске (подпись нам известна из константы), ищем свой файл, ищем в нем известную нам подпись, подписываем все кроме нее, сравниваем и кричим ай яй яй ежель не совпадет
5. От кракеров это все одно не защитит, но от тупой вирусни - запросто
Блин, какой ты утомительный. Это я и сам сделать могу.
Меня интересовал вариант, чтобы сама объявленная константа с црц также учавствовала в подсчете црц. Иначе я не вижу смысла во всем этом.
А варианты с дописыванием и подгоном - я так понял все фигня.
Если же ничего не дописывать, то не для всякого ехе найдется такое црц, чтоб при его вставке и участии в рассчете получить его же.
Единственное - шифрование црц несимметр. алго. Я уже выбрал сий путь.

Всем спасибо за участие.
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34080953
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H.A.M.Меня интересовал вариант, чтобы сама объявленная константа с црц также учавствовала в подсчете црц. Иначе я не вижу смысла во всем этом.
А варианты с дописыванием и подгоном - я так понял все фигня.
Единственное - шифрование црц несимметр. алго. Я уже выбрал сий путь.


ты неправильно понял. никто никогда не подписывает саму подпись.
это бред.

успехов в труде (его будет много)

Модератор:
Блин, какой ты утомительный

просьба такого рода комментариев не использовать в дальнейшем.
утомились - не пишите
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34083341
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторты неправильно понял. никто никогда не подписывает саму подпись.
это бред.
Не такой уж и бред. Я подписал. Хватило 4 байта для подбора.
Просто, мне кажется, мы не можем понять друг друга.
Вот что я сделал (пока просто хеш вместо асимметричного шифра):
1. сделал подпись на 4 байта в ехе - preHashCRC - придумал просто с неба
2. сделал лабуду на 4 байта в ехе - CORRECTOR
3. при запуске проверяем: hashvalueof(preHashCRC) == getCRC("EXEname.exe");
4. вторая программка перебирает все варианты для CORRECTOR, чтобы hashvalue(preHashCRC) == getCRC("EXEname.exe");

Я думал 4 байта для CORRECTOR будет мало. Хватило :)
Но я все еще думаю, что мне повезло.
Не всегда выйдет так, что CORRECTOR подберется. Он ведь и сам уч-ет в рассчете CRC.
В опсчем, я так понял - гиблое это дело. Все равно ломается. Но теперь ломальщику надо еще и хеш алгоритм вычленять из проги - это все чего можно добиться. Насчет шифрования выйдет точно также.....
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34083357
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 модератор:
не я первый начал. обещаю не поддаваться на провокации впредь.
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34083961
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H.A.M.2 модератор:
не я первый начал. обещаю не поддаваться на провокации впредь.

Ахх какие мы все благородные, пребываю в умилении.

Объясни мне смысл подписывания подписи. Или объясни чем хуже вариант с подписыванием всего кроме подписи (коим все пользуются) и я тут же тебе зауважаю и буду на всех кглах пропагандировать твой патентованный метод поиска коллизий (для MD5 это будет конечно потруднее, но по последним исследованиям нет ничего невозможного).

Единственный способ защититься от кракера - человека, шифровать код на ключе не хранящемся в exe-нике (например вводимом при каждом запуске с клавиатуру) гемор, но очень надежно.
Намеки относительно последующего использования ассиметричной криптографии воспринимаю исключительно как растопыривание пальцев. IMHO ассиметричное шифрование 4 байтного CRC МАРАЗМ

2 Модератор

Спасибо, что уделили мне толику своего драгоценного внимания
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34084431
Den_di
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А кто говорил шифровать crc? Я имел ввиду использовать шифрование критичных участков программы. Но для защиты программ от пропатчивания и вирусни данный метод самый лучьший: взлом затрудняется довольно сильно. А ещё можно использовать смену пароля при каждом запуске по некоторому алгоритму и проверять это. Или сделать многократную резидентную проверку. Хранить прогу в зашифрованном воде и использовать загрузочник. Или сделать защищённую Dll сложно взаимодействующую с самой собой и механизмом защиты. Как способ: для работы с dll использовать crc программы crc dll. Передавать их как параметры, расплодить в разных ипостасях, сделать побольше проверок(больше 100 не надо, раскидав это по разным функциям), сделать ошибочные ветви, создав локальные jmp по смещению на блок проверки. Сделать внутреннюю верификацию модулей. Использовать программное ветвление. Напирер в случае несовпадения использовать неоптимизированный алгоритм. Итого если это у вас случайно заработает, то ломать это будут очень долго, так как почти вся программ есть защита. Просто смысл создавать неломаемые защиты(а они есть) - в лучшем случае вашей программой не будут пользоваться.
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34085545
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Den_di
....

Непонятно, что будет по смете стоить дороже - разработка софта или защиты к нему.
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34085551
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторАхх какие мы все благородные, пребываю в умилении.
Зря ты так...
авторОбъясни мне смысл подписывания подписи. Или объясни чем хуже вариант с подписыванием всего кроме подписи (коим все пользуются) и я тут же тебе зауважаю и буду на всех кглах пропагандировать твой патентованный метод поиска коллизий (для MD5 это будет конечно потруднее, но по последним исследованиям нет ничего невозможного).
Все кроме подписи подписывать я не хочу. Взломщик проделает точно тот же путь, что проделал я для подгона црц. Но, как я уже понял, в любом случае мне для подбора тоже один путь - перебор. Так что я не далеко ушел.
авторНамеки относительно последующего использования ассиметричной криптографии воспринимаю исключительно как растопыривание пальцев. IMHO ассиметричное шифрование 4 байтного CRC МАРАЗМ
А вот тут я считаю ты не прав. Оторвемся от шифрования и возьмем простой хеш, чтобы было проще:
в файле храниться значение ХЭШ КОТОРОГО есть ЦРС. Это значение м.б. 100 байт, килобайт - неважно. Важно то, что если взломщик после своих манипуляций сможет подогнать ЦРЦ под правильный, ему надо знать как из этого ЦРЦ получить ТЕ БАЙТЫ, хэш которых даст это значение, что почти нереально уже при 8 байтах.
Но: он может тоже написать эти байты от балды, а потом подгонять ЦРЦ к их хэшу. В этом случае ему придеться дополнительно выдирать алгоритм хэширования.
С хэшем просто понятнее - но с шифрованием аналогично. И это не мой патентованный метод. Не надо такого тона, будто я вчера кинул друга, а сегодня всем рассказываю какие мы были хорошие друзья.
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34085557
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Den_di ...
Да, но это не так просто как подбор хэшей/црц.
И вообще: любую защиту можно сломать. Достаточно той, затраты на взлом которой будут больше стоимости ПО (:
авторНепонятно, что будет по смете стоить дороже - разработка софта или защиты к нему
Смотря какой софт.
Данная тема поднята, к примеру, в контексте разработки ПО, которое будут использовать другие авторы для защиты собственных программ. Может даже чего-нибудь и получится (:
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34085573
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемый Н.А.М.

Послушайте опытного. Вы занимаетесь ерундой. С вашей подготовкой
сложно будет создать системный софт. Я советую вам поискать в Интернете
готовые решения "под ключ" и почитать описания. Думаю у вас будет
над чем задуматся.
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34086050
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H.A.M.
Зря ты так...


Позволь об этом судить мне

H.A.M.
Все кроме подписи подписывать я не хочу. Взломщик проделает точно тот же путь, что проделал я для подгона црц.

Взломщик, не будет идти по ЭТОМУ пути. Он просто занопит проверку
Когда тебе говорят, что ты мог-бы потратить СВОЕ время с большей пользой, поверь мне, стоит к этому прислушаться
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34086080
Barlone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для подделки CRC совсем не нужен перебор. url=http://www.insidepro.com/kk/118/118r.shtml]вот
Там даже есть исходничек который для стандартного crc32 без знания содержимого файла только по его длине, смещению места патча, текущему и требуемому crc32 выдает 4 байта с которыми надо сделать xor.
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34086099
Barlone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ой, урл неправильно вставился. Ну кому надо, copy-paste сделает. А исходничек совсем простой
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
#include <stdio.h>
unsigned long c,c2,p2,pol=0xEDB88320;
long n,k;
main()
{
        printf("CRC32 Adjuster (c) 2001 by RElf @ HHT/2\n");
        printf("Length of data: "); scanf("%ld",&n);
        printf("Offset to patch: "); scanf("%ld",&k);
        n = (n-k)< 3 ;
        printf("Current CRC32: 0x"); scanf("%x",&c);
        printf("Desired CRC32: 0x"); scanf("%x",&c2);
        c ^= c2;
        p2 = (pol <<  1 ) |  1 ;
        while(n--) if(c&0x80000000) c = (c<<1)^p2; else c<<=1;
        printf("XOR masks:%02X%02X%02X%02X\n",c&0xff,(c>> 8 )&0xff,(c>> 16 )&0xff, c>> 24 );
}
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34087491
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем, спасибо. Я сделал так, как хотел. Тема закрыта.
...
Рейтинг: 0 / 0
СRC exe-файла в нем самом
    #34087555
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
упорство - достоинство ...
...
Рейтинг: 0 / 0
29 сообщений из 29, показаны все 2 страниц
Форумы / Программирование [игнор отключен] [закрыт для гостей] / СRC exe-файла в нем самом
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]