Форум программистов, компьютерный форум CyberForum.ru

Кому слабо взломать прогу мою? - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 63, средняя оценка - 4.86
morphling
 Аватар для morphling
-9 / 19 / 1
Регистрация: 26.06.2010
Сообщений: 181
28.08.2011, 16:02     Кому слабо взломать прогу мою? #1
Просто интересно можно ли ее взломать...
Вот файл *.exe
вот файл
Вложения
Тип файла: rar 48129.rar (248.7 Кб, 213 просмотров)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ValeryS
Модератор
6374 / 4840 / 441
Регистрация: 14.02.2011
Сообщений: 16,043
29.08.2011, 18:39     Кому слабо взломать прогу мою? #81
Цитата Сообщение от fasked Посмотреть сообщение
какое еще смешение, какой еще картинки?
реальная зашита в реальной программе
при неправильном ключе текст выводился вне окна (соответственно не был виден)
Цитата Сообщение от fasked Посмотреть сообщение
А тогда я уже буду знать число, ведь оно же будет использоваться где-то в программе для деления.
нет не будешь
ты будешь знать только то что число удовлетворяет каким либо условиям (например число четное)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
fasked
Эксперт C++
 Аватар для fasked
4924 / 2504 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
29.08.2011, 18:41     Кому слабо взломать прогу мою? #82
Цитата Сообщение от ValeryS Посмотреть сообщение
ты будешь знать только то что число удовлетворяет каким либо условиям (например число четное)
Как же это так?
По вашему, если в программе написано
C++
1
2
3
if(n % 2 == 0) {
    ...
}
то я буду знать только то, что число n четное или не четное?

Я не понимаю Вас, приведите, пожалуйста, пример.
ValeryS
Модератор
6374 / 4840 / 441
Регистрация: 14.02.2011
Сообщений: 16,043
29.08.2011, 19:03     Кому слабо взломать прогу мою? #83
пожалуйста
но пример писан на коленке не доведен мысли в слух

C++
1
2
3
4
5
6
7
8
9
BYTE * aa=new BYTE[10];
if(key%2== 0)
 printf("Yes");
else
 printf ("No");
aa[0]=key;
aa[0]^=key/256;
asm  jmp aa
func1();
число key=21392
в шестнадцатеричной системе 0х5390
после исполнения aa[0]^=key/256;(это кстати тоже можно замаскировать)
в памяти будет 0хС3 (команда RET )
если правильное число то функция возвращается
если не правильно то или вызывается func1(); или вообще падаем
как видишь числа в чистом виде нет
Vourhey
Почетный модератор
6468 / 2243 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
29.08.2011, 19:18     Кому слабо взломать прогу мою? #84
Цитата Сообщение от ValeryS Посмотреть сообщение
а я отвечаю что кроме проверки это же число (ключ)
используется для шифровки (дешифровки) или еще чего_нибудь
Ставим бряку на чтение и видим все места, где это число берется. И начинаем прыгать "а нафига" и, собственно, найдем
А то, что число используется для расшифровки, смещения и т. д., и называется самомодификацией, о которой здесь уже упоминал.

Добавлено через 3 минуты
ValeryS, то есть это не обфускация? Оно так и называется.

Добавлено через 1 минуту
Цитата Сообщение от ValeryS Посмотреть сообщение
не обязательно
Шутку оценил
ValeryS
Модератор
6374 / 4840 / 441
Регистрация: 14.02.2011
Сообщений: 16,043
29.08.2011, 19:19     Кому слабо взломать прогу мою? #85
Цитата Сообщение от Vourhey Посмотреть сообщение
Ставим бряку на чтение и видим все места, где это число берется. И начинаем прыгать "а нафига" и, собственно, найдем
кто спорит все можно сломать
а я займу все 4 бряки и усложню тебе работу
проверка скорости выполнения (да мало ли что можно придумать)
например исключения поймать то поймаешь а откуда пришел???
я как раз с той стороны что ломают, а не те кто защищают
Vourhey
Почетный модератор
6468 / 2243 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
29.08.2011, 19:21     Кому слабо взломать прогу мою? #86
Цитата Сообщение от ValeryS Посмотреть сообщение
а я займу все 4 бряки и усложню тебе работу
можно и так
Цитата Сообщение от ValeryS Посмотреть сообщение
проверка скорости выполнения (да мало ли что можно придумать)
Согласен! Все можно!
Цитата Сообщение от ValeryS Посмотреть сообщение
я как раз с той стороны что ломают, а не те кто защищают
Я понял просто то, что ты написал и есть "обфускация" кода Это все, что я хотел сказать.
Thinker
Эксперт C++
 Аватар для Thinker
4215 / 2189 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
29.08.2011, 19:21     Кому слабо взломать прогу мою? #87
Цитата Сообщение от ValeryS Посмотреть сообщение
я как раз с той стороны что ломают, а не те кто защищают

Не по теме:

Вот ведь...

ValeryS
Модератор
6374 / 4840 / 441
Регистрация: 14.02.2011
Сообщений: 16,043
29.08.2011, 19:21     Кому слабо взломать прогу мою? #88
Цитата Сообщение от Vourhey Посмотреть сообщение
ValeryS, то есть это не обфускация?
ну для меня это понятие пошире будет
Vourhey
Почетный модератор
6468 / 2243 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
29.08.2011, 19:23     Кому слабо взломать прогу мою? #89
Цитата Сообщение от ValeryS Посмотреть сообщение
ну для меня это понятие пошире будет
Цель обфускации - усложнить анализ. Все, что специально сделано с этой целью обфускацией и является Ну да фиг с ней, кто как хочет понимает.
fasked
Эксперт C++
 Аватар для fasked
4924 / 2504 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
29.08.2011, 19:30     Кому слабо взломать прогу мою? #90
Цитата Сообщение от ValeryS Посмотреть сообщение
aa[0]^=key/256;
как видишь числа в чистом виде нет
Вы вообще отладчик в глаза видели?
Цитата Сообщение от ValeryS Посмотреть сообщение
если не правильно то или вызывается func1(); или вообще падаем
А это нехорошо. Защита ни в коем случае не должна приводить к крэшу программы. Это между прочим вредоносное действие, и, к слову, написание таких программ карается законом.
ValeryS
Модератор
6374 / 4840 / 441
Регистрация: 14.02.2011
Сообщений: 16,043
29.08.2011, 19:38     Кому слабо взломать прогу мою? #91
Цитата Сообщение от fasked Посмотреть сообщение
Вы вообще отладчик в глаза видели?
ага много раз начиная с TD
еще раз
Цитата Сообщение от ValeryS Посмотреть сообщение
кто спорит все можно сломать
я отвечал на вопрос

Цитата Сообщение от fasked Посмотреть сообщение
то я буду знать только то, что число n четное или не четное?
в реальной защите не все так ясно и просто
Thinker
Эксперт C++
 Аватар для Thinker
4215 / 2189 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
30.08.2011, 09:47     Кому слабо взломать прогу мою? #92
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от AzaKendler Посмотреть сообщение
Thinker, не не. это просто любопытство в плане технологии. Никакого посягательства. Буду взламывать свое. Скажите как только)

Не по теме:

Сначала все так говорят, а потом...


Не по теме:


AzaKendler, очень часто под громкими словами защита скрывается очень зыбкая (картонная) защитка. Взять, например pdf файлы. Вроде как оболочки типа Acrobat содержат инструменты, позволяющие защитить ваш файл с помощью, в частности средства AES. На самом деле, AES - мощный шифр, но, к сожалению, шифруется не весь файл, а его фрагменты и взломать такую защиту не сложно. Вообще, на данный момент широко используется такие средства, как шифрование, цифровые подписи, хеширование и т.д. Лучше изучите, если вам интересно, основы защиты информации. А то что толку, ну научитесь вы пользоваться какой-нибудь "крякалкой", а со временем защита может измениться, будете искать другие "крякалки". А так вы будете знать как информацию защищают, какими методами, как самому обеспечить более надежную защиту и т.д. Открыть для себя секрет (почему-то мало кто это знает), что можно обеспечить совершенную защиту.
Могу посоветовать вам книги по ЗИ, но в обратную сторону ни-ни

Да хотя бы такие самые наипростейшие шифры, как шифр Вернама (с грамотной реализацией), шифр Виженера, аффинный шифр. Цифровые подписи типа RSA с простыми числами, умещаемые в тип double. Простенькие криптографические хэш-функции. Поизучайте азы, тогда вы глубже поймете как все происходит.

voral
345 / 325 / 46
Регистрация: 16.03.2008
Сообщений: 1,692
30.08.2011, 12:08     Кому слабо взломать прогу мою? #93
Имхо. Единственный вариант защитить программу - вынести часть функционала (а не проверку ключа) на онлайн серевер. Но не для всех задач это подходит.
#pragma
Временно недоступен
 Аватар для #pragma
952 / 223 / 6
Регистрация: 12.04.2009
Сообщений: 921
30.08.2011, 19:19     Кому слабо взломать прогу мою? #94
Цитата Сообщение от Thinker Посмотреть сообщение

Не по теме:

Могу посоветовать вам книги по ЗИ, но в обратную сторону ни-ни

Не по теме:

Огласите, пожалуйста, список литературы

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.08.2011, 22:14     Кому слабо взломать прогу мою?
Еще ссылки по теме:

Проверьте задачу мою пожалуйста C++
Покритикуйте мою игру C++

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

Или воспользуйтесь поиском по форуму:
Thinker
Эксперт C++
 Аватар для Thinker
4215 / 2189 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
30.08.2011, 22:14     Кому слабо взломать прогу мою? #95
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от #pragma Посмотреть сообщение

Не по теме:

Огласите, пожалуйста, список литературы

Книг огромное множество, в частности, можно эти почитать.

По ИБ и КБ:

Основы информационной безопасности: Учебник / В.А. Минаев, С.В. Скрыль, А.П. Фисун, В.Е. Потанин, С.В. Дворянкин. – Воронеж: Воронежский институт МВД России, 2001. – 464 с.

Теоретические основы компьютерной безопасности: Учеб. пособие для вузов / П.Н. Девянин, О.О. Михальский, Д.И. Правиков и др. – М.: Радио и связь, 2000. – 192 с.

Защита информации в телекоммуникационных системах: Учебник / В.Г. Кулаков, А.Б. Андреев, А.В. Заряев и др. – Воронеж: Воронежский институт МВД России, 2002. – 300с.

Петров А.А. Компьютерная безопасность. Криптографические методы защиты. 2000

Программно-аппаратные средства:

Программно-аппаратные средства обеспечения информационной безопасности. Защита программ и данных: Учеб. пособие для вузов / П.Ю. Белкин, О.О. Михальский, А.С. Першаков и др. – М.: Радио и связь, 1999. – 168 с.

Программно-аппаратные средства обеспечения информационной безопасности. Защита в операционных системах: Учеб. пособие для вузов / Проскурин В.Г., Крутов С.В., Мацкевич И.В. – М.: Радио и связь, 2000. – 168 с.

Криптография:

Алферов А.П., Зубов А.Ю., Кузьмин А.С., Черемушкин А.В. Основы криптографии: Учебное пособие. – М.: Гелиос АРВ, 2005. – 480 с.

Фергюсон Н, Шнайер Б. Практическая криптография. М. 2005

Молдовян Н.А., Молдовян А.А. Введение в криптосистемы с открытым ключом. – СПб.: БХВ-Петербург, 2005. – 288 с.

Рябко Б.Я., Фионов А.Н. Криптографические методы защиты информации. – М.: Горячая линия – Телеком, 2005.

Саломаа А. Криптография с открытым ключом. – М.: Мир, 1996.

Смарт Н.Криптография. – М.: Техносфера, 2006. – 528с.

Книга с описанием огромного числа шифров:

Панасенко С.П. Алгоритмы шифрования. Специальный справочник. СПб, 2009

Криптология:

Фомичев В.М. Дискретная математика и криптология. – М.: ДИАЛОГ-МИФИ, 2003. – 400с.

Брассар Ж. Современная криптология. 1999

Добавлено через 20 минут
Абы какие книги не советовал бы. Многие из представленных выше с грифом УМО.
Yandex
Объявления
30.08.2011, 22:14     Кому слабо взломать прогу мою?
Ответ Создать тему
Опции темы

Текущее время: 18:47. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru