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

Вниз

FileIntercept   Найти похожие ветки 

 
kernel ©   (2006-12-12 15:29) [0]

Доброго времени суток, уважаемые дельфи-писатели.

Нашел довольно много информации о том, как отследить удаление\изменение\появление какого-либо файла. Но не могу найти информацию о том как перехватить удаление\изменение\появление какого-либо файла. Например, чтобы перед удалением файла "c:\boot.ini" выводилось сообщение "Вы действительно хотите удалить файл C:\BOOT.INI? [Yes], [No]" и в случае отрицательного ответа  файл не удалился. Писать свой драйвер ФС? Подскажите путь. Заранее спасибо.


 
BiN ©   (2006-12-12 15:32) [1]


>  Писать свой драйвер ФС?

Да или драйвер фильтра.


 
kernel ©   (2006-12-12 15:41) [2]

А драйвер фильтра писать проще чем ФС?


 
BiN ©   (2006-12-12 15:49) [3]


> kernel ©   (12.12.06 15:41) [2]
>
> А драйвер фильтра писать проще чем ФС?

Менее трудоемко.


 
kernel ©   (2006-12-12 15:57) [4]

Давно, помню, пробовал писать драйвер в роде giveio и то не получилось. Тем более, что из #C я знаю пару "слов" и не более. Есть ли у кого-нибудь информация о написании драйвера фильтра?


 
BiN ©   (2006-12-12 16:21) [5]

Тебе бы для начала Солдатова "Программирование драйверов Windows" почитать и "Внутреннее устройство..." Руссиновича. А затем уже читать, например, исходники filemon-a (есть на wasm.ru)


 
kernel ©   (2006-12-12 16:47) [6]

Ну, исходники filemon`a я видел, но как-то они мне не подошли. Тем более мне только VXD попадался.


 
kernel ©   (2006-12-12 16:54) [7]


> Тебе бы для начала Солдатова "Программирование драйверов
> Windows" почитать и "Внутреннее устройство..." Руссиновича.
>  А затем уже читать, например, исходники filemon-a (есть
> на wasm.ru)


Спасибо, уже качаю :)

Забыл спросить. А как перехватывать удаление\изменение\появление какого-либо ключа в реестре? Тоже "фильтр" писать надо?


 
Игорь Шевченко ©   (2006-12-12 17:29) [8]


> А как перехватывать удаление\изменение\появление какого-
> либо ключа в реестре? Тоже "фильтр" писать надо?


Да.

Но такие решения обычно делают настройкой прав, а задавать каждый раз вопросы - оно нафиг никому не надо.


 
kernel ©   (2006-12-12 17:45) [9]

А перехват API - это не оно?


 
BiN ©   (2006-12-12 17:53) [10]


> kernel ©   (12.12.06 17:45) [9]
>
> А перехват API - это не оно?

Непрофессиональное решение, имо.
Перехват имеет смысл делать для исследования работы программы или изменения ее функциональности, но никак не для контроля доступа к защищаемым объектам. К тому же от перехвата перехват можно защититься из режима пользователя.


 
kernel ©   (2006-12-12 17:57) [11]


> Непрофессиональное решение, имо.
> Перехват имеет смысл делать для исследования работы программы
> или изменения ее функциональности, но никак не для контроля
> доступа к защищаемым объектам. К тому же от перехвата перехват
> можно защититься из режима пользователя.


Но по-моему самое простое решение :/


 
n0name   (2006-12-13 23:14) [12]

>К тому же от перехвата перехват можно защититься из режима пользователя.
Угу, особенно после правки перехватчиком SSDT для собственных нужд ;-)
Хотя можно восстановить его, но доступ к PhysicalMemory уже не актуален.


 
BiN ©   (2006-12-14 00:41) [13]


> n0name   (13.12.06 23:14) [12]
>
> >К тому же от перехвата перехват можно защититься из режима
> пользователя.
> Угу, особенно после правки перехватчиком SSDT для собственных
> нужд ;-)

Речь, вообще-то, шла о перехвате win-api функций, а не системных сервисов.
Кстати, насчет PhysicalMemory. Встречал описание смешного метода открытия доступа к PM в 2003/Vista из режима пользователя... через VDM.


 
n0name   (2006-12-14 10:33) [14]


> Речь, вообще-то, шла о перехвате win-api функций

Ну почему, нигде явно это не указано. Просто перехват api. Будь то win, или nt, для автора думаю не так уж и важно.

>  Встречал описание смешного метода открытия доступа к PM
> в 2003/Vista из режима пользователя... через VDM.

Угу, насчёт актуальности я был неправ, однако пока мало софта использующего это.


 
kernel ©   (2006-12-14 16:49) [15]

Господа, что-то даже перехватом API не понимаю как сделать :/ Подскажите, как? Нигде доков найти не могу  8(


 
BiN ©   (2006-12-14 17:13) [16]


> kernel ©   (14.12.06 16:49) [15]
>  Нигде доков найти не могу  8(

Сомневаюсь, что ты искал.
google->перехват api


 
kernel ©   (2006-12-14 17:23) [17]


> Сомневаюсь, что ты искал.
> google->перехват api


Про перехват апи нашел доки только о том, как засунуть dll в какой-нибудь процесс. Ничего, связанного с реестром найти не могу.


 
n0name   (2006-12-15 05:44) [18]

http://www.wasm.ru/article.php?article=1021007
http://www.wasm.ru/article.php?article=hidingnt



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

Форум: "WinAPI";
Текущий архив: 2007.05.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.05 c
2-1177277659
***mikle***
2007-04-23 01:34
2007.05.13
Как посоветуете реализовать


15-1176379649
stone
2007-04-12 16:07
2007.05.13
По следам первоапрельской "шутки".


2-1176989057
allucard
2007-04-19 17:24
2007.05.13
Есть окно Form2, но его необходимо создать автоматически


2-1177047683
Alexey (AZ)
2007-04-20 09:41
2007.05.13
Вопрос по оформлению: implementation & interface


4-1164404967
Kaharin
2006-11-25 00:49
2007.05.13
Как определить работает дисплей (монитор) или нет





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский