Смекни!
smekni.com

Интранет сети (стр. 8 из 8)

mov bp,sp

push ds

lds si,[bp+x+8]

mov ax,[si] ; flags into al

lds dx,[bp+x] ; pointer to the asciiz string

lds si,[bp+x+4]

mov bp,[si] ; time out into bp

mov ah,0EBH

int 21h

mov ah,00h

pop ds

pop bp

ret 12

asclog endp

;--------------------------------

; ASCIIZ file unlock (236) (EC)

;

; var

; RetCode : Integer;

; Asciiz : String[n];

;

; RetCode := asculkf(Asciiz);

;

begin asculkf

mov ah,0ECH

call arg1a

ret 4

asculkf endp

;--------------------------------

; ASCIIZ Clear file func(237) (EDH)

;

; var

; RetCode : Integer;

; Asciiz : String[n];

;

; RetCode := ascclrf(Asciiz);

;

begin ascclrf

mov ah,0EDH

call arg1a

ret 4

ascclrf endp

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;

; Get Physical Station Number EEH

;

; var

; StationNo : Integer;

;

; StationNo := Get_PSN;

;

begin Get_PSN

mov ah,0EEh

int 21h

mov ah,0

ret

Get_PSN endp

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;

; Get Shell Table Addresses (239) EFH

;

; var

; Mode,Segment,Offset : Integer;

;

; Get_STA(Mode,Segment,Offset);

;

begin Get_STA

push bp

mov bp,sp

push es

push ds

mov si,[bp+x+8] ; get the mode

mov ax,[si]

mov ah,0EFh ; set the function

int 21h

lds di,[bp+x+4] ; store the segment location

mov [di],es

lds di,[bp+x] ; store the offset location

mov [di],si

pop ds

pop es

pop bp

ret 12

Get_STA endp

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;

; Set Preferred File Server (240) F0H

;

; var

; RetServer, Mode, NewServ : Integer;

;

; RetServer := SetServ(Mode,NewServ);

;

begin SetServ

push bp

mov bp,sp

push ds

mov si,[bp+x+4] ; get the mode

mov ax,[si]

mov di,[bp+x] ; set the preferred server number

mov dx,[di]

mov ah,0F0h ; set the function

int 21h

mov ah,0

pop ds

pop bp

ret 6

SetServ endp

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;

; Attach/Detach To File Server (241) F1H

;

; var

; RetCode, Mode, NewServ : Integer;

;

; RetCode := ModServ(Mode,NewServ);

;

begin ModServ

push bp

mov bp,sp

push ds

lds si,[bp+x+4] ; get the mode

mov ax,[si]

lds di,[bp+x] ; set the preferred server number

mov dx,[di]

mov ah,0F1h ; set the function

int 21h

mov ah,0

pop ds

pop bp

ret 6

ModServ endp

;-------------------------------

; Place a single integer argument into dx

; with a return code

arg1 proc near

push bp

mov bp,sp

push ds

lds si,[bp+x+2]

mov dx,[si] ; dx gets the argument

int 21h

mov ah,0 ; clear ah for al return code

pop ds

pop bp

ret

arg1 endp

;--------------------------------

; Place a single integer argument into bp

; for use with time outs - with a return code

arg1t proc near

push bp

mov bp,sp

push ds

lds si,[bp+x+2]

mov bp,[si] ; dx gets the argument

int 21h

mov ah,0 ; clear ah for al return code

pop ds

pop bp

ret

arg1t endp

;--------------------------------

; Process an fcb address in a

; function call with a return code

arg1f proc near

push bp

mov bp,sp

push ds

lds dx,[bp+x+2] ; dx gets the argument

int 21h

mov ah,0 ; clear ah for al return code

pop ds

pop bp

ret

arg1f endp

;--------------------------------

; Process a single string argument in a

; function call with a return code

arg1a proc near

push bp

mov bp,sp

push ds

lds dx,[bp+x+2] ; ptr to parameter string

; inc dx ; add 1 to get the address of the string

int 21h

mov ah,0 ; clear ah for al return code

pop ds

pop bp

ret

arg1a endp

;----------------------------

; Perform a single integer argument

; but without a return code

arg1wor proc near

push bp

mov bp,sp

push ds

lds si,[bp+x+2]

mov dx,[si] ; dx gets the arg (or ptr)

int 21h

pop ds

pop bp

ret

arg1wor endp

;----------------------------

; Perform a single string argument

; but without a return code

arg1awor proc near

push bp

mov bp,sp

push ds

lds dx,[bp+x+2]

inc dx ; add 1 to get the start of the string

int 21h

pop ds

pop bp

ret

arg1awor endp

;----------------------------

; Handle a request$ and reply$ function

; with error code

req_rep proc near

push bp

mov bp,sp

push ds

push es

lds si,[bp+x+6] ; ptr to req. string

inc si ; add 1 to get the address of the string

les di,[bp+x+2] ; ptr to var desc block for reply buf

inc di ; add 1 to get the address of the string

pushf ; save the direction flag

int 21h

popf

mov ah,0

pop es

pop ds

pop bp

ret

req_rep endp

cseg ends

end

6. В И Р У С Ы И N E T W A R E

При работе сети NetWare фирмы Novell для совместного использо-

