Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler
Регистрация

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

Ответ
 
Опции темы
Старый 03.04.2015, 01:10   #1
R71MT
Профессионал
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,172
Репутация: 953
По умолчанию Проверьте надёжность защиты

Есть конфиденциальные данные, и их нужно запаролить в программе.
Всё оформил, написал программку, но вот с паролем неуверен..
Прилагаю дам этого сом-файла (вернее функции защиты), и прошу вас вычислить к нему пароль, который я загнал в него. Если кто найдёт пароль, значит защита слабая и буду искать другие пути. Заранее спасибо:
Код:

Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

00000000  EB 3B 20 49 6E 70 75 74 20 70 61 73 73 77 6F 72  л; Input passwor
00000010  64 3A 20 24 0D 0A 20 2D 2D 2D 2D 2D 2D 2D 2D 2D  d: $.. ---------
00000020  2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 0D 0A 20  -------------.. 
00000030  50 61 73 73 77 6F 72 64 20 4F 4B 21 24 B4 09 BA  Password OK!$ґ.є
00000040  02 01 CD 21 31 D2 31 C0 CD 16 3C 0D 74 F6 30 E4  ..Н!1Т1АН.<.tц0д
00000050  01 C2 81 FA B6 01 75 EE B4 09 BA 14 01 CD 21 31  .ВЃъ¶.uоґ.є..Н!1
00000060  C0 CD 16 CB                                      АН.Л

Вложения
Тип файла: zip PASSWORD.ZIP (196 байт, 3 просмотров)
__________________
Нашедшего выход - затаптывают первым..

Последний раз редактировалось R71MT; 03.04.2015 в 01:15.
R71MT на форуме   Ответить с цитированием
Старый 03.04.2015, 09:03   #2
vadimych
Форумчанин
 
Регистрация: 16.01.2011
Сообщений: 325
Репутация: 175
По умолчанию

R71MT,
Код:

0146 31C0           XOR    AX,AX
0148 CD16           INT    16
014A 3C0D           CMP    AL,0D
014C 74F6           JZ     0144
014E 30E4           XOR    AH,AH
0150 01C2           ADD    DX,AX
0152 81FAB601       CMP    DX,01B6

Соответственно, пароль - любые символы, значения которых в сумме дают 1B6h. Например mnmn. Или IIIIII. А зачем прога завершается retf?
vadimych вне форума   Ответить с цитированием
Старый 03.04.2015, 18:23   #3
R71MT
Профессионал
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,172
Репутация: 953
По умолчанию

Цитата:
Сообщение от vadimych Посмотреть сообщение
Например mnmn. Или IIIIII. А зачем прога завершается retf?
Выходит, что конкретно пароль сказать не сможеш? Это радует..
А 'retf' забыл изменить, т.к. использовал когда-то этот код для других целей: он вызывался из модуля биос (call far) и возвратить надо было 'retf', а не 'ret'

Появился ещё один вопрос..
Какая библиотека описывает инструкцию incbin?
Вернее, какую из инклуд нужно подключить, чтоб можно было использовать эту инструкцию? Если пишу просто.., то FASM ругается на синтаксис. Вот вырезка из хэлпа:

Код:

Псевдокоманда INCBIN - подключение двоичного файла.
Она упаковывает графические или звуковые файлы вместе с исполняемым файлом.

incbin "sound.wav"          ; упаковывает весь файл
incbin "sound.wav",512      ; пропускает первые 512 байтов
incbin "sound.wav",512,80   ; пропускает первые, и последние 80.

__________________
Нашедшего выход - затаптывают первым..
R71MT на форуме   Ответить с цитированием
Старый 03.04.2015, 19:59   #4
Stilet
Белик Виталий :)
Профессионал
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Адрес: Украина, Донецкая область, г. Краматорск
Сообщений: 57,957
Репутация: 6832
По умолчанию

Пароль: zzzH
Оценка защиты: Кол по 12-бальной
__________________
I'm learning to live...
Stilet вне форума   Ответить с цитированием
Старый 03.04.2015, 22:09   #5
R71MT
Профессионал
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,172
Репутация: 953
По умолчанию

Stilet, вообщет пароль не такой, но с оценкой - поверю тебе на-слово..
__________________
Нашедшего выход - затаптывают первым..
R71MT на форуме   Ответить с цитированием
Старый 03.04.2015, 22:26   #6
Stilet
Белик Виталий :)
Профессионал
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Адрес: Украина, Донецкая область, г. Краматорск
Сообщений: 57,957
Репутация: 6832
По умолчанию

Могу доказать:
Безымянный.jpg
Твой хеш - сумма введенных символов. А стало быть у него куча коллизий. Оставалось просто поподбирать такие символы, чтоб их кол-во нажатий было близко к хешу по сумме кодов + еще один символ дополняющий до суммы.
__________________
I'm learning to live...

Последний раз редактировалось Stilet; 03.04.2015 в 22:37.
Stilet вне форума   Ответить с цитированием
Старый 03.04.2015, 22:34   #7
R71MT
Профессионал
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,172
Репутация: 953
По умолчанию

Круто!!! Мой пароль был INT21h...
Снимаю шляпу!!!
__________________
Нашедшего выход - затаптывают первым..
R71MT на форуме   Ответить с цитированием
Старый 04.04.2015, 00:45   #8
R71MT
Профессионал
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,172
Репутация: 953
По умолчанию

А чё можно ещё придумать? Да штоб по-проще...
Сложные алгоритмы не осилю (только учусь), а в простых вся защита летит к чертям из-за вынужденных сравнений (cmp).

Может залить данные в stream-поток самого исполняемого файла, обозвав его как-нибудь, а потом проверять на ошибку открытия файла (мол, нет такого файла), ..и не нужно будет никаких сравнений. В этом случае - как узнать имя своего тела? Текущую директорию подскажет функция 47h, а своё имя? (блин, в голове больше вопросов, чем ответов)
__________________
Нашедшего выход - затаптывают первым..
R71MT на форуме   Ответить с цитированием
Старый 04.04.2015, 10:25   #9
alexcoder
Участник клуба
 
Регистрация: 31.05.2009
Сообщений: 735
Репутация: 410

skype: alexcoder1
По умолчанию

Мне понравилась эта идея:
http://www.allasm.ru/is_prog_11.php
__________________
Помощь с программами:
vk.com/alexcoder1
e-mail: informatik101@mail.ru
alexcoder вне форума   Ответить с цитированием
Старый 04.04.2015, 10:28   #10
Stilet
Белик Виталий :)
Профессионал
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Адрес: Украина, Донецкая область, г. Краматорск
Сообщений: 57,957
Репутация: 6832
По умолчанию

Говорят что трудно дзенить, если программа работает в многопотоке. Я когда-то шутки ради тут выкладывал прогу, что в двух-трех потоках проверяет части введенного пароля, и открывает или закрывает доступ к дальнейшему коду. Жаль что ссыль забылась. В какой-то старой теме, где ТС выкладывал свой крекми и просил оценить степень защиты.
__________________
I'm learning to live...
Stilet вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Надёжность, эргономичность и качество АСОиУ zverozavr Помощь студентам 0 26.01.2012 13:29
Надёжность сигналов-слотов Lindemann66 Qt и кроссплатформенное программирование С/С++ 1 18.10.2011 17:28
Система защиты на C# xil Общие вопросы .NET 9 08.06.2010 18:55
Обход защиты Niklan Софт 0 11.11.2009 23:35


18:23.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru