Để đạt được những động cơ hay mục tiêu, họ sử dụng các phương pháp khác nhau, công cụ, và kỹ thuật để khai thác lỗ hổng trong một hệ thống máy tính hoặc chính sách an ninh và điều khiển.
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA CÔNG NGHỆ THÔNG TIN
- -PHÁT TRIỂN HỆ THỐNG THƯƠNG MẠI ĐIỆN TỬ
NHÓM 7 : BẢO MẬT TRONG THƯƠNG MẠI ĐIỆN TỬ
Giảng viên : Phạm Thế QuếSinh viên : Nguyễn Văn Bằng (NT)
Nguyễn Hữu BìnhNguyễn Thành Công
Lê Văn Dũng
Đỗ Quang HảiNguyễn Thế PhongĐinh Văn Tùng
Trang 2Mục lục
CHƯƠNG 1 : GIỚI THIỆU VỀ BẢO MẬT (Nguyễn Thành Công) 4
1.1 Định nghĩa về bảo mật (Nguyễn Thành Công) 4
1.2 Lịch sử bảo mật(Nguyễn Thành Công) 6
1.3 Sự cần thiết của bảo mật (Nguyễn Thành Công) 7
1.4 Mối đe dọa an ninh (Nguyễn Thành Công) 7
1.5 Lỗ hổng bảo mật (Nguyễn Thành Công) 10
1.6 Các cơ chế bảo mật (Nguyễn Thành Công) 27
CHƯƠNG 2 : CƠ CHẾ BẢO MẬT 28
2.1 Các cơ chế toàn vẹn dữ liệu (Đinh Văn Tùng) 28
2.1.1 Các hàm hash bảo mật (Đinh Văn Tùng) 29
2.1.2 Message Authentication Code- (Đinh Văn Tùng) 40
2.2 Các cơ chế mã hóa- (Đinh Văn Tùng) 42
2.2.1 Các cơ chế đối xứng- (Đinh Văn Tùng) 43
2.2.2 Các cơ chế khóa công khai- (Đinh Văn Tùng) 54
2.3 Kỹ thuật chữ ký số - (Nguyễn Hữu Bình) 56
2.3.1 Chữ ký số RSA - (Nguyễn Hữu Bình) 58
2.3.2 Thuật toán chữ ký số- (Nguyễn Hữu Bình) 59
2.3.3 Đường cong Eliptic của DSA- (Nguyễn Hữu Bình) 61
2.3.4 Quản lý khóa công khai- (Nguyễn Hữu Bình) 62
2.4 Mô hình kỹ thuật điều khiển- (Nguyễn Hữu Bình) 62
2.4.1 Nhận dạng dựa trên kiểm soát truy cập- (Nguyễn Hữu Bình) 62
2.4.2 Kiểm soát truy cập dựa trên nguyên tắc - (Nguyễn Hữu Bình) 63
2.5 Cơ chế trao đổi chứng thực - (Nguyễn Hữu Bình) 64
2.5.1 Chứng minh không tiết lộ thông tin- (Nguyễn Hữu Bình) 64
2.5.2 Guillou-Quisquater- (Nguyễn Hữu Bình) 66
Trang 32.6 Kỹ thuật thương mại đệm(Trafic padding mechanisms) - (Nguyễn Hữu Bình)
67
2.7 Làm tươi thông điệp(message freshness) - (Nguyễn Hữu Bình) 68
2.8 Số ngẫu nhiên- (Nguyễn Hữu Bình) 69
CHƯƠNG 3 : QUẢN LÝ KHÓA VÀ CHỨNG THỰC – (Đỗ Quang Hải) 71
3.1 Key Exchange Protocols (Giao thức trao đổi khóa Trao đổi khóa công khai) -(Đỗ Quang Hải) 71
3.1.2 Mô hình trao đổi khóa Elliptic curve Diffie-Hellman ECDH – (Đỗ Quang Hải ) 72
3.2 PUBLIC KEY INFRASTRUCTURE (PKI) – (Đỗ Quang Hải) 72
3.2.1 Chứng chỉ khoá công khai X.509 – (Đỗ Quang Hải) 76
3.2.2 Khóa công cộng: Public Key Infrastructure – (Đỗ Quang Hải) 80
3.3 Phương thức mã hóa – (Đỗ Quang Hải) 80
CHƯƠNG 4 : HỆ THỐNG THANH TOÁN ĐIỆN TỬ (Lê Văn Dũng) 82
4.1 Thương Mại Điện Tử - (Lê Văn Dũng) 82
4.2 Hệ thống thanh toán điện tử - (Lê Văn Dũng) 84
4.2.1 Offline so với online – (Lê Văn Dũng) 92
4.2.2 Debit so với Credit – (Lê Văn Dũng) 93
4.2.3 Vĩ mô so với vi mô - (Lê Văn Dũng) 95
4.2.4 Công cụ thanh toán – (Lê Văn Dũng) 95
4.2.5 Ví điện tử - (Lê Văn Dũng) 100
4.2.6 Thẻ thông minh – (Lê Văn Dũng) 102
4.3 An ninh trong thanh toán điện tử - (Lê Văn Dũng) 103
CHƯƠNG 5 : DỊCH VỤ THANH TOÁN TIN CẬY (Nguyễn Thế Phong) 105
5.1 Dịch vụ thanh toán an ninh – (Nguyễn Thế Phong) 105
5.1.1 Thanh toán giao dịch bảo đảm – (Nguyễn Thế Phong) 107
5.1.2 Tiền bảo đảm kỹ thuật số - (Nguyễn Thế Phong) 109
5.1.3 Kiểm tra an ninh điện tử (Nguyễn Thế Phong) 110
5.2 Sẵn sàng và độ tin cậy (Nguyễn Thế Phong) 110
Trang 45.3 Các loại tội phạm trên mạng – (Nguyễn Thế Phong) 110
5.4 Các vấn đề an toàn bảo mật cơ bản đặt ra trong thương mại điện tử - ( Nguyễn Thế Phong) 112
CHƯƠNG 6 : AN NINH TRONG THANH TOÁN GIAO DỊCH – (Nguyễn Văn Bằng) 116
6.1 Giấu tên người sử dụng và giấu vị trí giao dịch – (Nguyễn Văn Bằng) 116
6.1.1 Chuỗi các Mixes – (Nguyễn Văn Bằng) 116
6.2 Chống tiết lộ thông tin cá nhân người mua – (Nguyễn Văn Bằng) 118
6.2.1 Nặc danh – (Nguyễn Văn Bằng) 119
6.3 Ngăn cản việc truy tìm nguồn gốc thanh toán – (Nguyễn Văn Bằng) 120
6.3.1 Randomized Hashsum in iKP– (Nguyễn Văn Bằng) 120
6.3.2 Randomized Hashsum in SET– (Nguyễn Văn Bằng) 121
6.4 Bảo mật dữ liệu giao dịch thanh toán– (Nguyễn Văn Bằng) 121
6.4.1 Chức năng ngẫu nhiên – (Nguyễn Văn Bằng) 122
6.4.2 Chữ kí đôi – (Nguyễn Văn Bằng) 123
6.5 Nonrepudiation of Payment Transaction Messages– (Nguyễn Văn Bằng) 125
6.5.1 Chữ kí điện tử – (Nguyễn Văn Bằng) 125
6.6 Làm mới thông tin giao dịch thanh toán– (Nguyễn Văn Bằng) 127
6.6.1 Nonces and Time Stamps– (Nguyễn Văn Bằng) 128
TÀI LIỆU THAM KHẢO 129
Trang 5CHƯƠNG 1 : GIỚI THIỆU VỀ BẢO MẬT (Nguyễn Thành
Công)
Bảo mật máy tính có nghĩa là để bảo vệ thông tin Giao dịch với công tác phòng
chống và phát hiện các hành động trái phép của người sử dụng của một máy
tính Gần đây nó đã được mở rộng để bao gồm sự riêng tư, bảo mật và tính toàn vẹn Ví dụ:
Phát ngôn viên Bộ Ngoại giao Trung Quốc Zhu Bangzao bác bỏ những cáo buộc rằng Trung Quốc đã đánh cắp các bí mật hạt nhân của Mỹ, nói rằng tuyên bố như vậy có nghĩa là để làm suy yếu Trung Quốc quan hệ Trong khi
đó, một điệp viên CIA dẫn đầu lực lượng đặc nhiệm đã được đánh giá bao nhiêu thiệt hại có thể đã được thực hiện đối với an ninh quốc gia của Mỹ sau khi một nhà khoa học Trung Quốc tại các Phòng thí nghiệm Quốc gia Los Alamos tại New Mexico bị cáo buộc chia sẻ bí mật hạt nhân.
Hai bên đồng ý và đóng dấu giao dịch của họ bằng cách sử dụng chữ ký
số Chữ ký không thể được cai trị không hợp lệ cơ quan lập pháp nhà nước hoặc cơ quan khác làm cho pháp luật bởi vì nó xác định duy nhất các cá nhân
có liên quan đến
Bạn truy cập vào một trang web và trang web thu thập thông tin cá nhân hơn
là bạn sẵn sàng tiết lộ hoặc phân phối dữ liệu bên ngoài Bằng cách này, nó thỏa hiệp riêng tư của bạn và mở ra thế giới của bạn cho các bên khác
Định nghĩa này ngụ ý rằng bạn phải biết các thông tin và giá trị của thông tin đó
để phát triển các biện pháp bảo vệ Một phân loại sơ bộ các biện pháp bảo vệ trong bảo mật máy tính như sau:
Công tác phòng chống các biện pháp ngăn chặn thông tin của bạn khỏi bị hư hỏng, thay đổi, hoặc bị đánh cắp Biện pháp phòng ngừa có thể nằm trong khoảng từ khóa cửa phòng máy chủ để thiết lập chính sách bảo mật cao cấp
Phát hiện-Thực hiện các biện pháp cho phép bạn phát hiện khi thông tin đã bị
hư hỏng, thay đổi, hoặc bị đánh cắp, làm thế nào nó đã bị hư hỏng, thay đổi,
Trang 6hoặc bị đánh cắp, và những người đã gây ra thiệt hại Các công cụ có sẵn để giúp phát hiện xâm nhập, thiệt hại hoặc thay đổi, và vi rút.
Phản ứng, các biện pháp cho phép phục hồi thông tin, thậm chí nếu thông tin
bị mất hoặc bị hư hỏng
Các biện pháp trên đều rất tốt, nhưng nếu bạn không hiểu làm thế nào thông tin
có thể bị tổn hại, bạn không thể có biện pháp để bảo vệ nó Bạn phải kiểm tra các thành phần trên thông tin có thể bị tổn hại:
Bảo mật: Ngăn ngừa tiết lộ trái phép thông tin Điều này có thể là kết quả
của các biện pháp bảo mật kém hoặc rò rỉ thông tin của nhân viên Một ví dụ
về các biện pháp bảo mật kém là cho phép truy cập nặc danh thông tin nhạy cảm
Tính toàn vẹn: Việc phòng, sửa đổi sai lầm của thông tin Người dùng có
thẩm quyền có thể là nguyên nhân lớn nhất của các lỗi và thiếu sót và thay đổi dữ liệu Lưu trữ dữ liệu không chính xác trong hệ thống có thể là xấu như mất dữ liệu Kẻ tấn công độc hại cũng có thể chỉnh sửa, xóa, hoặc các thông tin tham nhũng là rất quan trọng để hoạt động đúng chức năng kinh doanh
Xác thực: Quá trình xác minh mà người dùng là những người mà họ yêu cầu
bồi thường là khi đăng nhập vào hệ thống Nói chung, việc sử dụng tên người dùng và mật khẩu hoàn thành điều này Tinh vi hơn là sử dụng thẻ thông minh và chức năng quét võng mạc Quá trình xác thực không cấp quyền truy cập người sử dụng các nguồn lực này đạt được thông qua quá trình cấp phép
Ủy quyền: Quá trình cho phép chỉ những người dùng được quyền truy cập
thông tin nhạy cảm Một quá trình cấp phép sử dụng các cơ quan an ninh thích hợp để xác định xem một người sử dụng cần có quyền truy cập vào tài nguyên
Máy tính và mạng ban đầu được xây dựng để dễ dàng trao đổi thông tin.Công nghệthông tin (CNTT) cơ sở hạ tầng đã sớm được xây dựng xung quanh các máy tính trung ương hoặc các giải pháp máy tính lớn trong khi những người khác đã được phát triển xung quanh các máy tính cá nhân Một số cho là không thể trở thành hiện thực và doanh nghiệp ngày nay đang được thúc đẩy bởi sức mạnh của máy tính cá nhân mà người dùng truy cập với tên người dùng và mật khẩu
Trang 7Tuy nhiên, như các cuộc cách mạng thông tin mở ra con đường mới cho CNTT, nócũng mở ra khả năng mới cho tội phạm Những kẻ tấn công sử dụng những cơ hội này để ăn cắp mật khẩu và truy cập thông tin
An ninh thông tin sẽ như thế nào trong thế kỷ 21? Bản chất của máy tính đã thay đổi trong vài năm qua Mạng lưới được thiết kế và xây dựng để tạo điều kiện thuận lợi cho việc chia sẻ và phân phối dữ liệu và thông tin Kiểm soát truy cập vào các nguồn tài nguyên này có thể trở thành một vấn đề bởi vì bạn cần phải cân bằng các yêu cầu để truy cập thông tin miễn phí với giá trị của nội dung thông tin đó
Một số thông tin nhạy cảm hơn so với các thông tin khác, điều này dẫn đến sự cần thiết cho các yêu cầu an ninh Ngày nay, an ninh đã tiến triển nhiều hơn chỉ là tên người dùng và mật khẩu Nó liên quan đến việc nhận dạng kỹ thuật số, phương pháp xác thực , và các chiến lược bảo mật mô-đun
Cách đơn giản nhất liên quan đến việc sử dụng thẻ thông minh Đây là những bằngchứng giả mạo các thiết bị lưu trữ an ninh thông tin Họ là tương tự như một thẻ tín dụng với một bộ vi xử lý xây dựng bên trong và bộ nhớ được sử dụng để xác định hoặc giao dịch tài chính Khi người sử dụng chèn nó vào đầu đọc, nó chuyển dữ liệu đến và đi từ một máy tính trung tâm Nó là an toàn hơn so với một thẻ dải từ và có thể được lập trình để tự hủy nếu mật khẩu sai được nhập quá nhiều lần Như là một thẻ giao dịch tài chính, nó có thể được nạp tiền kỹ thuật số
Các quản trị viên thường thấy rằng việc đưa một chính sách bảo mật hạn chế cả người dùng và các cuộc tấn công là tốn thời gian và tốn kém Người sử dụng cũng trở nên bất mãn các chính sách an ninh nặng làm cho công việc của họ khó khăn không có lý do xác đáng, làm chính trị xấu trong công ty Lập kế hoạch một chính sách kiểm toán trên mạng lưới rộng lớn chiếm tài nguyên máy chủ và thời gian, và thường các quản trị viên không lưu ý của các sự kiện được kiểm toán Một thái độ phổ biến trong những người dùng rằng nếu không có công việc bí mật đang được thực hiện, tại sao cần bảo mật?
Có một giá phải trả khi một kế hoạch nửa vời của bảo mật được đưa vào hoạt động Nó có thể dẫn đến thảm họa bất ngờ Một chính sách mật khẩu cho phép ngườidùng sử dụng mật khẩu để trống hoặc độ bảo mật yếu là một cơ hội tốt của
hacker Không có bảo vệ tường lửa hoặc proxy giữa mạng riêng của tổ chức khu vực
Trang 8cục bộ (LAN) và Internet công cộng làm cho một công ty trở thanh mục tiêu của hacker.
Tổ chức sẽ cần phải xác định mức giá mà họ sẵn sàng trả tiền để bảo vệ dữ liệu và các tài sản khác Chi phí này phải được cân đối chi phí mất thông tin, phần cứng và làm gián đoạn dịch vụ
Giới thiệu
Phần đầu tiên của phần này ra các mối đe dọa an ninh và mô tả ngắn gọn các phươngpháp, công cụ, và kỹ thuật mà những kẻ xâm nhập sử dụng để khai thác lỗ hổng trong hệ thống để đạt được mục tiêu của họ
Các mối đe dọa an ninh, tấn công, và lỗ hổng
Thông tin là tài sản quan trọng trong hầu hết các tổ chức Công ty đạt được một lợi thế cạnh tranh bằng cách biết làm thế nào để sử dụng thông tin đó Mối đe dọa đến
từ những người khác muốn để có được các thông tin hoặc hạn chế các cơ hội kinh doanh bằng cách can thiệp vào quy trình kinh doanh bình thường
Những kẻ tấn công cố gắng để gây tổn hại cho hệ thống hoặc làm gián đoạn các hoạt động kinh doanh bình thường khai thác lỗ hổng bằng cách sử dụng các kỹ thuật khác nhau, phương pháp, và các công cụ Quản trị hệ thống cần phải hiểu những khía cạnh khác nhau của an ninh để phát triển các biện pháp và chính sách để bảo vệ tài sản và hạn chế các lỗ hổng bảo mật của họ
Kẻ tấn công có động cơ hay mục tiêu-ví dụ, để làm gián đoạn hoạt động kinh doanh bình thường hoặc ăn cắp thông tin Để đạt được những động cơ hay mục tiêu,
họ sử dụng các phương pháp khác nhau, công cụ, và kỹ thuật để khai thác lỗ hổng trong một hệ thống máy tính hoặc chính sách an ninh và điều khiển
Mục tiêu + Phương pháp + lỗ hổng = tấn công
Phương pháp, công cụ và kỹ thuật để tấn công
Trang 9Các phương pháp trong công thức này khai thác lỗ hổng của tổ chức để khởi động một cuộc tấn công như thể hiện trong hình 2 Kẻ tấn công độc hại có thể được truy cập hoặc từ chối các dịch vụ trong nhiều cách Dưới đây là một số người trong số họ:
Virus Kẻ tấn công có thể phát triển mã độc hại được biết đến như vi rút Sử
dụng các kỹ thuật hacking, họ có thể đột nhập vào hệ thống và virus thực vật Virus nói chung là một mối đe dọa cho bất cứ môi trường nào Họ đi vào các hình thức khác nhau và mặc dù không phải lúc nào cũng độc hại, họ luôn luôn mất thời gian Virus cũng có thể lây lan qua e-mail và các ổ đĩa
Trojan Đây là những chương trình độc hại hoặc mã phần mềm ẩn bên trong
trông giống như một chương trình bình thường Khi người dùng chạy chương trình, các mã ẩn chạy song song Sau đó nó có thể bắt đầu xóa các tập tin và gây hại đến máy tính Con ngựa Trojan thường lây lan qua các file đính kèm e-mail Các virus Melissa gây ra các cuộc tấn công từ chối dịch vụ trên toàn thế giới vào năm 1999 là một loại Trojan horse
Worms Đây là những chương trình chạy độc lập và đi từ máy tính đến máy
tính qua kết nối mạng Worms có thể có phần của mình chạy trên nhiều máy tính khác nhau.Worms không thay đổi chương trình khác, mặc dù họ có thể mang mã nào khác có được
Mật khẩu yếu Đây là một kỹ thuật mà những kẻ tấn công sử dụng để bí mật
truy cập hệ thống thông qua tài khoản của người dùng khác Điều này có thể bởi vì người dùng thường chọn mật khẩu yếu Hai vấn đề lớn với mật khẩu là khi họ dễ dàng để đoán dựa trên kiến thức của người sử dụng (ví dụ, tên thời con gái của vợ) và khi họ dễ bị tấn công từ điển (có nghĩa là, bằng cách sử dụng một từ điển như là nguồn gốc của dự đoán)
Denial-of-dịch vụ tấn công tấn công này khai thác sự cần thiết phải có một
dịch vụ có sẵn Đó là một xu hướng ngày càng tăng trên Internet bởi vì các trang Web nói chung là mở cửa sẵn sàng về tình trạng lạm dụng Mọi người
có thể dễ dàng làm ngập lụt các máy chủ web với giao tiếp để giữ cho nó bận rộn Vì vậy, các công ty kết nối với Internet nên chuẩn bị cho (DoS) tấn công Họ cũng rất khó để theo dõi và cho phép các loại tấn công khác nhau đểđược chinh phục
E-mail hacking thư điện tử là một trong những tính năng phổ biến nhất của
Internet Với khả năng truy cập Internet e-mail, một người nào đó có khả năng có thể tương ứng với bất kỳ một trong hàng triệu người trên toàn thế giới Một số những mối đe dọa liên kết với e-mail là:
Trang 10 Mạo danh địa chỉ người gửi trên Internet e-mail không thể được tin cậy bởi vì
người gửi có thể tạo ra một địa chỉ trả về false Ai đó có thể đã sửa đổi các tiêu đề trong quá cảnh, hoặc người gửi có thể kết nối trực tiếp đến các cổng chuyển thư đơn giản (SMTP) Nghị định thư về máy tính mục tiêu để nhập e-mail
Nghe trộm E-mail tiêu đề và nội dung được truyền đi trong văn bản rõ ràng
nếu không có mã hóa được sử dụng Kết quả là, nội dung của một thông điệp
có thể được đọc hoặc thay đổi quá cảnh Tiêu đề có thể được sửa đổi để che giấu hoặc thay đổi người gửi, hoặc để chuyển hướng các tin nhắn
Nghe trộm này cho phép cracker (hacker) để tạo một bản sao hoàn chỉnh của
hoạt động mạng Kết quả là, một cracker có thể có được thông tin nhạy cảm như mật khẩu, dữ liệu, và thủ tục thực hiện chức năng Nó có thể cho một cracker để nghe trộm bằng cách nghe lén điện thoại, sử dụng đài phát thanh, hoặc sử dụng các cổng phụ trợ trên thiết bị đầu cuối Nó cũng có thể nghe trộm bằng cách sử dụng phần mềm giám sát các gói tin gửi qua mạng Trong hầu hết trường hợp, rất khó để phát hiện nghe trộm
Xã hội kỹ thuật này là một hình thức phổ biến Nó có thể được sử dụng bên
ngoài và bởi những người trong một tổ chức Kỹ thuật xã hội là một thuật ngữhacker để lừa mọi người tiết lộ mật khẩu của họ hoặc một số hình thức của anninh thông tin
Tấn công xâm nhập Trong các cuộc tấn công, hacker sử dụng các công cụ
khác nhau hack để đạt được quyền truy cập vào hệ thống Đây có thể dao động từ mật khẩu, nứt các công cụ hacking giao thức và các công cụ thao tác Các công cụ phát hiện xâm nhập thường có thể giúp phát hiện những thayđổi và các biến thể diễn ra trong hệ thống và mạng lưới
Mạng giả mạo giả mạo mạng lưới, một hệ thống trình bày chính nó vào
mạng như thể đó là một hệ thống khác nhau (máy tính đóng vai B máy tính bằng cách gửi địa chỉ B thay vì riêng của mình) Lý do để làm điều này là hệ thống có xu hướng hoạt động trong một nhóm các hệ thống khác đáng tin cậy Tin tưởng được truyền đạt trong một thời trang một-một, máy tính Một máy tính tin tưởng B (điều này không có nghĩa rằng hệ thống B tin tưởng Một
hệ thống) Ngụ ý với sự tin tưởng này là quản trị hệ thống của hệ thống đáng tin cậy thực hiện công việc đúng cách và duy trì một mức độ thích hợp của anninh cho hệ thống Mạng giả mạo xảy ra theo cách sau đây: nếu máy tính Mộtmáy tính tin tưởng B và C lừa đảo máy tính (đóng vai) máy tính B, sau đó máy tính C có thể được truy cập nếu không-từ chối máy tính A
Trang 11Như đã giải thích trước đó, một kẻ tấn công độc hại sử dụng một phương pháp để khai thác lỗ hổng để đạt được một mục tiêu Lỗ hổng là điểm yếu hay lỗ hổng bảo
mật mà một kẻ tấn công khai thác để truy cập vào mạng hoặc tài nguyên trên mạng (xem Hình 2) Hãy nhớ rằng lỗ hổng này không phải là cuộc tấn công, mà là điểm yếu được khai thác Một số điểm yếu là:
Mật khẩu Mật khẩu lựa chọn sẽ là một điểm tranh cãi miễn là người dùng
phải chọn một Các vấn đề thường được ghi nhớ mật khẩu chính xác trong số
vô số các mật khẩu người dùng cần phải nhớ Người dùng sẽ lựa chọn các mật khẩu thường được sử dụng vì chúng rất dễ nhớ Bất cứ điều gì từ ngày sinh nhật với tên của những người thân yêu Đây là một lỗ hổng bởi vì nó mang lại cho những người khác một cơ hội tốt để đoán mật khẩu chính xác
Giao thức truyền thông giao thức thiết kế đôi khi có điểm yếu Những kẻ tấn
công sử dụng những để có được thông tin và cuối cùng truy cập đến hệ
thống Một số vấn đề được biết đến là:
o TCP / IP stack giao thức TCP / IP có một số điểm yếu cho phép:
o Giả mạo địa chỉ IP
o Yêu cầu kết nối TCP (SYN) tấn công
Giao thức Telnet Telnet có thể được sử dụng để quản lý các hệ thống chạy hệ
điều hành Microsoft Windows 2000 và Unix Khi sử dụng máy khách telnet
để kết nối từ một hệ thống của Microsoft để hệ thống UNIX và ngược lại, tên người dùng và mật khẩu được truyền đi trong văn bản rõ ràng
File Transfer Protocol (FTP) với Telnet, nếu các dịch vụ FTP được chạy và
người dùng cần gửi hoặc lấy thông tin từ một vị trí an toàn sau đó tên người dùng và mật khẩu được truyền trong văn bản rõ ràng
Lệnh tiết lộ thông tin người dùng Nó không phải là phổ biến để tìm khả năng
tương tác giữa sản phẩm của Microsoft và các phiên bản khác nhau của UNIX Lệnh cho thấy người sử dụng và hệ thống thông tin đặt ra một mối đe dọa vì bánh quy giòn có thể sử dụng thông tin đó để đột nhập vào một hệ thống Dưới đây là một số cách:
Trang 12o Ngón tay ngón tay khách hàng tiện ích trên Microsoft Windows NT và
Windows 2000 có thể được sử dụng để kết nối với một dịch vụ daemon ngón tay chạy trên một máy tính dựa trên UNIX để hiển thị thông tin về người sử dụng Khi các ngón tay chương trình được chạy với không có đối số, thông tin cho mỗi người sử dụng hiện đang đăng nhập vào hệ thống được hiển thị
o Rexec rexec tiện ích được cung cấp như một khách hàng trên
Microsoft Windows NT và Windows 2000 Tiện ích khách hàng rexec cho phép thực hiện từ xa trên các hệ thống dựa trên UNIX chạy các dịch vụ rexecd Một khách hàng truyền một thông báo xác định tên người dùng, mật khẩu, và tên của một lệnh để thực thi Chương trình rexecd là dễ bị lạm dụng bởi vì nó có thể được sử dụng để thăm dò một hệ thống cho tên tài khoản hợp lệ Ngoài ra, mật khẩu được truyềnkhông được mã hóa qua mạng
Không đồng bộ chuyển chế độ (ATM) Bảo mật có thể bị tổn hại bởi những gì
được gọi là "thao tác cửa cống" trực tiếp truy cập cáp mạng và các kết nối trong nhà để xe đậu xe ngầm và các trục thang máy
Frame relay Tương tự như vấn đề ATM.
Thiết bị quản lý Thiết bị chuyển mạch và định tuyến được dễ dàng quản lý
bởi một giao diện HTTP hoặc thông qua một giao diện dòng lệnh Cùng với việc sử dụng các mật khẩu yếu (ví dụ, mật khẩu công cộng), nó cho phép bất
cứ ai với một số kiến thức kỹ thuật để kiểm soát thiết bị
Modem Modem đã trở thành tính năng tiêu chuẩn trên nhiều máy tính để
bàn Bất kỳ modem trái phép là một mối quan tâm an ninh nghiêm trọng Mọingười sử dụng chúng không chỉ để kết nối với Internet, mà còn để kết nối với văn phòng của họ để họ có thể làm việc từ nhà Vấn đề là một modem là một phương tiện bỏ qua "tường lửa" bảo vệ mạng từ những kẻ xâm nhập bên ngoài Một hacker sử dụng quay số một "cuộc chiến" công cụ để xác định các
số điện thoại modem và một công cụ "bẻ khoá" để phá vỡ một mật khẩu yếu
có thể được truy cập vào hệ thống Do tính chất của mạng máy tính, một khi một hacker kết nối với một máy tính, các hacker thường có thể kết nối với bất
kỳ máy tính khác trong mạng
Kết luận
Trang 13Kẻ tấn công độc hại sẽ sử dụng các phương pháp khác nhau, công cụ, và kỹ thuật
để khai thác lỗ hổng trong các chính sách an ninh và kiểm soát để đạt được một mục tiêu hay mục tiêu Không độc hại tấn công xảy ra do chính sách bảo mật kém và điềukhiển cho phép các lỗ hổng và sai sót xảy ra Thiên tai có thể xảy ra bất cứ lúc nào,
do đó, các tổ chức cần thực hiện các biện pháp để cố gắng ngăn chặn thiệt hại có thể gây ra
Các mối đe dọa có thể bắt nguồn từ hai nguồn chính: con người và thiên
nhiên Mối đe dọa con người sau đó có thể được chia thành hai loại: độc hại và không độc hại Không độc hại "tấn công" thường đến từ người sử dụng và người lao động không được đào tạo trên máy tính hay không nhận thức được các mối đe dọa bảo mật máy tính khác nhau.Độc hại tấn công thường đến từ các nhân viên hoặc nhân viên bất mãn, những người có một mục tiêu
Các giao thức chuyển thư phổ biến nhất (SMTP, POP3, IMAP4) thường không bao gồm các quy định để xác thực đáng tin cậy như là một phần của giao thức cốt lõi, cho phép các tin nhắn e-mail được dễ dàng giả mạo Cũng không làm các giao thức này đòi hỏi phải sử dụng mã hóa có thể đảm bảo tính bảo mật thông tin hay bảomật của tin nhắn e-mail.Mặc dù phần mở rộng các giao thức này cơ bản có tồn tại, quyết định xem có nên sử dụng chúng cần phải được thành lập như là một phần của chính sách quản trị máy chủ mail.Một số các phần mở rộng sử dụng một phương tiệnthiết lập trước đó xác thực trong khi những người khác cho phép các máy khách và máy chủ để thương lượng một loại xác thực rằng cả hai kết thúc hỗ trợ
chủ Ngoài ra, nó thường là không thể hoàn toàn bản đồ chính sách của một tổ chức
sử dụng máy tính để kiểm soát truy cập cơ chế của nó và người dùng do đó có thẩm quyền thường có thể thực hiện các hành động trái phép
Người dùng cũng có thể yêu cầu dịch vụ mạng và các giao thức được biết là có những thiếu sót và bị tấn công Ví dụ, một người sử dụng có thể hỏi, "Tại sao tôi
Trang 14không thể chỉ FTP các tập tin?" Điều rất quan trọng rằng các chính sách an ninh đối phó không chỉ với nhu cầu của người dùng cuối mà còn với các mối đe dọa và các lỗhổng liên quan đến những nhu cầu Thực tế, tuy nhiên, nó hiếm khi có thể để loại bỏ tất cả các lỗ hổng.
Phát hiện xâm nhập là quá trình phát hiện sử dụng trái phép, hoặc một cuộc tấn công vào một máy tính hoặc mạng Phát hiện xâm nhập cung cấp hai chức năng quan trọng trong việc bảo vệ tài sản hệ thống thông tin
Chức năng đầu tiên là của một cơ chế phản hồi thông báo cho các nhân viên an ninh về hiệu quả của các thành phần khác của hệ thống an ninh Việc thiếu phát hiện xâm nhập là một dấu hiệu cho thấy không có xâm nhập được biết đến, không phải là
hệ thống là hoàn toàn không thể xuyên thủng
Chức năng thứ hai là cung cấp một cơ chế kích hoạt hoặc gating xác định khi nào
để kích hoạt phản ứng theo kế hoạch để xảy ra sự cố Một máy tính hoặc mạng mà không có một hệ thống phát hiện xâm nhập (IDS) có thể cho phép kẻ tấn công để thong thả khám phá điểm yếu của nó Nếu lỗ hổng tồn tại trong các mạng, một kẻ tấn công xác định cuối cùng sẽ tìm thấy chúng và khai thác chúng Cùng một mạng với một cài đặt IDS là một thách thức lớn đối với một kẻ tấn công Mặc dù kẻ tấn công có thể tiếp tục thăm dò mạng lưới cho những điểm yếu, IDS sẽ có thể phát hiệnnhững nỗ lực nếu các lỗ hổng được biết đến, ngăn chặn những nỗ lực, và các nhân viên an ninh cảnh báo những người có thể có hành động thích hợp
Bối cảnh
Các cuộc tấn công DoS được thiết kế để ngăn chặn việc sử dụng hợp pháp của mộtdịch vụ Những kẻ tấn công đạt được điều này bằng cách tràn ngập một mạng lưới với lưu lượng truy cập nhiều hơn có thể xử lý Ví dụ này bao gồm:
Tài nguyên mạng bão hòa, do đó ngăn cản người dùng sử dụng tài nguyên mạng
Làm gián đoạn kết nối giữa hai máy tính, ngăn chặn các thông tin liên lạc giữa các dịch vụ
Ngăn chặn một cá nhân cụ thể truy cập vào một dịch vụ
Làm gián đoạn dịch vụ một hệ thống hoặc khách hàng cụ thể
Trang 15DoS tấn công lũ lụt một mạng từ xa với một số lượng lớn các gói tin giao thức Bộ định tuyến và máy chủ cuối cùng đã trở nên quá tải bởi những cố gắng để định tuyếnhoặc xử lý mỗi gói tin Trong vòng vài phút, mạng lưới hoạt động theo cấp số nhân tăng và mạng ngừng đáp ứng lưu lượng truy cập bình thường và yêu cầu dịch vụ từ khách hàng Điều này cũng được biết đến như là một cuộc tấn công bão hòa mạng hoặc tấn công tiêu thụ băng thông Những kẻ tấn công tấn công với các công cụ khácnhau, bao gồm cả Trin00 và lũ Tribe Network (TFN, TFN2K).
Các loại tấn công từ chối dịch vụ
Máy tính sử dụng các nguồn lực cốt lõi nhất định để hoạt động và hoạt động một cách chính xác Không hoặc gián đoạn các nguồn lực có thể gây ra các máy tính để sụp đổ Một số các nguồn tài nguyên này bao gồm băng thông mạng, bộ nhớ, CPU thời gian, và không gian ổ cứng Hệ thống điều hành và các ứng dụng hơn so với chạy trên hệ thống đóng một vai trò quan trọng trong việc quản lý các nguồn tài nguyên này một cách chính xác Khi hệ điều hành hoặc các nguồn tài nguyên bị tàn phá bởi các cuộc tấn công độc hại, một hoặc nhiều hơn các nguồn lực cốt lõi này bị phá vỡ, gây ra đổ vỡ hệ thống hoặc ngưng đáp ứng Một kẻ tấn công có thể gây ra các nguồn tài nguyên bị tàn phá bởi các phương tiện khác nhau, bao gồm cả tài nguyên máy chủ tiêu thụ, tài nguyên mạng bão hòa, và vụ đánh bom thư
Nguồn tiêu thụ máy chủ
Mục tiêu của một cuộc tấn công DoS là để ngăn chặn máy chủ hoặc các mạng giaotiếp trên mạng Một ví dụ của kiểu tấn công này là tấn công SYN lũ:
Khi một khách hàng cố gắng để liên lạc với một dịch vụ máy chủ, máy khách và máy chủ trao đổi một loạt các tin nhắn Khách hàng bắt đầu bằng cách gửi một yêu cầu kết nối TCP hoặc nhắn tin SYN đến máy chủ Máy chủ đáp ứng các tin nhắn SYN với một thông báo xác nhận ACK-SYN Khách hàng sau đó thừa nhận tin nhắncủa máy chủ SYN ACK với một thông báo ACK Sau khi các hành động diễn ra, kếtnối giữa máy khách và máy chủ được mở và họ có thể trao đổi dữ liệu dịch vụ cụ thể
Vấn đề phát sinh khi máy chủ đã gửi tin nhắn SYN-ACK lại cho khách hàng nhưng chưa nhận được một phản ứng ACK từ khách hàng Đây là một kết nối half-open Các máy chủ giữ kết nối bị hoãn trong bộ nhớ, chờ đợi một phản ứng từ khách
Trang 16hàng Các kết nối half-open trong bộ nhớ sẽ cuối cùng thời gian trên máy chủ, giải phóng tài nguyên có giá trị một lần nữa.
Tạo các kết nối half-open được thực hiện với giả mạo IP Hệ thống của kẻ tấn cônggửi một tin nhắn SYN đến máy chủ của nạn nhân Các thông điệp này dường như là hợp pháp, nhưng trong thực tế là tài liệu tham khảo cho một hệ thống khách hàng là không thể trả lời tin nhắn SYN-ACK của máy chủ Điều này có nghĩa là các máy chủ sẽ không bao giờ có thể gửi một tin nhắn ACK cho máy tính của khách
hàng Máy chủ hiện nay có một nửa-mở các kết nối trong bộ nhớ và cuối cùng sẽ điền vào các kết nối máy chủ Các máy chủ hiện nay là không thể chấp nhận bất kỳ kết nối mới Giới hạn thời gian kết nối half-open sẽ hết hạn Tuy nhiên, hệ thống của
kẻ tấn công vẫn tiếp tục gửi giả mạo gói tin IP nhanh hơn so với các giới hạn hết hiệu lực trên máy chủ của nạn nhân Trong hầu hết trường hợp, các nạn nhân của cuộc tấn công như vậy sẽ gặp khó khăn chấp nhận bất kỳ mới, kết nối hợp pháp đến
Kiểu tấn công này không thực sự ảnh hưởng đến bất kỳ của các kết nối hiện hành hoặc kết nối ra ngoài Bình thường, nó tiêu thụ một số lượng lớn bộ nhớ và sức mạnh xử lý trên máy chủ, làm cho nó sụp đổ Các vị trí của hệ thống tấn công là khó khăn để theo dõi bởi vì địa chỉ hệ thống của kẻ tấn công giả mạo như là một địa chỉ
IP hợp pháp Kể từ khi các mạng chuyển tiếp các gói tin dựa trên địa chỉ đích, cách duy nhất để xác nhận nguồn gốc của một gói tin sử dụng nguồn đầu vào lọc
Kiểu tấn công này không phụ thuộc vào những kẻ tấn công có thể tiêu tốn băng thông mạng Trong trường hợp này, kẻ xâm nhập là tiêu thụ tài nguyên máy chủ có giá trị Điều này có nghĩa rằng một kẻ xâm nhập có thể thực hiện cuộc tấn công này
từ một kết nối dial-up so với một máy tính trên một mạng lưới rất nhanh
Bão hòa mạng Tài nguyên
Một kẻ xâm nhập cũng có thể có thể tiêu thụ tất cả băng thông có sẵn trên mạng bằng cách tạo ra một số lượng lớn các gói tin trực tiếp vào mạng Thông thường, cácgói tin Internet Control Message Protocol (ICMP) các gói tin tiếng vang, nhưng về nguyên tắc họ có thể là bất cứ điều gì Hơn nữa, những kẻ xâm nhập không cần phải được hoạt động từ một máy tính duy nhất, người đó có thể có thể phối hợp hoặc lựa chọn cùng một số máy tính trên mạng khác nhau để đạt được hiệu quả tương
tự Điều này được biết đến như một cuộc tấn công từ chối dịch vụ phân tán (DDoS)
Trang 17ICMP được sử dụng để truyền tải thông tin trạng thái và thông báo lỗi bao gồm tắcnghẽn mạng và các vấn đề khác liên quan đến mạng ICMP có thể được sử dụng để xác định nếu một máy tính trên Internet được đáp ứng Để làm điều này, một tiếng vang ICMP gói tin yêu cầu được gửi đến một máy tính trên mạng Nếu máy tính đang hoạt động, nó sẽ đáp ứng yêu cầu bằng cách gửi một gói tin trả lời ICMP echo Một ví dụ phổ biến của việc này là các lệnh PING.
Trên các mạng TCP / IP, một gói tin có thể được gửi đến một máy tính cá nhân, phát sóng tất cả các máy tính trên mạng Khi một gói tin IP được gửi đến một địa chỉ
IP phát sóng từ một máy tính trên mạng cùng một khu vực địa phương, tất cả các máy tính trên mạng mà nhận được các gói tin IP Khi một máy tính bên ngoài mạng cục bộ sẽ gửi một gói tin truyền hình IP, tất cả các máy tính trên mạng mục tiêu nhận được các gói tin phát sóng (miễn là các bộ định tuyến đã được cấu hình để chuyển tiếp các gói tin broadcast)
Ba bên tham gia vào các cuộc tấn công: kẻ tấn công, trung gian, và nạn nhân Các trung gian cũng có thể là một nạn nhân Trung gian nhận được một gói tin ICMP echo request được hướng dẫn đến địa chỉ mạng IP phát sóng Nếu không có gì được lọc ICMP echo yêu cầu này, tất cả các máy tính trên mạng sẽ nhận được các gói tin ICMP echo request và trả lời với một gói tin trả lời ICMP echo Khi tất cả các máy tính đáp ứng với các gói tin, tắc nghẽn mạng nghiêm trọng hoặc mất là có thể
Khi những kẻ tấn công tạo ra các gói tin này, họ không sử dụng nguồn địa chỉ IP của họ Thay vào đó, họ sử dụng địa chỉ nguồn của nạn nhân dự định của họ Điều này được gọi là giả mạo IP Kết quả là khi các máy tính trung gian cho các gói tin yêu cầu ICMP echo, họ gửi các gói tin trả lời địa chỉ IP của nạn nhân Máy tính của nạn nhân bị tắc nghẽn mạng có thể gây ra các mạng không phản ứng
Những kẻ tấn công đã phát triển một loạt các công cụ cho mục đích này Các công
cụ cho phép các tin tặc để gửi gói tin yêu cầu ICMP echo để nhiều máy tính trung gian, làm tất cả trong số họ để đáp ứng với địa chỉ IP của nạn nhân cùng một
nguồn Những công cụ này cũng có thể được sử dụng để quét cho các bộ định tuyến mạng không lọc lưu lượng phát sóng
DDoS tấn công liên quan đến việc đột nhập vào hàng trăm hoặc hàng ngàn máy tính qua mạng Internet Sau đó, kẻ tấn công cài đặt phần mềm DDoS trên chúng, chophép kẻ tấn công để kiểm soát tất cả các máy tính và khởi động các cuộc tấn công
Trang 18công suất chế biến router, hoặc các nguồn lực ngăn xếp mạng, phá vỡ kết nối mạng cho các nạn nhân.
Thủ phạm bắt đầu bằng cách đột nhập vào máy tính một cách yếu ớt bảo đảm, sử dụng nổi tiếng khuyết tật trong các chương trình mạng lưới dịch vụ tiêu chuẩn, và cấu hình yếu phổ biến trong các hệ thống điều hành Sau đó, họ thực hiện một số bước bổ sung trên mỗi hệ thống Đầu tiên, họ cài đặt phần mềm để che giấu break-in
và để ẩn các dấu vết của hoạt động tiếp theo của họ Ví dụ, họ thay thế các lệnh tiêu chuẩn để hiển thị các tiến trình đang chạy với các phiên bản không hiển thị quá trình của kẻ tấn công
Sau đó, họ cài đặt một quá trình đặc biệt được sử dụng để điều khiển từ xa máy tính trộm đột nhập Quá trình này chấp nhận lệnh từ trên Internet, cho phép kẻ xâm nhập khởi động một cuộc tấn công qua Internet đối với một số trang web nạn nhân được chỉ định Cuối cùng, họ thực hiện một lưu ý của địa chỉ IP của máy tính mà họ
đã thực hiện trên
Tất cả các bước này được đánh giá cao tự động Một kẻ xâm nhập thận trọng sẽ bắt đầu bằng cách phá vỡ vào chỉ một vài trang web, sau đó sử dụng chúng để đột nhập vào một số chi tiết, và lặp đi lặp lại chu kỳ này cho một vài bước Bởi thời gian họ
đã sẵn sàng để gắn kết các cuộc tấn công, họ đã thực hiện trên hàng ngàn máy tính
và lắp ráp chúng thành một mạng lưới DDoS Một khi các kẻ tấn công đã cài đặt phần mềm DDoS, kẻ tấn công chạy một lệnh đơn gửi các gói lệnh để tất cả các máy tính bị bắt, hướng dẫn họ để khởi động một cuộc tấn công từ một trình đơn các loại giống khác nhau của lũ lụt tấn công chống lại một nạn nhân cụ thể Khi kẻ tấn công quyết định để ngăn chặn các cuộc tấn công, họ sẽ gửi một lệnh duy nhất
Các máy tính kiểm soát được sử dụng để gắn kết các cuộc tấn công gửi một dòng suối của các gói tin Đối với hầu hết các cuộc tấn công, các gói tin này được hướng vào máy tính nạn nhân Đối với một biến thể (được gọi là "Smurf," sau khi chương trình lưu thông đầu tiên để thực hiện cuộc tấn công này), các gói tin được nhằm vào các mạng khác, nơi họ gây tiếng vang nhiều tất cả nhằm vào nạn nhân như được mô
tả trước đó
Các gói dữ liệu được sử dụng trong các cuộc tấn công DDoS sử dụng giả mạo địa chỉ nguồn hoặc địa chỉ IP giả mạo Nếu một gói tin đến router đầu tiên, và địa chỉ IP nguồn không phù hợp với mạng IP, nó đến từ các bộ định tuyến cần loại bỏ các gói Phong cách kiểm tra gói tin này được gọi là thâm nhập vào hoặc đi ra lọc, tùy
Trang 19thuộc vào quan điểm, đó là đi ra từ mạng lưới khách hàng, hoặc xâm nhập vào trái tim của Internet.
Các dấu hiệu đầu tiên của một cuộc tấn công có thể là khi hàng ngàn hệ thống bị xâm nhập trên toàn thế giới bắt đầu tràn ngập mạng của nạn nhân với lưu lượng truy cập tất cả cùng một lúc Triệu chứng đầu tiên là có khả năng là một vụ tai nạn router,hoặc một cái gì đó trông rất giống như một lưu lượng truy cập chỉ đơn giản là ngừng chảy giữa nạn nhân và Internet
Mail vụ đánh bom là một cuộc tấn công e-mail dựa trên E-mail lũ lụt hệ thống tấncông cho đến khi nó không thành công Một hệ thống sẽ thất bại theo những cách khác nhau, tùy thuộc vào loại máy chủ và nó được cấu hình như thế nào Một số nhà cung cấp dịch vụ Internet cung cấp cho tài khoản tạm thời cho bất cứ ai là người ký cho một thuê bao thử nghiệm, và những tài khoản có thể được sử dụng để khởi động các cuộc tấn công e-mail
Dưới đây là chế độ thất bại điển hình:
Các máy chủ e-mail chấp nhận các tin nhắn e-mail cho đến khi đĩa e-mail được lưu trữ đầy lên Sau đó e-mail không được chấp nhận Nếu đĩa e-mail cũng là đĩa hệ thống chính, nó có thể sụp đổ hệ thống
Hàng đợi đến được lấp đầy với những thông điệp được chuyển tiếp cho đến khi hàng đợi đạt đến giới hạn của nó Tin nhắn sau đó không có thể được xếp hàng đợi
Hạn ngạch đĩa máy chủ của một người dùng cụ thể có thể được vượt
quá Điều này ngăn cản thư tiếp theo được nhận được và có thể giữ cho người
sử dụng nhận được từ công việc thực hiện Phục hồi có thể là khó khăn bởi vì người dùng có thể cần phải sử dụng không gian đĩa hơn chỉ để xóa các e-mail
Lịch sử
Tất cả các quản trị viên đã nghe nói về virus và các hiệu ứng của họ Virus có thể rất tai hại, gây mất thông tin Fred Cohen chính thức định nghĩa thuật ngữ "virus
Trang 20máy tính" vào năm 1983 khi ông thực hiện các thí nghiệm học tập trên một hệ thống VAX Tổng công ty Thiết bị kỹ thuật số.
Virus được phân loại như là một trong hai loại: "tự nhiên" nghiên cứu hoặc Một virus nghiên cứu là một trong những đã được viết cho mục đích nghiên cứu hoặc nghiên cứu và đã nhận được hầu như không có phân phối cho công chúng Virus đã được nhìn thấy đều đặn được gọi là "trong tự nhiên."
Các virus máy tính đầu tiên được phát triển vào đầu những năm 1980 Các virus đầu tiên được tìm thấy trong tự nhiên là Apple II virus như Elk Cloner, được báo cáotrong năm 1981 Virus đã được tìm thấy trên các nền tảng sau đây: Apple II, IBM
PC, Macintosh, Atari, và Amiga
Khi máy tính cá nhân đầu tiên trên thị trường, hệ điều hành như Microsoft DOS dành cho một người dùng duy nhất là kiểm soát toàn bộ máy tính Không có cơchế bảo mật cho người sử dụng riêng biệt, tách người dùng từ hệ thống, hoặc dừng lại sửa đổi cố ý của hệ thống hoặc các tập tin người dùng
Với những cách máy tính đã được sử dụng, các cơ chế này không cần thiết Tuy nhiên, sự lây lan của máy tính đã mở đầu một ngành công nghiệp mới phát triển xung quanh họ.Điều này bao gồm sự xuất hiện của:
Sản phẩm phần mềm thương mại như bảng tính và xử lý văn bản
Trò chơi máy tính
Chia sẻ sử dụng máy tính, cho dù đó là một số nhân viên sử dụng cùng một máy tính hoặc các tổ chức lớn kết nối các máy tính trên mạng LAN
Lưu ý rằng tất cả các virus tìm thấy trong các máy tính mục tiêu cá nhân hoang
dã Tính đến hôm nay, số lượng áp đảo của các chủng virus là virus máy tính IBM
Virus đã phát triển trong những năm qua do những nỗ lực của các tác giả của họ đểlàm cho mã khó khăn hơn để phát hiện, tháo rời, và diệt trừ Quá trình tiến hóa đã được đặc biệt rõ ràng trong các virus máy tính IBM Một cuộc kiểm tra của gia đình máy tính IBM của virus cho thấy virus phổ biến nhất được phát hiện khác nhau theo lục địa, nhưng "ném đá", "Brain", "Cascade", và các thành viên của gia đình "Giê-ru-sa-lem" đã lan truyền rộng rãi và tiếp tục xuất hiện Điều này ngụ ý rằng vi rút cao Survivable thường là lành tính, tái tạo nhiều lần trước khi kích hoạt, hoặc là một
Trang 21sáng tạo, sử dụng một số kỹ thuật không bao giờ được sử dụng trước đây trong một virus.
Virus máy tính cá nhân khai thác thiếu kiểm soát truy cập hiệu quả trong các hệ thống này Các loại siêu vi sửa đổi các tập tin và thậm chí cả hệ thống điều hành riêng của mình.Đây là những hành động pháp lý trong bối cảnh của hệ điều
hành Trong khi kiểm soát chặt chẽ hơn trong xử lý đa nhiệm, đa người dùng hệ thống điều hành, lỗi cấu hình và các lỗ hổng bảo mật (các lỗi bảo mật) làm cho virustrên các hệ thống này nhiều hơn lý thuyết có thể
Với sự ra đời của máy tính cá nhân, phần mềm được trao đổi trên đĩa mềm, phần mềm để sử dụng chuyên nghiệp và tư nhân chạy trên cùng một máy tính, và các công ty chuyển thông tin vào các máy tính không còn được điều khiển bởi một bộ phận trung tâm CNTT, nhưng người dùng cá nhân Việc thiếu các cơ chế an ninh và nâng cao nhận thức bảo mật trên các hệ thống này bắt đầu để làm cho bản thân cảm thấy
Các nhà nghiên cứu Virus đã nỗ lực đáng kể vào chương trình phát triển để mô tả, đặt tên và phân loại virus máy tính và xác định các tính năng đặc biệt mà phân biệt virus máy tính từ phần mềm độc hại khác
Virus làm việc
Một virus máy tính là một phần của mã tự sao chép một số phần khác của mã Mã này có thể là vô hại, ví dụ, nó có thể hiển thị một tin nhắn hoặc chơi một giai
điệu Hoặc nó có thể có hại và tiến hành xóa và sửa đổi các tập tin
Các mã virus tìm kiếm các file của người sử dụng cho một chương trình thực thi không bị nhiễm bệnh mà người sử dụng có an ninh viết đặc quyền Vi rút này lây nhiễm các tập tin bằng cách đặt một đoạn mã trong file chương trình lựa chọn Khi được thực thi một chương trình bị nhiễm virus, virus ngay lập tức có lệnh, việc tìm kiếm và lây nhiễm các chương trình và các tập tin khác
Một số virus là virus "cư dân bộ nhớ" Khi người dùng thực hiện một tập tin thực thi mà bị nhiễm loại virus này, virus tải chính nó vào bộ nhớ và vẫn còn ở đó ngay
cả khi chương trình ban đầu được đóng cửa Chương trình tiếp theo được thực hiện
bị nhiễm virus cho đến khi máy tính tắt hoặc tắt Một số virus có một giai đoạn "ngủ
Trang 22đông" và sẽ chỉ xuất hiện vào những thời điểm nhất định hoặc khi một số hành động được thực hiện.
Một biến thể là một loại virus được tạo ra bằng cách sửa đổi một loại virus được
biết đến Ví dụ được sửa đổi thêm các chức năng hoặc tránh bị phát hiện Thuật ngữ
"biến thể" thường được áp dụng chỉ khi sửa đổi là nhỏ Một ví dụ sẽ được thay đổi ngày kích hoạt từ ngày 13 thứ Sáu đến thứ năm 12
Một ghi đè virus sẽ phá hủy mã hoặc dữ liệu trong các chương trình máy chủ bằng
cách thay thế nó với các mã virus Cần lưu ý rằng hầu hết các virus cố gắng để giữ lại mã chương trình máy chủ gốc và chức năng sau khi bị nhiễm trùng bởi vì vi rút
có nhiều khả năng được phát hiện và xóa nếu chương trình không còn làm
việc Không ghi đè lên vi rút được thiết kế để nối thêm các mã virus vào cuối vật lý
của chương trình hoặc để di chuyển các mã ban đầu tới một vị trí khác
Tự thủ tục công nhận là một kỹ thuật mà trong đó xác định có hay không thực thi
đã bị nhiễm virus Thủ thuật này thường liên quan đến việc tìm kiếm một giá trị đặc biệt tại một vị trí được biết đến trong thực thi Tự công nhận là cần thiết nếu vi-rút là
để tránh bội nhiễm của một thực thi duy nhất Bội nhiễm gây ra sự tăng trưởng quá mức trong kích thước của file thực thi bị nhiễm bệnh và không gian lưu trữ tương ứng quá mức, góp phần vào việc phát hiện virus
Một cư dân vi rút cài đặt chính nó như là một phần của hệ thống hoạt động khi
thực hiện một chương trình máy chủ bị nhiễm bệnh Virus sẽ vẫn cư trú cho đến khi
hệ thống được tắt Sau khi cài đặt trong bộ nhớ, một loại virus cư trú hiện có sẵn để lây nhiễm tất cả các máy chủ phù hợp được truy cập
Tàng hình virus là một loại virus cư trú cố gắng để tránh bị phát hiện bằng cách
che giấu sự hiện diện của nó trong các tập tin bị nhiễm Để đạt được điều này, hệ thống virus chặn cuộc gọi mà kiểm tra các nội dung hoặc các thuộc tính của tập tin
bị nhiễm Kết quả của các cuộc gọi phải được thay đổi để tương ứng với trạng thái ban đầu của tập tin Ví dụ, một loại virus ẩn có thể loại bỏ các mã virus từ một thực thi khi nó được đọc (chứ không phải hơn so với thực hiện) để một gói phần mềm chống virus sẽ kiểm tra, chương trình máy chủ gốc, không bị nhiễm bệnh
Một mã hóa vi-rút có hai phần: một decryptor nhỏ và virus cơ thể được mã
hóa Khi virus được thực thi, các decryptor sẽ thực hiện đầu tiên và giải mã cơ thể virus Sau đó, cơ thể virus có thể thực hiện, nhân rộng, trở thành cư dân Cơ thể virus
Trang 23sẽ bao gồm một Encryptor để áp dụng trong quá trình sao chép Một variably mã
hóa vi-rút sẽ sử dụng các phím mã hóa khác nhau hoặc các thuật toán mã hóa Virus
mã hóa có nhiều khó khăn để tháo rời và nghiên cứu kể từ khi nhà nghiên cứu phải giải mã các mã
Một đa hình vi rút tạo ra bản sao trong quá trình sao chép chức năng tương đương
nhưng có dòng byte khác biệt rõ rệt Để đạt được điều này, virus có thể ngẫu nhiên chèn thừa hướng dẫn, trao đổi thứ tự của các hướng dẫn độc lập, hoặc chọn từ một
số chương trình mã hóa khác nhau Chất lượng biến đổi này làm cho virus khó khăn
để xác định vị trí, xác định, hoặc loại bỏ
Một reaserch virus là một trong những đã được viết, nhưng chưa bao giờ được
tung ra công chúng Chúng bao gồm các mẫu đã được gửi đến các nhà nghiên cứu của các nhà văn virus Virus đã được nhìn thấy bên ngoài các cộng đồng nghiên cứu được gọi là "trong tự nhiên."
Các virus máy tính lây lan?
Sau đây là những đặc tính cần thiết của một virus:
Nó có thể tái tạo
Nó đòi hỏi một chương trình máy chủ như là một tàu sân bay
Nó được kích hoạt bởi hành động bên ngoài
Khả năng nhân bản của nó được giới hạn trong hệ thống (ảo)
Virus máy tính di chuyển từ máy tính đến máy tính bằng cách gắn mình với các tập tin hoặc hồ sơ khởi động của ổ đĩa và đĩa mềm Những ngày này, nó không phải
là phổ biến để tìm thấy chúng trong file đính kèm e-mail và các chương trình khác
có thể được tải về từ Internet
Một vi rút là một đại lý tương đối thụ động dựa vào người dùng bình thường để kích hoạt và tuyên truyền của nó Nó có thể đi du lịch từ một tập tin khác trên cùng một máy tính nếu các tập tin bị nhiễm được thực hiện, từ bộ nhớ máy tính vào một tập tin trên đĩa, trên đĩa được thực hiện từ một máy tính khác (một số công ty cấm ổ đĩa mềm, do đó ngăn cản người dùng sao chép thông tin vào máy tính của họ), các tập tin thực thi tập tin đính kèm e-mail, và qua kết nối modem hoặc mạng
Thiệt hại có virus
Trang 24Virus có thể phá hủy bảng phân bổ tập tin (FAT) và dẫn đến tham nhũng của toàn
bộ một hệ thống tập tin, dẫn đến sự cần thiết phải cài đặt lại đầy đủ và nạp lại hệ thống Virus cũng có thể tạo ra các thành phần xấu trên đĩa, phá hủy các bộ phận củachương trình và các tập tin Họ có thể làm giảm không gian trên đĩa cứng bằng cách sao chép các tập tin Họ cũng có thể định dạng các bài hát cụ thể trên các đĩa hoặc định dạng toàn bộ đĩa
Virus có thể phá hủy các file thực thi cụ thể và thay đổi dữ liệu trong các tập tin dữliệu, gây ra một sự mất mát của toàn vẹn dữ liệu Virus có thể gây ra hệ thống treo
để nó không đáp ứng với bất kỳ bàn phím hoặc di chuyển chuột
Bối cảnh
"Ngựa Trojan" hạn đến từ một huyền thoại trong đó người Hy Lạp đã đưa ra một con ngựa khổng lồ bằng gỗ để kẻ thù của họ, các Trojans, dường như là một lời đề nghị hòa bình Sau khi Trojans kéo ngựa vào các bức tường thành phố Troy, lính Hy Lạp, lẻn ra khỏi bụng rỗng của con ngựa và mở cửa thành phố, cho phép đồng bào của họ để đổ và nắm bắt Troy
Trojan là gì?
Một con ngựa Trojan là mã ẩn trong một chương trình như một trò chơi hoặc bảng tính mà có vẻ an toàn để chạy nhưng có tác dụng phụ tiềm ẩn Khi chương trình được chạy, có vẻ như chức năng như người dùng mong đợi, nhưng trong thực tế nó đang hủy hoại, làm hư hỏng, hoặc thay đổi thông tin trong nền Nó là một chương trình riêng của mình và không đòi hỏi một chương trình máy chủ để nhúng nó Một
ví dụ về một con ngựa Trojan sẽ là một file thực thi, khi thực hiện, bật lên với một nhân vật hoạt hình của ông già Noel và chú thích một câu nói: "Merry
Christmas" Trong nền, thêm mã có thể được xóa các tập tin hoặc thực hiện hành động độc hại khác
Làm thế nào Trojan đang lây lan
Con ngựa Trojan thường được lây lan qua e-mail và trao đổi các ổ đĩa và thông tin giữa các máy tính Worms cũng có thể lây lan ngựa Trojan
Trang 25Thiệt hại gây ra bởi các Trojan Horses
Thiệt hại mà con ngựa Trojan gây ra cũng tương tự như những gì một vi-rút gây
ra Hầu hết thời gian người dùng không nhận thức được những thiệt hại gây ra do hiệu ứng mặt nạ ngựa Trojan
Bối cảnh
Worms đầu tiên được sử dụng như một cơ chế hợp pháp để thực hiện nhiệm vụ trong một môi trường phân phối Sâu mạng được xem là hứa hẹn cho việc thực hiện nhiệm vụ quản lý mạng trong một loạt các thí nghiệm tại Trung tâm nghiên cứu Xerox Palo Alto vào năm 1982 Vấn đề quan trọng lưu ý là sâu quản lý, kiểm soát sốlượng bản sao thực hiện tại một thời gian duy nhất
Worms lần đầu tiên được nhận thấy như là một mối đe dọa bảo mật tiềm năng máytính khi Christmas Tree Exec tấn công máy tính lớn của IBM trong tháng 12 năm
1987 Nó mang cả hai mạng trên toàn thế giới IBM và BITNET The Christmas TreeExec không phải là một con sâu thực sự Đó là một con ngựa Trojan với một cơ chế sao chép Một người sử dụng sẽ nhận được một thiệp Giáng sinh bằng e-mail bao gồm thực thi (REXX) mã Nếu thực hiện, chương trình tuyên bố rút ra một cây thông Noel trên màn hình Điều đó là đúng, nhưng nó cũng đã gửi một bản sao cho tất cả mọi người trên danh sách địa chỉ của người sử dụng
Worm Internet là một con sâu thực sự Nó được phát hành vào ngày 2 Tháng MườiMột 1988 Nó tấn công các hệ thống UNIX Sun và DEC gắn liền với Internet (bao gồm hai bộ của những chương trình, một cho mỗi hệ thống) Nó sử dụng các giao thức TCP / IP và các lỗ hổng trong sendmail, các giao thức lớp ứng dụng phổ biến, lỗi hệ thống điều hành, và một loạt lỗ hổng quản lý hệ thống thông tin, tuyên
truyền Các vấn đề khác nhau với quản lý sâu dẫn đến hiệu suất hệ thống cực kỳ nghèo và từ chối một dịch vụ mạng Nó khai thác lỗ hổng hệ điều hành và các vấn
đề hệ thống quản lý thông thường
Worms là gì?
Trang 26Sau đây là những đặc tính cần thiết của một con sâu:
Nó có thể tái tạo
Nó là khép kín và không yêu cầu một máy chủ
Nó được kích hoạt bằng cách tạo ra quá trình (nó cần một hệ thống đa nhiệm)
Nếu nó là một con sâu mạng, nó có thể nhân rộng trên toàn liên kết truyền thông
Một con sâu là một chương trình được thiết kế để tái tạo Chương trình có thể thực hiện bất kỳ loạt các nhiệm vụ bổ sung là tốt Những con sâu mạng đầu tiên được dự định để thực hiện chức năng quản lý mạng hữu ích Họ đã lợi dụng tính chất hệ thống để thực hiện các hành động hữu ích Tuy nhiên, một con sâu độc hại lợi dụng các thuộc tính cùng một hệ thống Các trang thiết bị cho phép chương trình đó để tái tạo không phải lúc nào cũng phân biệt đối xử giữa các mã độc hại và tốt Sâu khai thác lỗ hổng (có nghĩa là, lỗi) trong hệ điều hành hoặc quản lý hệ thống không đủ để tái tạo Phát hành của một con sâu thường kết quả trong dịch ngắn gọn, tắt toàn bộ các mạng
Worms là chương trình chạy độc lập và đi từ máy tính đến máy tính qua kết nối mạng Worms có thể có phần của mình chạy trên nhiều máy tính khác nhau Worms không thay đổi chương trình khác, mặc dù họ có thể mang mã nào khác có được
Làm thế nào Worms ảnh hưởng đến hệ thống mạng
Phát triển một con sâu đòi hỏi một môi trường mạng và một tác giả quen thuộc không chỉ với các dịch vụ mạng và cơ sở vật chất, nhưng cũng với các cơ sở điều hành cần thiết để hỗ trợ họ một khi họ đã đạt đến máy tính Bảo vệ chống lại các chương trình sâu như bảo vệ chống lại break-ins Nếu một kẻ xâm nhập có thể nhập vào máy tính của bạn, vì vậy có thể một chương trình con sâu Nếu máy tính là an toàn với những truy cập trái phép, cần được an toàn từ một chương trình con sâu
Khả năng lay lan của Worm
Worms là tác nhân tự trị có khả năng tuyên truyền mà không cần sử dụng một chương trình khác hoặc hành động can thiệp hoặc bởi một người dùng Worms được tìm thấy chủ yếu trên các máy tính có khả năng đa nhiệm và được kết nối bởi một mạng lưới
Trang 27Thiệt hại do Worms
Hầu hết các sâu gián đoạn dịch vụ và tạo ra các vấn đề quản lý hệ thống Một số sâu quét cho mật khẩu và các lỗ hổng khác và sau đó gửi các thông tin về kẻ tấn công Trong một số trường hợp sâu có thể cài đặt ngựa Trojan hoặc virus gây ra thiệthại cho các hệ thống
Macro virus
Một virus macro là một vi-rút tự gắn nó với một bảng tính bảng tính, hoặc được lập trình vào bảng tính Nó cũng có thể được lập trình thành các sản phẩm khác như tài liệu Word và Microsoft PowerPoint và vv
Macro virus được viết bằng ngôn ngữ cấp cao như Visual Basic cho các ứng dụng được sử dụng bởi các sản phẩm Microsoft Office, Lotus kịch bản, WordPerfect macro, và như vậy Macro virus bỏ qua các cơ chế bảo vệ toàn vẹn cho thực thi bình thường bởi vì virus vĩ mô được nhúng trong tập tin dữ liệu Tài liệu được trao đổi bằng thư điện tử và do đó là một phương tiện tốt cho phát tán một loại virus Người dùng mở một tập tin có thể thậm chí không nhận thức được thực tế là họ đang chạy một chương trình Tất cả các hướng dẫn có sẵn để viết các macro cũng có những người viết virus có thể ẩn các mã virus trong một tập tin vĩ mô
Một ví dụ của một virus macro là macro virus Melissa Virus Melissa vĩ mô đã được lây lan qua e-mail Virus này được lập trình vào một tài liệu Word Khi tài liệu
đã được mở ra, virus macro sẽ gửi một bản sao của nó đến 50 địa chỉ e-mail từ danh sách địa chỉ toàn cầu Điều này gây ra hệ thống e-mail lớn để sụp đổ trên toàn thế giới và cũng có thể bão hòa băng thông mạng
Cơ chế mã hóa
Cơ chế chữ ký số
Cơ chế kiểm soát truy cập
Cơ chế toàn vẹn dữ liệu
Cơ chế trao đổi chứng thực
Cơ chế đệm
Cơ chế định tuyến kiểm soát
Cơ chế công chứng
Trang 28Phần sau của chương này mô tả hầu hết các cơ chế bảo mật cụ thể và giải thích một
số kỹ thuật mật mã được sử dụng thường xuyên.Cơ chế kiểm soát định tuyến không được mô tả chi tiết kể từ khi họ sử dụng một sự kết hợp xác thực và cơ chế kiểm soáttruy cập cũng như một số cơ chế khác
Phần này sẽ giới thiệu các cơ chế bảo mật có thể được sử dụng để thực hiện các dịch
vụ bảo mật thông tin Các hệ thống mật mã phù hợp cho việc thực thi sẽ được liệt kê giới thiệu, sau đó hệ thống mật mã được sử dụng rông rãi nhất được mô tả chi tiết
Trang 29CHƯƠNG 2 : CƠ CHẾ BẢO MẬT
2.1 Các cơ chế toàn vẹn dữ liệu (Đinh Văn Tùng)
Một cách để bảo vệ tính toàn vẹn dữ liệu là sử dụng một cơ chế mã hóa(ví dụ DES trong chế độ CBC) Trong cách này, cả tính toàn vẹn dữ liệu và tính bí mật dữ liệu được đảm bảo Nhưng chỉ riêng mã hóa thôi thì không đạt độ bảo mật để chống lại các kiểu tấn công bit flipping( đổi bit) Nếu tính xác thực không có, kẻ tấn công
có thể đổi các bit trong khối ciphertext(ví dụ, đổi bit “0” thành bit “1” hoặc ngược lại) mà không bị phát hiện Nếu một khối plaintext dùng để mã hóa không phải là một bản tin ở dạng thông thường mà con người có thể đọc, mà là một xâu ký tự được
xử lý tự động bởi một chương trình, thì kết quả của việc giải mã của khối ciphertext
bị thay đổi bên trên có thể được hiểu theo một hướng nào đó là để gây ra sự phá hại nguy hiểm đối với chương trình hoặc máy nhận Cách thức bảo vệ là thêm một vài thông tin xác thực đối với plaintext trước khi mã hóa hoặc là, nếu chỉ quan tâm đến tính toàn vẹn thì gửi bản tin gốc cùng với ciphertext
Cách còn lại để đảm bảo tính toàn vẹn là sử dụng cơ chế chữ ký số Các chữ
ký số cung cấp không chỉ tính toàn vẹn dữ liệu mà còn cả tính chống chối bỏ Nếu chỉ có tính toàn vẹn dữ liệu được yêu cầu mà không cần tính bí mật hoặc tính chống chối bỏ, thì chỉ cần áp dụng một mã xác thực bản tin(MAC) dựa trên một hàm hash bảo mật đối với dữ liệu cần được bảo vệ Thông thường, các hàm hash bảo mật rất nhanh, nhanh hơn nhiều các cơ chế mã hóa
Nếu một hàm hash bảo mật với đầu vào là một giá trị có độ dài bất kỳ(khônglớn hơn độ dài lớn nhất, với SHA-1 là 264), giá trị kết quả đầu ra sẽ luôn có độ dài cốđịnh(ví dụ, 160 bit đối với SHA-1) Đầu ra với độ dài cố định này được gọi là
message digest hoặc checksum, hoặc hashsum Bởi vì tập tất cả các giá trị có thể của
đầu vào lớn hơn nhiều so với tập tất cả giá trị có thể của đầu ra, mà tất nhiên bất kỳmột giá trị đầu vào nào sẽ có tương ứng một giá trị đâu ra, cho nên nhiều giá trị đầuvào khác nhau sẽ được ánh xạ đến cùng một giá trị đầu ra Tuy nhiên, người ta cốgắng tạo ra hàm hash sao cho việc tìm các giá trị đầu vào khác nhau mà được ánh xạđến cùng một đâu ra có chi phí cao về mặt tính toán Tức là, hàm hash phải thỏa
mãn yêu cầu tính toán theo một chiều nào đó(ví dụ, h:input→output) là dễ dàng,
nhưng theo chiều ngược lại thì rất khó Vì điều này, các hàm hash bảo mật thường
Trang 30được mô tả như là các hàm một chiều(one-way) Ở dạng biểu diễn toán, hàm hashbảo mật y=h(x) có các tính chất sau:
Với "y, h: x→y
"(x) " (x’), h(x) ≠ h(x’)
"(x, x’), h(x) ≠ h(x’)
x, x’ là bản tin đầu vào, x ≠ x’
y là mã hash đầu ra
h-1 là hàm ngược của hàm h
Các loại tấn công đối với hàm hash
Thông thường có 2 loại tấn công nguy hiểm đối với các hàm hash bảo mật.Loại đầu tiên có cách tấn công là tìm ra một bản tin M’ mà nội dung của bản tin đó
có hashsum giống như bản tin gốc M Yêu cầu (b) chính là để chống lại kiểu tấncông này Kiểu tấn công như vậy có thể rất nguy hiểm đối với trường hợp một chữ
ký số được sinh ra từ một checksum mà không phải là bản tin M của nó Trường hợpnày thường được sử dụng trong thực tế vì tính tiện lợi, bởi việc sinh một chữ ký số làmột nhiệm vụ tiêu tốn thời gian và tài nguyên hệ thống Ví dụ, giả sử A soạn thảomột bản tin M và ký tên nên hashsum h(M), nội dung bản tin là yêu cầu ngân hàngchuyển 100 euro đến tài khoản của B Nếu điều kiện (b) không được thỏa mãn, B cóthể dễ dàng tìm được một bản tin M’ khác M để h(M)=h(M’), trong đó 100 euro bịđổi thành 10000 euro và như vậy, ngân hàng sẽ không phát hiện ra và chuyển cho B
1000 euro Để hình dung dễ hơn, ta mô tả qua một ví đụ thứ hai Có khoảng 5 tỉngười trên hành tinh của chúng ta, và chỉ có 365 ngày sinh khác nhau Loại tấn côngđầu tiên diễn ra như sau: Đưa ra một người A bất kỳ, chúng ta chọn một cách ngẫunhiên một người và hỏi về ngày sinh của họ, sau đó tính xác xuất số người có cùngngày sinh với A theo số người đã được hỏi, chúng ta tiếp tục hỏi cho đến khi xácxuất tính ở trên lớn hơn 50% Số người đã được hỏi là bao nhiêu? Câu trả lời là 183.Loại tấn công thứ 2(tấn công ngày sinh) cần một nhóm những người được chọn ngẫunhiên với số người nhỏ nhất, thỏa mãn xác xuất của ít nhất hai người trong nhóm cócùng ngày sinh là cao hơn 50% Nhóm này chỉ cần 23 người Nếu điều kiện (a) đượcthỏa mãn, loại tấn công này sẽ tiêu tốn lượng thời gian cực nhiều thậm chí đối vớihashsum ngắn
Loại tấn công thứ hai nguy hiểm hơn nhiều Trường hợp này xảy ra khi B cốgắng tìm 2 bản tin M và M’, nội dung của hashsum của chúng giống nhau nhưng ýnghĩa 2 bản tin thì hoàn toàn khác nhau Yêu cầu (c) chính là để chống lại kiểu tấncông này Giả sử B muốn A chuyển 10000 euro đến tài khoản của B B biết rằng A
sẽ không bao giờ đồng ý chuyển nhiều hơn 100 euro, vì vậy bằng một vài cách B lấy
Trang 31được chữ ký của A trên một hóa đơn chuyển tiền Chú ý rằng trong trường hợp này
B có nhiều sự chọn lựa, vì có nhiều cách khác nhau để thể hiện rằng A muốn đưa B
100 euro, hoặc 10000 euro Vì vậy xác xuất của việc tìm ra hai bản tin phù hợp làcao hơn rõ rệt so với kiểu tấn công đầu, với một bản tin được đưa ra Thực tế, xácxuất đó cao đến mức đáng ngạc nhiên, kiểu tấn công này thường được gọi là
birthday paradox Birthday paradox có thể được giải thích dựa trên một hàm hash.
Đầu vào của hàm hash đó là một người nào đó và đầu ra là ngày sinh, được biểu diễnh(người)=ngày sinh Dựa theo các hàm hash bảo mật, loại tấn công đầu tiên cần mộtlượng thời gian là hàng trăm nghìn năm, trong khi loại tấn công thứ hai sẽ chỉ cầnthời gian tính theo giờ, ít nhất là đối với các hashsum ngắn(ít hơn 100 bit) Vìnguyên nhân này nên việc sử dụng một hàm hash bảo mật không chỉ cần phải thỏamãn điều kiện (a) và (b), mà còn phải có độ dài đầu ra đủ lớn để làm cho tấn côngngày sinh không khả thi với các công nghệ hiện nay
Họ hàm hash bảo mật phổ biến nhất là họ MD(message digest) được pháttriển bởi R.Rivest MD5 là thành viên mới nhất của họ này, được quy định trong tàiliệu Request for Comments(RFC) và được đề xuất bởi IETF(Internet EngineeringTask Force) Bởi vì độ dài đầu ra của nó là 128 bit cho nên nó rất yếu trước mộtcuộc tấn công ngày sinh và vì vậy không được coi là đáp ứng đủ bảo mật cho côngnghệ ngày nay SHA-1(Secure Hash Standard) là một sự lựa chọn tốt hơn bởi vì độdài đầu ra của nó là 160 bit Nó được thiết kế dựa trên những nguyên tắc giống vớiMD4 và MD5 khi R.Rivest thiết kế chúng Bản tin đầu vào có thể có độ dài tối đalên đến 264 bit
2.1.1.1 MD5
Thuật toán MD5 được thiết kế với nguyên tắc phù hợp với các máy 32 bit.Một ưu điểm nữa là thuật toán MD5 không yêu cầu bất kỳ bảng thế lớn nào và thuậttoán có thể được lập trình với mã rất ngắn
Đầu vào của thuật toán là một bản tin b-bit, với b là một số nguyên dương bất
kỳ Chúng ta có thể hình dung b bit của bản tin được thể hiện như sau:
m_0 m_1 m_2 … m(b-1) với m_x = {0 hoặc 1}
Thuật toán được thực hiện qua năm bước:
Bước 1: Nối thêm các bit phụ
Bản tin được thêm vào các bit để độ dài của nó( tính theo bit) thỏa mãn khi chia cho
512 thì dư 448 Việc thêm bit thực hiện như sau: một bit “1” được thêm vào sau bảntin, theo sau bit “1” đó là các bit “0”, số lượng bit “0” thêm vào phải thỏa mãn ràng
Trang 32buộc trên, tức là độ dài bản tin sau khi thêm bit chia 512 thì dư 448 Việc thêm bitvào là bắt buộc, kể cả khi độ dài thỏa mãn ràng buộc Vì thế , sẽ có ít nhất là một bitđược thêm vào, và nhiều nhất là 512 bit.
Bước 2:
Độ dài của bản tin gốc(b bit) được biểu diễn bằng một xâu 64 bit Sau đó, nối xâu 64bit trên vào cuối bản tin sau khi đã được thêm bit phụ ở bước 1 Nếu độ dài của bảntin gốc mà lớn hơn 2^64, thì chỉ có 64 bit thấp được sử dụng
Lúc này, bản tin có độ dài thỏa mãn là một số nguyên các khối 512 bit Nóimột cách khác, độ dài của bản tin là một số nguyên của 16 word( mỗi word 32 bit)
Ta chia bản tin sau bước 2 này thành từng khối 32 bit, để tạo bản tin thành một mảngmột chiều M[0, 1, 2, …, N-1], với mỗi phần tử là một khối 32 bit Như vậy, N là bội
số của 16
Bước 3:
Để tính toán mã hash thì một bộ đệm dung lượng 4 word được sử dụng, ký hiệu (A,
B, C, D), với A, B, C, D là các thanh ghi 32 bit Các thanh ghi đó được khởi tạo giátrị ban đầu ở dạng hexa như sau:
word A: 01 23 45 67
word B: 89 ab cd ef
word C: fe dc ba 98
word D: 76 54 32 10
Bước 4: Xử lý bản tin theo từng khối 16 word
Đầu tiên, chúng ta định nghĩa bốn hàm phụ trợ, đầu vào của mỗi hàm là ba word, vớimỗi word 32 bit, và đầu ra là một word 32 bit
Trang 33Bước này sử dụng một mảng T một chiều, gồm 64 phần tử Mỗi phần tử trong mảng
T được tạo nên từ công thức tính: abs(sin(i)) * 4294967296, sau đó làm tròn kết quảđược T[i] với i là vị trí phần tử trong mảng
Ký hiệu “<<<s” chỉ phép quay trái s bit, và “+” chỉ phép cộng modulo 2^32
Trang 34[ABCD 5 5 21] [DABC 10 9 22] [CDAB 15 14 23] [BCDA 4 20 24]
[ABCD 9 5 25] [DABC 14 9 26] [CDAB 3 14 27] [BCDA 8 20 28]
[ABCD 13 5 29] [DABC 2 9 30] [CDAB 7 14 31] [BCDA 12 20 32]
Vòng 2 dùng hàm G, với i từ 17 -> 32 và k = 1 + 5k mod 16
Vòng 3
/* Với [abcd k s i] tương đương với biểu thức
a = b + ((a + H(b,c,d) + X[k] + T[i]) <<< s) */
[ABCD 5 4 33] [DABC 8 11 34] [CDAB 11 16 35] [BCDA 14 23 36]
[ABCD 1 4 37] [DABC 4 11 38] [CDAB 7 16 39] [BCDA 10 23 40]
[ABCD 13 4 41] [DABC 0 11 42] [CDAB 3 16 43] [BCDA 6 23 44]
[ABCD 9 4 45] [DABC 12 11 46] [CDAB 15 16 47] [BCDA 2 23 48]
Vòng 3 dùng hàm H, với i từ 33 -> 48 và k =5 + 3k mod 16
Vòng 4
/* Với [abcd k s i] tương đương với biểu thức
a = b + ((a + I(b,c,d) + X[k] + T[i]) <<< s) */
[ABCD 0 6 49] [DABC 7 10 50] [CDAB 14 15 51] [BCDA 5 21 52]
[ABCD 12 6 53] [DABC 3 10 54] [CDAB 10 15 55] [BCDA 1 21 56]
[ABCD 8 6 57] [DABC 15 10 58] [CDAB 6 15 59] [BCDA 13 21 60]
[ABCD 4 6 61] [DABC 11 10 62] [CDAB 2 15 63] [BCDA 9 21 64] Vòng 4 dùng hàm I, với i từ 49 -> 64 và k =7k mod 16
A = A + AA
Trang 352.1.1.2 SHA-1
Mục đích của hàm hash là để sinh ra một dấu vân tay(fingerprint) của mộtfile, một bản tin hay một khối dữ liệu Thuật toán SHA-1 có đầu vào là một bản tin
có độ dài lớn nhất không lớn hơn 2^64 bit và sinh ra ở đâu ra một digest 160 bit
Cỡ digest Cỡ bản tin Cỡ khối Cỡ từ Số bước
Các tham số của hàm hash SHA-1(đơn vị bit)
Bản tin gốc được thêm vào các bit để độ dài của nó thỏa mãn yêu cầu khi chia
512 thì dư 448,các bit được thêm bao gồm một bit 1 và còn lại là các bit 0, bit 1 luônluôn được thêm vào Khối 64 bit được nối vào cuối bản tin Khối này biểu diễn độdài của bản tin gốc Bộ đệm 160 bit được sử dụng để giữ giá trị trung gian, gồm 5biến 32 bit(a, b, c, d, e) Bộ này ban đầu được thiết lập giá trị khởi tạo
Trái tim của thuật toán là một module nhãn F bao gồm 80 vòng, mỗi vòng cóđầu vào là giá trị 160 bit, abcde, các hằng có độ dài 32 bit, và được tạo ra từmỗi khối bản tin, có độ dài 32 bit
642
t
Trang 36Hình 4.1 Sinh digest của bản tin sử dụng SHA-1
Các hàm và hằng số trong SHA-1
SHA-1 sử dụng một dãy các hàm logic là f0,f1, ,f79 Mỗi hàm f t , với
0≤ t< 79,với đầu vào là các từ 32 bit, x, y, và z , ở đầu ra là một từ 32 bit Hàm
f t(x , y, z) được định nghĩa như sau:
Trang 37SHA-1 sử dụng một dãy 80 hằng số có độ dài các hằng 32 bit, K0 , K1 ,…,
Thiết lập các giá trị khởi tạo
Trước khi tính toán hash bắt đầu , giá trị hash khởi tạo H( 0 )
phải được thiết lập.Giá trị hash khởi tạo, H( 0 )
, gồm 5 từ 32 bit, trong dạng hex
Thêm và chia bản tin
Một bản tin M được thêm vào các bit trước khi công việc tính toán được bắtđầu Mục đích của việc thêm này là đảm bảo thư sau khi đã được thêm bit vào là mộttập các khối 512 bit
Giả sử rằng độ dài của bức thư M là l bit Nối một bit 1 vào cuối của bức thư,theo sau là k bit 0, với k là một số không âm, nhỏ nhất sao cho l+1+k mod 512=448.Sau đó nối một khối 64 bit biểu diễn độ dài của số l Ví dụ, một bưc thư với nộidung “abc” với mỗi ký tự được biểu diễn theo bảng mã ASCII 8 bit, có độ dài là8*3=24, vì vậy thư được thêm một bit 1 vào cuối, sau đó thêm sau bit một 423 bit
Trang 38không bởi vì 24+423+1 mod 512=448,cuối cùng là thêm 64 bit, vậy bức thư đã chia
Bởi vì 512 bit của một khối đầu vào có thể được biểu diễn như là 16 từ 32
bit, 32 bit đầu của khối bản tin i được định nghĩa là M0i , 32 bit tiếp theo là M1i
,32 bit cuối cùng là M15
i
.Thuật toán hash SHA-1
SHA-1 được sử dụng để hash một bức thư M, có độ dài l bit, với 0≤ l ≤ Thuật toán sử dụng một danh sách bản tin với 80 từ 32 bit, 5 biến với mỗi biến 32bit, và một giá trị hash của 5 từ 32 bit Kết quả cuối cùng của SHA-1 là một digest
160 bit
Các từ của tập danh sách khối con được gán nhãn W0 , W1 , …, W79 Năm biến
được gán nhãn a, b, c, d và e Các từ của giá trị hash được gán nhãn H(0i) , H(1
i)
,
…, H(4
i)
giữ giá trị hash khởi tạo, H( 0 )
, được thay thế bởi mỗi giá trị hash trunggian( sau khi mỗi khối bản tin được xử lý), H(i), và cuối cùng với giá trị hash kết
Trang 391 Chuẩn bị danh sách bản tin, { W t }:
Hình 4.2 Xử lý mỗi khối bản tin 512 bit
2 Khởi tạo 5 biến , a, b, c, d, và e , cùng với giá trị hash thứ i-1:
Trang 40Các hàm hash bảo mật có thể được sử dụng để thực thi cơ chế xác thực dữliệu Xác thực dữ liệu là một sự tổ hợp của xác thực và toàn vẹn dữ liệu MAC đượctính toán theo cách sau:
MAC(message)=f(Secret Key, message)