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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.05.2008, 12:03   #1
Omega1
 
Регистрация: 13.05.2008
Сообщений: 3
По умолчанию Защита файлов от удаления (assembler)

Здравствууйте, помогите пожалуйста с курсовым проектом на ассемблере, язык я начал изучать совсем недавно, как и получил задание на курсовой, на парах делали только 1 лабораторку и то надо было исправить ошибки в написаной программе пользуясь конспектом), а тут "такое" задание. Дословно : "TSR програма для защиты файлов от удаления" . Спасите.
Omega1 вне форума Ответить с цитированием
Старый 13.05.2008, 13:33   #2
Vedrus
ИСККОНный хакер
Форумчанин
 
Аватар для Vedrus
 
Регистрация: 08.11.2007
Сообщений: 195
По умолчанию

А у самого идеи есть?
Если нет, то помощь через гастроном.
#define QUESTION bb || !bb
Vedrus вне форума Ответить с цитированием
Старый 13.05.2008, 19:53   #3
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

делается это всего лишь одной строчкой кода, и на ассемблере тоже почти одной

запрет доступа
Код:
f:=CreateFile('f:\qqq.txt',GENERIC_READ+GENERIC_WRITE,0,0,OPEN_EXISTING,0,0);
В MASM или FASM также
Код:
invoke CreateFileA, filename,GENERIC_READ+GENERIC_WRITE,0,0,OPEN_EXISTING,0,0
mov [f], eax
разрешение доступа к файлу
CloseHandle(f)
в MASM или FASM
invoke CloseHandle, [f]
rpy3uH вне форума Ответить с цитированием
Старый 13.05.2008, 20:22   #4
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

rpy3uH, согласился бы, но фраза "TSR програма для......." наводят на мысль об INT 21h и перехвате функций 13h и 41h...
B_N вне форума Ответить с цитированием
Старый 13.05.2008, 20:59   #5
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

Цитата:
Сообщение от B_N Посмотреть сообщение
rpy3uH, согласился бы, но фраза "TSR програма для......." наводят на мысль об INT 21h и перехвате функций 13h и 41h...
ты прав и я догадывался об этом. да и тем более препод, которому будет сдаваться курсовик, наверно не знает что существует .model flat и даже не представляет что в существуют API функции, которые позволяют всё это сделать одной строчкой.
rpy3uH вне форума Ответить с цитированием
Старый 14.05.2008, 10:27   #6
Omega1
 
Регистрация: 13.05.2008
Сообщений: 3
По умолчанию

Цитата:
А у самого идеи есть?
Конечно были, но я решил их не выставлять. По моему алгоритму программа получалась бы наверное слишком длинная. Вобщем, плохие идеи.
Может поможет список "условий" из техзадания:
1. Программа должна иметь имя файла, который необходимо защитить
2. Программа должна запускаться с запуском ос
3. Программа может работать с реальным режимом работы процессора (?)
4. Обьем не должен быть больше чем 2 кб (ну с 1 строкой в проге думаю не страшно)
5. Файл проги должен не удаляться после загрузки в память
6. Система может защищать файлы любого обьема
7. Можно как выгрузить прогу из памяти так и загрузить ее снова.
Omega1 вне форума Ответить с цитированием
Старый 14.05.2008, 10:39   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Вообще B_N четко сказал, нужно перехватывать определенные прерывания под ДОСом.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.05.2008, 12:50   #8
Vedrus
ИСККОНный хакер
Форумчанин
 
Аватар для Vedrus
 
Регистрация: 08.11.2007
Сообщений: 195
По умолчанию

Omega1, как сделать вашу программу я уже придумал. Но если своих идей не выложите, то бесплатно никто Вам делать программу не будет.
#define QUESTION bb || !bb
Vedrus вне форума Ответить с цитированием
Старый 14.05.2008, 13:20   #9
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

Цитата:
Сообщение от Omega1 Посмотреть сообщение
3. Программа может работать с реальным режимом работы процессора (?)
4. Обьем не должен быть больше чем 2 кб (ну с 1 строкой в проге думаю не страшно)
я тебе дал решение для 32 битных программ под Windows! а ты согласно 3 пункту уделаешь 16 битную программу под DOS.
решение задачи: перехват прерывания открытия файлов, если пытаются открыть защищаемый файл, то возвращаем ошибку.

Последний раз редактировалось rpy3uH; 14.05.2008 в 13:27.
rpy3uH вне форума Ответить с цитированием
Старый 14.05.2008, 14:17   #10
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

rpy3uH, Вы, имхо, путаете...
Цитата:
решение задачи: перехват прерывания открытия файлов, если пытаются открыть защищаемый файл, то возвращаем ошибку.
нужно не на открытие файлов вешаться, а на попытку удаления!
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
обработчики добавления и удаления в дерево (TreeView) kayman Компоненты Delphi 10 08.03.2010 11:17
Очистка формата после удаления макроса valerij Microsoft Office Excel 2 14.06.2008 12:00
Нужна программа для удаления содержимого папки DNK1980 Фриланс 6 11.02.2008 16:52
Защита файлов от удаления Viteef Свободное общение 5 15.06.2007 22:44
Защита файлов от удаления Viteef Общие вопросы Delphi 10 02.06.2007 07:40