Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.04.04;
Скачать: [xml.tar.bz2];

Вниз

Защита программы   Найти похожие ветки 

 
$tranger ©   (2004-03-15 20:21) [0]

Господа, есть программы для декомпилирования ЕХЕ-шника в исходники, возможно-ли и если да, то как защититься от взлома. Спасибо


 
YuRock ©   (2004-03-15 20:23) [1]

Никак :)

Самая действенная защита - отсутствие поддержки


 
Юрий Зотов ©   (2004-03-15 20:26) [2]

Программ для полной и точной декомпиляции не существует. Но скажите - а Вы уже написали ТАКУЮ программу, которую вообще станут взламывать? Если еще нет, то, может быть, не стоит и  волноваться?


 
Petr V. Abramov ©   (2004-03-15 21:02) [3]

А если "да" - то запатентовать, и можно хоть OpenSource распространять.


 
Dimaxx ©   (2004-03-15 22:36) [4]

Есть программа DeDe - декомпилит экзешник обратно в проект, но он весь на ассемблере. Мусора там...


 
EXE7   (2004-03-16 00:20) [5]

DeDE-форму получить,
а код грязный - ассем,и не скармливается,
не собирается в TASM-MASM...


 
Defunct ©   (2004-03-16 01:02) [6]

> возможно-ли и если да, то как защититься от взлома.

Полностью защититься нельзя, ломается все. Можно только увеличить время, требуемое на взлом. пара простых способов:
1. В случайных местах программы отлавливать режим трассировки, и "подвешивать" машину в случае оного.
2. Взывать, в теле важных процедур, процедуру сверки контрольных данных (ключа), которая в случае несовпадения, например заносит в стек что-то левое, и в большом количестве (при этом перед возвратом стек не восстанавливает).
3. Шивровать какой-то критический код программы, распаковывать в стек, там же и расшифровывать, там же и вылонять.
4. Шифровать какие-то жизненно важные для программы данные, например если работа с БД, шифровать на низком уровне саму БД (записть и чтение файла БД).

Проблемы: как получить ключ шифрования, иными словами к чему привязывать программу.
A. Идеальные вариант - аппаратный ключ (USB или LPT заглушка, на базарном языке - Hardlock), стоит порядка 30 убитых енотов.
B. Сведения из FirmWare устройств (например серийный номер винчестера + серийный номер процессора(если есть)).
C. Какие-то системные области, например метка тома диска, идентификационный номер раздела диска, версия и дата создания BIOS и т.п.

Комбинация: 1+2+3+A сломать очень сложно (затраты на взлом для группы профессионалов: более 6 месяцев)

Комбинация: 2+C ломается профессионалами за пару дней, но рядовому пользователю практически не под силу.

Так что защищайтесь, если в этом есть необходимость.

Совет дня: никогда не делайте полнофункциональных Demo версий ваших программ. Отключайте (причем полным выкусыванием кода из программы какие-то второстепенные функции, например, сохранение файлов).


 
Defunct ©   (2004-03-16 01:30) [7]

Немного о серийных номерах программ, что это такое и зачем оно нужно.

Все мы видели, например, при инсталляции Windows или MS-Office приглашение ввести серийный номер сл. вида
KAKAЯ-ТОХИТ-РАЯБА-ЙДАИЗ-КУЧИБ-УКВ55
Это есть символьный код с высокой избыточностью, который в результате некоторых простых арифметических действий превращаятся в 32-х или 64-х битный цифровой код, одним из значений будет значение, требуемое для правильной распаковки какого-то блока программы, все остальные значения - вызывают отрицательную реакцию. Вероятность угадать такой символьный код очень мала соответственно 1/2^32 и 1/2^64.
Как правило существует множество (зависит от планов компании производителя на количество копий продукта) символьных кодов, соответствующийх одному и тому же значению цифрового кода.

Зачем этот код нужен? - для идентификации копии программы.
Как он влияет на защиту программы? - позволяет выявить несанкционированные копии программы в случае обращения в службу поддержки.
Где он участвует? - складывается со значением аппаратного либо друго ключей см A, B, C [6].



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.04.04;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.034 c
1-1079422216
stelius
2004-03-16 10:30
2004.04.04
Case & not


1-1079601040
GSVSerg
2004-03-18 12:10
2004.04.04
Tform.OnMinimized()


1-1079338277
alex732
2004-03-15 11:11
2004.04.04
Точка остановки


6-1075153241
Erazzer
2004-01-27 00:40
2004.04.04
Перехват вызова из локальной сети как в WinGate e.


1-1079272826
010101001010001010101001
2004-03-14 17:00
2004.04.04
Проще не бывает





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский