Luận văn Các phương pháp lây lan và phá hoại của virus máy tính

BGIÁO DC VÀ ĐÀO TO  
TRƯỜNG ĐẠI HC BÁCH KHOA HÀ NI  
---------------------------------------  
LUN VĂN THC SĨ KHOA HC  
CÁC PHƯƠNG PHÁP LÂY LAN VÀ PHÁ HOI  
CA VIRUS MÁY TÍNH  
TRN HI NAM  
HÀ NI 2007  
1
MC LC  
Mc lc................................................................................................... 1  
Danh mc các hình v, đồ th............................................................... 3  
Các tviết tt......................................................................................... 4  
Li cm ơn ............................................................................................. 5  
Li nói đầu............................................................................................. 6  
Chương 1. Gii thiu chung................................................................. 8  
1.1. Các khái nim cơ bn....................................................................... 8  
1.1.1. Phân loi các phn mm độc hi............................................... 8  
1.1.2. Cu trúc chung ca virus........................................................... 9  
1.1.3. Cách thc phá hoi.................................................................... 11  
1.2. Lch shình thành và phát trin ca virus máy tính........................ 12  
1.2.1. Giai đon thnht (1979 – 1989)............................................. 12  
1.2.2. Giai đon thhai (1990 – 1998) ............................................... 13  
1.2.3. Giai đon thba (1999 – 2000) ................................................ 14  
1.2.4. Giai đon thtư (2000 - ) ......................................................... 16  
1.3. Các xu hướng phát trin................................................................... 17  
Chương 2. Nguyên lý hot động và các kthut đặc trưng.............. 19  
2.1. Boot virus......................................................................................... 19  
2.1.1. Cu trúc chương trình ............................................................... 20  
2.1.2. Các kthut chính..................................................................... 23  
2.2. File virus........................................................................................... 27  
2.2.1. Cu trúc chương trình ............................................................... 27  
2.2.2. Các kthut chính..................................................................... 30  
2.3. Virus trên Windows ......................................................................... 37  
2.3.1. Nguyên lý hot động................................................................. 37  
2.3.2. Các kthut chính..................................................................... 38  
2.4. Macro virus ...................................................................................... 41  
2.4.1. Cu trúc chương trình ............................................................... 41  
2
2.4.2. Các kthut chính..................................................................... 42  
2.5. Worm................................................................................................ 50  
2.5.1. Nguyên lý hot động................................................................. 51  
2.5.2. Các kthut chính..................................................................... 58  
Chương 3. Mt skthut phòng chng............................................ 69  
3.1. Các phn mm dit virus truyn thng ............................................ 69  
3.2. Phân tích lưu lượng.......................................................................... 70  
3.3. Kết lun ............................................................................................ 76  
Tài liu tham kho ................................................................................ 79  
3
DANH MC HÌNH V, ĐỒ THỊ  
Hình 2.1. Phn cài đặt ca boot virus  
Hình 2.2. Phn thân ca boot virus  
Hình 2.3. Phn lây lan ca file virus  
Hình 2.4. Phn cài đặt ca file virus  
Hình 2.5. Quá trình lây lan vào file normal.dot  
Hình 2.6. Quá trình lây lan vào file văn bn  
Hình 2.7. Nguyên lý hot động ca worm Melissa  
Hình 2.8. Nguyên lý hot động ca worm Love Letter  
Hình 2.9. Nguyên lý hot động ca worm Code Red  
Hình 3.1. Lung TCP ra ti host bnhim  
Hình 3.2. Lung TCP ra ti host bình thường  
Hình 3.3. Lung SMTP ra ti mail server  
Hình 3.4. Distinct IP ti host bnhim  
Hình 3.5. Distinct IP ti host bình thường  
4
CÁC TVIT TT  
Tiếng Anh  
Tiếng Vit  
A
API  
Application Programming Interface  
Bios Parameter Block  
Giao din lp trình  
ng dng  
B
BPB  
D
Bng tham số đĩa  
DNS  
DoS  
M
Domain Name Server  
Denial of Services  
Máy chtên min  
Tchi dch vụ  
MCB  
Memory Control Block  
Cu trúc đầu  
khi nhớ  
R
ROM  
RAM  
Read Only Memory  
Bnhchỉ đọc  
Bnhtruy cp  
nhu nhiên  
Random Access Memory  
P
POST  
Power On Self Test  
Tkim tra khi  
khi động  
PSP  
Program Segment Prefix  
Đon mào đầu  
chương trình  
5
LI CM ƠN  
Tôi xin chân thành cm ơn các thy cô giáo trong khoa Công nghệ  
thông tin, khoa Đin tvin thông - Trường Đại hc Bách Khoa Hà ni,  
nhng người đã trc tiếp ging dy, truyn đạt cho tôi kiến thc chuyên môn  
và phương pháp làm vic khoa hc  
Đặc bit, tôi xin chân thành cm ơn PGS.TS. Nguyn Quc Trung, đã  
tn tình hướng dn cũng như cung cp tài liu để tôi có thhoàn thành bn  
lun văn này.  
Tôi cũng xin gi li biết ơn sâu sc ti gia đình, đồng nghip và bè bn  
đã nâng đỡ tôi trong cuc sng cũng như trong công vic.  
Hà Ni, ngày 09 tháng 10 năm 2007  
Hc viên  
Trn hi Nam  
6
LI NÓI ĐẦU  
Virus máy tính, tkhi ra đời đã trthành, đã trthành mi nguy hi  
đối vi tt ccác hthng máy tính và mng trên thế gii.  
Đặc bit, Vit Nam, sphát trin ca các thế hvirus máy tính trong  
nhng năm gn đây đã gây ra nhng hu quđể khc phc chúng phi  
tiêu phí mt lượng rt ln thi gian cũng như tin bc.  
Mt khác, cũng không thphnhn tính tích cc ca virus máy tính,  
bi virus máy tính chcó thphát trin được da trên nhng sơ xut ca công  
nghvà người sdng nên thông qua vic tìm hiu vcác cơ chế hot động  
ca virus, các phương thc lây lan cũng như phá hoi ca chúng ta có thể đưa  
ra các gii pháp ci thin cht lượng và độ an toàn ca phn mm cũng như  
các hthng.  
Thế nhưng, cũng có mt thc tế rng ti Vit Nam, nhng tài liu  
nghiên cu vvirus máy tính là vô cùng ít i và thiếu chi tiết, dn đến hu  
qulà nhng người sdng máy tính thường không có đủ kiến thc cn thiết  
để tbo vmáy tính và dliu ca mình trước stn công ca virus máy  
tính.  
Xut phát tcác yếu ttrên, bn lun văn này la chn đề tài:  
“Các phương pháp lây lan và phá hoi ca virus máy tính”  
Lun văn được chia làm 3 chương, vi ni dung tng chương như sau:  
- Chương 1: Gii thiu vlch shình thành và phát trin ca virus máy  
tính qua các thi ktừ đó đưa ra nhn định vsphát trin ca virus  
trong tương lai gn. Các khái nim và định nghĩa cơ bn ca virus máy  
tính nói riêng và các phn mm độc hi nói chung.  
- Chương 2: Tìm hiu các cơ slý thuyết giúp xây dng nên virus máy  
tính, các phương thc lây lan và phá hoi ca virus máy tính gn vi  
tng giai đon phát trin.  
7
- Chương 3: Gii thiu các kthut phát hin virus mi cũng như kiến  
nghcác nghiên cu tiếp theo.  
8
CHƯƠNG 1  
GII THIU CHUNG  
Virus máy tính tkhi ra đời cho đến nay luôn tn dng nhng kthut  
tiên tiến ca công nghthông tin và truyn thông cũng như li dng nhng lổ  
hng nguy him trong các hthng tin hc để khuyếch trương nh hưởng ca  
mình. Mc dù vic sdng các thiết bvà phn mm bo mt trnên phổ  
biến, virus vn tiếp tc phát trin mnh mdo giờ đây chúng thường được  
viết ra có mc đích rõ ràng, phc vmt đối tượng cthvà không ngng ci  
tiến qua các phiên bn để đạt được phiên bn hiu qunht.  
1.1. Các khái nim cơ bn  
1.1.1. Phân loi các phn mm độc hi  
Có nhiu cách phân loi các phn mm độc hi và do đó định nghĩa về  
chúng cũng có đôi chút khác nhau, ở đây chxin trình bày mt cách phân loi  
đơn gin nht và ssdng thng nht trong toàn blun văn.  
Bugware: Các chương trình hoc các phn mm hp lệ được thiết kế để  
thc hin mt schc năng nào đó nhưng do li lp trình nên gây li  
cho hthng khi sdng.  
Trojan horse: Các đon chương trình có hi được cài có chủ định vào  
trong các chương trình hp l, có thtiến hành phá hoi, ăn cp thông  
tin ca người sdng v.v.. không có khnăng lây lan.  
Software bombs: Các đon mã có tính cht phá hoi được giu bí mt  
chthc hin, chphá hoi mt ln, không lây lan.  
o Logic bombs: Chương trình cha đon lnh phá hoi, vic có phá  
hoi hay không phthuc vào trng thái ca hthng.  
o Time bombs: Vic có phá hoi hay không phthuc vào thi  
gian ca hthng.  
9
Replicators: Các chương trình gn ging vi virus, liên tc nhân bn  
làm cn kit tài nguyên ca hthng khiến các chương trình khác  
không hot động được na.  
Virus: Chương trình máy tính được thiết kế để tlây lan chính nó từ  
mt file ti mt file khác trên mt máy vi tính riêng l, không có khả  
năng tlây lan tmáy tính này sang máy tính khác (trong hu hết các  
trường hp vic lây lan này là do con người).  
Worm: Chương trình được thiết kế để tlây lan chính nó tmt máy  
tính ti mt máy tính khác qua mng.  
1.1.2. Cu trúc chung ca virus  
Thông thường, cu trúc ca mt virus bao gm 3 phn chính  
Phn lây lan (infection): Cách hoc nhng cách virus dùng để lây lan.  
Chc năng đầu tiên là tìm kiếm nhng đối tượng phù hp, vic tìm  
kiếm có thtích cc như trong trường hp ca virus lây file có thtìm  
kiếm các file có kích thước và định dng phù hp để lây nhim, hoc  
vic tìm kiếm cũng có thbị động như trường hp ca virus macro.  
Khi đã tìm thy đối tượng thích hp li có mt svn đề được đặt ra,  
mt vài virus cgng làm chm vic lây lan li bng cách lây cho ít file  
hơn trong mt ln để tránh vic bphát hin bi người sdng, cũng có  
mt vài virus li chn cơ chế lây nhim nhanh, hay nói cách khác lây  
càng nhanh càng tt, càng nhiu càng tt, nhưng tt ccác virus đều  
phi kim tra xem đối tượng đã blây nhim chưa (vì lây nhim nhiu  
ln lên cùng mt đối tượng srt dbphát hin), ta có thminh ha  
bng mt đon gimã như sau:  
BEGIN  
IF (tìm thy đối tượng thích hp)  
AND (đối tượng đó chưa blây nhim)  
10  
THEN (lây nhim cho đối tượng)  
END  
Nếu đối tượng chưa blây nhim thì virus mi tiến hành cài đặt bn sao  
ca nó vào đối tượng.  
Đặc bit sau khi lây nhim virus phi tiến hành xóa du vết để tránh  
vic bphát hin, ví dnhư phi trli ngày tháng to lp file gc, trả  
li các thuc tính cũ cho file v.v..  
Phn thân (payload): Tt cnhng gì virus thc hin trên máy tính đã  
blây nhim (trphn lây lan). Đon gimã sau mô tcơ chế hot  
động ca phn thân thông thường:  
BEGIN  
IF (đến thi đim phá hoi)  
THEN (kích hot)  
END  
Phn thân có ththc hin bt cứ điu gì, tvic rt đơn gin như đưa  
ra mt thông báo, vmt hình đồ ha nghch ngm ti vic định dng  
li ổ đĩa cng hay gi bn sao ca mình qua email ti các địa chtrong  
sổ địa chca nn nhân.  
Phn điu kin kích hot (trigger): Cơ chế kim tra điu kin để thc  
hin phn thân, có thsau mt sln lây nhim nht định, vào mt  
ngày ginht định hoc thm chí kích hot ngay ln thc thi đầu tiên  
(nhưng nhng virus như thế skhông thlây lan được trong thc tế).  
Mt cơ chế kích hot có thmô tqua đon gimã như sau:  
BEGIN  
IF (th6 ngày 13)  
THEN (đã đến thi đim phá hoi)  
END  
11  
1.1.3. Cách thc phá hoi  
Khi đã lây vào máy tính, virus có thgây nên các biu hin sau:  
Tiến hành phá hoi có chủ đích bng các cơ chế nm trong phn thân.  
Phá hoi không có chủ đích (do vô tình) khi virus ccài đặt chính nó  
lên máy tính mc tiêu.  
Bn thân virus cũng không mong mun vic phá hoi không có chủ  
đích nhưng đó là thc tế chu ca quá trình lây lan, cũng như vic có  
mt ca virus trong hthng sluôn luôn làm gim hiu sut ca hệ  
thng đó, chiếm dng bnh, dung lượng ổ đĩa, sa đổi các thông tin  
ca hthng v.v..  
Ngoài ra, virus còn cgng che du shin din ca mình trong hệ  
thng và sche du này cũng dn đến mt sbiu hin như:  
Làm mt mt smenu ca Word (vi các virus macro).  
Mã hóa hoc chiếm chca vùng thông tin hthng (vi các Boot  
virus).  
Thay đổi Windows Registry.  
Tuy nhiên, nhng biu hin có thnhn thy được ca virus là không  
đáng kđó chính là lý do để virus có thlây lan nhanh và nhiu như hin  
nay.  
Nhng virus trong giai đon đầu tiên thường được viết bng ngôn ngữ  
Assembler để có kích thước nhnht do đó sgim skhác bit vkích  
thước gia đối tượng trước và sau khi blây nhim, lý do chính là trong thi  
kỳ đó dung lượng đĩa lưu trrt đắt nên dù chmt thay đổi nhvkích  
thước file cũng gây nên schú ý đối vi người sdng, tc là gim đi tính bí  
mt ca virus khi lây lan.  
Ngày nay hu hết nhng người sdng máy tính không còn quan tâm  
nhiu đến chi tiết độ dài file, ngày tháng to lp hay sa đổi chúng vì hệ điu  
hành Windows đã to ra mt môi trường làm vic thun li hơn cho người sử  
dng và cũng thun li cho các tác givirus.  
12  
1.2. Lch shình thành và phát trin ca virus máy tính  
Vic tìm hiu lch sphát trin ca virus máy tính qua các giai đon  
ca công nghlà hết sc cn thiết bi qua vic quan sát các giai đon phát  
trin ca virus cũng như sphát trin ca công nghhin ti (vi các đim  
yếu) có thdự đoán phn nào khuynh hướng phát trin ca virus trong tương  
lai gn.  
Tht ra cơ slý thuyết vvirus máy tính đã xut hin trt lâu, năm  
1949, John von Newman viết bài “Lý thuyết và cơ cu ca các phn ttự  
hành phc tp – Theory and Organization of Complicated Automata” trong  
đó nêu ra ý tưởng vcác chương trình tnhân bn. Đến năm 1959, ba lp  
trình viên ca AT&T viết chương trình Core war có trang btính năng tnhân  
bn và tiêu dit bng mã ca đối phương, sau này trthành tính năng chính  
ca virus máy tính.  
Sphát trin ca virus nói riêng và các phn mm độc hi nói chung có  
thchia làm bn giai đon kéo dài tnăm 1979 đến bây gi(trong các tài liu  
nước ngoài, các tác gihay sdng thut ng“wave”, thut ng“giai đon”  
ít được dùng hơn bi vì virus trong mt giai đon thc ra không phi là sự  
phát trin trc tiếp tgiai đon trước đó).  
Mi giai đon đại din cho mt khuynh hướng công nghmi và virus  
luôn tn dng trit để nhng công nghệ đó.  
1.2.1. Giai đon thnht (1979-1990)  
Nhng virus đầu tiên là virus boot-sector lây trên nn hệ điu hành MS  
DOS. Khong nhng năm 1980 trở đi, slượng virus tăng vt cùng vi sự  
phát trin ca máy tính cá nhân. Đại din ca giai đon này có thxét đến  
virus Brain xut hin năm 1986 và virus Lehigh xut hin năm 1987.  
Sau đó mt thi gian ngn bt đầu xut hin thut ng“worm” chỉ  
nhng phn mm có khnăng tlây lan qua mng. Năm 1987, mt trong  
nhng worm đầu tiên là Christma Exec có khnăng lây lan qua e-mail gia  
13  
các mainframe IBM, đây cũng là mt trong nhng ví dụ đầu tiên ca vic la  
đảo theo kiu “social engineering”, người sdng bị đánh la để thc thi  
virus bi vì ni dung ca email cho biết nếu được thc thi nó svmt cây  
thông Noel, và đúng là worm có thc hin vic vmt cây thông Noel lên  
màn hình (bng cách sdng ngôn ngkch bn REXX) nhưng đồng thi nó  
cũng gi mt bn sao ca mình ti nhng người sdng khác nm trong danh  
sách email ca nn nhân. Nhng người sdng đó rt tin tưởng vì nhn được  
email tngười hquen biết và hcũng memail ra.  
Tháng 11 năm 1988, Robert Morris Jr. viết ra worm Morris lây lan ti  
6000 máy tính chtrong vài gi(khong 10% smáy trên Internet ti thi  
đim đó). Tuy nhiên sau đó worm này bphát hin và tiêu dit bi mt li lp  
trình ca nó là tiến hành lây li trên các máy tính đã bnhim ttrước, dn  
đến vic gim tc độ đáng kể ở máy tính đó nên dbphát hin.  
1.2.2. Giai đon thhai (1990-1998)  
Giai đon thhai din ra trong khong nhng năm 1990 đến 1998 đánh  
du nhiu hot động ca virus hơn là worm mc dù nhng kthut tiên tiến  
ca virus đã có tác động rt mnh mlên quá trình phát trin ca worm.  
Trong thi knày, virus bt đầu chuyn thệ điu hành DOS sang tn công  
hệ điu hành Windows, xut hin các virus macro, các virus bt đầu sdng  
kthut đa hình để ngy trang tránh bphát hin và đặc bit là xu hướng sử  
dng e-mail như là mt công cụ để phát tán.  
Trong thi knày các virus sdng du hiu nhn dng bng các từ  
khóa nên ddàng bphát hin khi các phn mm dit virus tiến hành quét và  
phân tích file. Để đối phó, ban đầu virus sdng thut toán mã hóa để che  
du stn ti ca mình, tuy nhiên để thc hin vic này virus phi xây dng  
cthtc mã hóa và thtc gii mã và vn có yếu đim nên vn bcác phn  
mm dit virus phát hin.  
14  
Khong năm 1989, virus sdng kthut ngy trang đa hình  
(polymorphism) xut hin, đây là mt kthut phc tp cho phép virus tự  
biến đổi để tránh bcác công cdò tìm phát hin.  
Cũng trong khong thi gian này, mt shacker đã to ra các bcông  
cphát trin (toolkit) có giao din dsdng cho phép các hacker khác  
(thm chí không cn có kiến thc chuyên sâu vvirus) cũng có thto ra các  
virus mi có tính năng lây lan và phá hoi tương đối mnh, sn phm được  
đánh giá là xut sc nht ca các toolkit là virus Anna Kournikova. Virus này  
gilàm mt bc nh dng JPG ca ngôi sao qun vt Anna Kournikova được  
đính kèm theo mt e-mail. Nếu đon VBScript được thc hin, e-mail cha  
virus ssao chép chính nó ti mi địa chnm trong sổ địa chca Outlook.  
Năm 1995 đánh du sxut hin ca virus macro đầu tiên có tên gi là  
Concept, virus này được viết để lây nhim vào file normal.dot ca Microsoft  
Word sdng cho hệ điu hành Windows 95.  
Nhng virus macro có nhng li thế do rt dviết và chy được trên  
nhiu platform khác nhau. Tuy nhiên, đa sngười sdng hin giờ đều biết  
cách btính năng thc hin các macro trong Office và vì vy virus đã bmt  
đi tính phbiến cũng như các li thế ca mình.  
1.2.3. Giai đon thba (1999-2000)  
Giai đon thba kéo dài tnăm 1999 ti cui năm 2000 được đánh  
du bng sphát trin mnh mca trào lưu phát tán virus qua email. Tháng  
1 năm 1999, sâu Happy99 đã lây qua e-mail vi file đính kèm có tên  
Happy99.exe.  
Khi file đính kèm được thc hin, bngoài nó hin thpháo hoa chào  
năm mi 1999 trên màn hình, nhưng cũng bí mt sa file WSOCK32. DLL  
(được Windows sdng cho mc đích truyn thông Internet) vi mt Trojan  
cho phép worm có thchèn bn sao ca nó vào trong các tiến trình truyn  
15  
thông. File WSOCK32.DLL ban đầu được đổi tên thành WSOCK32.SKA.  
Mi e-mail do người sdng gi đi đều cha worm.  
Tháng 3 năm 1999, virus Melissa lây lan sang 100.000 máy tính trên  
thế gii chtrong 3 ngày.  
Tháng 6 năm 1999, worm ExploreZip gimo giao din ca file  
WinZip và gn vào email để lây lan. Nếu được thc hin, nó shin thmt  
thông báo li, nhưng thao tác tht sca worm này là bí mt sao chép chính  
nó vào trong thư mc nhng hthng ca Windows hoc tnp vào trong  
Registry. Nó tgi mình qua e-mail sdng Microsoft Outlook hoc  
Exchange ti các địa chnm trong hp thư. Nó theo dõi tt ccác email đến  
và ttrli người gi vi mt bn sao ca mình.  
Đầu năm 2000, virus BubbleBoy xut hin chng minh mt máy tính  
có thblây nhim chbng cách xem trước (preview) e-mail mà không cn  
phi memail đó ra. Nó tn dng mt lhng bo mt trong Internet  
Explorer cho phép tự động thc hin VB Script nhúng trong thân ca email.  
Virus được gi ti như e-mail vi tiêu đề "BubbleBoy is back” và ni dung  
email có cha đon mã VBScript ca virus. Nếu email được đọc bng  
Outlook, script sẽ được chy cho dù email mi chỉ được đọc bng chc năng  
“preview”. Mt file được bsung vào trong thư mc khi động ca Windows,  
như vy khi máy tính bt đầu khi động li, virus sgi bn sao ca nó ti tt  
ccác địa chemail nm trong Outlook.  
Tháng 5 năm 2000, worm Love Letter lây lan rt nhanh dưới dng mt  
e-mail vi subject "I love you" và file đính kèm có đuôi dng text để la  
người sdng đọc trong khi thc ra đó là mt đon VBScript. Khi được thc  
hin, worm scài đặt bn sao ca mình vào trong thư mc hthng và sa  
đổi Registry để bo đảm rng file này được chy mi khi máy tính khi động.  
Love Letter cũng lây lan sang nhiu kiu file khác nhau trên ổ đĩa cc bvà  
các thư mc dùng chung chia squa mng. Khi lây sang mt máy tính khác,  
nếu Outlook đã được cài đặt, worm sgi email có bn sao ca nó ti bt cứ  
16  
địa chnào trong sổ địa ch. Ngoài ra, worm còn to mt kết ni IRC và gi  
bn sao ca nó ti mi người khác cũng kết ni ti kênh IRC đó, nó cũng ti  
xung mt Trojan chuyên thu thp địa chemail và password.  
Tháng 10 năm 2000, worm Hybris cũng bt đầu lây lan qua email theo  
kiu đính kèm. Khi được thc hin, nó sa file WSOCK32. DLL để theo dõi  
quá trình truyn thông ca máy tính. Vi mi e-mail gi đi, nó cũng gi mt  
bn sao ca mình cho cùng người nhn. Điu nguy him nht là nó có khả  
năng tti vcác bn nâng cp tmt địa chtrên mng.  
1.2.4. Giai đon thtư (2001 - )  
Giai đon ca nhng worm hin đại bt đầu tnăm 2001 đến tn ngày  
nay. Chúng có khnăng lây lan rt nhanh và mc độ tinh vi rt cao vi các  
đặc trưng như:  
Kết hp nhiu kiu tn công khác nhau.  
Lây nhim lên nhiu loi đối tượng khác nhau (Linux, mng ngang  
hàng, tin nhn …)  
Tự động ti vcác bn nâng cp tInternet  
Phn phá hoi đặc bit nguy him  
Vô hiu hóa phn mm dit virus  
Ngày 12 tháng by năm 2001, sâu Code Red xut hin bt đầu khai  
thác li tràn bộ đệm trong MS IIS web server (mc dù li này mi được công  
bngày 18 tháng 6 năm 2001) và lây nhim cho 200.000 máy tính trong 6  
ngày mc dù chúng có li trong cơ chế tìm kiếm. Cui tháng 7, phiên bn thứ  
2 ca Code Red I (Code Red v2) đã được sa li nên có khnăng lây lan rt  
nhanh, chtrong 14 giđã lây nhim cho hơn 359.000. Phn phá hoi ca  
Worm này đồng lot tn công website www.whitehouse.gov.  
Sau đó ít lâu bt đầu xut hin các worm có khnăng disable các antivirus  
như Klez và Bugbear vào tháng 10 năm 2001, mt sworm khác còn tiến  
hành ghi li các thao tác bàn phím ca người sdng để gi vcho hacker.  
17  
Tháng 8 năm 2003 xut hin worm Blaster khai thác li ca Windows DCOM  
RPC để lây lan (li này được công btháng 7 năm 2003), phn phá hoi ca  
worm này cho phép tn công kiu tchi dch v(DoS – Denial of Services)  
để tn công ti Microsoft Web site “windowsupdate.com” vào ngày 16 tháng  
8 năm 2003.  
Ngày 18 tháng 8 xut hin thêm 2 worm là Welchia và Nachi cũng lây lan  
bng cách khai thác li RPC DCOM như Blaster. Điu đáng chú ý là nó li cố  
gng dit Blaster khi máy blây nhim bng cách ti vbn vá li twebste  
ca Microsoft để sa li RPC DCOM.  
Worm Sobig.F xut hin và lây lan rt nhanh ngay sau đó. Ngày 19 tháng 8,  
chsau khi Blaster xut hin 7 ngày. Phiên bn gc Sobig.A được phát hin  
tháng 2 năm 2003, và liên tc được ci tiến đến phiên bn hoàn thin là  
Sobig.F.  
1.3. Các xu hướng phát trin  
Ta nhn thy mt sxu hướng chính trong vic lây lan và phá hoi ca  
virus trong thi gian qua như sau:  
Worm Blaster mở đầu xu hướng nhanh chóng rút ngn thi gian gia  
thi đim phát hin li và sxut hin ca worm nhm khai thác li đó.  
Worm Sobig cho thy nhng người viết chúng có cách làm vic rt  
chuyên nghip (thnhiu phiên bn, ci tiến chúng để đạt được bn tt  
nht, như quá trình phát trin các phiên bn beta phn mm), và nếu  
các phiên bn này được viết bi nhng người khác nhau thì chúng li  
cho thy sphi hp rt cht chtrong thế gii ngm.  
Các worm hiên đại hu như đều có phn phá hoi cho phép thc hin  
truy nhp máy tính txa để ăn cp thông tin cũng như thc hin tn  
công đến mt số địa chỉ định trước theo ngày giờ đã định hoc theo tín  
hiu điu khin thacker.  
18  
Từ đó có thể đi đến mt snhn định sơ bvxu hướng phát trin ca  
virus trong thi gian ngn trước mt:  
Trước hết, xu hướng bùng phát mnh mvslượng và độ nguy hi  
ca virus nói riêng và các phn mm độc hi nói chung nhiu khnăng  
xy ra trong tương lai gn. Các phn mm vn tiếp tc có li và sluôn  
luôn bnhng người viết virus khai thác. Bn vá li phn mm svn  
tiếp tc là vn đề khó gii quyết thu đáo nht.  
Thhai, các virus và worm có thxut hin rt sm ngay sau khi li  
bo mt va được phát hin ra, điu này làm tăng cơ hi lây lan ca  
chúng thông qua các hthng không được bo v.  
Thba, các virus và worm đã rt thành công trong vic tìm kiếm và sử  
dng các vt trung gian truyn nhim khác như mng ngang hàng, tin  
nhn nhanh, các thiết bkhông dây v.v.. điu này cũng htrcho vic  
tăng nhanh tc độ lây lan ca virus.  
Thtư, các worm trong tương lai sluôn được ci tiến da trên phiên  
bn trước cho đến khi đạt được hiu qunht. Vì thế khnăng bùng  
phát đợt worm có tc độ lây lan nhanh là rt dhiu. Tiếp tc xu hướng  
hin ti, nhiu worm có khnăng tn công các li chtrong vài phút.  
19  
CHƯƠNG 2  
NGUYÊN LÝ HOT ĐỘNG  
VÀ CÁC KTHUT ĐẶC TRƯNG  
2.1. Boot virus  
Boot virus xut hin trong giai đon đầu ca virus máy tính, đây là thi  
kca nhng thế hmáy tính cá nhân đầu tiên sdng bvi xlý ca Intel  
và hệ điu hành DOS ca Microsoft, ldĩ nhiên virus máy tính cũng tn dng  
ưu thế vượt tri ca nhng bvi xlý cũng như tính phbiến ca hệ điu  
hành này để khuyếch trương nh hưởng ca mình.  
Khi máy tính khi động, trước hết mt đon mã nm trong ROM sẽ  
được thi hành để thc hin quá trình tkim tra khi khi động (Power On  
Self Test – POST), nếu kết qukim tra tình trng các thiết blà bình thường  
thì đon mã nm trong boot sector (vi ổ đĩa mm) hoc master boot (vi ổ  
đĩa cng) sẽ được đọc vào trong RAM ti địa ch0:7C00h và được trao quyn  
điu khin máy tính.  
Boot sector có dung lượng 512 byte, sau khi trừ đi phn dành cho bng  
tham số đĩa (Bios Parameter Block – BPB) thì dung lượng còn li quá ít nên  
đon mã trong boot sector chthc hin mt schc năng cơ bn nht như  
sau:  
Thay li bng tham số đĩa mm.  
Định vì và đọc sector đầu tiên ca root vào địa ch0:0500h  
Dò tìm và đọc hai file ht nhân ca DOS là MSDOS.SYS và IO.SYS  
Trong quá trình trên có mt đim sơ hlà lúc đon mã trong ROM trao  
quyn điu khin cho đon mã trong boot sector mà không quan tâm nó sẽ  
thc hin nhng thao tác gì. Li dng sơ hnày, boot virus được thiết kế để  
thay thế cho đon mã chun ca boot sector, lúc này boot virus được np vào  
RAM trước tiên và toàn quyn điu khin máy tính thc hin các thao tác  
20  
theo ý đồ ca người viết ri mi gi và trli quyn điu khin cho đon mã  
chun ca boot sector.  
Tuy nhiên, có mt vn đề cn phi gii quyết là khi boot virus chèn  
đon mã ca nó vào boot sector thì đon mã chun ca boot sector sphi  
được lưu vào đâu trên đĩa vì bn thân đon mã ca boot virus không ththay  
thế hoàn toàn cho đon mã chun ca boot sector được. Nếu không có cơ chế  
lưu li đon mã chun này, đặc bit là bng tham số đĩa BPB thì virus smt  
kim soát đối vi ở đĩa. Chính tcác cách xđối vi đon mã chun trong  
boot sector mà boot virus được chia làm hai loi như sau:  
SB virus (Single Boot virus)  
Kích thước virus nm trn trong mt sector. Đon boot sector chun  
được lưu li ti mt ví trí xác định trên đĩa. Nhược đim ca SB virus chỗ  
nếu đon boot sector chun bghi đè lên vì mt lý do nào đó thì máy tính sẽ  
không khi động được nên virus sbphát hin ddàng.  
DB virus (Double Boot virus)  
Có nhiu chc năng hơn SB virus nên kích thước ln hơn mt sector,  
đon mã nm trong boot sector chcó nhim vti thân virus vào thường trú.  
Thông thường vi cSB virus và DB virus, vtrí lý tưởng nht để giu  
đon mã ca boot sector chun là các sector không sdng ca Partition  
table.  
2.1.1. Cu trúc chương trình  
Do đặc đim boot virus được thc hin trước chệ điu hành nên nó có  
ưu thế là không bphthuc vào bt chệ điu hành nào nhưng cũng có mt  
nhược đim là không sdng được các dch vcó sn ca hệ điu hành mà  
phi tthiết kế toàn bcác thtc ca mình.  
Vì chỉ được thc hin mt ln khi máy tính khi động, thường boot  
virus phi thường trú trong bnhớ để có thể được xlý nhiu ln, do đó  
chương trình boot virus được chia làm hai phn chính như sau:  
21  
Phn cài đặt  
Là phn được thc hin đầu tiên sau khi được trao quyn điu khin từ  
đon mã nm trong ROM. Chu trách nhim ti phn thân vào bnh, thay  
thế các ngt để đảm bo giám sát liên tc được các hot động ca hthng.  
Ta có thmô thot động ca phn cài đặt bng lưu đồ thut toán sau:  
+
Đã tn ti  
trong bnhớ  
Thoát  
-
Đọc phn thân virus  
Chuyn virus vào  
thường trú  
Đặt li các ngt  
+
Đã lây  
đĩa cng  
-
Lây  
Đọc boot chun vào  
địa ch7C00h  
JMP 7C00h  
Hình 2.1. Phn cài đặt ca Boot virus  
22  
Dthy chc năng đọc thân virus chDB virus vì vi SB virus thì  
toàn bchương trình được đọc ngay khi np boot sector.  
Phn thân  
Thc hin vic kim tra và lây lan trên các đối tượng thích hp, phá  
hoi chương trình hoc dliu v.v..có thmô tbng lưu đồ thut toán như  
sau:  
Điu kin  
lây nhim  
-
Thoát  
+
+
Đã lây  
đĩa (mm)  
-
Đọc  
boot sector chun  
To  
boot sector giả  
Ct boot chun  
Ghi boot giả  
Hình 2.2. Phn thân ca Boot virus  
23  
2.1.2. Các kthut chính  
Kim tra tính tn ti duy nht  
Trong quá trình lây lan trên đĩa, virus phi kim tra để đảm bo chlây  
mi đĩa mt ln để không làm chm hot động ca hthng. Thông thường  
để kim tra tính tn ti ca mình, virus hay tìm mã nhn dng (key value), mã  
này có mt giá trị đặc bit và được lưu ti mt vtrí được xác định trên đĩa  
tùy tng virus, nếu tìm thy mã này tc là đã lây ri, skhông tiến hành lây  
li na.  
Đon mã sau được trích tsource code ca virus Brain ver.1 để minh  
ha cho kthut kim tra tính duy nht, điu cn chú ý là mã nhn dng ca  
virus Brain là 1234h:  
mov  
cmp  
jne  
ax,word ptr cs:store+4  
ax,1234h  
bp0190  
mov  
jmp  
switch,1  
short bp0220  
Kthut này có mt nhược đim là nếu nhiu virus li chn cùng mt  
vtrí để lưu mã nhn dng ca mình sdn đến vic nhn dng sai, sau này  
các boot virus khc phc bng kthut kim tra đon mã lnh tương ng ca  
nó trong vùng nhvà trên boot sector.  
Trước khi vào thường trú virus cũng phi kim tra xem trước đó nó đã  
được np vào trong vùng nhchưa, nếu đã được np ri thì thôi vì quá trình  
np mt virus nhiu ln vào vùng nhslàm chm quá trình khi động, nh  
hưởng đến vic np và thi hành các chương trình khác, gim vùng nhquy  
ước đi nhiu gây schú ý không cn thiết ca người sdng.  
24  
Thường trú trong bnhớ  
Boot virus mun tăng khnăng lây lan (cũng là khnăng tn ti) ca  
mình thì bt buc phi vào thường trú trong bnh, thường sphi thường  
trú trong vùng nhcao nht có thể được.  
Thông thường hệ điu hành chqun lý được dung lượng bnhquy  
ước do BIOS quy định được ghi trong địa ch0:0413h sau quá trình POST,  
li dng điu này boot virus sthay đổi giá trnm trong địa ch0:0413h sau  
khi đã trừ đi dung lượng bnhnó cn sdng.  
Đon mã sau được trích tsource code ca virus Brain ver.1 để minh  
ha cho kthut thường trú trong bnhcao:  
mov  
sub  
ax,bw0413  
ax,7  
mov  
bw0413,ax  
Kthut này có mt nhược đim là nếu máy tính khi động li (reset)  
thì quá trình kim tra bnhkhông được thc hin li, do đó virus li gim  
kích thước trong địa ch0:0413h đi mt ln na, vì thế dgây chú ý cho  
người sdng khi thy dung lượng vùng nhngày càng bthu hp. Để khc  
phc điu này virus phi tiến hành kim tra tính tn ti trong vùng nhtrước  
khi cài đặt.  
Lây lan  
Sau khi vào thường trú trong bnh, virus schiếm ngt 13h là ngt  
thc hin các tác vụ đọc, ghi đĩa để đảm bo lây lan sang các đĩa khác.  
Trước hết virus sẽ đọc boot sector lên để kim tra xem đã blây chưa  
bng kthut kim tra tính duy nht, nếu chưa lây, virus sto ra mt boot  
sector givi đon mã ca mình, đon boot ginày sẽ được ghi vào vtrí ca  
boot sector còn boot sector chun sẽ được lưu vào mt vùng xác định trên đĩa.  
25  
Đon mã sau được trích tsource code ca virus Brain ver.1 để minh  
ha cho kthut thay ngt 13h, ngt cũ được chuyn sang thành 6Dh:  
xor  
ax,ax  
mov  
mov  
mov  
mov  
mov  
mov  
mov  
mov  
mov  
ds,ax  
ax,bw004c  
bw01b4,ax  
ax,bw004e  
bw01b6,ax  
ax,offset bp0120  
bw004c,ax  
ax,cs  
bw004e,ax  
Cùng vi vic chiếm ngt, virus cũng phi bo toàn được bng tham  
số đĩa BPB để làm dliu đầu vào cho các thao tác truy xut đĩa.  
Điu kin phá hoi  
Đặc tính phá hoi không bt buc phi có trong thân virus, chính vì thế  
sphá hoi ca virus có thrt đa dng, tvic chỉ đưa ra các thông báo đùa  
ct cho đến vic phá hoi mt phn hay toàn bdliu trên đĩa.  
Để khi động thtc phá hoi, virus cn căn cvào mt điu kin nào  
đó, các điu kin này có thể được xác định trước hoc ngu nhiên.  
Ngy trang  
Ngy trang là mt kthut ra đời sau nhưng rt cn thiết để virus gim  
khnăng bphát hin bi các phn mm có khnăng can thip vào cu trúc  
ca đĩa. Vì boot virus luôn thay chcho boot sector chun nên khi có yêu cu  
đọc boot sector ca các phn mm hthng nếu boot virus không trvề được  
bn boot sector chun sbphát hin ngay nên thông thường các boot virus sẽ  
26  
liên tc giám sát các thao tác đọc đĩa, nếu có yêu cu đọc boot sector ca mt  
phn mm khác thì boot virus sẽ đọc bn chun tvtrí ct giu để che mt  
các chương trình hthng.  
Đon mã sau được trích tsource code ca virus Brain ver.1 để minh  
ha cho kthut ngy trang, nếu có yêu cu đọc boot sector thì gi thtc  
đọc boot sector chun.  
cmp  
cmp  
cmp  
ja  
ah,2  
ah,2  
dl,2  
bp014  
ch,0  
cmp  
jne  
bp013  
dh,0  
cmp  
je  
bp015  
ifncnt  
bp0140  
short bp015  
bp024  
switch,0  
ifncnt,4  
ax  
bp013: dec  
jne  
jmp  
bp014: jmp  
bp015: mov  
mov  
push  
push  
bx  
push  
cx  
push  
dx  
mov  
drivno,dl  
cx,4  
mov  
27  
2.2. File virus  
Dthy slượng và ccht lượng ca các file virus vượt tri hơn hn  
các boot virus do chúng được chy trên nn ca hệ điu hành nên có thtn  
dng toàn bcác ưu thế ca hệ điu hành để thc hin các ý đồ ca mình. File  
virus được phân làm hai loi chính như sau:  
TF Virus  
Virus thuc loi này không thường trú trong bnh, không chiếm các  
ngt, khi được trao quyn nó stìm mt hoc nhiu file khác để lây lan.  
RF Virus  
Có thường trú trong bnh, khng chế hot động ca máy tính bng  
cách chiếm các ngt (phbiến nht là ngt 21h) để tiến hành lây lan.  
2.2.1. Cu trúc chương trình  
Do nguyên tc hot động khác nhau nên cu trúc ca TF Virus và RF  
virus cũng khác nhau.  
TF Virus  
Vì nguyên lý làm vic đơn gin, không thường trú và không chiếm ngt  
nên cu trúc ca mt TF virus thường bao gm ba phn chính:  
Phn lây lan  
Để đảm bo stn ti ca mình, TF virus phi có phn lây lan càng  
mnh càng tt, tuy nhiên vic lây nhiu file cũng dn ti hu qulà làm chm  
tc độ ca hthng nên dbphát hin. Ta có thmô thot động ca phn  
lây lan bng lưu đồ thut toán sau:  
28  
-
Phá hoi  
Tìm file  
+
+
Trli dliu  
Đã lây  
-
Trli điu  
khin  
Lây  
Hình 2.3. Phn lây lan ca File virus  
Để lây lan vào file đối tượng, thường file virus hay sdng mt số  
phương pháp sau (chung cho chai loi RF virus và TF virus):  
Chèn đầu: Thường áp dng để lây lên các file kiu .COM do đặc đim  
ca file dng này luôn có đầu vào cố định là 100h sau đầu đon do  
vùng 100h này được dành cho đon đầu chương trình (Program  
Segment Prefix – PSP). Virus schèn đon mã ca mình vào đầu file  
đối tượng và đẩy đon mã ca file này dch đi mt đon đúng bng kích  
thước ca virus. Ưu đim là dthường trú trong bnhnhưng nếu kích  
thước file đối tượng ln thì vic dch chuyn file slâu, dbphát hin.  
Ni file: Virus sni đon mã ca mình vào cui chương trình đối  
tượng và phi định vli lnh nhy để chuyn điu khin đến cho đon  
mã virus chkhông phi cho file đối tượng.  
Chèn gia: Virus sghi đon mã ca mình vào vùng trng trong file  
đối tượng (như stack). Ưu đim ca phương pháp này là không làm  
tăng kích thước chương trình lên nhiu, thm chí không tăng nhưng li  
hay gây ra li nếu lm dng stack hoc buffer ca chương trình đối  
tượng.  
29  
Phn phá hoi  
Không nht thiết phi có, phương thc phá hoi cũng vô cùng đa dng.  
Phn dliu  
Cha các dliu ni ti ca chương trình virus và các dliu ca  
chương trình đối tượng đang bchiếm quyn.  
RF Virus  
Do phi gii quyết vn đề thường trú và chiếm ngt nên cu trúc ca  
RF Virus phi có thêm phn cài đặt, hot động ca phn cài đặt có thbiu  
din qua lưu đồ thut toán như sau:  
+
Đã  
thường trú ?  
-
Chiếm ngt và  
thường trú  
Phá hoi  
Trli dliu  
Trli điu khin  
Hình 2.4. Phn cài đặt ca RF virus  

Tải về để xem bản đầy đủ

pdf 80 trang yennguyen 07/04/2025 150
Bạn đang xem 30 trang mẫu của tài liệu "Luận văn Các phương pháp lây lan và phá hoại của virus máy tính", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • pdfluan_van_cac_phuong_phap_lay_lan_va_pha_hoai_cua_virus_may_t.pdf