вания сетевого дискового пространства используется "прозрачный ре-

жим". Пользователь за комьютером видит сетевые диски в виде допол-

нительных винчестеров (F: G: ...). Особенностью этих винчестеров

является то, что для них поддерживаются все операции над файлами и

не поддерживаются операции пямого доступа к секторам диска. Драй-

вера устойств для этих дополнительных букв не существуют и все

операции над ними иммитируются путем перехвата различных прерыва-

ний.

Проблема поведения вирусов на сетевых дисков сразу же распада-

ется на две в зависимости от ответа на вопрос: выполняется ли ви-

рус на машине управляющей сетью (и содержащей сетевые диски) или

нет.

Если вирус выполняется на управляющей машине, то он имеет дост-

уп в MBR, BOOT и к секторам диска. Пока нет подтвержденной инфор-

мации о существовании вирусов знакомых со структурой диска

NetWare. Попытка "не грамотного" вируса записаться на диск NetWare

и в MBR скорее всего окончится плачевно. И не сколько для вируса,

сколько для NetWare. Поэтому для защиты от BOOT-вирусов рекоменду-

ется сохранять 0-ю дорожку. На этой дорожке содержется не только

MBR, но и начало раздела NetWare. Восстановление 0-й дорожки из

копии не всегда, наверное, возможно, но в ряде случаев это помога-

ет. В случае неуспеха еще остается тонкий анализ содержимого ста-

рой и поврежденной 0-й дорожки. Если такой анализ удастся провес-

ти, то возможно ручное восстановление потеянной информации.

Если на управляющей машине вместе с сетью работает DOS, то воз-

можно нарушение работы NetWare в памяти и, как следствие, разнооб-

разные курьезы. Поэтому к чистоте от вирусов управляющей машины

локальной сети следует относится особенно серьезно.

Если вирус выполняется на другой машине, то он не имеет физи-

ческого доступа к диску. Разговор в этом случае может идти только

о файловых вирусах. При этом нужно учесть, что пользователь сети

обычно не имеет доступа на запись ко всем файлам (особенно систем-

ным). Возможность превысить права доступа практически не возможна.

Покрайней мере пока в системе защиты нет явных проколов админист-

ратора сети и не известны "люки" в защите NetWare.

Поведение вирусов в NetWare распадается на три группы: - те кто

успешно функционирует в сети; - те кто заражает файлы на локальных

дисках, но отказывается заpажать файлы в сети (среди них есть та-

кие которые самоочищаются при копировании в сеть зараженного файла

при активном вирусе); - и те кто теряет работоспособность при ак-

тивной сети.

Распределение вирусов по этим группам можно обьяснить следующи-

ми обстаятельствами. В первую группу попадают наиболее примитивные

файловые вирусы котоые законно используют функции DOS для своих

целей. Такие фирусы довольно легко отлавливаются различными сторо-

жевыми средствами. Во вторую группу попадают вирусы которые пыта-

ются бороться с антивирусными средствами. Сеть при этом они также

обходят и поэтому работа с сетью для них не видна. В эту группу

попадает наверное большинство "СТЕЛС"-вирусов. Третью группу сост-

авляют неудачно написанные вирусы из второй группы. Они перестают

работать из-за конфликтов с оболочкой NetWare.


Список литературы.

1. Aнгло-русский словарь терминов NetWare. (13 cтр.)

Чусов В.Е.

2. Англо-русский глоссарий терминов NetWare. (66 стр.)

Чусов В.Е.

3. Введение в локальные вычислительные сети. (45 стр.)

Груздев А.Ю.

4. Texничecкиe cpeдcтвa лoкaльныx ceтeй. (27 стр.)

Гaвpилoв A.B.

5. Введение в сетевые операционные системы NetWare

фирмы Novell. (55 стр.) Груздев А.Ю.

6. Концепции построения и основные особенности системы

NetWare 386. (49 стр.) Груздев А.Ю.

7. Установка NetWare 386. (86 стр.) Гордеев В.В.

8. Установка рабочей станции DOS ODI в сети NetWare 386.

(26 стр.) Гордеев В.В.

9. Cтpyктypa кaтaлoгa, cтpyктypa пoльзoвaтeлeй и cиcтeмa

зaщиты ceти NetWare (62 cтp.) Чycoв B.E.

10. Интерфейс пользователя с системой.

Утилиты меню и утилиты командной строки NetWare 386.

(152 стр.) Шабалин А.Р.

11. Печать в сетевой операционной системе NetWare 386.

(83 стр.) Милентьев А.Д

12. Оперативное управление работой сетевой ОС NetWare 386.

(51 стр.) Поваров А.В.

13. Средства построения гетерогенных комплексов

фирмы Novell. (42 стр.) Коровкин С.Д.

14. Коммуникационные средства фирмы Novell.

(47 стр.) Коровкин С.Д.

15. Проектирование, создание и использование баз данных,

реализованных с применением продуктов фирмы Novell.

(79 стр.) Зимин В.В.

16. Практическое сравнение различных средств управления

данными в среде сетевой ОС NetWare фирмы Novell.

(41 стр.) Зимин В.В.

17. Использование FoxBase+ и Clipper в локальной сети.

(17 стр.) Нестеренко Ю.П.

18. Барри Нанс, Программирование в локальных сетях