Форум: "Сети";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];
ВнизХочу попробывать написать фаервол. Найти похожие ветки
← →
Николай (2004-06-05 00:11) [0]Хочу попробывать написать фаервол стоит ли братся?
Думаю что есть только смысл отслеживать на уровне ниже ОС т.е. писать драйвер.
Посоветуйте пожалуста инфу по этой теме, может где исходники можно глянуть.
Зарание благодарен.
← →
nomshar (2004-06-05 13:26) [1]Драйвер чего? Сетевой карты?
А насчет ссылок. Вот довольно-таки неплохая:
http://www.ntkernel.com/articles/firewall.shtml
Ну и конечно: http://msdn.miscrosoft.com
← →
BiN © (2004-06-05 15:18) [2]...Думаю что есть только смысл отслеживать на уровне ниже ОС т.е. писать драйвер.
Ниже ОС - только BIOS
А драйвер на дельфи написать нельзя, в принципе.
← →
Николай (2004-06-05 16:40) [3]nomshar (05.06.04 13:26) [1]
Да да читал. Кстати там тоже рекомендуют писать драйвер.
BiN © (05.06.04 15:18) [2]
Ну на делфи драйвер я писать и не собирался.
Ну, что скажете, стоит братся? Или слишком трудно покажится?
← →
Николай (2004-06-05 16:50) [4]>Ну и конечно: http://msdn.miscrosoft.com
ссылка мертвая.
← →
Iraizor © (2004-06-05 17:12) [5]Николай
lol :D
ты чего про msdn не наешь ? просто nomshar допустил ошибку в линке , домен microsoft , а не miscrosoft.
← →
Николай (2004-06-05 18:35) [6]Iraizor © (05.06.04 17:12) [5]
откуда
← →
Николай (2004-06-05 18:45) [7]Вот пока есть дровина в общих чертах.
.386
.model flat, stdcall
; I N C L U D E F I L E S
;#########################################################################
include D:\masm32\include\w2k\ntstatus.inc
include D:\masm32\include\w2k\ntddk.inc
include D:\masm32\include\w2k\pfhook.inc
include D:\masm32\include\w2k\ntoskrnl.inc
include D:\masm32\Macros\Strings.mac
includelib D:\NTDDK\libfre\i386\ntdll.lib
includelib D:\NTDDK\libfre\i386\ntoskrnl.lib
;P R O T O
;##########################################################################
set_hook PROTO :PacketFilterExtensionPtr
; D A T A
;##########################################################################
.data
CCOUNTED_UNICODE_STRING "\\Device\\IPFILTERDRIVER" ,drvsmbl,4
ipfilter_name UNICODE_STRING <>
hook_nfo PF_SET_EXTENSION_HOOK_INFO <>
status NTSTATUS ?
devobj PDEVICE_OBJECT ?
isb IO_STATUS_BLOCK <>
fileobj PFILE_OBJECT NULL
myirp PIRP NULL
; C O D E
;############################################################################
.code
; DriverEntry
;############################################################################
DriverEntry proc pDriverObject:PDRIVER_OBJECT, pusRegistryPath:PUNICODE_STRING
mov eax,offset hookproc
invoke set_hook, eax
.if eax != STATUS_SUCCESS
ret
.endif
mov eax, pDriverObject
assume eax:PTR DRIVER_OBJECT
mov [eax].DriverUnload,offset Unload
assume eax:nothing
mov eax,STATUS_SUCCESS
ret
DriverEntry endp
; Windows 2000 hook (built in)
;###############################################################################
Unload proc p1DriverObject:PDRIVER_OBJECT
invoke set_hook,NULL
ret
Unload endp
;###############################################################################
set_hook proc hook_fn:PacketFilterExtensionPtr
invoke IoGetDeviceObjectPointer,addr drvsmbl,STANDARD_RIGHTS_ALL,\
addr fileobj,addr devobj
mov status,eax
.if eax != STATUS_SUCCESS
jmp exit
.endif
mov eax,hook_fn
mov hook_nfo.ExtensionPointer,eax
invoke IoBuildDeviceIoControlRequest,IOCTL_PF_SET_EXTENSION_POINTER(),\
devobj, addr hook_nfo,\
sizeof hook_nfo, NULL, 0, FALSE, NULL,addr isb
mov myirp,eax
.if eax == NULL
mov status ,STATUS_INSUFFICIENT_RESOURCES
jmp exit
.endif
invoke IoCallDriver,devobj,myirp
mov myirp,NULL
mov eax,STATUS_SUCCESS
ret
exit:
.if fileobj!=NULL
invoke ObDereferenceObject,fileobj
.endif
mov eax,status
ret
set_hook endp
;###############################################################################
hookproc proc PacketHeader:PTR BYTE, Packet:PTR BYTE, PacketLength:WORD,
RecvInterfaceIndex:WORD,SendInterfaceIndex:WORD,RecvLinkNextHop:DWORD,
SendLinkNextHop:DWORD
mov eax,PF_DROP
ret
hookproc endp
end DriverEntry
← →
rrew (2004-06-05 19:30) [8]на счет драйверов вы зря, я пару раз натыкался в сети на исходники драйверов написаных на Дельфи.
P.S. А вот как они работают это уже второй вопрос! :)
← →
BiN © (2004-06-05 23:35) [9]rrew (05.06.04 19:30) [8]
на счет драйверов вы зря, я пару раз натыкался в сети на исходники драйверов написаных на Дельфи.
Нет, не натыкался. Это могло быть что угодно, но не драйвер, написанный на дельфи.
А вот ссылка есть по теме, кажется, даже с исходниками
http://www.wasm.ru/article.php?article=netfilter
← →
Николай (2004-06-06 02:30) [10]вопрос в следующим: Стоит ли братся за енто дело или нет?
Желание <> возможность.
← →
Anatoly Podgoretsky © (2004-06-06 16:52) [11]Стоит
← →
Владимир (2004-06-23 16:32) [12]есть пример на Си и на Делфи фирика (разные варианты)
малость есть доки на эту тему.
пиши майл отпишу договоримся
← →
Amoral © (2004-06-23 20:41) [13]Давай же уже! 8)
AmoralSoft@nsk.ru
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.036 c