Virus tin học và thiết kế chương trình phòng chống

238 851 0
Virus tin học và thiết kế chương trình phòng chống

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Tài liệu tham khảo công nghệ thông tin Virus tin học và thiết kế chương trình phòng chống

đồ án tốt nghiệp Lời nói đầu Virus tin học nỗi băn khoăn lo lắng người làm công tác tin học, nỗi lo sợ người sử dụng máy tính bị nhiễm virus Khi máy tính bị nhiễm virus, họ biết trông chờ vào phần mềm diệt virus có thị trường, trường hợp phần mềm không phát không tiêu diệt được, họ bị lâm phải tình khó khăn, khơng biết phải làm Vì lý đó, có cách nhìn nhận hệ thống, chế nguyên tắc hoạt động virus tin học cần thiết Trên sở đó, có cách nhìn đắn virus tin học việc phòng chống, kiểm tra, chữa trị cách phân tích, nghiên cứu virus xuất Đồ án giải vấn đề vừa nêu Nó chia làm chương: Chương I Đặt vấn đề Chương II Tổng quan virus hệ thống Chương III Khảo sát virus One Half Chương IV Thiết kế chương trình chống virus Phần phụ lục cuối đồ án liệt kê toàn chương trình nguồn chương trình kiểm tra khơi phục virus One Half Trong trình xây dựng đồ án này, nhận nhiều giúp đỡ thầy cô giáo, bạn bè đồng nghiệp gia đình Tơi xin cảm ơn giúp đỡ nhiệt tình thầy Nguyễn Thanh Tùng, thầy giáo trực tiếp hướng dẫn đề tài tốt nghiệp tôi, cảm ơn thầy cô giáo Khoa Tin học, thầy cô giáo cán Trung tâm bồi dưỡng cán Trường Đại học Bách khoa Hà nội tạo điều kiện giúp đỡ hoàn thành đồ án đồ án tốt nghiệp Tôi xin cảm ơn bạn bè đồng nghiệp, người thân gia đình tạo điều kiện, động viên tơi q trình làm đồ án Vì điều kiện thời gian khơng nhiều, kinh nghiệm cịn hạn chế, khơng tránh khỏi thiếu sót Tơi mong nhận ý kiến đóng góp thầy giáo đồng nghiệp để chương trình sau tốt Chương I Đặt vấn đề Mặc dù virus tin học xuất từ lâu giới nước ta, song người sử dụng người làm công tác tin học, virus tin học vấn đề nan giải, nhiều gây tổn thất mát liệu đĩa, gây cố q trình vận hành máy Sự nan giải có nhiều lý do: Thứ nhất, kiến thức mức hệ thống khó kiến thức lập trình ngơn ngữ bậc cao chương trình ứng dụng, đặc biệt thông tin cần thiết hệ thống khơng DOS thức cơng bố thông tin dành riêng (Reseved), điều làm cho người đề cập mức hệ thống không nhiều Thứ hai, tài liệu virus tin học phổ biến, có lẽ người ta nghĩ có tài liệu đề cập tới virus cách tỷ mỷ, hệ thống số người tò mò, nghịch ngợm viết virus tăng lên nữa! Thứ ba, số lượng virus xuất đơng đảo, virus có đặc thù riêng, cách hoạt động riêng cách phá hoại riêng Để tìm hiểu cặn kẽ virus khơng thể đồ án tốt nghiệp thời gian ngắn được, điều làm nản lịng người lập trình muốn tìm hiểu virus Tuy xuất nhiều chương trình tiêu diệt virus khơi phục lại đĩa, khôi phục lại file bị nhiễm song trường hợp cụ thể, phần mềm khơng giải vấn đề Có nhiều lý do: Thứ nhất, chương trình tiêu diệt số loại virus mà biết Thứ hai, biết sau virus xuất hiện, nghiên cứu mã nhận biết đưa vào danh mục, chương trình có khả tiêu diệt Điều có nghĩa có loại virus xuất máy tính mà chương trình kiểm tra virus thơng báo "OK" Đặc biệt virus người lập trình nước viết, hầu hết khơng cập nhật vào chương trình kiểm tra tiêu diệt virus SCAN, F-PROT, UNVIRUS, Vì lý nêu trên, việc phòng chống virus biện pháp tốt để tránh việc virus xâm nhập vào hệ thống máy Trong trường hợp phát có virus xâm nhập, ngồi việc sử dụng chương trình diệt virus có mặt thị trường, việc hiểu biết chế, đặc điểm phổ biến virus kiến thức mà người làm cơng tác tin học nên biết để có xử lý phù hợp Nội dung đồ án đưa số phân tích mảng kiến thức hệ thống, nguyên tắc thiết kế, hoạt động loại virus nói chung, áp dụng phân tích virus One Half Trên sở đó, đề cập tới phương pháp phòng tránh, phát phân tích với virus Các kiến thức cộng với phần mềm diệt virus có thị trường có tác dụng việc hạn chế lây lan, phá hoại virus nói chung đồ án tốt nghiệp Chương II Tổng quan I Giới thiệu tổng quát virus tin học Virus tin học Thuật ngữ virus tin học dùng để chương trình máy tính tự chép lên nơi khác (đĩa file) mà người sử dụng khơng hay biết Ngồi ra, đặc điểm chung thường thấy virus tin học tính phá hoại, gây lỗi thi hành, thay đổi vị trí, mã hố huỷ thơng tin đĩa ý tưởng lịch sử Lý thuyết chương trình máy tính tự nhân lên nhiều lần đề cập tới từ sớm, trước máy tính điện tử đời Lý thuyết đưa năm 1949 Von Neumann, báo nhan đề 'Lý thuyết cấu phần tử tự hành phức tạp' (Theory and Organization of Complicated Automata) Sau máy tính điện tử đời, xuất trò chơi tên 'Core War', số thảo chương viên hãng AT&T's Bell phát triển Trò chơi đấu trí hai đoạn mã hai thảo chương viên, đoạn mã cố gắng tự nhân lên tiêu diệt đoạn mã đối phương Đến 5/1984, Core War mơ tả báo chí bán trị chơi máy tính Những virus tin học tìm thấy máy PC vào khoảng 1986-1987 Các virus thường có xuất phát điểm trường Đại học, nơi có sinh viên giỏi, thích tự khẳng định mình! Phân loại: đồ án tốt nghiệp Thông thường, dựa vào đối tượng lây lan file hay đĩa mà virus chia thành hai nhóm chính: - B-virus: Virus cơng lên Master Boot hay Boot Sector - F-virus: Virus công lên file khả thi Mặc dù vậy, cách phân chia khơng xác Ngoại lệ có virus vừa cơng lên Master Boot (Boot Sector) vừa công lên file khả thi Để có cách nhìn tổng quan virus, xem chúng dành quyền điều khiển a B-virus Khi máy tính bắt đầu khởi động (Power on), ghi phân đoạn đặt 0FFFFh, ghi khác đặt Như vậy, quyền điều khiển ban đầu trao cho đoạn mã 0FFFFh: 0h, đoạn mã thực lệnh nhảy JMP FAR đến đoạn chương trình ROM, đoạn chương trình thực trình POST (Power On Self Test - Tự kiểm tra khởi động) Quá trình POST kiểm tra ghi, kiểm tra nhớ, khởi tạo Chip điều khiển DMA, điều khiển ngắt, điều khiển đĩa Sau dị tìm Card thiết bị gắn thêm để trao quyền điều khiển cho chúng tự khởi tạo lấy lại quyền điều khiển Chú ý đoạn chương trình ROM (Read Only Memory) nên sửa đổi, chèn thêm đoạn mã khác Sau trình POST, đoạn chương trình ROM tiến hành đọc Boot Sector đĩa A Master Boot đĩa cứng vào RAM (Random Acess Memory) địa 0:7C00h trao quyền đồ án tốt nghiệp điều khiển cho đoạn mã lệnh JMP FAR 0:7C00h Đây chỗ mà B-virus lợi dụng để cơng vào Boot Sector (Master Boot), nghĩa thay Boot Sector (Master Boot) chuẩn đoạn mã virus, quyền điều khiển trao cho virus, tiến hành hoạt động trước, sau tiến hành thao tác thơng thường: Đọc Boot Sector (Master Boot) chuẩn mà cất giấu vào 0:7C00h trao quyền điều khiển cho đoạn mã chuẩn này, người sử dụng có cảm giác máy tính hoạt động bình thường b F-virus Khi DOS tổ chức thi hành File khả thi (bằng chức 4Bh ngắt 21h), tổ chức lại vùng nhớ, tải File cần thi hành trao quyền điều khiển cho File F-virus lợi dụng điểm cách gắn đoạn mã vào file vị trí mà DOS trao quyền điều khiển cho File sau tải vào vùng nhớ Sau Fvirus tiến hành xong hoạt động mình, xếp, bố trí trả lại quyền điều khiển cho File File lại tiến hành hoạt động bình thường, người sử dụng khơng thể biết Trong loại B-virus F-virus, có số loại sau dành quyền điều khiển, tiến hành cài đặt đoạn mã vùng nhớ RAM chương trình thường trú (TSR), vùng nhớ nằm ngồi tầm kiểm sốt DOS, nhằm mục đích kiểm soát ngắt quan trọng ngắt 21h, ngắt 13h, Mỗi ngắt gọi, virus dành quyền điều khiển để tiến hành hoạt động trước trả lại ngắt chuẩn DOS Để có sở việc khảo sát virus, cần có phân tích để hiểu rõ cấu trúc đĩa, đoạn mã Boot đồ án tốt nghiệp Sector (Master Boot) cách thức DOS tổ chức, quản lý nhớ tổ chức thi hành File khả thi II Đĩa - Tổ chức thông tin đĩa Cấu trúc vật lý Các loại đĩa (đĩa cứng đĩa mềm) lưu trữ thông tin dựa nguyên tắc từ hoá: Đầu từ đọc-ghi từ hoá phần tử cực nhỏ bề mặt đĩa Dữ liệu đĩa ghi theo nguyên tắc rời rạc (digital), nghĩa mang giá trị Để tổ chức thơng tin đĩa, đĩa phải địa hoá Nguyên tắc địa hoá dựa khái niệm sau đây: a Side: Đó mặt đĩa, đĩa mềm có hai mặt đĩa, đĩa cứng có nhiều mặt đĩa Để làm việc với mặt đĩa có đầu từ tương ứng, đơi người ta gọi Header Side đánh số 0, chẳng hạn đĩa mềm, mặt mặt 0, mặt mặt 1, đĩa cứng tương tự đánh số 0,1,2,3 b Track: Là vòng tròn đồng tâm mặt đĩa, nơi tập trung phần tử từ hoá bề mặt đĩa để lưu trữ thông tin Các track đánh số từ bên vào trong, c Cylinder: Một track thứ tự mặt đĩa tham chiếu đến phần tử nhất, Cylinder Số hiệu Cylinder số hiệu track Cylinder d Sector: Bộ điều khiển đĩa thường thiết kế để đọc ghi lần phân đoạn track, phân đoạn gọi đồ án tốt nghiệp sector, hệ điều hành DOS, dung lượng sector 512 byte Các sector track đánh địa chỉ, thông thường người ta sử dụng phương pháp đánh số sector mềm, nghĩa mã hoá địa sector gắn vào phần đầu sector Ngồi khái niệm Sector, DOS cịn đưa khái niệm Cluster, nhằm mục đích quản lý đĩa tốt Cluster bao gồm tập hợp Sector, đơn vị mà DOS dùng để phân bổ lưu trữ file đĩa Tuỳ dung lượng đĩa mà số lượng Sector Cluster 1, (đối với đĩa mềm) 4, 8, 16 (đối với đĩa cứng) Cấu trúc logic: Đối với loại đĩa, DOS tổ chức đĩa thành hai phần: Phần hệ thống phần liệu Phần hệ thống bao gồm ba phần con: Boot Sector, bảng FAT (File Alocation Table) Root Directory Đối với đĩa cứng, DOS cho phép chia thành nhiều phần khác nhau, cịn có cấu trúc đặc biệt khác Partition Table Sau đề cập tới phần một: a Boot Sector Đối với đĩa mềm, Boot Sector chiếm Sector 1, Side 0, Cylinder Đối với đĩa cứng, vị trí dành cho bảng Partition, Boot Sector chiếm sector ổ đĩa logíc Khi khởi động máy, Boot Sector đọc vào địa 0: 7C00h trao quyền điều khiển Đoạn mã Boot Sector có nhiệm vụ sau: - Thay lại bảng tham số đĩa mềm (ngắt 1Eh) - Định vị đọc Sector Root vào địa 0:0500h - Dò tìm, đọc file hệ thống có trao quyền điều khiển cho chúng 10 đồ án tốt nghiệp Ngồi ra, Boot Sector cịn chứa bảng tham số quan trọng đến cấu trúc đĩa, bảng tham số bắt đầu offset 0Bh Boot Sector, cụ thể cấu trúc sau: 11 đồ án tốt nghiệp Offset Siz e +0h +3h Nội dung JMP xxxx Giải thích Lệnh nhảy đến đầu đoạn mã Boot Tên hệ thống format đĩa Start of BPB (Bios Parameter Block) +0Bh SectSiz Số byte Sector +0Dh ClustSiz Số Sector Cluter +0Eh ResSecs Số lượng Sector dành riêng (trước FAT) +10h FatCnt Số bảng FAT +11h RootSiz Số đầu vào tối đa cho Root (32 byte cho đầu vào) +13h TotSecs Tổng số sector đĩa (hoặc Partition) trường hợp dung lượng < 32MB +15h Media Media descriptor đĩa (giống byte đầu bảng FAT) +16h FatSize Số lượng Sector cho bảng FAT End of BPB +18h TrkSecs +1Ah HeadCnt Số lượng đầu đọc ghi +1Ch HidnSec Số sector dấu mặt (được dùng cấu trúc Partition) +1Eh Số lượng Sector track Đầu đoạn mã Boot Sector 12 ... phá hoại virus nói chung đồ án tốt nghiệp Chương II Tổng quan I Giới thiệu tổng quát virus tin học Virus tin học Thuật ngữ virus tin học dùng để chương trình máy tính tự chép lên nơi khác (đĩa... máy tính mà chương trình kiểm tra virus thông báo "OK" Đặc biệt virus người lập trình nước viết, hầu hết khơng cập nhật vào chương trình kiểm tra tiêu diệt virus SCAN, F-PROT, UNVIRUS, Vì lý... Đặt vấn đề Mặc dù virus tin học xuất từ lâu giới nước ta, song người sử dụng người làm công tác tin học, virus tin học vấn đề nan giải, nhiều gây tổn thất mát liệu đĩa, gây cố trình vận hành máy

Ngày đăng: 23/11/2012, 08:13

Hình ảnh liên quan

+10h | I1 |FatCnt | Số bảng FAT. - Virus tin học và thiết kế chương trình phòng chống

10h.

| I1 |FatCnt | Số bảng FAT Xem tại trang 10 của tài liệu.
+360h| 8 Loại bảng FATT 12 hay 16 bịt. Thơng tin  này  dành  riêng  của  DOS.  - Virus tin học và thiết kế chương trình phòng chống

360h.

| 8 Loại bảng FATT 12 hay 16 bịt. Thơng tin này dành riêng của DOS. Xem tại trang 12 của tài liệu.
Một ví dụ về phân đầu của bảng FAT: - Virus tin học và thiết kế chương trình phòng chống

t.

ví dụ về phân đầu của bảng FAT: Xem tại trang 15 của tài liệu.
Mỗi entry trong bảng FAT này chiếm 2 byte (FAT 16bït), 2 entry  đầu  tiên  của  bảng  FAT  nảy  là  giá  trị  nhận  dạng  đĩa  (FFF8-  FFFF) - Virus tin học và thiết kế chương trình phòng chống

i.

entry trong bảng FAT này chiếm 2 byte (FAT 16bït), 2 entry đầu tiên của bảng FAT nảy là giá trị nhận dạng đĩa (FFF8- FFFF) Xem tại trang 16 của tài liệu.
Cylinder 0, Sector Ï trên đĩa cứng. Tại đây, ngồi bảng Partition (bảng  phân  chương),  cịn  cĩ  một  đoạn  mã  được  trao  quyên  điều  khiển  sau  quá  trình  POST  tương  tự  như  đối  với  Boot  Sector  trên  - Virus tin học và thiết kế chương trình phòng chống

