Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Savjeti
  • Koji računalni virusi postoje? Metode borbe? Karakteristike računalnih virusa. Provjera statusa FAT datotečnog sustava

Koji računalni virusi postoje? Metode borbe? Karakteristike računalnih virusa. Provjera statusa FAT datotečnog sustava

RAČUNALNI VIRUSI


I oštećene i zaražene datoteke
Klasifikacija virusa PREVENCIJA I SUZBIJANJE RAČUNALNIH VIRUSA

UVOD

Trenutno su mnoga područja ljudske aktivnosti povezana s upotrebom računala. Zašto su ove elektronički strojevi tako čvrsto ugrađen u naše živote? Sve je prilično trivijalno. Oni obavljaju rutinske računske i projektantske poslove, oslobađajući naš mozak za nužnije i odgovornije zadatke. Kao rezultat toga, umor se oštro smanjuje i počinjemo raditi puno produktivnije nego bez korištenja računala.
Mogućnosti modernih računala zadivljuju i najbogatiju maštu. Oni su u stanju obavljati nekoliko zadataka paralelno, čija je složenost prilično visoka. Stoga neki proizvođači razmišljaju o stvaranju umjetne inteligencije. A sada rad računala nalikuje radu inteligentnog elektroničkog pomoćnika osobe.
No tko bi rekao da ovo elektroničko čudo tehnologije karakteriziraju bolesti slične ljudskima. Njega, kao i čovjeka, može napasti "virus" ali računalni. A ako ništa ne poduzmete, računalo će se uskoro "razboljeti" tj. će se početi ispunjavati pogrešne radnje ili čak "umrijeti" tj. šteta uzrokovana "virusom" bit će vrlo ozbiljna. Što su računalni virusi i kako se s njima nositi, raspravljat ćemo dalje.

RAČUNALNI VIRUSI

Što je računalni virus?

Do danas postoji nekoliko glavnih vrsta zlonamjernog softvera:
- klasični računalni virus;
- trojanski ili trojanski konj (troj);
- crv (crv);
- špijun ili špijun, keylogger
-rootkick;
- bot ili zombi.

Svojedobno su klasični virusi bili najzastupljeniji - no njihovi tvorci rijetko su si postavljali konkretan cilj naštetiti krajnji korisnik, nego su stvoreni iz kognitivnih svrha. Današnji pisci virusa slijede potpuno jasne i razumljive ciljeve - novac, a njihova "djeca" postala su mnogo opasnija od svojih prethodnika. Dopustite mi da vam predstavim najopasnije predatore današnjeg informacijskog prostora - to su Trojanci i Crvi.
Trojan ili troj dobio je ime po sličnosti između načina zaraze i poznatog taktičkog poteza tijekom opsade Troje. Primjer zaraze Trojanom - primite pismo od određenog "poznanika" s tekstom: - "Bok! Upravo sam se vratio s mora - super sam se odmorio! Evo mojih slika - pogledajte.", i u prilogu datoteke s nastavkom ".JPG". Te iste datoteke trojanski su konj u čijim se dubinama krije maliciozni kod. Najčešći izvori zaraze su e-pošta, stranice za upoznavanje, glazbene stranice i stranice s besplatnim softverom. Što radi "trojanac"? U pravilu, njegova je zadaća otvoriti put drugim virusima, djelovati kao prva odskočna daska. Kako izbjeći infekciju "trojancem"? Ovdje je sve kao u životu - zaštitite se i izbjegavajte povremene veze =). Ovo pravilo vrijedi za sve viruse i druge zlonamjerne programe. Ako su te poslali elektronička pošta- prije gledanja privitaka provjerite pošiljatelja, privitak spremite na svoje računalo i provjerite ga antivirusom pa ga tek onda otvorite.

Crv ili Crv - značajka ovih programa u evoluciji i autonomiji. Kada crv uđe u računalo, obično napada programe za poštu i internetske stranice. Nakon što dobije pristup mailu ili pageru, počinje slati pisma/poruke koje sadrže modificiranu verziju sebe. Nakon toga se ili samouništava ili inficira izvršne datoteke (EXE, COM, BAT). Budući da se virus sam mijenja, neranjiv je sve dok se ne otkrije u bazi podataka vašeg antivirusa. Zato danas licencirani antivirus ovo je apsolutna potreba svakog vlasnika računala.

Računalni virus je posebno napisan mali program koji se može "pripisati" drugim programima (tj. "zaraziti" ih), kao i izvoditi razne neželjene radnje na računalu. Program koji sadrži virus naziva se zaraženim. Kada se takav program pokrene, virus prvo preuzima kontrolu. Virus pronalazi i "inficira" druge programe, a također izvodi neke štetne radnje (primjerice, kvari datoteke ili tablicu dodjele datoteka (FAT) na disku, "zagađuje" RAM itd.). Da bi se maskirao virus, radnje za zarazu drugih programa i nanošenje štete ne moraju se uvijek izvoditi, ali, recimo, pod određenim uvjetima. Nakon što virus izvrši potrebne radnje, on kontrolu prenosi na program u kojem se nalazi i on radi kao i obično. Stoga, izvana, rad zaraženog programa izgleda isto kao i nezaraženog programa.
Mnoge vrste virusa dizajnirane su na način da kada se zaraženi program pokrene, virus ostaje u memoriji računala i s vremena na vrijeme zarazi programe i izvede neželjene radnje na računalu.
Sve radnje virusa mogu se izvesti vrlo brzo i bez izdavanja ikakvih poruka, za ovog korisnika je vrlo teško, gotovo nemoguće, utvrditi da se na računalu događa nešto neobično.
Sve dok je na računalu zaraženo relativno malo programa, prisutnost virusa može biti gotovo nevidljiva. Međutim, nakon nekog vremena počinje se događati nešto čudno na računalu, na primjer:
- neki programi prestanu raditi ili počnu raditi neispravno;
- na ekranu se prikazuju strane poruke, simboli itd.;
- rad na računalu znatno usporava;
- neke datoteke su oštećene, itd.
Do ovog trenutka, u pravilu, dosta (ili čak većina) tehničkih programa s kojima radite je zaraženo virusom, a neke datoteke i diskovi su oštećeni. Štoviše, zaraženi programi s vašeg računala možda su već prebačeni pomoću disketa ili lokalne mreže na računala vaših kolega i prijatelja.
Neki virusi su vrlo podmukli. Isprva neprimjetno inficiraju veliki broj programa i diskova, a zatim uzrokuju vrlo ozbiljnu štetu, npr. sve teško disk na računalu, naravno nakon toga jednostavno je nemoguće vratiti podatke. A postoje virusi koji se ponašaju vrlo tajno i postupno kvare podatke na tvrdom disku ili pomiču tablicu dodjele datoteka (FAT).
Dakle, ako ne poduzmete mjere zaštite od virusa, posljedice infekcije mogu biti vrlo ozbiljne. Primjerice, početkom 1989 Virus, koji je napisao američki student Morris, zarazio je i onesposobio tisuće računala, uključujući i ona koja pripadaju američkom Ministarstvu obrane. Autora virusa sud je osudio na tri mjeseca zatvora i novčanu kaznu od 270 tisuća dolara. Kazna je mogla biti i stroža, no sud je uzeo u obzir da virus nije oštetio podatke, već se samo razmnožio.
Da bi virusni program bio nevidljiv, mora imati mala veličina. Stoga su virusi obično napisani u asemblerskim jezicima niske razine ili u naredbama C jezika niske razine.
Viruse pišu iskusni programeri ili studenti jednostavno iz znatiželje ili kako bi se osvetili nekome ili poduzeću koje se prema njima ponašalo na nedostojan način ili u komercijalne ili usmjerene sabotažne svrhe. Bez obzira na ciljeve autora, virus može završiti na vašem računalu i pokušati izvesti iste štetne radnje kao i one za koje je stvoren.
Treba napomenuti da pisanje virusa nije tako težak zadatak, sasvim dostupan studentu programiranja. Stoga se svaki tjedan u svijetu pojavljuje sve više i više novih virusa. A mnogi od njih su napravljeni u našoj zemlji.

Oštećene i zaražene datoteke

Računalni virus može upropastiti, t.j. neprikladno mijenjati bilo koju datoteku na diskovima dostupnim na računalu. Ali virus može "zaraziti" neke vrste datoteka. To znači da se u ove datoteke može "ubaciti" virus, tj. modificirati ih tako da sadrže virus koji pod određenim okolnostima može početi djelovati.
Treba imati na umu da tekstovi programa i dokumenata, podatkovne datoteke baza podataka, proračunske tablice i druge slične datoteke ne mogu biti zaražene običnim virusom, on ih samo može pokvariti. Zarazu takvih datoteka vrše samo makrovirusi. Ovi virusi mogu čak zaraziti i vaše dokumente.
Učitavač operativnog sustava i glavni zapis pokretanja tvrdog diska. Virusi koji inficiraju ova područja nazivaju se boot ili BOOT virusi. Takav virus počinje s radom pri prvom pokretanju računala i postaje rezidentni, tj. stalno se nalazi u memoriji računala. Mehanizam distribucije je infekcija boot zapisa umetnutih u diskete računala. Često se takvi virusi sastoje od dva dijela, jer je boot record mali i teško je u njih smjestiti cijeli virusni program. Dio virusa nalazi se u drugom dijelu diska, na primjer, na kraju korijenskog direktorija diska ili u klasteru u području podataka na disku (obično se takav klaster proglašava neispravnim kako bi se spriječio da virus ne bude prebrisan kada se podaci zapisuju).
Datoteke upravljačkih programa uređaja navedene u klauzuli DEVICE datoteke CONFIG.SYS. Virus koji se nalazi u njima počinje raditi svaki put kada se pristupi odgovarajućem uređaju. Virusi koji zaraze upravljačke programe uređaja vrlo su rijetki jer se upravljački programi rijetko kopiraju s jednog računala na drugo. Isto vrijedi i za datoteke DOS sustava (MSDOS.SYS i IO.SYS) – njihova infekcija je također teoretski moguća, ali neučinkovita za širenje virusa.

U pravilu, svaka posebna vrsta virusa može zaraziti samo jednu ili dvije vrste datoteka. Najčešće postoje virusi koji zaraze izvršne datoteke. Na drugom mjestu po prevalenciji su boot virusi. Neki virusi zaraze i datoteke i područja za pokretanje diska. Virusi koji zaraze upravljačke programe uređaja izuzetno su rijetki, obično takvi virusi mogu zaraziti i izvršne datoteke.

Klasifikacija virusa

Virusi se mogu podijeliti u klase prema različitim kriterijima. Evo, na primjer, na temelju izdaje:

Virusi koji trenutno zaraze računalo formatiraju tvrdi disk, kvare tablicu dodjele datoteka, kvare boot sektore, brišu tzv. Flash ROM (gdje se nalazi BIOS) računala (černobilski virus), drugim riječima, uzrokuju nepopravljivu štetu na računalo što je brže moguće. Ovo također uključuje rezultate pritužbi programera koji pišu viruse protiv antivirusnih programa. To se odnosi na takozvane alergije na određene antivirusne programe. Ovi virusi su prilično podmukli. Evo, na primjer, alergija na Dr.Weber prilikom pozivanja ovog programa, bez oklijevanja, blokira antivirus, pokvari sve što je u direktoriju s antivirusom i C: WINDOWS. Kao rezultat toga, morate ponovno instalirati operativni sustav, a zatim se boriti protiv virusa drugim sredstvima.
- virusi dizajnirani za dug život u računalu. Oni postupno i pažljivo inficiraju program za programom bez reklamiranja svoje prisutnosti i zamjenjuju početna područja programa poveznicama na mjesto gdje se nalazi tijelo virusa. Osim toga, oni čine promjenu u strukturi diska koja je neprimjetna za korisnika, što će se osjetiti tek kada su neki podaci već beznadno izgubljeni (na primjer, virus "OneHalf-3544", "Yankey-2C").
Na temelju načina prijenosa i razmnožavanja također se može napraviti podjela.
Ranije su virusi uglavnom pogađali samo izvršne datoteke (s ekstenzijama .com i .exe). Doista, virus je program i mora se izvršiti.
Sada se virusi šalju e-poštom kao demo programi ili kao slike, na primjer, ako ste primili datoteku "PicturesForYou.jpg" e-poštom, nemojte žuriti da je pogledate, pogotovo jer je došla niotkuda. Ako pažljivije pogledate naziv, ispada da ima još 42 razmaka i važeću ekstenziju .exe. To jest, stvarni puni naziv datoteke bit će:
"PicturesForYou.jpg .exe". Sada je svima jasno što ova slika zapravo nosi. Ovo nije slikovna datoteka koju preglednik slika poziva kada se aktivira, već drski, pomalo prikriveni virus koji samo čeka da bude aktiviran klikom miša ili pritiskom na tipku. Vi sami preuzimate takav virus na svoje računalo, ispod ljuske neke slike, poput " trojanski konj". Otuda žargonski naziv za takve viruse kao "Trojanci".
U ovom trenutku postoje takve školjke informacijskih kanala kao što su Internet Explorer, Outlook Express, Microsoft Office. Sada se pojavilo nekoliko klasa takozvanih "makro-virusa". Sadrže skrivene naredbe za ove ljuske koje su nepoželjne za prosječnog korisnika. I taj kod više nije kod za računalo, odnosno više nije program, već tekst programa kojeg izvršava ljuska. Dakle, može se napisati bilo kojim potreban format: .html, .htm - za Internet Explorer, .doc, .xls, .xlw, .txt, .prt ili bilo koji drugi - za Microsoft Office, itd. Takvi virusi uzrokuju samo štetu određene prirode, jer ljuska čini nema naredbe, na primjer, za formatiranje tvrdog diska. Ali ipak, ova vrsta virusa zaslužuje pozornost, jer uz pomoć skrivenih hiperveza može samostalno preuzeti tijelo virusa s interneta na vaše računalo, a neki virusi se mogu ažurirati i preuzimati u dijelovima putem interneta s određenih poslužitelja. . Primjerice, jedan od japanskih studenata razvio je upravo takav virus koji spaja mali "loader" na bilo koji format ulaznih podataka s Interneta. Nadalje, ovaj program za učitavanje samostalno preuzima tijelo virusa s interneta s poslužitelja s Babilon5 IP adresom. Postoje četiri ova tijela. Svaki od njih može samostalno uništiti vaše računalo, ali ima određenu svrhu. Ovaj tip virusa je hibrid između makro virusa i običnih virusa. Ali treba napomenuti da su hibridi najžilaviji, najlukaviji, najopasniji i najbrojniji među virusima. Nedavno je došlo do skandala oko programera koji je, prema stručnjacima, stvorio i počeo širiti makro virus koji je zarazio tekstualne datoteke za Microsoft Word. Izračunato je iz datuma i vremena stvaranja izvornog dokumenta, koji je pohranjen u nevidljivim dijelovima .doc datoteka. Moguće je da je datoteku stvorila neka druga osoba prije nego što je na nju priložen virus, tada pitanje napadača ostaje otvoreno. Ali stručnjaci kažu da je to on.
Na primjer, virus Win32.HLLM.Klez. jedna od vrsta opasnog mrežnog crva distribuira se slanjem svojih kopija e-poštom. Osim toga, ovaj se crv može širiti lokalnom mrežom, zaraziti računala čiji se diskovi dijele. mrežni resursi za pisanje. Jednom u sustavu, crv se šalje na adrese koje se nalaze u Windows adresaru, u ICQ bazi podataka iu lokalnim datotekama. Zaražene poruke e-pošte koje šalje ovaj crv koriste jedan od poznati bugovi u sigurnosnom sustavu Internet Explorer, koji omogućuje automatsko pokretanje programske datoteke (s virusom) priložene pismu prilikom jednostavnog pregledavanja pošte u Outlooku i Outlook Expressu.
Pokušajmo razmotriti metode maskiranja i zaštite koje koriste virusi protiv nas običnih korisnika i antivirusnih programa.
Perfidija je glavna i najvažnija brz način napraviti prljavi trik prije nego što budete otkriveni. Černobilski virus, na primjer, potpuno briše BIOS ( pokretanje programa, koji se nalazi u ROM čipu koji osigurava rad računala). Nakon toga računalo više neće moći prikazati ništa. Ali njegov se rad lako blokira ako je unutar računala instaliran prekidač koji zabranjuje pisanje u ROM područje. Dakle, bio je prvi, ali i, kako mislim, posljednji predstavnik hardverskih virusa.
Regenerativni virusi dijele svoje tijelo na nekoliko dijelova i pohranjuju ih u različite mjesta teška disk. U skladu s tim, ti se dijelovi mogu samostalno pronaći i sastaviti kako bi regenerirali tijelo virusa. Antivirusni program detektira i ubija samo tijelo virusa, a dijelovi tog tijela nisu uključeni u antivirusnu bazu podataka jer se mijenjaju. Ciljano niskorazinsko formatiranje tvrdog diska pomaže protiv takvih virusa. Moraju se poduzeti mjere opreza za očuvanje informacija.
Lukavi virusi skrivaju se ne samo od nas, već i od antivirusnih programa. Ti se "kameleoni" mijenjaju uz pomoć najlukavijih i najsloženijih operacija, koristeći i trenutne podatke (vrijeme stvaranja datoteke) i koristeći gotovo polovicu cijelog skupa procesorskih instrukcija. U određenom trenutku, naravno, prema lukavom algoritmu, pretvaraju se u opaki virus i počinju se obračunavati s našim računalom. Ovo je vrsta virusa koju je najteže otkriti, ali neki antivirusni programi, poput "Dr.Webera", mogu otkriti i neutralizirati slične viruse pomoću tzv. heurističke analize.
"Nevidljivi" virusi koriste takozvanu "Stelth" metodu kako bi spriječili svoje otkrivanje. Sastoji se od činjenice da virus koji se nalazi u memoriji presreće DOS pozive (a time i aplikacijske programe) zaraženim datotekama i područjima diska i izdaje ih u izvornom (neinficiranom) obliku. Naravno, ovaj se učinak primjećuje samo na zaraženom računalu - na "čistom" računalu lako se detektiraju promjene u datotekama i područjima za pokretanje diska. Ali neki antivirusni programi mogu otkriti "nevidljive" viruse čak i na zaraženim računalima.
Mrežni crv Randon pojavio se u ožujku 2003. Širi se putem IRC kanala i resursa lokalne mreže i zarazi računala s operativnim sustavima. Windows sustavi 2000 i Windows XP. Da bi ušao u računalo, povezuje se s lokalnom mrežom ili IRC poslužiteljem, skenira korisnike koji se nalaze na njemu, uspostavlja vezu s njima na portu 445 i pokušava pogoditi lozinku s ugrađenog popisa najčešće korištenih fraza. Ako je sustav uspješno kompromitiran, Random mu šalje Apher Trojan, koji zauzvrat preuzima ostatak komponenti crva s udaljene web stranice. Nakon toga "Randon" ugrađuje svoje komponente u sustav Windows imenik, registrira svoju glavnu datoteku. Za skrivanje prisutnosti u memoriji koristi posebna korisnost"HideWindows", koji je također sastavni dio crva. Zahvaljujući njoj, ispada da je nevidljiv korisniku, tako da se aktivni Randon proces može otkriti samo u Windows upravitelju zadataka. Njegove nuspojave su stvaranje velike količine viška prometa na zaraženom stroju i preplavljivanje IRC kanala.
Prema Kaspersky Labu, jednom od vodećih razvijatelja antivirusnih programa, predstavlja pregled aktivnosti virusa za ožujak 2003. (Tablica 2 i Slika 1)

Top 20 najčešćih zlonamjernih programa

tab. 2
Ime Udio u ukupnom broju virusnih incidenata (%)
1. I-Worm.Klez 37,60%
2. I-Worm.Sobig 10,75%
3. I-Worm.Lentin 9,03%
4. I-Worm.Avron 3,30%
5.Macro.Word97.Dakle 2,62%
6. I-Worm.Tanatos 1,38%
7. makro. Word97.Marker 1,21%
8. Worm.Win32.Opasoft 1,13%
9. I-Worm.Hybris 1,04%
10.Win95.CIH 0,69%
11. Worm.Win32.Randon 0,58%
12. VBS Redlof 0,57%
13. Backdoor.Death 0,51%
14.Win95.Spaces 0,51%
15. I-Worm.Roron 0,49%
16.Trojan.PSW.Gip 0,49%
17. Backdoor.NetDevil 0,48%
18.Win32.HLLP.Hantaner 0,45%
19. TrojanDropper.Win32.Delf 0,42%
20. TrojanDropper.Win32.Yabinder 0,41%
Ostali zlonamjerni softver* 26,33%

*nije uključeno u 20 najčešćih

PREVENCIJA I BORBA PROTIV RAČUNALNIH VIRUSA

Osnovne metode zaštite od računalnih virusa

Za zaštitu od virusa možete koristiti:
- Opća sredstva zaštite informacija, koja su korisna i kao osiguranje od fizičkog oštećenja diskova, neispravnog rada programa ili pogrešnih radnji korisnika;
- preventivne mjere za smanjenje vjerojatnosti zaraze računalnim virusom;
- specijalizirani programi za zaštitu od virusa.
-Uobičajeni alati za sigurnost informacija korisni su za više od puke zaštite od virusa. Postoje dvije glavne vrste ovih sredstava:
kopiranje informacija - stvaranje kopija datoteka i sistemskih područja diskova;
kontrola pristupa sprječava neovlašteno korištenje informacija, posebice zaštita od promjena programa i podataka virusima, neispravnim programima i pogrešnim radnjama korisnika.
Unatoč činjenici da su opći alati za informacijsku sigurnost vrlo važni za zaštitu od računalnih virusa, oni još uvijek nisu dovoljni. Za zaštitu od računalnih virusa potrebno je koristiti specijalizirane programe. Ovi se programi mogu podijeliti u nekoliko vrsta:
Detektorski programi omogućuju otkrivanje datoteka zaraženih jednim od nekoliko poznatih virusa.
Programi - liječnici, ili fagi, "liječe virusima" zaražene programe ili diskove, "izgrizaju" tijelo virusa iz zaraženih programa, tj. vraćanje programa u stanje u kojem je bio prije infekcije virusom.
Programi - revizori prvo pamte informacije o stanju programa i sistemskih područja diskova, a zatim uspoređuju njihovo stanje s izvornim. Ukoliko se utvrde odstupanja, korisnik se o tome obavještava.
Doktori – auditori su hibridi auditora i doktora, tj. programe koji ne samo da detektiraju promjene u datotekama i sistemskim područjima diskova, već ih mogu i automatski vratiti u prvobitno stanje.
Programi za filtriranje smješteni su rezidentno u RAM-u računala i presreću one pozive operativnom sustavu koje virusi koriste za reprodukciju i štetu te ih prijavljuju korisniku. Korisnik može omogućiti ili onemogućiti odgovarajuću operaciju.
Programi - cjepiva, odnosno imunizatori, modificiraju programe i diskove na način da to ne utječe na rad programa, ali virus protiv kojeg se provodi cijepljenje te programe i diskove smatra već zaraženima. Ovi programi su vrlo neučinkoviti i ne razmatraju se dalje.
Nažalost, niti jedna vrsta antivirusnog softvera ne pruža potpunu zaštitu od računalnih virusa. Stoga je najbolja strategija zaštite od virusa višerazinska, "slojevita" obrana. Opišimo strukturu ove obrane.
Sredstva za izviđanje u "obrani" od virusa odgovaraju programima - detektorima koji vam omogućuju provjeru novoprimljenog softvera na prisutnost virusa.
Na čelu obrane su filter programi (rezidentni programi za zaštitu od virusa). Ovi programi mogu prvi prijaviti napad virusa i spriječiti infekciju programa i diska.
Drugi ešalon obrane čine programi-revizori, programi-liječnici i doktori-revizori. Auditori otkrivaju napad čak i kada je virus uspio "procuriti" kroz prvu liniju obrane. Doctor programi se koriste za vraćanje zaraženih programa ako nema kopija u arhivi. Ali oni ne čine uvijek pravu stvar. Liječnici-revizori otkrivaju napad virusa i liječe viruse - zaražene datoteke, te kontroliraju ispravnost liječenja virusa, a ukoliko je nemoguće liječiti viruse, svakako preporučuju uklanjanje virusa (zaraženih datoteka).
Najdublji sloj obrane su sredstva kontrole pristupa. Ne dopuštaju virusima i programima koji se loše ponašaju, čak i ako su ušli u računalo, da pokvare važne podatke.
I, konačno, u "strateškoj rezervi" nalaze se arhivske kopije informacija i "referentne" diskete s programskim proizvodima. Omogućuju vam vraćanje podataka ako su oštećeni na tvrdom disku.

Programi - detektori i doktori

U većini slučajeva, za otkrivanje virusa koji je zarazio računalo, možete pronaći već razvijene detektorske programe. Ovi programi provjeravaju sadrže li datoteke na pogonu koje je odredio korisnik kombinaciju bajtova specifičnih za određeni virus. Kada se pronađe u bilo kojoj datoteci, na ekranu se prikazuje odgovarajuća poruka. Mnogi detektori imaju način liječenja ili uklanjanja virusa.
Treba napomenuti da detektorski program može otkriti samo one viruse koji su mu poznati (tj. navedeni su u antivirusna baza podataka programski podaci).
Jedan takav program je KIS Kaspersky.
Sve u njemu ima prikladno i razumljivo sučelje. Program je dizajniran za operativni sustav Windows XP i Windows Vista, što mu omogućuje paralelni rad s drugim aplikacijama. Kaspersky Lab je ruski lider u razvoju antivirusnih sigurnosnih sustava.
Tu je i AVAST.
Ovo su branitelji vašeg računala dokazani u radu - liječenju većine virusa i uklanjanju virusa u slučaju njihove kritične prijetnje ili neizlječivosti.
Većina detektorskih programa također ima funkciju "liječnika", tj. pokušavaju vratiti zaražene datoteke i područja diska u prvobitno stanje – za liječenje virusa. Datoteke koje se ne mogu izliječiti obično se onesposobe ili se izbrišu.

Prevencija protiv infekcije virusom

Pogledajmo neke mjere koje mogu smanjiti vjerojatnost da se računalo zarazi virusom, kao i minimizirati štetu od infekcije virusom ako do nje dođe.
1. Bilo bi lijepo imati i po potrebi ažurirati arhivske i referentne kopije korištenog softvera i podatkovnih paketa. Prije arhiviranja podataka, preporučljivo je provjeriti ih na prisutnost virusa.
2. Također je poželjno kopirati na diskete servisne informacije vaš pogon (FAT, sektori za pokretanje) i CMOS (trajna memorija računala). Kopiranje i vraćanje takvih informacija može se izvršiti pomoću programa Rescue. programski paket Norton Utilities.
3. Trebali biste postaviti zaštitu od pisanja na arhivske diskete.
4. Nemojte se baviti nelicenciranim i ilegalnim kopiranjem softver s drugih računala. Možda imaju virus.
5. Sve podatke koji dolaze izvana potrebno je provjeriti na viruse, posebno datoteke "skinute" s interneta.
6. Potrebno je unaprijed pripremiti paket za oporavak na disketama sa zaštitom od pisanja.
7. Za vrijeme normalnog rada, koji nije povezan s vraćanjem računala, vrijedi onemogućiti podizanje sustava s diskete. To će spriječiti infekciju virusom za podizanje sustava.
8. Koristite programe – filtere za rano otkrivanje virusa.
9. Povremeno provjeravajte disk programima-detektorima ili liječnicima-detektorima ili auditorima kako biste otkrili moguće propuste u obrani.
10. Ažurirajte bazu antivirusnih programa.
11. Držite sumnjive korisnike podalje od svog računala.

ZAKLJUČAK

Zaključno, želio bih upozoriti na previše revnu borbu protiv računalnih virusa. Svakodnevno potpuno skeniranje tvrdog diska na viruse također nije sjajan korak u sprječavanju infekcija. Jedini civilizirani način zaštite od virusa vidim u poštivanju preventivnih mjera pri radu na računalu. A također morate pribjeći pomoći stručnjaka da se nosite s računalnim virusom. Osim toga, čak i ako je virus i dalje prodro u računalo, to nije razlog za paniku.
Često glavni problem interneta nisu virusi i hakeri, već tako uobičajena pojava kao što je računalna nepismenost. Koristeći analogiju Kasperskog, nepoznavanje pravila ceste. Ljudi koji su nedavno naučili primati i slati poštu demoniziraju računalne viruse, gotovo ih zamišljajući kao nevidljive crne crve koji gmižu po žicama. Evo nekoliko jednostavnih pravila, slijedeći koje možete pokušati izbjeći infekciju virusima. Prvo: ne boje se računalnih virusa, svi se liječe. Drugo, postavite Microsoft Outlook da radi u zoni ograničenih mjesta, što će ga spriječiti automatsko izvršenje neki programi – osnovno načelo razmnožavanja računalnih virusa. Treće, ne otvarajte e-poštu od sumnjivih primatelja. Četvrto: koristite novi, i što je još važnije, LICENCNI antivirus.

Članak koji trenutno čitate posvećen je problemima oporavka podataka u particijama datoteka. FAT sustavi naći na računalima s operativnim sustavima MS-DOS i Microsoft Prozori razni verzije. Međutim, informacije koje pruža u vezi s postavkama BIOS-a, kao i nekim strukturama diska, također će biti korisne prilikom vraćanja datoteka na NTFS particije.

U pravilu, pokušaji oporavka podataka na FAT particiji počinju korištenjem automatskih uslužnih programa. U slučajevima kada vam uslužni programi za automatsko obnavljanje nisu od pomoći, možete pokušati to obaviti ručno pomoću uređivača diska. Međutim, pritom ćete morati koristiti uređivače diskova i baviti se internim strukturama datotečnog sustava.

Pomoći ćemo naprednim korisnicima da provjere i poprave FAT datotečni sustav koristeći Norton Disk Editor i Microsoft Disk Probe. Ovi programi omogućuju pregled i uređivanje sadržaja pojedinačnih sektora diska.

U kritičnim slučajevima, toplo preporučamo da ne pokušavate neovisno oporaviti, već da kontaktirate uslugu DataRecovery.Ru za pomoć. Ako tijekom postupka oporavka napravite ozbiljnu pogrešku, vaši podaci mogu biti zauvijek izgubljeni. Stoga koristite preporuke dane u članku, ali na vlastitu odgovornost i rizik!

Provjera statusa FAT datotečnog sustava

Koji je najbolji način za početak oporavka podataka?

Vraćanje datotečnog sustava mora započeti provjerom postavki BIOS-a, kao i stanja samog datotečnog sustava. Može se predložiti sljedeći postupak:

  • provjera postavki BIOS-a;
  • provjera sadržaja glavnog boot zapisa MBR (Master Boot Record) i boot record Boot Record;
  • proučavanje tablice dodjele FAT datoteka;
  • provjera statusa imenika;
  • izdvajanje potrebnih datoteka iz oštećenog datotečnog sustava.

Kada provjeravate postavke BIOS-a, trebali biste obratiti pozornost na takve ključne parametre kao što su tipovi instalirani računalo teško diskova, broj staza i sektora po stazi. Ako su ovi parametri neispravno postavljeni, operativni sustav se najvjerojatnije neće uspjeti pokrenuti.

Do uništenja sadržaja trajne memorije koja pohranjuje postavke BIOS-a može doći, primjerice, kada baterija koja napaja memoriju otkaže ili kao posljedica virusa.

Zatim je potrebno provjeriti sadržaj takozvanog glavnog zapisa za pokretanje MBR (Master Boot Record). Ovaj unos ima program za pokretanje i particijsku tablicu diska. Program za pokretanje je objekt napada virusa za pokretanje i pokretanje datoteka koji ovdje zapisuju svoje tijelo. Ako je particijska tablica diska oštećena zbog infekcije virusom, kvara hardvera ili softvera, neki ili svi logički diskovi bit će nedostupni operativnom sustavu.

U sljedećem koraku provjerite Boot Record koji se nalazi na samom početku logičkog diska (nemojte ga brkati s MBR-om). Zapis o pokretanju sadrži program za pokretanje operativnog sustava koji se nalazi na logičkom disku, kao i blok parametara BIOS-a nazvan BPB (BIOS Parameter Block). BPB sadrži važne informacije o logičkom pogonu, kao što je veličina klastera. Ako je BPB oštećen virusom ili kao rezultat kvara hardvera ili softvera, disk će biti nedostupan operativnom sustavu.

Nakon provjere zapisa o pokretanju, trebali biste pogledati tablicu dodjele FAT datoteka. Ova tablica je kritična važna informacija o lokaciji pojedinačnih klastera za sve datoteke snimljene na određenom logičkom disku. Postoje ukupno dvije kopije FAT tablice. Za oporavak datoteka možete koristiti bilo koju kopiju FAT-a.

Sljedeći korak je provjera korijenskih direktorija logičkih pogona, kao i poddirektorija. Ako je potrebno, vratite oštećene unose direktorija koji opisuju datoteke koje su vam potrebne.

U nastavku ćemo detaljno proći kroz svaki od ovih koraka. Usput ćemo dati potrebne informacije o najvažnijem unutarnje strukture FAT datotečni sustav.

Provjera BIOS postavki

Kada prvi put pristupite računalu koje je možda zaraženo virusom, prvo trebate provjeriti BIOS postavke pohranjene u trajnoj CMOS memoriji. Za pregled i promjenu BIOS postavki postoji poseban program pod nazivom BIOS Setup.

Metoda lansiranja BIOS programi Postavljanje ovisi o proizvođaču i verziji, no obično se pokreće ako tijekom početnog testiranja RAM-a pritisnete Izbriši ključeve, F2 ili kombinacija tipki Alt+Ctrl+Esc. Preciznije informacije o tome kako pokrenuti ovaj program lako je pronaći u dokumentaciji koju ste dobili s matičnom pločom vašeg računala.

Isključite računalo ako je bilo uključeno i ponovno ga uključite nakon 20-30 sekundi. Ovaj postupak zajamčeno uništava rezidentne viruse koji "prežive" nakon toplog ponovnog pokretanja pomoću kombinacije tipki Ctrl+Alt+Del.

Kada započne test memorije, pritisnite jednu od gore navedenih tipki za pokretanje programa BIOS Setup. Nakon nekog vremena na zaslonu će se pojaviti prozor za postavljanje BIOS-a. Njegov izgled ovisi o proizvođaču i verziji programa.

Prije svega, trebali biste provjeriti zadane postavke BIOS-a. Obratite posebnu pozornost na tipove i parametre instaliranih tvrdih diskova HD (Hard disk) i tipove pogona za diskete FD (Floppy Drive).

Prepišite parametre tvrdog diska kao što su vrsta, broj cilindara, glava i sektora po stazi. Usporedite ove vrijednosti s podacima o ocjeni preuzetim iz dokumentacije za tvrdi disk i po potrebi ispravite.

Vrsta diska i opcije

Ako računalo ima instalirane SCSI pogone, tip pogona nije bitan i može se ostaviti neoznačenim. Što se tiče IDE pogoni, tada je vrsta takvih diskova broj, obično u rasponu vrijednosti od 1 do 47.

U isto vrijeme, tipovi od 1 do 46 odgovaraju standardnim skupovima parametara za stare diskove malog kapaciteta. Za moderne IDE uređaje automatski se odabire tip ili se navodi tip 47, što vam omogućuje izvođenje ručna instalacija broj cilindara, glava i sektora na jednoj stazi. U svakom slučaju, svakako provjerite parametre prema dokumentaciji koja dolazi uz disk.

Vrlo često IDE pogoni koriste takozvano adresiranje logičkih blokova LBA (Logical Block Addressing). Ako je uključen LBA način rada, operativnom sustavu se daje "virtualni" disk koji u usporedbi s pravim diskom ima manje staza, ali više glava. Na primjer, pravi disk može imati 4000 staza i 4 glave, dok "virtualni" disk može imati 1024 staze i 256 glava.

Zašto je ovo potrebno?

Zbog internih ograničenja operacijska sala MS-DOS sustav ne može raditi sa stazama većim od 1023. Međutim, moderni diskovni pogoni imaju značajan kapacitet (reda 20-60 GB ili čak i više), tako da imaju puno staza. Drugi operativni sustavi kao što su IBM OS/2, Microsoft Windows NT/2000, Linux ili Novell NetWare nemaju ograničenja u broju adresabilnih diskovnih zapisa. Umjesto BIOS-a, za pristup disku koriste posebne upravljačke programe diska.

Što se tiče MS-DOS-a, onda bez dodatne mjere maksimalna veličina particije diska neće premašiti 585 MB.

Logičko adresiranje LBA-ova pomoću diskovnog kontrolera omogućuje MS-DOS-u rukovanje vrlo velikim particijama, tako da možete naići na LBA-ove kada istražujete većinu modernih računala.

Tip FD

Obratite pozornost i na tip FD (floppy disk ili floppy disk drive). Ako je FD označen s A: označen kao Not Installed ili Disabled, nećete moći pokrenuti MS-DOS ili neki drugi operativni sustav s diskete.

Napredne BIOS opcije

U izborniku naprednih opcija BIOS-a obratite pozornost na redoslijed pokretanja operativnog sustava. Ako je redoslijed pokretanja C:, A:, nećete moći pokrenuti operativni sustav s diskete. Ako je potrebno, promijenite redoslijed pokretanja u A:, C: ili A:, CD-ROM, C:.

Nakon završetka svih radova s ​​računalom, vratite postavku na C:, A:, CD-ROM ili C: Samo (ako postoji takva vrijednost u ovoj verziji BIOS-a). U tom će slučaju računalo biti pouzdano zaštićeno od infekcije virusom za pokretanje putem disketa.

Postavljanje zadanih postavki BIOS-a

Program za postavljanje BIOS-a omogućuje vam postavljanje zadanih postavki BIOS-a.

Međutim, način instalacije ovisi o BIOS-u. Na primjer, program AMI BIOS Setup omogućuje učitavanje dva skupa BIOS postavki.

Prvi se učitava kada u glavnom izborniku programa odaberete red AUTO KONFIGURACIJA SA ZADANIM POSTAVKAMA BIOSA. Ovaj skup parametara dizajniran je za rad matične ploče u standardnom načinu rada.

Drugi skup opcija odgovara retku AUTO KONFIGURACIJA SA ZADANIM POSTAVKAMA PO UKLJUČENJU i uglavnom se koristi kada se računalo ne pokrene s prvim skupom. U drugom se skupu postavljaju konzervativniji parametri (na primjer, onemogućeno je predmemoriranje glavnog RAM-a), što vam ponekad omogućuje pokretanje čak i djelomično neispravnog računala.

Analiza MBR master boot record i particijske tablice

Kada FDISK prvi put particionira tvrdi disk, on zapisuje na početak prvog sektora tvrdog diska (sektor 1, staza 0, glava 0) glavnog pokretanja MBR unos.

Glavni zapis za pokretanje je program koji preuzima kontrolu tijekom pokretanja operativnog sustava. Zatim, zapis o pokretanju nastavlja proces pokretanja operativnog sustava.

Vizualno razlikovanje normalnog glavnog boot sektora od oštećenog ili virusom zaraženog sektora nije uvijek lako. Na sl. Slika 1 prikazuje ispis sadržaja sektora s MBR unosom dobivenim pomoću programa Microsoft DiskProbe iz Windows NT Resource Kit-a. Sličan dump također se može dobiti pomoću uređivača diska DISKEDIT iz paketa Norton Utilities.

Riža. 1. MBR sektorski dump

Ponekad virus promijeni samo nekoliko bajtova koji sadrže adresu sektora za pokretanje operativnog sustava, ostavljajući program za pokretanje nedirnutim. Takve promjene mogu se otkriti samo rastavljanjem i naknadnom analizom vraćenog izvornog koda programa za podizanje sustava. U nekim slučajevima, promjene su toliko uočljive da se mogu otkriti "golim okom" jednostavnim pogledom na ispis prvog sektora diska. Naravno, najbolji način otkrivanja infekcije MBR virusom je provjera pomoću antivirusnog programa.

Drugi važan dio prvog sektora diska je particijska tablica diska.

Ima četiri elementa koji opisuju do četiri particije diska. Zadnja dva bajta sektora sadrže vrijednost 0xAA55. Ovo je signatura particijske tablice - potpis particijske tablice. Ovdje i dolje s prefiksom 0x označit ćemo heksadecimalne vrijednosti, a bez tog prefiksa decimalne vrijednosti. Također imajte na umu da su navedeni bajtovi potpisa obrnuti redoslijed- bajt s najnižom vrijednošću nalazi se na najnižoj adresi. Ovo je značajka Intelove procesorske arhitekture.

Particije diska sadrže logičke pogone. Možete stvoriti, na primjer, jednu primarnu particiju za pogon C: i jednu sekundarnu particiju na kojoj se stvaraju logički pogoni D:, E: itd.

Program Microsoft Disk Probe omogućuje pregled (i uređivanje) sadržaja particijske tablice u formatiranom obliku, kao što je prikazano na sl. 2.


Riža. 2. Pregledajte sadržaj particijske tablice diska

Opis formata particijske tablice

Format prvog sektora tvrdog diska može se predstaviti na sljedeći način:

Kao što se može vidjeti iz ove tablice, bajtovi s pomakom od 0 do 0x1BE zauzimaju glavni boot zapis, odnosno program. Sljedeća su četiri unosa particijske tablice, pri čemu svaki unos zauzima 0x10 bajtova. Nakon tablice nalaze se dva bajta oznake particijske tablice.

Element particijske tablice sadrži informacije o položaju i veličini particije u sektorima, kao io namjeni particije. Format elementa tablice odjeljaka prikazan je u nastavku:

Prvi bajt elementa particijske tablice sadrži oznaku aktivne particije. Ako je particija aktivna, operativni sustav će se učitati s nje. Disk često sadrži nekoliko aktivnih particija koje pripadaju različitim operativnim sustavima u isto vrijeme.

Sljedeća tri bajta definiraju fizičku adresu na disku početnog sektora particije (koja opisuje ovaj element particije).

Bajt na pomaku 1 sadrži broj glave početnog sektora particije. Dvobajtno polje s pomakom 2 kodira broj sektora i broj staze prvog sektora particije. U ovom slučaju, bitovi 0...5 ovog polja postavljaju broj sektora, a bitovi 6...15 - broj zapisa.

Bajt na pomaku 4 sadrži tip particije, ovisno o vrsti operativnog sustava i tipu datotečnog sustava.

U nastavku smo naveli neke od najčešćih tipova (ovdje se FAT-12, FAT-16 i FAT-32 odnose na različite modifikacije FAT datotečnog sustava, o tome ćemo više govoriti kasnije):

Bajt particijske tablice na pomaku 5 i dvobajtna riječ na pomaku 6 sadrže broj glave, broj sektora i broj zapisa. posljednji odjeljak.

Zadnja dva polja unosa particijske tablice dugačka su 4 bajta i sadrže relativni broj prvog sektora u particiji (to jest, relativni broj sektora početka particije) i broj prisutnih sektora u pregradi. Operativni sustav Microsoft Windows NT koristi ta polja za izračunavanje lokacije particije.

Zadržimo se detaljnije na relativnom broju prvog sektora u odjeljku.

Vrijednost relativnog broja 0 odgovara stazi 0, glavi 0, sektoru 1. Povećanjem relativnog broja sektora prvo se povećava broj sektora na stazi, zatim broj glave i na kraju broj staze. Znajući broj staze, broj sektora na stazi i broj glave, možete izračunati relativni broj sektora pomoću sljedeće formule:

RelSect = (Cyl * Sect * Head) + (Head * Sect) + (Sect - 1)

Ovdje Cyl označava broj staze, Sect je broj sektora na stazi, Head je broj glave.

Obično poglavlja na disku počinju parnim brojevima zapisa, osim prvog poglavlja. Ova particija može započeti u sektoru 2 nulte staze (head 0), budući da je prvi sektor diska zauzet glavnim zapisom za pokretanje.

Praćenje popisa particija diska

U operacijskom sustavu MS-DOS primarna particija mora biti jedna i aktivna, koristi se kao pogon C: i s nje se učitava operativni sustav. U proširenoj particiji FDISK program stvara logičke pogone D:, E: i tako dalje.

Ako bajt koda particije ima vrijednost 5, tada se sektor koji sadrži tablicu logičkog diska nalazi na početku odgovarajuće particije. Ova tablica je proširenje particijske tablice diska koja se nalazi u prvom sektoru fizički disk.

Tablica logičkog diska ima format sličan tablici particije diska, ali sadrži samo dva unosa.

Jedan od njih pokazuje na prvi sektor logičkog diska, ima vrijednost tipa particije 1 ili 4 (za MS-DOS). Drugi element može imati vrijednost tipa particije 5 (za MS-DOS) ili 0. Ako je ovaj kod 5, tada element pokazuje na sljedeću tablicu logičkog diska. Ako je šifra sustava 0, tada se odgovarajući element ne koristi. Gore smo dali kodove za primarne i proširene particije za različite operativni sustavi.

Stoga su tablice logičkog diska povezane u popis. Unos tablice particije diska koji odgovara primarnoj particiji pokazuje na početak ovog popisa.

Za tablicu logičkog pogona postoji razlika u korištenju graničnih polja logičkog pogona. Ako je particija primarna, te se granice izračunavaju u odnosu na početak proširene particije. Proširene particije koriste apsolutno adresiranje (u odnosu na fizički početak diska).

Pomoću gumba Sljedeća particija (slika 2) možete vidjeti cijeli popis tablica logičkog diska.

Provjera particijske tablice pomoću programa DISKEDIT

Ranije spomenuti program Microsoft Disk Probe radi samo pod operativnim sustavima Microsoft Windows NT i Microsoft Windows 2000. Za MS-DOS i Microsoft Windows 95/98 ovdje preporučujemo uređivač DISKEDIT iz paketa Norton Utilities za analizu strukture diskovnog sustava. Najbolje je zapisati ovaj program na sistemsku disketu. Samo dizanjem s takve diskete moći ćete ispitati virusom zaraženi ili oštećeni sustav datoteka kada se MS-DOS neće dignuti s tvrdog diska.

Nakon pokretanja DISKEDIT-a koristite izbornik Objekt. Za početak odaberite Drive iz ovog izbornika. Ako fizički tvrdi disk ima zdrave particije s definiranim logičkim pogonima, na zaslonu će se pojaviti popis logičkih pogona.

Ako je datotečni sustav uništen do te mjere da je nemoguće pokrenuti operativni sustav s disketa, a kada se učitava s diskete ne vidi se niti jedan logički disk, odabirom linije Drive, biti prikazan popis fizičkih diskova (slika 3).


Riža. 3. Odabir fizičkog diska u programu DISKEDIT

Za pregled prvog sektora fizičkog diska koji sadrži glavni zapis za podizanje sustava i particijsku tablicu, odaberite fizički tvrdi disk Disk 1 i kliknite OK. Nakon toga će se sadržaj željenog sektora pojaviti na ekranu u obliku ispisa. Sektor ima veličinu od 512 bajtova, tako da njegov sadržaj ne stane na jedan ekran. Možete pritisnuti tipku PgDn i vidjeti drugi dio sektora.

Na što ovdje treba obratiti pozornost?

Na početku sektora je glavni boot zapis. Ona je, kao što smo rekli, program. Ako imate dovoljno iskustva, možete ga rastaviti i istražiti. U svakom slučaju, trebali biste provjeriti duljinu programa. Ova duljina ne bi trebala biti jako velika - trebalo bi biti nula bajtova nakon programa za podizanje sustava prije početka particijske tablice. Osim toga, unutar programa za pokretanje trebaju postojati poruke Nevažeća tablica particija, Pogreška pri učitavanju operativnog sustava i Nedostaje operativni sustav (za ruske verzije operativnih sustava, te će poruke biti na ruskom).

Što se tiče drugog dijela prvog sektora tvrdog diska, on bi trebao sadržavati tablicu particija diska.

Zadnja dva bajta moraju sadržavati znak particijske tablice (potpis) - heksadecimalnu vrijednost 0xAA55.

Tablicu particija diska možete analizirati pomoću gornjih informacija o njenom formatu. Podsjetimo se da se tablica nalazi u prvom sektoru diska na offsetu 0x1BE. Međutim, puno je praktičnije koristiti prikaz formata uređivača DISKEDIT za analizu ove tablice.

Postavite kursor (mišem ili kursorskim tipkama) na bajt na pomaku 0x1BE, koji odgovara početku particijske tablice. Zatim iz izbornika Pogled odaberite liniju kao particijsku tablicu. Na ekranu će se pojaviti tablica formatiranih particija diska (slika 4).


Riža. 4. Pregledajte tablicu particija diska

Stupac System prikazuje informacije o vrsti particije. Temelji se na analizi polja tipa particije pohranjenog u odgovarajućem retku particijske tablice. Ako je particija aktivna, stupac Boot za nju sadrži niz Yes, ako nije, niz No.

Stupci Starting Location i Ending Location u poljima Side, Cylinder i Sector sadrže dekodirane informacije o lokaciji prvog i zadnjeg sektora particije.

Broj relativnog sektora od kojeg sekcija počinje možete saznati iz stupca Relativni sektori, a ukupan broj sektora - u stupcu Broj sektora.

Ima smisla usporediti dobivene informacije o granicama particija s parametrima tvrdog diska dobivenim pomoću BIOS Setup programa, budući da virusi mogu sakriti svoje tijelo u sektorima diska koji se nalaze na kraju diska i nisu dodijeljeni nijednoj particiji. Međutim, treba imati na umu da su moderni disk kontroleri sposobni izvoditi logičko blok adresiranje (LBA mod), što iskrivljuje rezultirajuću sliku.

Pojasnimo rečeno na primjeru.

Jedno od naših računala ima disk sa 1057 staza i 16 glava. Svaki zapis ima 63 sektora od 512 bajtova. Ukupni prostor na disku je 520 MB. Ovo su parametri koje nam je rekao BIOS Setup program.

FDISK je utvrdio da disk ima dvije particije, 300 MB i 219 MB, te je disk 100 posto iskorišten. U isto vrijeme program DISKEDIT za ovaj disk pokazuje da se zadnji sektor zadnje particije nalazi na stazi broj 526.

Na prvi pogled ovdje nešto nije u redu: BIOS Setup program nam govori da na disku ima 1057 staza i 16 glava, au tablici particija za zadnji sektor zadnje particije vidimo potpuno druge vrijednosti: ovaj sektor je nalazi se na stazi 526, a broj čela je 31!

Razlog ove razlike je taj što naš IDE kontroler vrši logičko adresiranje staza i glava, pružajući programima "virtualni" disk koji ima manje staza, ali više glava od stvarnog diska.

Spremanje parametara diska i particijske tablice diska

Prije nego što nastavite s istraživanjem datotečnog sustava, toplo preporučamo da zabilježite parametre diska utvrđene korištenjem BIOS Setup programa i sadržaj particijske tablice diska. Samo zapišite dobivene vrijednosti na komad papira. Ako tijekom popravka slučajno uništite BIOS podatkovno područje ili glavni boot sektor, možete jednostavno vratiti kritične podatke.

Također možete spremiti sadržaj MBR sektora u datoteku pomoću odgovarajućih funkcija programa DISKEDIT ili Microsoft Disk Probe. Detaljne upute dostupne su u dokumentaciji i sustavima pomoći ovih programa. Datoteka mora biti zapisana na disketu ili drugu disketu.

Ispitivanje proširene particije diska

Ako je na disku stvorena samo primarna particija, možete prijeći na analizu logičkog pogona C: i ostalih logičkih pogona. Ako postoji proširena particija, trebate provjeriti sektor tablice logičkog diska - prvi sektor u proširenoj particiji.

Da biste vidjeli ovaj sektor, pokrenite program DISKEDIT, pomoću njega odredite lokaciju proširene particije (broj zapisa, glave i sektora). Zatim iz izbornika Objekt odaberite liniju Fizički sektor. Na zaslonu će se pojaviti dijaloški okvir Odabir raspona fizičkog sektora u kojem možete odabrati jedan ili više sektora za pregled.

Sektor tablice logičkog diska, za razliku od glavnog sektora zapisa za podizanje sustava, praktički je prazan. Svi bajtovi u njemu od početka do pomaka 0x1BD uključivo moraju sadržavati nultu vrijednost. Zatim, od pomaka 0x1BE, nalazi se tablica logičkih diskova koja se sastoji od dva elementa. Na kraju sektora nalazi se potpis koji vam je već poznat - vrijednost 0xAA55.

Struktura elemenata je potpuno slična strukturi elemenata particijske tablice, tako da možete koristiti prikaz formata. Da biste to učinili, postavite kursor na bajt na pomaku 0x1BE, a zatim odaberite redak kao tablica particije iz izbornika Pogled.

Spremanje sadržaja tablica logičkog pogona

Na isti list papira gdje ste zapisali parametre diska i podatke iz particijske tablice diska, zapišite podatke o svim logičkim diskovima dobivene iz tablica logičkih diskova. Ako se sadržaj tablica logičkog diska slučajno uništi, izgubit ćete pristup logičkim diskovima.

Ispitivanje FAT logičkih diskova

Format logičkih diskova koji se nalaze na particijama tvrdog diska potpuno je identičan formatu disketa, tako da će mnogo od ovdje rečenog vrijediti i za diskete.

Na samom početku logičkog diska nalazi se Boot Record sektor (nemojte ga brkati s MBR sektorom koji je prvi na fizičkom disku), a moguće i rezervirani sektori.

Nakon sektora Boot Record slijede dvije kopije FAT-a (File Allocation Table), o čemu ćemo govoriti kasnije, i korijenski direktorij. Područje podataka, koje zauzima ostatak logičkog pogona, sadrži datoteke i druge direktorije.

Provjera sektora za pokretanje

Adresu sektora za pokretanje logičkog diska lako je pronaći u tablici logičkih diskova. Sektor za pokretanje logičkog diska sadrži program za pokretanje operativnog sustava. Ovaj program postavlja u RAM bootloader koji se nalazi u MBR-u.

Svrha programa koji se nalazi u boot sektoru logičkog diska je učitavanje operativnog sustava koji se nalazi na tom logičkom disku.

Dakle, kada se napajanje uključi nakon izvođenja testne procedure, BIOS učitava sadržaj MBR-a u RAM i prenosi kontrolu na njega. Glavni zapis za podizanje sustava traži tablicu particija diska i pronalazi aktivnu particiju. Ako postoji nekoliko takvih particija, od korisnika se traži da odabere particiju za preuzimanje.

MBR zatim čita Boot Record boot sektor logičkog diska koji se nalazi na odabranoj aktivnoj particiji i prenosi kontrolu programu za pokretanje operativnog sustava koji se nalazi u tom sektoru. Ovaj program zauzvrat obavlja sav posao učitavanja operativnog sustava u memoriju računala.

Format sektora za pokretanje ovisi o verziji operativnog sustava. Međutim, u svakom slučaju, osim programa za pokretanje operativnog sustava, zapis o pokretanju sadrži parametre koji opisuju karakteristike određenog logičkog pogona. Svi ti parametri nalaze se na samom početku sektora, u njegovom tzv. formatiranom području. Posljednja dva bajta sektora za pokretanje sadrže poznati potpis 0xAA55.

Prije pregledavanja zapisa o pokretanju, morate upotrijebiti naredbu VER da odredite verziju operativnog sustava instaliranog na računalu. Za verzije MS-DOS-a starije od 4.0, format unosa za pokretanje je sljedeći:

Na samom početku boot sektora je JMP intra-segment jump instrukcija. Potrebno je zaobići formatiranu zonu sektora i prenijeti kontrolu na program za pokretanje koji se nalazi na pomaku 0x1E.

Naziv proizvođača ne koristi operativni sustav i on je tekstualni niz od 8 bajta.

Na pomaku 0xB nalazi se blok parametara BIOS-a (BPB). Ovaj blok sadrži neke karakteristike logičkog diska, kao što je broj sektora u jednom klasteru, ukupan broj sektora itd. Format BPB bloka bit će opisan kasnije.

Polja sektora za pokretanje na odmacima 0x18 i 0x1A sadrže, redom, broj sektora po stazi i broj glava. Polje s pomakom 0x1C sadrži broj "skrivenih" sektora koji ne pripadaju niti jednom logičkom disku. Ovi se sektori mogu koristiti za podjelu fizičkog diska na particije i logičke diskove (mogu sadržavati particijsku tablicu diska ili tablice logičkih diskova).

pristranost,
bajt
Veličina,
bajt
Opis
0 3 JMP naredba xxxx (skok na bootloader)
3 8 Ime i verzija proizvođača operativnog sustava
0xB 25 Prošireni BPB - prošireni blok parametara BIOS-a
0x24 1 Broj fizičkog uređaja (0 - disketni pogon, 0x80 - tvrdi disk)
0x25 1 Rezervirano
0x26 1 Vrijednost 0x29 znak je proširenog zapisa za podizanje sustava Extended BPB
0x27 4 Serijski broj diska (Volume Serial Number), stvoren tijekom formatiranja diska
0x2B 11 Oznaka diska (oznaka sveska)
0x36 8 Tekstualni niz "FAT12" ili "FAT16"

Prva dva polja imaju isto značenje kao u unosu za pokretanje starijih verzija MS-DOS-a.

Polje na pomaku 26h sadrži broj 0x29, što znači da se koristi prošireni format zapisa pokretanja i, sukladno tome, BIOS Extended BPB.

Serijski broj diska generira se tijekom formatiranja diska na temelju datuma i vremena formatiranja. Stoga svi diskovi i diskete imaju različite serijske brojeve.

Oznaka diska se formira tijekom formatiranja i može se mijenjati npr. naredbom LABEL operativnog sustava MS-DOS. Istodobno se oznaka diska postavlja u korijenski direktorij kao poseban deskriptor. O formatu direktorija i deskriptora, kao i formatu tablice dodjele FAT datoteka, govorit ćemo kasnije.

Sada o bloku parametara BIOS BPB i proširenom bloku parametara BIOS Extended BPB.

Za verzije MS-DOS-a starije od 4.0, BPB blok ima sljedeći format:

Prošireni blok parametara BIOS-a datotečnih sustava FAT-12 i FAT-16 sastoji se od običnog bloka BPB i dodatnog proširenja:

pristranost,
bajt
Veličina,
bajt
Opis
0 2
2 1
3 2
5 1 Broj FAT tablica
6 2
8 2 Ukupan broj sektora na mediju za pohranu (pod MS-DOS particijom)
0 Ah 1 Vrsta nosača podataka
0bh 2
0Dh 2
0Fh 2 Broj magnetskih glava
11h 2
13h 2 Broj skrivenih sektora za particiju veću od 32 MB
15h 4

Za diskete i disk, vrsta medija može poprimiti sljedeće vrijednosti:

Značenje Količina
stranke
Količina
sektorima
Promjer,
inča
Kapacitet,
KB
0xF0 2 18 3,5 1440
0xF0 2 36 3,5 2880
0xF0 2 15 5,25 1200
0xF8 - - - HDD bilo koji kapacitet
0xF9 2 9 3,5 720
0xF9 2 15 5,25 1200
0xFA 1 8 5,25 320
0xFB 2 8 3,5 640
0xFC 1 9 5,25 180
0xFD 2 9 5,25 360
0xFE 1 8 5,25; 8 160
0xFF 2 8 5,25; 8 320

Što se tiče datotečnog sustava FAT-32, format njegovog sektora za pokretanje sličan je upravo opisanom, s izuzetkom BPB bloka. Veličina ovog bloka je 0x25 bajtova, a format je sljedeći:

pristranost,
bajt
Veličina,
bajt
Opis
0 2 Broj bajtova u jednom sektoru diska
2 1 Broj sektora u jednom klasteru
3 2 Broj rezerviranih sektora
5 1 Broj FAT tablica
6 2 Maksimalan broj deskriptora datoteke u korijenskom direktoriju pogona
8 2 Ukupan broj sektora na mediju za pohranu (po particiji)
0xA 1 Vrsta nosača podataka
0xB 2 Broj sektora koje zauzima jedna kopija FAT-a
0xD 2 Broj sektora po stazi
0xF 2 Broj magnetskih glava
0x11 4 Broj skrivenih sektora za particiju manju od 32 MB
0x15 4 Ukupan broj sektora na logičkom disku za particiju veću od 32 MB
0x19 4 FAT veličina tablice u sektorima
0x1D 2 Prošireni potvrdni okviri
0x1F 2 Verzija datotečnog sustava
0x21 4 Prvi broj korijenskog klastera
0x25 2 Sektor koji sadrži razne informacije o datotečnom sustavu kao cjelini
0x27 2 Broj sektora u kojem se nalazi sigurnosna kopija sektora za pokretanje
0x29 12 Rezervirano

Za formatirani prikaz bloka parametara BPB (ili proširenog bloka parametara BPB, ovisno o verziji MS-DOS-a), zgodno je koristiti program DISKEDIT. U ovom slučaju unos za pokretanje možete pronaći na dva načina.

Najprije možete odabrati liniju Boot Record iz izbornika Object (nakon što ste prethodno odabrali željeni logički pogon pomoću linije Drive istog izbornika). Odmah ćete se naći u modu prikaza formata bloka BIOS parametara diska koji ste odabrali (slika 5).


Riža. 5. Pogledajte blok postavki BIOS-a

Drugo, ako logički diskovi nisu dostupni, ali ste uspjeli pročitati particijsku tablicu ili tablicu logičkog diska, možete nastaviti s pregledom zapisa o pokretanju tako da navedete njegovu fizičku adresu. Da biste to učinili, iz izbornika Objekt odaberite redak Fizička adresa (kao što je ranije opisano). Na ekranu će se pojaviti ispis prvog dijela sektora za podizanje sustava. Pritiskom na tipku PgDn možete nastaviti s pregledom drugog dijela sektora za podizanje sustava.

Koristeći linije as Boot Record i as Hex na izborniku View, možete se prebaciti na formatirani i neformatirani način prikaza sektora za pokretanje.

Program Microsoft Disk Probe također ima slične opcije oblikovanja za pregled FAT zapisa o pokretanju.

Formiranje zapisa za pokretanje i bloka BIOS parametara događa se kada se logički disk formatira (na primjer, pomoću naredbe FORMAT). Ako uklonite logički disk pomoću programa FDISK i zatim na njegovom mjestu stvorite novi iste veličine, BPB blok će biti uništen. U tom slučaju morat ćete ponovno formatirati logički pogon.

Blok parametara BIOS-a sadrži kritične informacije, čije uništavanje onemogućuje normalan pristup datotekama i direktorijima koji se nalaze na logičkom pogonu. Neoprezno rukovanje boot sektorom tvrdog diska može dovesti do potrebe za ponovnim formatiranjem odgovarajućeg logičkog diska s potpunim gubitkom tamo pohranjenih podataka.

Prije nastavka daljnje analize datotečnog sustava, korisno je ispisati sadržaj boot sektora svih dostupnih logičkih diskova u formatiranom i neformatiranom obliku, budući da blok parametara BIOS-a sadrži informacije potrebne za pretraživanje i analizu ostalih logičkih struktura datoteke. sustav. Za ispis odaberite redak Print Object as iz izbornika Tools i odaberite redak Boot Record u dijaloškom okviru koji se pojavljuje na zaslonu. Zatim kliknite OK.

Slično, možete ispisati sadržaj drugih logičkih struktura datotečnog sustava, kao što je sadržaj particijske tablice diska.

Analiza rezerviranih sektora

Između sektora za pokretanje i tablice dodjele FAT datoteka mogu postojati rezervirani sektori koji služe datotečnom sustavu ili se ne koriste.

Broj sektora rezerviranih na logičkom disku možete pronaći u bloku postavki BIOS-a (BPB ili Extended BPB, ovisno o verziji operativnog sustava). Vrijednost pretraživanja nalazi se u polju ovog bloka s pomakom od 3. Kod skeniranja formata, broj rezerviranih sektora naznačen je u retku Rezervirani sektori na početku.

Ako je rezerviran samo jedan sektor, tada se prva kopija tablice dodjele FAT datoteka nalazi odmah nakon sektora za pokretanje. Sektor za pokretanje je u ovom slučaju rezerviran.

Kada je nekoliko sektora rezervirano, može postojati još nekoliko sektora koji sadrže nulte vrijednosti između sektora za pokretanje i prve kopije FAT tablice. Ako je računalo zaraženo virusom, ovi sektori mogu sadržavati tijelo virusa ili kopiju izvornog zapisa o pokretanju zamijenjenu virusom.

FAT tablice dodjele datoteka

Operativni sustav spaja pojedinačne sektore diska u tzv. klastere. Kada se kreiraju novi direktoriji i neprazne datoteke, za njih se dodjeljuje jedan ili više klastera. Ako se veličina datoteke poveća, za nju se dodjeljuju dodatni klasteri.

Veličina klastera u sektorima (to jest, broj sektora u jednom klasteru) može se lako pronaći iz bloka parametra BIOS BPB polja s pomakom od 2. Prilikom formatiranja sadržaja sektora za pokretanje, veličina klastera prikazuje se u Sektori po liniji klastera.

Radi uštede prostora na disku, datotekama i direktorijima dodjeljuju se klasteri koji nisu nužno susjedni. Stoga se odvojeni klasteri koji pripadaju istoj datoteci mogu nalaziti na različitim mjestima na logičkom disku. Takve uštede imaju cijenu u performansama, jer čitanje fragmentirane datoteke uključuje brojne pokrete magnetske glave, a ovo je najsporiji rad diska.

Još jedan problem s fragmentacijom datoteka je potreba za vođenjem popisa klastera dodijeljenih svakoj datoteci. Očito, da bi pročitao datoteku, operativni sustav mora uzastopno pročitati sve klastere dodijeljene ovoj datoteci.

Gdje su pohranjeni popisi klastera?

Ti su popisi pohranjeni u FAT (File Allocation Table), koju ćemo uskoro početi analizirati.

Tablica dodjele datoteka može se smatrati nizom koji sadrži informacije o relativnoj lokaciji klastera svih datoteka. Veličina niza određena je ukupnim brojem klastera na logičkom disku. Elementi niza sadrže popise klastera raspoređenih u datoteke, a elementi niza koji odgovaraju slobodnim klasterima sadrže nula vrijednosti.

Ako datoteka zauzima nekoliko klastera, onda se takvi klasteri povezuju u popis. Istodobno, elementi FAT tablice sadrže brojeve sljedećih klastera koje koristi ova datoteka. Kraj popisa je u tablici označen posebnom vrijednošću. Broj prvog klastera dodijeljenog datoteci pohranjuje se u unosu direktorija koji opisuje datoteku (u deskriptoru datoteke).

Dakle, znajući naziv datoteke i direktorij u kojem se ta datoteka nalazi, operativni sustav MS-DOS može odrediti broj prvog klastera dodijeljenog datoteci, a zatim, praćenjem popisa klastera u FAT tablici, odredite broj preostalih klastera koje zauzima ova datoteka.

Program FORMAT, dizajniran za formatiranje diska, i neki posebni programi slične namjene, provjeravaju logički disk za prisutnost neispravnih područja. Klasteri koji se nalaze u tim lošim područjima označeni su kao loši u FAT-u i operativni sustav ih ne koristi.

Za primjer na sl. Slika 6 prikazuje pojednostavljene deskriptore za korijenski direktorij pogona C:. Oni opisuju datoteke MYFILE1.DOC i MYLETTER.DOC, kao i unose FAT tablice dodjele datoteka dodijeljene ovim datotekama.


Riža. 6. Primjer distribucije klastera za datoteke MYFILE1.DOC i MYLETTER.DOC

Datoteka MYFILE1.DOC zauzima tri klastera s brojevima 11, 17 i 18, a datoteka MYLETTER.DOC - dva klastera s brojevima 12 i 13. Katalog prikazuje brojeve prvih klastera dodijeljenih tim datotekama (odnosno 11 i 12). Zadnje ćelije koje odgovaraju zadnjim klasterima, distribuiranim datotekama, sadrže posebnu vrijednost - znak kraja lanca klastera. Za 16-bitni FAT je 0xFFFF, a za 12-bitni je 0xFFF.

FAT format tablice

Pogledajmo pobliže FAT format tablice.

FAT tablica može biti u 12-, 16- ili 32-bitnom formatu, dok će se datotečni sustav nazivati ​​FAT-12, FAT-16 i FAT-32, a tablica koristi 12, 16 ili 32 za pohranu informacija oko jedan bit klastera diska, redom.

Prvi od ova dva formata (12-bitni) koristi se za diskete i diskete s malim brojem sektora. Tablica raspodjele datoteka FAT-12 diskete u potpunosti stane u jedan sektor.

Ako je veličina diska prevelika, dvanaest bitova neće biti dovoljno za predstavljanje svih klastera. U ovom slučaju koristi se 16-bitni ili 32-bitni FAT format. U tom slučaju operativni sustav može raditi s diskom većim od 32 MB. Stoga tvrdi diskovi uvijek koriste 16-bitni ili 32-bitni format FAT tablice.

Kako saznati FAT format?

FAT format se može odrediti analiziranjem sadržaja polja koda particije odgovarajućeg unosa particijske tablice. Ovo polje se nalazi u MBR-u. Ako sadrži vrijednost 1, koristi se 12-bitni format, ako 4, koristi se 16-bitni format, a ako 0xB ili 0xC, koristi se 32-bitni format.

Prvi element FAT tablice ima poseban format.

Prvi bajt FAT tablice naziva se medijski deskriptor. Ima isto značenje kao deskriptor bajta okruženja, sektor za pokretanje logičkog pogona. Sljedećih 5 bajtova za 12-bitni format ili 7 bajtova za 16-bitni format uvijek sadrže vrijednost 0xFF.

Ostatak FAT tablice sastoji se od 12-, 16- ili 32-bitnih ćelija. Svaka ćelija odgovara jednom klasteru diska. Ove ćelije za različite formate FAT tablice mogu sadržavati sljedeće vrijednosti:

Pregledavanje FAT tablice

Za pregled tablice dodjele FAT datoteka koristit ćemo program DISKEDIT. Iz izbornika Objekt odaberite liniju Drive i odaberite pogon koji vas zanima.

Zatim iz izbornika Object odaberite jedan od dva niza - 1. FAT ili 2. FAT. Zaslon će prikazati sadržaj prve odnosno druge kopije FAT tablice u formatiranom obliku (slika 7).


Riža. 7. Pogledajte prvu kopiju FAT tablice dodjele u formatiranom obliku

Također možete pronaći prvu ili drugu kopiju FAT tablice ako znate fizičku adresu zapisa pokretanja logičkog pogona. Podsjetimo se da se boot zapis nalazi u prvom sektoru diskete. Lokacija unosa za pokretanje za logičke pogone stvorene na particijama tvrdog diska može se odrediti iz tablice particija (za logički pogon C:) ili tablice logičkih pogona (za logičke pogone stvorene u proširenoj particiji).

Nadalje, u okviru logičkog diska postoji vlastito sekvencijalno numeriranje sektora. U ovom slučaju, redoslijed numeriranja je odabran na takav način da se uzastopnim povećanjem broja sektora prvo povećava broj glave, a zatim broj staze.

Objasnimo to na primjeru.

Neka, na primjer, imamo disketu s devet sektora po stazi. Sektor s logičkim brojem jednakim 1 nalazi se na nultoj stazi i za pristup mu se koristi nulta glava. Ovo je prvi sektor na stazi, ima broj 1. Sljedeći sektor na nultoj stazi ima logičan broj 2, zadnji sektor na nultoj stazi ima logičan broj 9. Sektor s logičkim brojem 10 je također koji se nalazi na nultoj stazi. Ovo je također prvi sektor na stazi, ali sada se za pristup njemu koristi glava broj 1. I tako dalje, kako se logički broj sektora povećava, brojevi glave i staze se mijenjaju.

Prema ovom numeriranju, sektor s rednim brojem 0 je boot sektor. Kako biste vidjeli sadržaj sektora za pokretanje pomoću programa DISKEDIT, možete odabrati liniju Sektor iz izbornika Objekt i odrediti broj sektora jednak nuli u dijaloškom okviru koji se pojavi.

Imajte na umu da u ovom dijaloškom okviru okvir pod nazivom Korištenje sektora prikazuje dodjelu sektora. Koristeći ovu distribuciju, možete jednostavno odrediti serijski broj sektora zapisa za pokretanje, početak i granice obje kopije FAT-a. Osim toga, nije teško odrediti početak i granice korijenskog direktorija i podatkovnog područja koje sadrži datoteke i druge direktorije.

Pomoću izbornika Pogled možete vidjeti sadržaj FAT tablice kao ispis.

Vizualno, tablica dodjele datoteka trebala bi sadržavati uglavnom monotono promjenjive nizove brojeva klastera, nulte vrijednosti koje odgovaraju slobodnim klasterima i vrijednost 0xFFFF (0xFFF za FAT-12 ili 0xFFFFFFFF za FAT-32), što je znak kraja. lanca klastera.

Nakon prve kopije FAT tablice mora slijediti druga kopija FAT.

Veličinu FAT tablice možete odrediti tako da znate sadržaj BIOS BPB blok polja parametara s pomakom 0xB (broj sektora koje zauzima jedna kopija FAT-a).

Kao rezultat kvara ili napada virusa, FAT tablica može biti potpuno uništena ili promijenjena (na primjer, šifrirana ili obojana nulama). Ako je lanac klastera za datoteku koju trebate djelomično ili potpuno uništen, vraćanje takve datoteke može biti težak zadatak.

Neki virusi iskorištavaju činjenicu da se kraj lanca klastera može označiti bilo kojom vrijednošću u gornjim rasponima (na primjer, od 0xFFF8 do 0xFFFF za 16-bitnu FAT tablicu), dok operativni sustav koristi vrijednosti 0FFFFh ili 0FFFh.

Virus može sebi dodijeliti zaražene datoteke (kako bi izbjegao ponovnu infekciju), označavajući zadnji klaster distribuiran ovim datotekama bilo kojom drugom vrijednošću, na primjer, 0xFFF9. U tom će slučaju operativni sustav nastaviti raditi normalno, kao da se ništa nije dogodilo.

Iako je druga kopija FAT tablice stvorena kao sigurnosna kopija, kako bi se olakšao postupak oporavka u slučaju uništenja prve kopije, ne biste se trebali posebno nadati da ćete u slučaju napada virusa jednostavno kopirati drugu kopiju od FAT-a umjesto prvog. Druga kopija FAT-a također se može uništiti ili šifrirati, i to na drugačiji način od prve.

Format imenika

U slučaju FAT-12 i FAT-16, korijenski direktorij odmah slijedi drugu kopiju tablice dodjele datoteka. Lokacija korijenskog direktorija FAT-32 navedena je u BPB bloku (riječ na pomaku 0x21).

Možete odrediti veličinu korijenskog direktorija u sektorima iz bloka parametara BIOS BPB. Polje s pomakom 6 sadrži maksimalan iznos deskriptori datoteka u korijenskom direktoriju diska (ovo polje odgovara retku Root directory entries prilikom formatiranja sadržaja sektora za pokretanje s programom DISKEDIT).

Veličina jednog deskriptora je 32 bajta, pa množenjem maksimalnog broja deskriptora s tim brojem dobivamo veličinu korijenskog direktorija u bajtovima. Poznavajući veličinu sektora (512 bajtova), lako je odrediti broj sektora koje zauzima korijenski direktorij.

Razgovarajmo sada o deskriptorima datoteka.

Svaki direktorij (uključujući korijenski direktorij) sadrži elemente od 32 bajta - deskriptore koji opisuju datoteke i druge direktorije. Ovdje je format deskriptora koji se koristi u operativnom sustavu MS-DOS:

Obratite pozornost na polje s pomakom 0x1A. Ovo je broj prvog klastera dodijeljenog datoteci ili direktoriju (ako deskriptor opisuje direktorij niže razine). Pomoću ove vrijednosti možete pratiti cijeli lanac klastera dodijeljenih određenoj datoteci ili direktoriju u tablici dodjele FAT datoteka. Dakle, imamo način pronaći početak lanca klastera za bilo koju datoteku - samo trebamo pronaći odgovarajući deskriptor.

U bilo kojem direktoriju osim korijenskog direktorija, prve dvije oznake imaju posebno značenje. Prvi deskriptor sadrži niz u polju imena:

". "

Ovaj deskriptor pokazuje na sadržajni direktorij. Odnosno, imenik ima vezu na sebe. Drugi posebni deskriptor sadrži niz u polju imena:

".. "

Ovaj deskriptor ukazuje na direktorij više razine.

Ako je prvo zauzeto polje broja klastera za deskriptor pod nazivom ".. " nula, to znači da se ovaj direktorij nalazi u korijenskom direktoriju.

Struktura stabla imenika sadrži veze koje adresiraju direktorije i naprijed i natrag. Ove se veze mogu koristiti za provjeru integriteta strukture direktorija datotečnog sustava.

Bajt atributa pripada svakoj datoteci. Bitovi bajta atributa kombiniraju se korištenjem logičke operacije ILI. Imaju sljedeća značenja:

bit Opis
0 Datoteka je samo za čitanje. U ovu se datoteku ne može pisati i ne može se izbrisati.
1

Skrivena datoteka. Ova se datoteka neće pojaviti na popisu datoteka koje prikazuje naredba DIR

2

Datoteka sustava. Ovaj bit se obično postavlja za datoteke koje su dio operativnog sustava.

3

Ovaj deskriptor opisuje oznaku diska. Za ovaj deskriptor, polje naziva datoteke i polje ekstenzije naziva datoteke moraju se tretirati kao jedno 11-bajtno polje. Ovo polje sadrži oznaku diska

4 Deskriptor opisuje datoteku koja je poddirektorij zadanog direktorija.
5

Oznaka arhiviranja. Ako je ovaj bit postavljen na 1, tada ovu datoteku nije učitao uslužni program za arhiviranje.

6-7 Rezervirano

Obično datoteke imaju sljedeće atribute:

Kada se datoteka izbriše, prvi bajt njenog naziva zamjenjuje se bajtom 0xE5 (znak "x"). Nakon toga, svi klasteri dodijeljeni udaljenoj datoteci označeni su kao slobodni u FAT tablici.

Ako ste upravo izbrisali datoteku, još uvijek je možete vratiti jer su sva polja sačuvana u deskriptoru, osim prvog bajta naziva datoteke. Ali ako se nove datoteke zapišu na disk, može se dogoditi da se promijeni sadržaj klastera izbrisane datoteke. U tom će slučaju oporavak datoteke postati problematičan.

Sada o poljima vremena i datuma.

Gornjih pet znamenki vremenskog polja sadrži vrijednost sata izmjene datoteke, šest znamenki 5-10 pohranjuje vrijednost minuta izmjene datoteke i na kraju, donjih 5 znamenki sadrži vrijednost sekundi podijeljenu s 2. Kako bi vrijeme ažuriranja datoteke da bih stao u šesnaest znamenki, morao sam smanjiti točnost vremena na dvije sekunde. U velikoj većini slučajeva takvo smanjenje točnosti ne igra nikakvu ulogu.

Format datuma ažuriranja datoteke sličan je formatu vremena. Znamenke 9-15 rezervirane su za godinu, 5-8 za mjesec, a 0-4 za dan u tjednu. Kako bismo dobili vrijednost godine ažuriranja datoteke, potrebno je dodati vrijednost 1980 vrijednosti pohranjenoj u gornjih sedam bitova.

Neki virusi koriste polja vremena i datuma za označavanje zaraženih datoteka. Ova oznaka je neophodna kako bi se izbjegla ponovna infekcija. Međutim, ovu primitivnu metodu koriste samo najjednostavniji virusi.

Polje duljine u deskriptoru sadrži točnu duljinu datoteke u bajtovima. Za imenike, polje duljine postavljeno je na nulu.

Kada virus zarazi datoteku, njezina se duljina povećava. Međutim, stealth virusi koji skrivaju svoju prisutnost u sustavu učinkovito maskiraju ovo povećanje. Stoga se može vidjeti samo pri dizanju operativnog sustava s "čiste" diskete bez virusa.

Pregledajte direktorije

Za pregledavanje imenika radi provjere njihove strukture koristit ćemo se programom DISKEDIT. Pokrenite ovaj program i iz izbornika Objekt odaberite Imenik. Na zaslonu će se pojaviti dijaloški okvir Promjena imenika.

Stablo imenika prikazano je na lijevoj strani dijaloške ploče trenutni disk. Odaberite korijenski direktorij C:\ i kliknite OK. Nakon toga će se na ekranu pojaviti sadržaj korijenskog direktorija u formatiranom obliku (slika 8).


Riža. 8. Pogledajte prvu kopiju FAT tablice dodjele u formatiranom obliku

Analizom primljenih informacija možete otkriti sumnjive promjene u poljima veličine datoteke, datuma i vremena. Osim toga, za svaku datoteku stupac Klaster prikazuje broj prvog klastera koji joj je dodijeljen.

Pomoću izbornika Pogled možete se prebaciti na neobrađeni način prikaza, kada se sadržaj direktorija prikazuje kao ispis.

Obratite pozornost na izbornik Link. Pomoću ovog izbornika možete se prebaciti na pregled logički povezanih struktura datotečnog sustava.

Kao vježbu, označite datoteku IO.SYS u korijenskom direktoriju pogona C: i zatim odaberite iz izbornika Niz veze lanac klastera (FAT). Vidjet ćete prvu kopiju tablice dodjele FAT datoteka, s lancem klastera dodijeljenim datoteci IO.SYS označenom bojom. Pomoću retka Datoteka izbornika Veza lako je prijeći na način pregledavanja sadržaja datoteke IO.SYS.

Imajte na umu da je u mnogim slučajevima moguće izvršiti prijelaze između logički povezanih podatkovnih struktura dvostrukim klikom lijeve tipke miša na sliku tih struktura, što je vrlo zgodno. Pojedinosti potražite u dokumentaciji za softverski paket Norton Utilities.

Na što trebam obratiti pozornost prilikom provjere strukture imenika?

Osim vizualne provjere polja deskriptora koji se tamo nalaze, trebali biste pregledati cijeli imenik do kraja. Morate biti sigurni da u imeniku nema suvišnih podataka. Tamo ih može napisati virus.

Ako se prebacite na neobrađeni način prikaza, možete provjeriti sadrže li besplatni unosi imenika nulte vrijednosti. Ako nakon slobodnih elemenata postoje podaci, vrlo je velika vjerojatnost da ih je tamo upisao virus ili sustav zaštite programa od neovlaštenog kopiranja (ako direktorij koji se istražuje sadrži takve programe).

U slučaju da je imenik potpuno ili djelomično oštećen, poveznice na datoteke opisane u njemu bit će izgubljene. Ako na ovaj ili onaj način pronađete sektore koji sadrže datoteku koja vam je potrebna s uništenim deskriptorom, tada pomoću dolje opisane metode možete vratiti deskriptor i dobiti pristup datoteci.

Direktoriji u VFAT datotečnom sustavu

Prilikom obnavljanja FAT datotečnog sustava računala s operativnim sustavom Microsoft Windows 95/98/NT/2000, trebali biste biti oprezni jer se struktura direktorija u njemu razlikuje od gore opisane.

Kao što možda znate, korisnici sustava Microsoft Windows 95/98 nisu previše ograničeni ograničenjima duljine datoteka i direktorija. I iako teoretski takvo ograničenje postoji (255 znakova), ono nema neko značajno značenje.

Prilikom izrade novog operativnog sustava Microsoftovi programeri pronašli su genijalno rješenje za problem kompatibilnosti s MS-DOS programima koristeći nazive "formata 8.3" (8 znakova za naziv datoteke ili direktorija, 3 za ekstenziju naziva).

Ovo rješenje je da se u imenicima, uz uobičajene deskriptore, nalaze i deskriptori posebna vrsta. Broj takvih deskriptora ovisi o duljini naziva datoteke ili direktorija. Upravo je u tim deskriptorima pohranjeno dugo ime. Specifično za MS-DOS programe, kreira se regularna oznaka koja sadrži alternativni naziv koji je u skladu sa standardima MS-DOS-a.

Novi datotečni sustav nazvan je VFAT.

Pogledajte sl. 9. Ova slika prikazuje strukturu direktorija stvorenog u datoteci Microsoft sustav Windows 98.

Riža. 9. Prošireni i alternativni deskriptori dugog imena u korijenskom direktoriju

Primijetite tri deskriptora ispod deskriptora datoteke IO.SYS. To su posebni prošireni deskriptori koji pohranjuju informacije o duga imena u UNICODE kodiranju (u ovom kodiranju svaki znak je predstavljen s dva bajta). U ovom slučaju, prošireni deskriptori pohranjuju naziv direktorija DesignWorkshop Lite Installer.

Kako bi se osiguralo da posebni deskriptori ne ometaju MS-DOS programe, imaju postavljene atribute Read Only, System, Hidden i Volume Label. Redovni programi MS-DOS ignorira unose direktorija s ovim egzotičnim skupom atributa.

Nova verzija programa DISKEDIT označava poseban deskriptor kao LFN (Long File Name) i odnosi se na klaster broj 0. Pravi broj prvog klastera dodijeljenog datoteci ili direktoriju nalazi se u standardnom deskriptoru odmah iza proširenog deskriptora . U ovom slučaju, to je ručka za direktorij pod nazivom DISIGN~1 koji se nalazi u klasteru broj 1274.

Ako je naziv datoteke ili direktorija duži od 8 znakova, standardni deskriptor nakon proširenih sadrži alternativni naziv koji se sastoji od početnih znakova imena, znaka ~ (tilde) i decimalnog broja. Ovaj deskriptor se naziva alternativni.

Operativni sustav Microsoft Windows NT/2000 također stvara proširene i alternativne ručke za FAT particije.

Pomoću retka Više glavnog izbornika programa DISKEDIT možete pregledati ili urediti preostala polja posebnih deskriptora.

Na primjer, datum i vrijeme kada je datoteka stvorena nalaze se u poljima Datum izrade i Vrijeme izrade. Osim toga, operativni sustav Microsoft Windows 95/98 popravlja datum zadnjeg pristupa datoteci. Ovaj datum možete vidjeti u polju Pristupljeno.

Polje EA sadrži oznaku proširenih atributa i postavljeno je na nulu za standardne atribute.

Ako je naziv toliko dugačak da ne stane u jedan poseban deskriptor, stvara se nekoliko takvih deskriptora, jedan za drugim. Nakon njih slijedi alternativni deskriptor. Redno polje sadrži redni broj posebnog deskriptora. Zadnji posebni deskriptor postavljen je na Da u zadnjem polju.

Za one koje zanima točan format standardnog i proširenog VFAT deskriptora, osigurali smo isječak izvornog koda CrashUndo 2000. Ovo je unija dviju struktura, od kojih prva odgovara standardnom deskriptoru, a druga na prošireni:

Typedef unija _FAT_DIR_ENTRY
{
struct_DIR
{
BYTE dir_Name; // Ime
BYTE dir_Extension; // proširenje naziva
BYTE dir_Atributi; // atributi
BYTE dir_NTReserved; // rezervirano za Windows NT
BYTE dir_CreateTimeTenth; // desetine vremena stvaranja
UINT16 dir_CreateTime; // vrijeme nastanka
UINT16 dir_CreateDate; // datum nastanka
UINT16 dir_LastAccessDate; // datum zadnjeg pristupa
UINT16 dir_FirstClusterHi; // visoka riječ broja klastera
UINT16 dir_WriteTime; // vrijeme ažuriranja
UINT16 dir_WriteDate; // datum ažuriranja
UINT16 dir_FirstClusterLo; // niska riječ broja klastera
UINT32 dir_FileSize; // veličina datoteke
) dir; struct_LFN
{
BYTE lfn_Sequence; // broj deskriptora
WCHAR lfn_Name1; // prvi dio imena
BYTE lfn_Atributi; // atributi
BYTE lfn_LongEntryType; // znak proširenog atributa
BYTE lfn_Checksum; // naziv kontrolne sume
WCHAR lfn_Name2; // drugi dio imena
UINT16 lfn_Rezervirano; // Rezervirano
WCHAR lfn_Name3; // treći dio imena
)lfn;
) FAT_DIR_UNOS, *PFAT_DIR_ENTRY;

Imajte na umu da se dva 16-bitna polja dir_FirstClusterHi i dir_FirstClusterLo koriste za pohranu prvog broja klastera dodijeljenog datoteci ili direktoriju.

Što se tiče FAT tablice dodjele datoteka, iako se u operativnom sustavu Microsoft Windows 95/98 naziva Virtual File Allocation Table (VFAT), njen format je ostao isti. Ovo je radi kompatibilnosti s MS-DOS programima. Sačuvani su i formati drugih logičkih blokova datotečnog sustava, kao što su particijska tablica diska, tablica logičkog diska, boot record i prošireni blok parametara BIOS Extended BPB.

Imajte na umu da se stare verzije paketa Norton Utilities ne mogu koristiti za vraćanje datotečnog sustava Microsoft Windows 95/98 jer ne znaju ništa o proširenim i alternativnim deskriptorima.

Područje podataka

Nakon korijenskog direktorija počinje podatkovno područje koje se proteže do kraja logičkog pogona. Ovo područje je podijeljeno na klastere, a numeriranje klastera počinje s brojem 2. Klaster broj 2 odgovara prvim sektorima podatkovnog područja.

Ovdje je formula koja povezuje broj klastera s brojevima sektora koje on zauzima na logičkom disku:

SectNumber = DataStart + ((ClustNumber - 2) * ClustSize)

Ova formula koristi sljedeću notaciju:

Ova formula može biti korisna prilikom ručnog vraćanja datotečnog sustava.

Pronalaženje i vraćanje datoteka na FAT particije

U ovom odjeljku dat ćemo neke preporuke usmjerene na oporavak datoteka koje su postale nedostupne zbog zlonamjernog djelovanja virusa ili kao rezultat uništenja FAT datotečnog sustava iz bilo kojeg drugog razloga. U svakom slučaju, prije početka restauracije, trebali biste provesti potpunu studiju BIOS-a i parametara datotečnog sustava koristeći informacije koje smo ranije opisali.

Također morate biti sigurni da dobro vladate strukturom datotečnog sustava i poznajete formate svih njegovih komponenti, kao što je particijska tablica, tablica logičkog diska, FAT tablica dodjele datoteka i tako dalje.

Ako u procesu ispitivanja datotečnog sustava ustanovite da su neke strukture potpuno uništene (na primjer, glavni boot zapis s tablicom particija, tablicom logičkog diska, direktorijima i tako dalje), nije sve izgubljeno.

Ako vam sigurnost informacija nije kritična, tada se mnoge štete na datotečnom sustavu mogu popraviti automatski pomoću Norton Disk Doctora ili SCANDISK-a. Međutim, ti vrlo dobri programi u nekim slučajevima neće vam moći pružiti značajniju pomoć. Što je još gore, mogu trajno uništiti logičku strukturu diska, nakon čega oporavak datoteke postaje nemoguć.

Stoga morate poznavati barem osnovne tehnike ručnog oporavka datotečnog sustava. U teškim ili odgovornim slučajevima, toplo preporučujemo da nas kontaktirate na DataRecovery.Ru usluzi putem poslužitelja http://www.datarecovery.ru ili http://www.frolov.pp.ru.

Osnovna ideja traženja izgubljenih datoteka i struktura podataka je da znate (barem približno) njihov naziv ili sadržaj.

Na primjer, sektori koji sadrže tablicu particija, tablicu logičkog diska i zapis za pokretanje imaju potpis 0xAA55. Iz prethodnih odjeljaka ovog poglavlja znate da bootstrap programi sadrže poznate tekstualne nizove u svom tijelu. Možete ih koristiti za pretraživanje. Takve linije također se nalaze u tijelu proširenog bloka parametara BIOS Extended PBP (to su FAT12, FAT16 ili FAT32 linije).

Ako znate karakteristične riječi ili nizove bajtova koji se nalaze u izgubljenim podatkovnim datotekama, oni su također prikladni za pronalaženje sektora datoteka za oporavak.

Pretraživanje s Norton File Find

Najčešće oštećenje FAT datotečnog sustava događa se prilikom iznenadnog nestanka struje i predstavlja pojavu tzv. izgubljenih klastera. Ova šteta je također rezultat hard reset računalo s operativnim sustavom Microsoft Windows.

Klasteri bez roditelja nazivaju se tako jer nisu navedeni ni u jednom direktoriju sustava datoteka. Takva situacija može nastati, na primjer, zbog činjenice da je odgovarajući imenik jednostavno uništen i, posljedično, poveznice na datoteke opisane u njemu su nestale.

Za popravak ovakvih oštećenja korisnici najčešće koriste program SCANDISK koji je dio operativnog sustava ili program Norton Disk Doctor.

Nakon vraćanja datotečnog sustava pomoću Norton Disk Doctora ili SCANDISK-a, na disku se može formirati ogroman broj datoteka s određenim nastavkom naziva, sastavljenim od lanaca izgubljenih klastera (svaki program za oporavak koristi svoje vlastito ime). Takvih datoteka može biti do nekoliko tisuća, ovisno o težini oštećenja datotečnog sustava.

Ako ste nakon pada ili napada virusa provjerili disk jednim od gore navedenih programa i kao rezultat toga su datoteke koje su vam potrebne nestale, velika je vjerojatnost da su one bile među oporavljenim datotekama. Međutim, kako ih pronaći među stotinama i tisućama drugih?

Najlakši način da to učinite je, na primjer, pomoću programa Norton Find File. Može se pokrenuti iz popularne ljuske Norton Commander kombinacijom tipki Alt + F7.

U polju File(s) to find morate navesti obrazac za naziv datoteke i nastavak naziva datoteke, npr. *.NDD. Pretraživanje će se izvršiti samo između datoteka čiji naziv odgovara navedenom uzorku.

U polju Sadrži također morate navesti kontekst za pretraživanje, to jest bilo koji tekstualni niz koji je prisutan u datoteci. Na primjer, pronaći sve stvorene datoteke program za obradu teksta Microsoft Word za Windows, možete navesti kontekstni niz "Microsoft Word", a kako biste pronašli sve datoteke pripremljene u okruženju elektroničkog procesora Microsoft proračunske tablice Excel, navedite kontekstni niz "Microsoft Excel".

Popis pronađenih staza datoteka pojavit će se na vrhu prozora Norton Find File.

Ubuduće, ako još uvijek bude pronađeno puno datoteka, možete ih prepisati u poseban direktorij i preimenovati, a zatim nastaviti pretraživanje koristeći druge retke kao kontekst.

Pretraživanje pomoću DISKEDIT-a

U usporedbi s programom Norton Find File opisanim u prethodnom odjeljku, DISKEDIT pruža puno više opcija za pronalaženje datoteka, kao i razne strukture sustav datoteka.

Pretraživanje odjeljka

Obratite pažnju na jelovnik Alati Programi DISKEDIT.

Ako u ovom izborniku odaberete redak Traži, na zaslonu će se pojaviti dijaloški okvir Unesite tekst za pretraživanje. Pomoću ovog dijaloškog okvira možete izvoditi kontekstualna pretraživanja za nizove navedene u znakovnom i heksadecimalnom prikazu. Osim toga, možete odrediti pomak sektora i odabrati način rada Ignore Case. Kada koristite ovaj način rada, podudaranje uzorka će se izvesti bez obzira na mala ili velika slova.

Redak Find Object omogućuje vam traženje različitih struktura datotečnog sustava. Ako odaberete ovaj redak, na zaslonu će se pojaviti izbornik druge razine, gdje se nalaze linije particije / pokretanja, FAT i podmape.

Isprobajte sve na djelu. Da biste to učinili, otvorite izbornik Objekt i iz njega odaberite liniju Fizički sektor. Zatim odredite prvi sektor koji se nalazi na nultoj stazi. Ovaj sektor mora sadržavati MBR. Prebacite se na neformatirani prikaz odabirom Hex iz izbornika Pogled.

Ali što ako nakon pregleda glavnog zapisa za podizanje sustava vidite da je particijska tablica uništena ili šifrirana?

U ovom slučaju, možete kontekstualno pretraživati ​​sektore zapisa za pokretanje koji sadrže blokove parametara BIOS BPB. Najlakši način da to učinite je, nakon što pogledate glavni zapis o pokretanju na njegovoj fizičkoj adresi i prijeđete na sljedeći sektor diska, odaberete liniju Particija/Pokretanje iz izbornika Alati / Pronađi objekt.

Program DISKEDIT će pronaći sektor koji završava nizom bajtova "55 AA" koji odgovara potpisu sektora za pokretanje 0xAA55.

Nakon što ste pronašli boot sektor, njegovu fizičku adresu možete ručno umetnuti u particijsku tablicu uređivanjem pomoću programa DISKEDIT.

Budući da se struktura particija diska tijekom rada potonjeg može promijeniti mnogo puta, moguće je da ćete pronaći previše sektora za pokretanje. Neki od njih pripadali su starim particijama i nisu uništeni kada je struktura particije promijenjena, neki čak mogu pripadati drugim operativnim sustavima. U svakom slučaju provjerite lokaciju pronađenog boot sektora u odnosu na druge logičke strukture datotečnog sustava koji ste pronašli. Na primjer, možete upotrijebiti za "identificiranje" činjenice da sektor za pokretanje FAT particije treba pratiti tablica dodjele datoteka odmah nakon njega.

Budući da program DISKEDIT tijekom pretraživanja provjerava samo zadnja dva bajta sektora, to je moguće lažno pozitivni. Nakon pronađenog sektora može postojati sektor čiji sadržaj ima malo sličnosti s tablicom dodjele datoteka.

Pronalaženje FAT tablica

Sada odaberite liniju Find Object iz izbornika Tools, a zatim liniju FAT. Program DISKEDIT će potražiti prvu kopiju FAT tablice dodjele datoteka i prikazati njen dump, ističući prva tri bajta u njoj.

Ako sada pomaknemo tekstualni kursor prema dolje ili pritisnemo tipku PgDn i zatim ponovno odaberemo FAT iz izbornika Alati/Pronađi objekt, pronaći će se druga kopija tablice dodjele FAT datoteka.

Napominjemo da se traženje FAT tablica u ovom slučaju svodi na traženje niza bajtova "F8 FF FF", pa se traženjem treći put može pronaći još jedna lažna "FAT tablica". Činjenica je da vjerojatno postoji neka datoteka na disku koja sadrži gornji niz bajtova, stoga budite oprezni.

Pronalaženje izgubljenih imenika

Sada potražimo izgubljene direktorije. Ne postoje poveznice na takve imenike iz drugih imenika.

Za pretraživanje možete koristiti liniju Poddirektorij u izborniku Alati/Pronađi objekt. Program DISKEDIT skenira sektore diska tražeći onaj koji počinje nizom bajtova "2E 20 20 20 20 20 20 20 20 20 20". Ovaj niz odgovara deskriptoru koji sadrži referencu direktorija na sebe.

Pritiskom na kombinaciju tipki Ctrl+G možete nastaviti tražiti željeni direktorij dok ne pronađete onaj koji sadrži datoteke koje vas zanimaju. Također možete pretraživati ​​prema nazivu datoteke ako ga znate.

Čim se traženi direktorij pronađe, potrebno je zapisati fizičku adresu sektora diska koji sadrži direktorij, a zatim pronaći ili izračunati broj klastera koji odgovara direktoriju.

Za traženje broja klastera u kojem se nalazi pronađeni imenik, prebacite se na način pregledavanja formatiranog imenika odabirom retka kao Imenik iz izbornika Pogled. Zatim odaberite liniju Cluster chain (fat) iz izbornika Link. Sadržaj FAT tablice pojavit će se na zaslonu u formatiranom prikazu, s označenim brojem željenog klastera.

Oporavak izgubljenih direktorija i datoteka

Znajući broj klastera izgubljenog direktorija, možete stvoriti novi deskriptor direktorija, na primjer, u korijenskom direktoriju diska i napraviti vezu na pronađeni direktorij u ovom deskriptoru. Nakon toga će izgubljeni direktorij ponovno postati dostupan.

Imajte na umu da za VFAT datotečni sustav polje kontrolnog zbroja imena u proširenom deskriptoru mora biti pravilno popunjeno, kao i 32-bitni broj prvog klastera dodijeljenog datoteci.

Možemo predložiti sljedeći algoritam za oporavak datoteke:

  • izvršiti kontekstualno pretraživanje sektora datoteka pomoću linije Datoteke iz izbornika Alati, kao i sekvencijalno pregledavanje sektora diska;
  • pomoću gornje formule ili programskih alata DISKEDIT odrediti broj klastera koji odgovaraju pronađenim sektorima;
  • vratiti lanac brojeva klastera za datoteku u FAT tablici dodjele datoteka, označavajući zadnji klaster u njoj posebnom vrijednošću (kao što je 0xFFFF za FAT-16);
  • stvoriti deskriptor datoteke u bilo kojem direktoriju (na primjer, u korijenu);
  • navedite u stvorenom deskriptoru poveznicu na prvi klaster vraćene datoteke i veličinu datoteke.

Ako ste oporavili datoteku dokumenta stvorenu programom za obradu teksta Microsoft Word za Windows ili programom za obradu proračunskih tablica Microsoft Excel, učitajte je u odgovarajuću aplikaciju i zatim spremite pod drugim imenom. Ovo će vratiti ispravnu duljinu datoteke.

Jednostavan tekstualna datoteka može se preuzeti u uređivač teksta i "odrezati" dodatne podatke na kraju datoteke. Zatim spremite datoteku pod drugim imenom.

Ako znate točnu duljinu datoteke, možete je postaviti pomoću programa DISKEDIT u modu za uređivanje deskriptora datoteke (slika 9).

računalni virusi

File virusi

Virus može zaraziti tri vrste datoteka:

Tim (BAT);

Upravljački programi koji se mogu učitavati (IO.SYS, MSDOS.SYS, itd.);

Izvršne binarne datoteke (EXE, COM).

Moguće je unijeti virus u podatkovne datoteke, ali ti se slučajevi događaju ili kao rezultat pogreške virusa ili kada virus manifestira svoja agresivna svojstva.

Virus se ubacuje u SYS datoteku na sljedeći način: virusi se ubacuju u SYS datoteku, dodjeljuju svoje kodove "tijelu" datoteke i mijenjaju adrese programa strategije i prekida zaraženog upravljačkog programa (postoje virusi koji mijenjaju adresu samo jednog od programa). Tijekom inicijalizacije zaraženog drajvera, virus presreće odgovarajući zahtjev operativnog sustava, prosljeđuje ga drajveru, čeka odgovor, ispravlja ga i ostaje u RAM-u zajedno s drajverom u istom memorijskom bloku. Takav virus može biti izuzetno opasan i uporan, jer upada u RAM prilikom učitavanja DOS-a prije bilo kojeg antivirusnog programa, ako je, naravno, i upravljački program.

Zaražena datoteka upravljačkog programa:

Također je moguće zaraziti upravljački program sustava na drugi način, kada virus modificira svoje zaglavlje tako da DOS tretira zaraženu datoteku kao lanac od dvije (ili više) datoteka.

Zaražena datoteka upravljačkog programa:

Slično, virus može zapisati svoje kodove na početak upravljačkog programa, a ako datoteka sadrži nekoliko upravljačkih programa, onda na sredinu datoteke.

Virus se ubacuje u COM i EXE datoteke na sljedeći način: izvršne binarne datoteke imaju COM ili EXE formate, razlikuju se u zaglavlju i načinu na koji se programi pokreću na izvršenje. Ekstenzija naziva datoteke (COM ili EXE) ne odgovara uvijek stvarnom formatu datoteke, što ni na koji način ne utječe na rad programa. COM ili EXE datoteke zaražene su na različite načine, stoga virus mora razlikovati datoteke jednog formata od drugog.

Virusi rješavaju ovaj problem na dva načina: neki analiziraju nastavak naziva datoteke, drugi analiziraju zaglavlje datoteke. Prva metoda će se nazivati ​​infekcija. COM- (.EXE-) datoteke, drugi način infekcije: COM- (EXE-) datoteke. U većini slučajeva virus ispravno inficira datoteku, tj. pomoću informacija sadržanih u tijelu virusa možete potpuno vratiti zaraženu datoteku. Ali virusi, kao i većina programa, često sadrže pogreške koje su neprimjetne na prvi pogled. Zbog toga čak i dobro napisan virus može nepovratno oštetiti datoteku ako je oštećena. Na primjer, virusi koji razlikuju vrste datoteka prema ekstenziji naziva (.COM-, .EXE-) vrlo su opasni jer oštećuju datoteke čiji nastavak naziva ne odgovara internom formatu.

Datotečni virusi se prilikom širenja unose u tijelo zaražene datoteke: početak, kraj ili sredinu. Postoji nekoliko mogućnosti za unošenje virusa u sredinu datoteke: može se kopirati u tablicu postavki adrese EXE datoteke ("Boot - Exe"), područje stoga datoteke COMMAND.COM ("Lehigh "), može proširiti datoteku ili prebrisati dio datoteke na njenom kraju, a njihove kodove na oslobođeni prostor ("April - 1- Exe", "Phoenix"), itd. Osim toga, kopiranje virusa na sredini datoteke može se pojaviti kao rezultat pogreške virusa. U tom slučaju datoteka može biti nepovratno oštećena. Postoje i drugi načini za ubacivanje virusa u sredinu datoteke, na primjer, virus "Mutant" koristi metodu komprimiranja nekih dijelova datoteke.

Unošenje virusa na početak datoteke može se dogoditi na tri načina. Prvi način je da virus prepisuje početak zaražene datoteke na njezin kraj, te se kopira na oslobođeni prostor. Kada zarazi datoteku na drugi način, virus stvara svoju kopiju u RAM-u, dodaje joj zaraženu datoteku i sprema rezultirajuću konkatenaciju na disk. Kada se zarazi trećom metodom, virus zapisuje svoje kodove na početak datoteke, bez spremanja starog sadržaja početka datoteke, naravno, datoteka prestaje raditi i ne može se vratiti.

Ubrizgavanje virusa na početak datoteke koristi se u velikoj većini slučajeva kada su COM datoteke zaražene. EXE datoteke zaražene su ovom metodom, bilo kao rezultat pogreške virusa, ili korištenjem algoritma virusa "Pascal".

Uvođenje virusa na kraj datoteke najčešći je način zaraze. U tom slučaju virus mijenja početak datoteke na način da su prve izvršne naredbe programa sadržane u datoteci naredbe virusa. U COM datoteci to se postiže promjenom prva tri (ili više) bajta u kodove instrukcija JMP Loc_Virus (ili, općenito, u kodove programa koji kontrolu prenosi na tijelo virusa). Datoteka EXE se ili pretvara u format datoteke COM i zatim zarazi kao posljednja ili se mijenja zaglavlje datoteke (dužina, početne adrese).

Standardnom metodom infekcije nazvat ćemo metodu u kojoj virus dodaje na kraj datoteke i mijenja prve bajtove COM datoteke i nekoliko polja zaglavlja EXE datoteke.

Virus, nakon prijenosa kontrole na njega, radi prema sljedećem algoritmu:

Vraća program (ali ne i datoteku) u izvornom obliku;

Ako je virus rezidentni, tada provjerava prisutnost svoje kopije u RAM-u i inficira memoriju računala ako kopija nije pronađena; ako virus nije rezidentni, tada traži nezaražene datoteke u trenutnim i korijenskim direktorijima, u direktorijima označenim u naredbi PATH, skenira stablo direktorija logičkih pogona, a zatim inficira otkrivene datoteke;

Izvodi, ako ih ima, dodatne funkcije: destruktivne radnje, grafičke ili zvučne efekte.

Vraća kontrolu glavnom programu.

Boot virusi

Boot virusi inficiraju boot sektor diskete i Boot sektor, ili Master Boot Record tvrdog diska. Kada je disk zaražen, virus u većini slučajeva prenosi izvorni Boot sektor na neki drugi sektor diska. Ako je duljina virusa veća od duljine sektora, tada se prvi dio virusa pomiče u zaraženi sektor, a ostatak se postavlja u druge sektore. Zatim virus kopira informacije o sustavu pohranjene u originalnom bootloaderu i zapisuje ih u boot sektor (za MBR ove informacije su Disk Partition Table, za Boot sektor disketa to je BIOS Parameter Block).

Algoritam pokretanja virusa.

Ubacivanje u memoriju provodi se prilikom dizanja sa zaraženog diska. U ovom slučaju, program za učitavanje sustava čita sadržaj prvog sektora diska s kojeg se izvodi dizanje, smješta pročitane informacije u memoriju i prenosi kontrolu na njega (tj. na virus). Nakon toga počinju se izvršavati upute virusa, što smanjuje količinu slobodne memorije; čita njegov nastavak s diska; prenosi se u drugo područje memorije; postavlja potrebne vektore prekida; obavlja dodatne radnje; kopira izvorni Boot sektor u memoriju i prenosi kontrolu na njega.

Naknadno se boot virus ponaša na isti način kao virus rezidentne datoteke: presreće pristup operativnog sustava diskovima i pokreće ih te, ovisno o određenim uvjetima, izvodi destruktivne radnje ili izaziva zvučne ili video efekte.

Poštovani korisnici, materijal ovog članka ne može se smatrati potpunim i iscrpnim, budući da napredak neprestano ide naprijed i, nažalost, tehnologije za pisanje virusa i zlonamjernog softvera također se poboljšavaju. Ovaj članak je sastavljen u informativne svrhe, kako bi se povećala edukacija i svijest korisnika. Nadam se (netočno naivno) da prezentirani materijal neće nikoga natjerati na pisanje zloćudnih programa, nego natjerati na razmišljanje. Zapamtite, postoji jedna mudra izreka: "Ne pljuj u bunar, morat ćeš piti." U našem slučaju internet je golemi „zdenac“ informacija iz kojeg dobivamo potrebne informacije. Održavati ga čistim naša je izravna odgovornost, jer smo mi njegov sastavni dio (doduše neizravno, ali ipak :).

Što su virusi

Virus- ovo je posebno napisan program male veličine, slijed kodova uputa koji se može "pripisati" drugim programima ("inficirati" ih), stvarati svoje kopije (ne uvijek iste) i ugrađivati ​​ih u datoteke, računalo područja sustava itd. .d., kao i obavljati razne neželjene radnje na računalu.

Računalni virusi svoje ime duguju određenoj sličnosti s prirodnim virusima: sposobnost samozaraze; velika brzina širenja; selektivnost zahvaćenih sustava (svaki virus inficira samo određene sustave ili homogene skupine sustava); mogućnost "zaraze" još nezaraženih sustava; poteškoće u borbi protiv virusa itd.

Klasifikacija računalnih virusa

Konvencionalno, virusi se mogu klasificirati prema sljedećim kriterijima:
* prema staništu virusa
* prema načinu onečišćenja okoliša
* razornim sposobnostima
* prema značajkama algoritma virusa
* prema vrsti destruktivnih djelovanja

Virusi za pokretanje inficiraju sektor za pokretanje diskete i sektor za pokretanje ili glavni zapis za pokretanje (MBR) tvrdog diska. Princip rada boot virusa temelji se na algoritmima za pokretanje operativnog sustava kada se računalo uključi ili ponovno pokrene.

Da bude jasnije, detaljno ću objasniti kako se računalo pokreće: nakon što se računalo uključi, napajanje šalje signal POWER_ON matičnoj ploči, koja zauzvrat provjerava napon u strujnom krugu, ako je normalan , zatim se računalo uključuje. Nadalje, kontrolu prima program u BIOS-u (Basic Input Output System) video kartice, testira komponente video kartice i, po primitku pozitivnih podataka, prenosi kontrolu na BIOS matična ploča. Pokreće postupak POST (uključivanje samotestiranje), koji vrši samotestiranje svih komponenti sustava, ako je test uspješan i svi pronađeni uređaji daju pozitivne signale, BIOS, sukladno podacima u sekciji Boot, prenosi kontrolu na uređaj koji je prvi na ovoj listi . Kontrola se prenosi traženjem prvog fizičkog sektora, njegovim čitanjem i pokretanjem bootloadera.

U slučaju diskete ili CD-a, boot sektor dobiva kontrolu, koja analizira tablicu parametara diska (BPB - BIOS Parameter Block), izračunava adrese sistemskih datoteka operacijskog sustava, čita ih u memoriju i pokreće na izvršenje. Ako na disketi za pokretanje nema datoteka operativnog sustava, program koji se nalazi u sektoru za pokretanje diska prikazuje poruku o pogrešci i predlaže zamjenu diskete za pokretanje.

U slučaju tvrdog diska, kontrola je dana gore spomenutom pokretačkom programu, koji analizira tablicu particije diska, izračunava adresu aktivnog sektora za pokretanje (obično je ovaj sektor sektor za pokretanje pogona C:), učitava u memoriju i prenosi na nju kontrolu. Nakon što je primio kontrolu, aktivni sektor za pokretanje tvrdog diska izvodi iste radnje kao i sektor za pokretanje diskete. Dalje, sve je lakše, u sistemske datoteke postoji učitavač operativnog sustava, koji obavlja daljnje učitavanje OS-a.

Prilikom zaraze diskova, boot virusi "zamjenjuju" svoj kod za neki program koji preuzima kontrolu prilikom dizanja sustava. Dakle, princip zaraze je isti u svim gore opisanim metodama: virus "prisiljava" sustav, kada se ponovno pokrene, da čita u memoriju i da kontrolu ne izvornom kodu bootloadera, već virusnom kodu.

Diskete se zaraze jedinom poznatom metodom - virus piše vlastiti kod umjesto izvornog koda sektora za pokretanje diskete. Tvrdi disk se zarazi na tri moguća načina - virus se zapisuje ili umjesto MBR koda, ili umjesto koda boot sektora boot diska (obično C: pogon), ili mijenja adresu aktivnog boot sektora. u tablici particije diska koja se nalazi u MBR-u tvrdog diska.

Kada je disk zaražen, virus u većini slučajeva prebacuje izvorni boot sektor (ili MBR) u neki drugi sektor diska (primjerice, u prvi slobodni). Ako je duljina virusa veća od duljine sektora, tada se prvi dio virusa postavlja u zaraženi sektor, a preostali dijelovi se postavljaju u druge sektore (na primjer, u prve slobodne).


Postoji nekoliko opcija za postavljanje početnog sektora za pokretanje na disk i nastavak virusa: u sektore slobodnih klastera logičkog diska, u nekorištene ili rijetko korištene sektore sustava, u sektore koji se nalaze izvan diska.

Ako se nastavak virusa nalazi u sektorima koji pripadaju klasterima slobodnih diskova (prilikom traženja tih sektora virus mora analizirati tablicu dodjele datoteka - FAT), tada virus u pravilu označava te klastere u FAT-u. (Fail Allocation Table) kao loše (tzv. pseudo-loši klasteri).

Također, virusi postavljaju početni boot sektor u nekorišteni ili rijetko korišteni sektor - u jedan od sektora tvrdog diska (ako postoji) koji se nalazi između MBR-a i prvog boot sektora, a na disketi se takav sektor odabire iz posljednji sektori korijenskog direktorija.

Neki virusi zapisuju svoj kod u posljednje sektore tvrdog diska, budući da se ti sektori koriste samo kada je tvrdi disk potpuno ispunjen informacijama. Rjeđe se koristi metoda zadržavanja nastavka virusa izvan diska. To se postiže na dva načina. Prvi je smanjenje veličine logičkih diskova: virus oduzima potrebne vrijednosti od odgovarajućih BPB polja sektora za pokretanje i particijske tablice diska tvrdog diska (ako je tvrdi disk zaražen), čime se smanjuje veličina logički disk i pisanje njegovog koda u sektore "odsječene" s njega.

Drugi način je pisanje podataka izvan fizičke particije diska. U slučaju disketa, virus mora formatirati dodatni zapis na disku (nestandardna metoda formatiranja). Postoje virusi koji svoj kod pišu vani slobodan prostor tvrdi disk, ako to, naravno, dopušta instalirana oprema.

Naravno, postoje i druge metode postavljanja virusa na disk, na primjer, neki virusi sadrže standardni MBR loader u svom tijelu i, kada su zaraženi, prebrišu originalni MBR bez da ga pohrane.

Kada su zaraženi, većina virusa kopira informacije o sustavu pohranjene u izvornom pokretačkom programu u kod svog pokretačkog programa (za MBR ove informacije su Particiona tablica diska, za Boot sektor disketa to je BIOS Parameter Block). U suprotnom, sustav se neće moći sam pokrenuti, budući da se adrese diskova komponenti sustava izračunavaju na temelju tih informacija.

Međutim, neki Stealth virusi ne pohranjuju te podatke, ili čak i više od toga, oni ih namjerno šifriraju. Kada sustav ili drugi programi pristupe zaraženim sektorima, virus zamjenjuje njihove nezaražene izvornike, a sustav se pokreće bez ikakvih grešaka.

Također treba napomenuti da se boot virusi vrlo rijetko "slažu" zajedno na istom disku - često koriste iste sektore diska za smještaj svog koda/podataka. Kao rezultat toga, kod/podaci prvog virusa su oštećeni kada su zaraženi drugim virusom, a sustav ili visi pri dizanju ili se petlja.

Algoritam pokretanja virusa

Gotovo svi virusi za pokretanje su rezidentni. Oni se unose u memoriju računala prilikom pokretanja sa zaraženog diska. U ovom slučaju, program za učitavanje sustava čita sadržaj prvog sektora diska s kojeg se izvodi dizanje, smješta pročitane informacije u memoriju i prenosi kontrolu na njega (tj. na virus). Nakon toga počinju se izvršavati upute virusa koje:
1. u pravilu smanjuje količinu slobodne memorije (riječ na adresi 0040:0013), kopira svoj kod u oslobođeni prostor i čita njegov nastavak (ako postoji) s diska. U budućnosti, neki virusi "čekaju" da OS učita i vrati ovu riječ u svoj početna vrijednost. Kao rezultat toga, oni se ne nalaze izvan OS-a, već kao zasebni memorijski blokovi operativnog sustava.
2. presreće potrebne vektore prekida (obično - INT 13h), čita originalni boot sektor u memoriju i prenosi kontrolu na njega.

Ubuduće se boot virus ponaša na isti način kao virus rezidentne datoteke: presreće pristup operativnog sustava diskovima i inficira ih, ovisno o određenim uvjetima, izvodi destruktivne radnje ili izaziva zvučne ili video efekte.

Postoje nerezidentni virusi za pokretanje - kada se učitaju, oni zaraze MBR tvrdog diska i disketa, ako su prisutni u pogonima. Zatim takvi virusi prenose kontrolu na izvorni bootloader i više ne utječu na rad računala.

File virusi

Ova skupina uključuje viruse koji tijekom svoje reprodukcije na ovaj ili onaj način koriste datotečni sustav bilo kojeg OS-a.

Uvođenje datotečnog virusa moguće je u gotovo sve izvršne datoteke svih popularnih operativnih sustava, kao i dinamičke i virtualne biblioteke upravljačkih programa (dll, VxD) i mnoge druge datoteke.

Postoje virusi koji zaraze datoteke koje sadrže izvorne tekstove programa, biblioteke ili objektne module. Moguće je da virus piše u podatkovne datoteke, ali to se događa ili kao rezultat pogreške virusa ili kada se očituju njegova agresivna svojstva. Makro virusi također zapisuju svoj kod u podatkovne datoteke - dokumente ili proračunske tablice - no ti su virusi toliko specifični da su svrstani u zasebnu skupinu.

Ova metoda zaraze je najjednostavnija: virus piše vlastiti kod umjesto koda zaražene datoteke, uništavajući njezin sadržaj. Naravno, u ovom slučaju datoteka prestaje raditi i ne vraća se. Takvi se virusi vrlo brzo otkriju jer operativni sustav i aplikacije dosta brzo prestanu raditi.

Ubacivanje virusa na početak datoteke

Uvođenje virusa na početak datoteke koristi se u velikoj većini slučajeva kod zaraze DOS BAT i COM datoteka.Postoji nekoliko virusa koji se sami zapisuju na početak EXE datoteka DOS, Windows pa čak i Linux operativnih sustava. Istodobno, virusi, kako bi održali rad programa ili dezinficirali zaraženu datoteku, ponovno je pokreću, čekaju da završi i ponovno pišu na njen početak (ponekad se koristi privremena datoteka u koju se upisuje neutralizirana datoteka) , ili vratiti programski kod u memoriju računala i konfigurirati potrebne adrese u njegovom tijelu (tj. duplicirati rad OS-a).

Ubrizgavanje virusa na kraju datoteke

Najčešći način ubacivanja virusa u datoteku je dodavanje virusa na kraj datoteke. U tom slučaju virus mijenja početak datoteke na način da su prve izvršne naredbe programa sadržane u datoteci naredbe virusa.

U DOS COM datoteci, to se u većini slučajeva postiže promjenom prva tri (ili više) bajta u kodove instrukcija JMP Loc_Virus (ili, općenito, u kodove programa koji kontrolu prenosi na tijelo virusa).

Virusi koji se infiltriraju u SYS datoteke prilažu svoje kodove tijelu datoteke i mijenjaju adrese programa strategije i prekida zaraženog upravljačkog programa. Tijekom inicijalizacije zaraženog upravljačkog programa, virus presreće odgovarajući zahtjev operativnog sustava, prosljeđuje ga upravljačkom programu, čeka odgovor na taj zahtjev, ispravlja ga i ostaje zajedno s upravljačkim programom u istom bloku RAM-a. Takav virus može biti izuzetno opasan i žilav, budući da se u RAM memoriju ubacuje prilikom učitavanja OS-a prije bilo kojeg antivirusnog programa, osim, naravno, ako nije u pitanju i upravljački program.

Postoje i virusi koji zaraze upravljačke programe sustava na drugačiji način: virus modificira svoje zaglavlje tako da OS tretira zaraženu datoteku kao lanac od dva (ili više) upravljačkih programa.

Slično, virus može zapisati svoje kodove na početak upravljačkog programa, a ako datoteka sadrži nekoliko upravljačkih programa, onda na sredinu datoteke.

Ubacivanje virusa u sredinu datoteke

Postoji nekoliko metoda za ubacivanje virusa u sredinu datoteke. U najjednostavnijem od njih, virus prenosi dio datoteke na njen kraj ili "širi" datoteku i upisuje njen kod na oslobođeni prostor. Ova metoda je vrlo slična gore navedenim metodama. Neki virusi komprimiraju prijenosni blok datoteke na takav način da se duljina datoteke ne mijenja tijekom infekcije.

Druga je metoda "šupljine", u kojoj se virus zapisuje u očito neiskorištena područja datoteke. Virus se može kopirati u neiskorištena područja DOS adresne tablice EXE datoteke ili u zaglavlje NewEXE datoteke, u područje stoga datoteke COMMAND.COM ("Lehigh") ili u područje tekstualnih poruka popularnih kompilatora ("NMSG"). Postoje virusi koji zaraze samo one datoteke koje sadrže blokove popunjene nekim stalnim bajtom, dok virus umjesto takvog bloka ispisuje vlastiti kod.

Virusi bez ulazne točke

Posebno treba istaknuti prilično beznačajnu skupinu virusa koji nemaju "ulaznu točku" (EPO-virusi - Entry Point Obscuring viruses). To uključuje viruse koji ne zapisuju naredbe za prijenos kontrole u zaglavlje COM datoteka (JMP) i ne mijenjaju adresu početne točke u zaglavlju EXE datoteka. Takvi virusi zapisuju naredbu za prebacivanje na svoj kod negdje u sredini datoteke i primaju kontrolu ne izravno kada se zaražena datoteka pokrene, već kada pozivaju proceduru koja sadrži kod za prijenos kontrole na tijelo virusa. Štoviše, ovaj se postupak može izvesti iznimno rijetko (na primjer, kada se prikazuje poruka o određenoj pogrešci). Kao rezultat toga, virus može "spavati" unutar datoteke dugi niz godina i iskočiti u slobodu samo pod određenim ograničenim uvjetima.

Prije nego što napiše naredbu za skok na svoj kod u sredini datoteke, virus mora odabrati "ispravnu" adresu u datoteci - inače bi zaražena datoteka mogla biti oštećena. Postoji nekoliko načina na koje virusi određuju takve adrese unutar datoteka.

Prvi način- pretraživanje u sekvencijskoj datoteci standardni kod C/Pascal. Ovi virusi traže zaglavlja standardnih C/Pascal procedura u zaraženim datotekama i umjesto toga pišu vlastiti kod.

Drugi način- praćenje ili rastavljanje koda datoteke. Takvi virusi učitavaju datoteku u memoriju, zatim je prate ili rastavljaju i, ovisno o različitim uvjetima, odabiru naredbu (ili naredbe), umjesto koje se prijelazni kod upisuje u tijelo virusa.

Treći način koriste samo rezidentni virusi - kontroliraju neku vrstu prekida prilikom pokretanja datoteke (češće - INT 21h). Čim zaražena datoteka pokrene ovaj prekid, virus piše vlastiti kod umjesto naredbe za pozivanje prekida.

Suputnik - virusi

Kategorija "pratitelj" uključuje viruse koji ne mijenjaju zaražene datoteke. Algoritam rada ovih virusa je da se za zaraženu datoteku kreira datoteka blizanac, a kada se zaražena datoteka pokrene, upravo taj blizanac preuzima kontrolu, tj. virus.

Najčešći pratitelj - virusi koji koriste značajku DOS-a da prvo izvrše .COM datoteku ako postoje dvije datoteke s istim nazivom u istom direktoriju, ali razne ekstenzije naziv - .COM i .EXE. Takvi virusi stvaraju satelitske datoteke za EXE datoteke koje imaju isti naziv, ali s nastavkom .COM, na primjer, XCOPY.COM se stvara za datoteku XCOPY.EXE. Virus piše u COM datoteku i ni na koji način ne mijenja EXE datoteku. Prilikom pokretanja takve datoteke, DOS će prvi otkriti i izvršiti COM datoteku, tj. virus, koji će zatim pokrenuti EXE datoteku. Neki virusi koriste ne samo COM-EXE varijantu, već i BAT-COM-EXE.

Drugu skupinu čine virusi koji, kada su zaraženi, preimenuju datoteku u neko drugo ime, zapamte je (za naknadno pokretanje host datoteke) i zapišu svoj kod na disk pod imenom zaražene datoteke. Na primjer, datoteka XCOPY.EXE je preimenovana u XCOPY.EXD, a virus je zapisan pod imenom XCOPY.EXE. Prilikom pokretanja, kontrola preuzima kod virusa, koji zatim pokreće izvorni XCOPY, pohranjen pod imenom XCOPY.EXD. Zanimljiva je činjenica da ova metoda radi, vjerojatno, u svim operativnim sustavima - virusi ove vrste pronađeni su ne samo u DOS-u, već iu Windowsima i OS / 2.

Treća skupina uključuje takozvane "Path-companion" viruse koji "igraju" na značajkama DOS PATH-a. Oni ili zapišu svoj kod pod imenom zaražene datoteke, ali "više" na jednoj PATH razini (DOS će tako prvi otkriti i pokrenuti datoteku virusa), ili prebace datoteku žrtve jedan poddirektorij više, itd.

File crvi

Datotečni crvi su, u neku ruku, vrsta pratećeg virusa, ali ni na koji način ne povezuju svoju prisutnost s bilo kojom izvršnom datotekom. Kada se reproduciraju, samo kopiraju svoj kod u neke direktorije na disku u nadi da će te nove kopije jednog dana pokrenuti korisnik. Ponekad ti virusi svojim kopijama daju "posebna" imena kako bi potaknuli korisnika da pokrene njihovu kopiju - na primjer, INSTALL.EXE ili WINSTART.BAT.

Postoje crvi koji zapisuju svoje kopije u arhive (ARJ, ZIP, RAR i drugi). Ovi virusi uključuju "ArjVirus" i "Winstart". Neki virusi zapisuju naredbu za pokretanje zaražene datoteke u BAT datoteke.

File crve ne treba brkati s mrežni crvi. Prvi koriste samo datotečne funkcije nekog operativnog sustava, dok drugi koriste mrežne protokole za njihovu reprodukciju.

Link virusi

Link-virusi, poput suputnika - virusi ne mijenjaju fizički sadržaj datoteka, međutim, kada se zaražena datoteka pokrene, oni "prisiljavaju" OS da izvrši svoj kod. Taj cilj postižu modificiranjem potrebnih polja datotečnog sustava.

Do danas je poznata samo jedna vrsta Link-virusa - virusi obitelji "Dir_II". Kada zaraze sustav, zapisuju svoje tijelo u posljednji klaster logičkog diska. Kada zaraze datoteku, virusi ispravljaju samo broj prvog klastera datoteke koji se nalazi u odgovarajućem sektoru direktorija. Novi početni klaster datoteka pokazat će na klaster koji sadrži tijelo virusa. Dakle, kada su datoteke zaražene, njihova duljina i sadržaj diskovnih klastera koji sadrže te datoteke se ne mijenjaju, a sve zaražene datoteke na jednom logičkom disku imat će samo jednu kopiju virusa.

Jednom zaraženi, podaci imenika ukazuju na virus, tj. kada se datoteka pokrene, nisu datoteke te koje preuzimaju kontrolu, već virus.

OBJ-, LIB-virusi i virusi u izvornom kodu

Virusi koji zaraze biblioteke prevoditelja, objektne module i izvorne kodove programa prilično su egzotični i praktički neuobičajeni. Ukupno ih je desetak. Virusi koji zaraze OBJ i LIB datoteke zapisuju svoj kod u njih u obliku objektnog modula ili biblioteke. Zaražena datoteka stoga nije izvršna i nesposobna za daljnje širenje virusa u trenutnom stanju. Nositelj "živog" virusa je COM ili EXE datoteka dobivena povezivanjem zaražene OBJ/LIB datoteke s drugim objektnim modulima i bibliotekama. Dakle, virus se širi u dvije faze: OBJ/LIB datoteke se inficiraju u prvoj fazi, a funkcionalni virus se dobiva u drugoj fazi (povezivanje).

Infekcija izvornih tekstova programa je logičan nastavak prethodne metode širenja. U ovom slučaju virus dodaje svoje izvor(u ovom slučaju, virus ga mora sadržavati u svom tijelu) ili njegov hex dump (što je tehnički lakše). Zaražena datoteka sposobna je dalje širiti virus tek nakon kompilacije i povezivanja.

Algoritam virusa datoteke

Način vraćanja programa u izvorno stanje ovisi o tome kako je datoteka zaražena. Ako se virus ubaci na početak datoteke, on ili pomiče kodove zaraženog programa za broj bajtova koji je jednak duljini virusa, ili pomiče dio programskog koda s kraja na početak, ili vraća datoteku na disku i zatim je pokreće. Ako se virus zapisao na kraj datoteke, tada prilikom vraćanja programa koristi podatke pohranjene u tijelu kada je datoteka zaražena. To može biti duljina datoteke, nekoliko bajtova početka datoteke u slučaju COM datoteke ili nekoliko bajtova zaglavlja u slučaju EXE datoteke. Ako je virus zapisan u sredini datoteke na poseban način, tada prilikom vraćanja datoteke također koristi posebne algoritme.

Ubacivanje virusa u DOS COM i EXE datoteke

Izvršne binarne COM ili EXE datoteke koje se razlikuju po naslovu i načinu pokretanja programa. Ekstenzija naziva datoteke ("*.COM" ili "*.EXE") ne odgovara uvijek stvarnom formatu datoteke, što međutim ni na koji način ne utječe na rad programa. COM i EXE datoteke različito su zaražene, stoga virus mora razlikovati datoteke jednog formata od drugog. Virusi rješavaju ovaj problem na dva načina: neki analiziraju ekstenziju naziva datoteke ("*.COM", "*.EXE"), drugi - zaglavlje datoteke. Prva metoda će se nazivati ​​infekcija *.COM- (ili *.EXE-) datoteka, druga - infekcija COM- (ili EXE-) datoteka.

U većini slučajeva virus ispravno zarazi datoteku; prema informacijama sadržanim u tijelu virusa, možete potpuno vratiti zaraženu datoteku. Ali virusi, kao i većina programa, često sadrže pogreške koje su neprimjetne na prvi pogled. Zbog toga čak i dobro napisan virus može nepovratno oštetiti datoteku kada je zaražena. Na primjer, virusi koji razlikuju vrste datoteka prema ekstenziji naziva (*.COM, *.EXE) vrlo su opasni jer oštećuju datoteke čiji nastavak naziva ne odgovara internom formatu.

Jedan od najčešćih primjera neispravne infekcije datoteka je COMMAND.COM iz sustava Windows95. Ova datoteka je zapravo EXE datoteka, štoviše, ima veličinu veću od 90K, što je nemoguće za COM datoteku. Stoga virusi koji razlikuju COM/EXE datoteke po ekstenziji naziva i ne provjeravaju duljinu zaraženih COM datoteka (na primjer, "Junkie") kvare takav COMMAND.COM i on postaje neoperabilan.

Primitivna maska

Kada je datoteka zaražena, virus može izvesti niz radnji koje maskiraju i ubrzavaju njeno širenje. Takve radnje uključuju obradu atributa samo za čitanje, njegovo uklanjanje prije infekcije i vraćanje nakon. Mnogi datotečni virusi čitaju datum zadnje izmjene datoteke i vraćaju je nakon infekcije. Kako bi prikrili svoje širenje, neki virusi presreću prekid OS-a koji se javlja prilikom pristupa disku zaštićenom od pisanja (INT 24h) i sami ga obrađuju.

Brzina širenja

Govoreći o datotečnim virusima, potrebno je napomenuti njihovu značajku kao što je brzina distribucije. Što se virus brže širi, veća je vjerojatnost da će doći do epidemije tog virusa. Što se virus sporije širi, to ga je teže otkriti (osim, naravno, ako ovaj virus još nije poznat antivirusnim programima). Pojmovi "brzog" i "sporog" virusa (Fast infector, Slow infector) prilično su relativni i koriste se samo kao karakteristika virusa kada se opisuje.

Nerezidentni virusi često su "spori" - većina njih inficira jednu ili dvije ili tri datoteke pri pokretanju i nemaju vremena preplaviti računalo prije nego što se pokrene antivirusni program (ili nova verzija antivirusnog programa konfigurirana jer se ovaj virus pojavljuje). Postoje, naravno, nerezidentni "brzi" virusi koji, kada se pokrenu, traže i zaraze sve izvršne datoteke, međutim, takvi su virusi vrlo uočljivi: kada se svaka zaražena datoteka pokrene, računalo aktivno radi s tvrdim diskom za neki (ponekad dosta dugo) koji otkrivaju virus.

"Brzina" rezidentnih virusa obično je veća od nerezidentnih - oni zaraze datoteke kada im se pristupi. Kao rezultat, zaražene su sve ili gotovo sve datoteke na disku koje se stalno koriste u radu.

Stopa širenja rezidentnih datotečnih virusa koji zaraze datoteke samo kada se pokreću za izvršenje bit će niža od stope širenja virusa koji zaraze datoteke i kada se otvore, preimenuju, promijene atribute datoteke itd. Mnogi virusi, kada stvaraju svoju kopiju u RAM-u računala, pokušavaju zauzeti memorijsko područje s najvišim adresama, uništavajući privremeni dio prevoditelja naredbi COMMAND.COM. Na kraju zaraženog programa vraća se privremeni dio interpretera, otvara se datoteka COMMAND.COM i, ako virus zarazi datoteke prilikom otvaranja, zaražena je. Dakle, kada se takav virus pokrene, datoteka COMMAND.COM će biti prva zaražena.

Materijali i podaci preuzeti su iz izvora:
http://www.stopinfection.narod.ru
http://hackers100.narod.ru
http://broxer.narod.ru
http://www.viruslist.com
http://logic-bratsk.ru
http://www.offt.ru
http://www.almanet.info

  • Za objavljivanje komentara, molimo prijavite se ili se registrirajte

Nakon pokretanja programa koji sadrži virus, moguće je zaraziti druge datoteke. Najčešće su virusom zaraženi boot sektor diska i izvršne datoteke s ekstenzijama EXE, COM, SYS ili BAT. Tekstualne i grafičke datoteke iznimno su rijetko zaražene.

Zaraženi program je program koji sadrži virusni program ugrađen u sebe.

Znakovi manifestacije virusa

Kada se računalo zarazi virusom, vrlo je važno otkriti ga na vrijeme. Da biste to učinili, trebali biste znati o glavnim znakovima manifestacije virusa. To uključuje sljedeće:

Prestanak rada ili neispravan rad prethodno uspješno funkcionalnih programa;

Spor rad Računalo;

Nemogućnost pokretanja operativnog sustava;

Nestanak datoteka i direktorija ili iskrivljavanje njihovog sadržaja;

Promjena datuma i vremena izmjene datoteke;

Promjena veličine datoteka;

Neočekivani značajan porast broja datoteka na disku;

Značajno smanjenje veličine slobodnog RAM-a;

Prikazivanje neočekivanih poruka ili slika na ekranu;

Davanje nepredviđenih zvučnih signala;

Česta smrzavanja i rušenja računala.

Treba napomenuti da gore navedeni fenomeni nisu nužno uzrokovani prisutnošću virusa, već mogu biti posljedica drugih uzroka. Stoga je uvijek teško ispravno dijagnosticirati stanje računala.

Glavne vrste virusa

Trenutno je poznato više od 15 000 softverskih virusa, koji se mogu klasificirati prema sljedećim značajkama (Sl. 11.10):

Po staništu;

Prema načinu infekcije;

Prema stupnju utjecaja;

Prema značajkama algoritma.

Ovisno o stanište virusi se mogu podijeliti

na mreži,

datoteka,

Čizma

Datoteka za pokretanje.

· Mrežni virusi raširena po raznim računalne mreže.

· Datotečni virusi uvode se uglavnom u izvršne module, tj. u datoteke s ekstenzijama COM i EXE. Datotečni virusi mogu zaraziti i druge vrste datoteka, ali u pravilu su zapisani u takvim datotekama, nikada ne dobivaju kontrolu i stoga gube sposobnost reprodukcije.

· Virusi za pokretanje inficiraju sektor za pokretanje diska (Boot sector) ili sektor koji sadrži program za pokretanje sustava diska (Master Boot Record).

· File-boot virusi inficiraju i datoteke i boot sektore diskova.

Prema načinu infekcije virusi se dijele na

Stambeni

Nerezident.

· Kada rezidentni virus inficira (zarazi) računalo, on ostavlja svoj rezidentni dio u RAM-u, koji zatim presreće pristup operativnog sustava zaraženim objektima (datotekama, boot sektorima diska itd.) i infiltrira se u njih. Rezidentni virusi nalaze se u memoriji i ostaju aktivni dok se računalo ne isključi ili ponovno pokrene.

· Nerezidentni Prusi ne zaraze memoriju računala i aktivni su ograničeno vrijeme.

Prema stupnju djelovanja virusi se mogu podijeliti u sljedeće vrste:

nije opasno ne ometajući rad računala, ali smanjujući količinu slobodnog RAM-a i diskovnog prostora, djelovanje takvih virusa očituje se u svim grafičkim ili zvučnim efektima;

opasne viruse, što može dovesti do raznih kvarova u računalu;

vrlo opasno, čiji utjecaj može dovesti do gubitka programa, uništavanja podataka, brisanja informacija u sistemskim područjima diska

Prema značajkama algoritma viruse je teško klasificirati zbog njihove velike raznolikosti.

Može se primijetiti repliciranje virusa zvanih crvi, koji se šire računalnim mrežama, izračunavaju adrese mrežna računala i zapišite njihove kopije na ove adrese.

znan nevidljivi virusi zvani step virusi, koje je vrlo teško detektirati i neutralizirati, budući da presreću pozive operativnog sustava zahvaćenim datotekama i sektorima diska i zamjenjuju nezaražena područja diska umjesto njihovog tijela.

Najteže ih je otkriti mutantnih virusa, koji sadrži algoritme za šifriranje i dešifriranje, zahvaljujući kojima kopije istog virusa nemaju niti jedan ponavljajući lanac bajtova.

Postoje i tzv kvazivirusni ili "trojanski" programi, koji, iako nisu sposobni za samopropagiranje, vrlo su opasni, jer, prerušeni u koristan program, uništavaju boot sektor i datotečni sustav diska.

Programi za otkrivanje i zaštitu od virusa

Karakteristike antivirusnih programa

Za otkrivanje, uklanjanje i zaštitu od računalnih virusa razvijeno je nekoliko vrsta posebnih programa koji vam omogućuju otkrivanje i uništavanje virusa. Takvi programi nazivaju se antivirusni programi.

Postoje sljedeće vrste antivirusnih programa:

programi-detektori;

programi-liječnici ili fagi;

programi-revizori;

Programi za filtriranje

programi cjepiva ili imunizatori.

Programi-detektori izvršiti pretragu niza bajtova karakterističnih za određeni virus (virusni potpis) u RAM-u i datotekama i, ako se otkrije, izdati odgovarajuću poruku. Nedostatak takvih antivirusnih programa je što mogu pronaći samo viruse koji su poznati razvojnim programerima takvih programa.

Liječnički programi ili fagi - dizajniran za liječenje zaraženih diskova i programa. Liječenje programa sastoji se u uklanjanju tijela virusa iz zaraženog programa. Polifag je u stanju uništiti mnoge viruse. Najpoznatiji su Aidstest, Norton AntiVirus i Doctor Web.

programi revizora: dizajniran za otkrivanje virusne infekcije datoteka, kao i pronalaženje oštećenih datoteka. Ovi programi pamte podatke o stanju programa i sistemskih područja diskova u normalnom stanju (prije infekcije) i uspoređuju te podatke tijekom rada računala. Ako se podaci ne podudaraju, prikazuje se poruka o mogućnosti infekcije;

programe za filtriranje ili pohranu dizajniran za presretanje poziva operativnom sustavu, koje koriste virusi za reprodukciju i obavještavanje korisnika o tome. Korisnik može omogućiti ili onemogućiti odgovarajuću operaciju. Takvi programi su rezidentni, odnosno nalaze se u RAM-u računala.

programi cjepiva: koristi se za obradu datoteka i sektora za pokretanje kako bi se spriječila infekcija poznatim virusima (in novije vrijeme ova metoda se sve više koristi).

Cjepiva ili imunizatori rezidentni su programi koji sprječavaju infekciju datoteka. Cjepiva se koriste ako ne postoje liječnički programi koji "liječe" ovaj virus. Cijepljenje je moguće samo protiv poznatih virusa. Cjepivo modificira program ili disk na način da ne utječe na njihov rad, a virus će ih percipirati kao zaražene i stoga se neće ukorijeniti. Programi cjepiva trenutno su ograničene upotrebe.

Treba napomenuti da je odabir jednog "najboljeg" antivirusa vrlo pogrešna odluka. Preporuča se koristiti nekoliko antivirusni paketi istovremeno. Prilikom odabira antivirusnog programa obratite pozornost na takav parametar kao što je broj potpisa za prepoznavanje (niz znakova koji će zajamčeno prepoznati virus). Drugi parametar je prisutnost heurističkog analizatora nepoznatih virusa, njegova prisutnost je vrlo korisna, ali značajno usporava program. Do danas postoji veliki broj različitih antivirusnih programa.

Jedan od najbolji antivirusi s moćnim algoritmom za otkrivanje virusa. Polyphage sposoban provjeravati datoteke u arhivama, Word dokumenti i Excel radne knjige, otkriva polimorfne viruse, koji su u posljednje vrijeme sve rašireniji. Dovoljno je reći da je epidemija vrlo opasan virus OneHalf je zaustavio DrWeb. Heuristički analizator DrWeb, ispitujući programe za prisutnost fragmenata koda karakterističnih za viruse, omogućuje vam pronalaženje gotovo 90% nepoznatih virusa. Prilikom učitavanja programa, DrWeb prije svega provjerava sam sebe za integritet, nakon čega testira RAM. Program može raditi u interaktivnom načinu rada, ima prikladno prilagodljivo korisničko sučelje.

ADINF (Advanced DiskINFoscope) antivirusni inspektor diska omogućuje pronalaženje i uništavanje postojećih običnih, prikrivenih i polimorfnih virusa, kao i potpuno novih. Antivirus ima na raspolaganju jedinicu za liječenje ADINF revizora - Adinf Cure Module - koja može neutralizirati do 97% svih virusa. Ovu brojku donosi Dialognauka na temelju rezultata testiranja kolekcija virusa dvaju priznatih autoriteta u ovoj oblasti - D.N.Lozinskog i dr. Solomona (Velika Britanija).

ADINF se učitava automatski kada se računalo uključi i kontrolira boot sektor i datoteke na disku (datum i vrijeme stvaranja, duljina, kontrolni zbroj), prikazujući poruke o njihovim promjenama. Zbog činjenice da ADINF obavlja diskovne operacije zaobilazeći operacijski sustav, pozivajući se na BIOS funkcije, postiže se ne samo sposobnost otkrivanja aktivnih stealth virusa, već i velika brzina skeniranja diska. Ako se pronađe virus za pokretanje, ADINF će jednostavno vratiti prethodni sektor za pokretanje koji je pohranjen u njegovoj tablici. Ako je virus datoteka, tada u pomoć priskače Adinf Cure Module, koji na temelju izvješća glavnog modula o zaraženim datotekama uspoređuje nove parametre datoteke s prethodnima pohranjenima u posebnim tablicama. Ako se pronađu odstupanja, ADINF se vraća prijašnje stanje datoteku, a ne uništava tijelo virusa, kao što to čine polifagi.

Antivirusni AVP (AntiVirus Program) je polifag, tijekom svog rada provjerava RAM, datoteke, uključujući arhivske datoteke, na disketama, lokalnim, mrežnim i CD-ROM diskovima, kao i strukture podataka sustava, kao što su boot sektor, particijska tablica , i itd. Program ima heuristički analizator koji, prema programerima antivirusa, može pronaći gotovo 80% svih virusa. AVP je 32-bitna aplikacija za Windows 98, NT i 2000 operativne sustave, ima user-friendly sučelje i jednu od najvećih svjetskih antivirusnih baza podataka. Antivirusne baze podataka za AVP ažuriraju se otprilike jednom tjedno i mogu se nabaviti s interneta. Ovaj program traži i uklanja veliki broj virusa, uključujući:

  • polimorfni ili samokriptirajući virusi;
  • stealth virusi, ili nevidljivi virusi;
  • novi virusi za Windows;
  • makro virusi koji inficiraju Word dokumente i Excel proračunske tablice.

Osim toga, AVP program prati rad datoteka u sustavu pozadina, otkriva virus prije nego što je sustav zapravo zaražen, a također otkriva nepoznate viruse pomoću heurističkog modula.

Najpopularniji povezani članci