Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Программная инженерия > Безопасность, Шифрование
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.08.2011, 20:09   #1
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,814
Счастье Кто может проверить программу на взлом?

Добрый вечер! Создал небольшую программку, чтобы менять кое-какие настройки в системе Windows XP и 7. Но перед этим пользователь должен ввести пароль или открыть файл с паролем. Если с программой работает кто-то чужой, то ему ещё надо найти и узнать этот пароль или файл. Если среди вас есть специалисты или любители по взлому, то прошу вашего внимания: можно ли данную защиту обойти? Понятно, что у кого-то не за один присет получится, но интересно: получится ли вообще?
Цель создания программы - не настройки системы, а способ защиты информации.
Вложения
Тип файла: rar HVFS.rar (118.8 Кб, 21 просмотров)
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
NetSpace вне форума Ответить с цитированием
Старый 31.08.2011, 22:31   #2
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,814
По умолчанию

Я не прошу подобрать пароль, т.к. он длинный и из нестандартных символов. поэтому нужен другой подход. вот и спрашиваю: а он вообще есть?
просто в программе использован способ многократного самокопирования кода уже скомпилированнного приложения в само себя. пока получил конечное работающее приложение, пришлось скомпилировать 10 приложений и записать одно в другое. жуть несусветная и мозги вскипели. а тут вдруг найдётся простой способ, как сломать защиту...
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
NetSpace вне форума Ответить с цитированием
Старый 02.09.2011, 16:40   #3
Son Of Pain
Участник клуба
 
Регистрация: 23.12.2010
Сообщений: 1,129
Хорошо

Проверил, пароль во вложении.
Пришлось потратить целых 7 минут

алгоритм:
1) Открываем файл в ida, видим, что он запакован.
2) Видим, что паковался он Upack'ом (ну или берем PEiD, если на глаз определить не получилось).
3) Распаковываем файл (например, плагин к PE Explorer автоматически умеет снимать Upack в два клика).
4) Открываем распакованную программу в ida. Видим, что написана она на делфи. Парсим скриптом rtti для класса form1.
5) Смотрим на список методов, видим там подозрительное имя readpass. Просматриваем по диагонали этот метод (даже особо вчитываться в ассемблерный листинг не нужно) - видим сравнение прочитанного из файла с чем-то в памяти.
6) Сохраняем это "что-то" в файл (100 байт по смещению 0x43774 в распакованной программе), получаем вероятный пароль.
7) Запускаем, проверяем нашу догадку, радуемся. Finita la comedia.
Вложения
Тип файла: txt password.txt (100 байт, 134 просмотров)
Son Of Pain вне форума Ответить с цитированием
Старый 02.09.2011, 17:08   #4
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

NetSpace, если тебя одолела паранойя никогда не проверяй пароль простым сравнением... Представь, что элементы пароля это числа. А числа это коэффициенты только тебе одному известного уравнения... В результате должно получиться тоже число (ну например нуль, потому что это одна из самых частых проверок условий)... Вот и все. Да ну и сам понимаешь это должно быть как минимум не простое kx+b .
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 02.09.2011, 20:11   #5
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,814
По умолчанию

Браво! Спасибо, господа Son Of Pain и Utkin, ваши ответы подтолкнули меня к новым идеям, не факт, что блестящим, но надо же как-то самосовершенствоваться и нарабатывать опыт, который есть сын ошибок трудных...
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.

Последний раз редактировалось NetSpace; 02.09.2011 в 20:14.
NetSpace вне форума Ответить с цитированием
Старый 24.09.2011, 16:25   #6
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,814
По умолчанию Защита без оператора IF

День добрый! Чтоб не плодить похожие темы, пишу здесь же. Реализовал простейшую программку с паролем, в которой нет ни одного оператора IF для сравнения. Но пароль ввести надо, чтоб выполнилось какое-то следующее действие, иначе это просто мёртвая форма. Теперь как-нибудь эту защиту обойти можно? или просто подобрать пароль методом перебора? А вытащить из программы правило, по которому получается код можно?
Очень (с нетерпением) жду критики.
Вложения
Тип файла: rar 123.rar (114.3 Кб, 9 просмотров)
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.

Последний раз редактировалось NetSpace; 24.09.2011 в 16:39.
NetSpace вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проверьте кто может программу по алгоритму Антон11 Помощь студентам 2 07.01.2011 15:51
Кто может доделать программу? Neadekvat Помощь студентам 0 05.12.2010 21:12
Кто может написать программу для организации? Алина Пася Фриланс 7 24.04.2008 20:15