ylinder.

0, Sector Ï trên đĩa cứng. Tại đây, ngồi bảng Partition (bảng phân chương), cịn cĩ một đoạn mã được trao quyên điều khiển sau quá trình POST tương tự như đối với Boot Sector trên Xem tại trang 18 của tài liệu.
07 Bảng tham số bị hỏng (C) - Virus tin học và thiết kế chương trình phòng chống

07.

Bảng tham số bị hỏng (C) Xem tại trang 21 của tài liệu.
+0Fh | 2_ | Số Sector trong một bảng FAT (từ DOS 4.0 trường này  chiêm  2  byte,  cịn  đơi  với  DOS  3 - Virus tin học và thiết kế chương trình phòng chống
Fh | 2_ | Số Sector trong một bảng FAT (từ DOS 4.0 trường này chiêm 2 byte, cịn đơi với DOS 3 Xem tại trang 28 của tài liệu.
movV s,/BEh ; Trỏ SI tới bảng phân chương - Virus tin học và thiết kế chương trình phòng chống

mov.

V s,/BEh ; Trỏ SI tới bảng phân chương Xem tại trang 30 của tài liệu.
- Khởi tạo ngắt 1Eh băng bảng tham số trong Boot Sector. -  Định  vị  các  phân  trên  dĩa  băng  bảng  tham  số  BPB - Virus tin học và thiết kế chương trình phòng chống

h.

ởi tạo ngắt 1Eh băng bảng tham số trong Boot Sector. - Định vị các phân trên dĩa băng bảng tham số BPB Xem tại trang 32 của tài liệu.
FATCnt db02h ; Số bảng FAT là2 - Virus tin học và thiết kế chương trình phòng chống

nt.

db02h ; Số bảng FAT là2 Xem tại trang 33 của tài liệu.
0000:000 | Bảng vector ngắt: 256 *4 byte. 0  - Virus tin học và thiết kế chương trình phòng chống

0000.

000 | Bảng vector ngắt: 256 *4 byte. 0 Xem tại trang 40 của tài liệu.
Vùng nhớ EGA-VGA cho một số Mode màn hình nhất  định.  - Virus tin học và thiết kế chương trình phòng chống

ng.

nhớ EGA-VGA cho một số Mode màn hình nhất định. Xem tại trang 41 của tài liệu.
Số mục trong bảng tái định vị - Virus tin học và thiết kế chương trình phòng chống

m.

ục trong bảng tái định vị Xem tại trang 48 của tài liệu.
So sánh hai MasterBoot trên, chúng ta thấy bảng phân chương của  chúng  là  giỗng  nhau - Virus tin học và thiết kế chương trình phòng chống

o.

sánh hai MasterBoot trên, chúng ta thấy bảng phân chương của chúng là giỗng nhau Xem tại trang 68 của tài liệu.
hội đủ, hiện trên màn hình dịng chữ thơng báo tên của virus. - Virus tin học và thiết kế chương trình phòng chống

h.

ội đủ, hiện trên màn hình dịng chữ thơng báo tên của virus Xem tại trang 83 của tài liệu.
ta sẽ tra cứu trên bảng này để lây được địa chỉ của ngắt 21h phục vụ  cho  quá  trình  so  sánh  đối  chiếu - Virus tin học và thiết kế chương trình phòng chống

ta.

sẽ tra cứu trên bảng này để lây được địa chỉ của ngắt 21h phục vụ cho quá trình so sánh đối chiếu Xem tại trang 110 của tài liệu.

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan