1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo Tiểu luận môn an toàn thông tin Tìm Hiểu về SSH

29 1,9K 17

Đ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

Thông tin cơ bản

Định dạng
Số trang 29
Dung lượng 369,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

• Việc chứng thực mật khẩu là một cách rất thông dụng để định danh người sử dụng, nhưng ngoài ra cũng có các cách khác như chứng thực RSA, sử dụng ssh-keygen và ssh-agent để chứng thực c

Trang 1

BÁO CÁO BÀI TẬP LỚN

AN TOÀN THÔNG TIN

Đề tài:

“Tìm Hiểu về SSH ”

GVHD : NGUYỄN VĂN HOÀNG

Sinh viên thực hiện : THC– 52

Nguyễn Thị NgaNguyễn Thị Phương Thảo

Trang 2

6 Các thuật toán được sử dụng trong SSH

7 Các loại tấn công mà SSH có thể cản được

8 Các mối đe dọa mà SSH không thể cản

Trang 3

1 Khái niệm về SSH

• SSH (tiếng anh :Secure Shell ) là một giao thức

mạng dùng để thiết lập kết nối mạng một cách bảo mật SSH hoạt động ở lớp trên trong mô hình phân lớp TCP/IP

• Các công cụ SSH (như là OpenSSH, PuTTy….)

cung cấp cho người dùng cách thức để thiết lập kết nối mạng được mã hóa để tạo một kênh kết nối

riêng tư Hơn nữa tính năng tunneling (hoặc còn gọi

là port forwarding) của các công cụ này cho phép chuyển tải các giao vận theo các giao thức khác

Trang 4

2 Lịch sử phát triển của SSH

• Năm 1995, Tatu Ylõnen, đã trình bày về SSH1 và giao thức SSH1

• Năm 1998, SCS phát hành sản phẩm phần mềm “SSH Secure Shell” (SSH2), dựa trên giao thức SSH-2

• Năm 2000, SCS mở rộng SSH2 bản quyền cho phép dùng miễn phí đối với Linux, NetBSD, FreeBSD và hệ điều hành OpenBSD

• Năm 2000, OpenSSH (http://www.openssh.com) được

dử dụng miễn phí có đăng kí OpenSH hỗ trợ cả

SSH-1 và SSH-2 trong một chương trình

Trang 5

3 Các đặc điểm của SSH

3.1 Tính bí mật (Privacy /Encryption)

3.2 Tính toàn vẹn (integrity)

3.3 Chứng minh xác thực (authentication)

3.4 Phân quyền (authorization)

3.5 Chuyển tiếp (forwarding) hoặc tạo đường hầm

(tunneling)

Trang 6

3.1 Tính bí mật (Privacy /Encryption)

• SSH cung cấp tính bí mật bằng việc mã hoá dữ liệu đi qua mạng Đó là việc mã hoá hai đầu dựa trên khoá ngẫu nhiên(-session key) (sinh ra để phục vụ cho một phiên kết nối và được huỷ đi khi phiên kết nối thành công)

• SSH hỗ trợ nhiều thuật toán mã hoá đối với phiên dữ liệu, đó là những thuật toán mã hoá chuẩn như: AES, ARCFOUR, Blowfish, Twofish, IDEA, DES và triple-DES (3DES)

Trang 7

3.2 Tính toàn vẹn (integrity)

• Để đảm bảo tính toàn vẹn dữ liệu, giao thức SSH

sử dụng phương pháp kiểm tra toàn vẹn mật mã Phương pháp này kiểm tra cả việc dữ liệu có bị biến đổi hay không và dữ liệu đến có đúng là do đầu kia gửi hay không Nó sử dụng thuật toán

băm khóa là MD5 và SHA-1

Trang 8

3.3 Chứng minh xác thực (authentication)

• Chứng minh xác thực là việc kiểm tra định danh của ai đó để xác định chính xác đúng là người đó hay không Mỗi kết nối SSH bao gồm hai việc xác thực: client kiểm tra định danh của SSH server

(server authentication) và server kiểm tra định

danh của người sử dụng yêu cầu truy cập (user

authentication).

• Mỗi định danh và truy cập của người sử dụng có thể được cung cấp theo nhiều cách khác nhau

Trang 9

• Việc chứng thực mật khẩu là một cách rất thông dụng để định danh người sử dụng, nhưng ngoài ra cũng có các cách khác như chứng thực RSA, sử dụng ssh-keygen và ssh-agent để chứng thực các cặp khóa.

• Một SSH client và SSH server đàm phán với nhau

để xác định cơ chế xác thực sẽ sử dụng dựa trên cấu hình của chúng và một server thậm chí có thể yêu cầu nhiều kiểu xác thực

Trang 10

• Việc phân quyền có tác dụng quyết định ai đó có thể hoặc không thể làm gì đó Nó diễn ra sau khi xác

thực, bởi vì bạn không thể trao quyền nào đó cho

một người mà bạn không biết họ là ai

• SSH server có nhiều cách khác nhau để giới hạn hành động của client

• Việc phân quyền có thể được điều khiển tại một mức server rộng (ví dụ: /etc/ssh/sshd_config file đối với OpenSH) hoặc theo tài khoản phụ thuộc vào phương thức xác thực sử dụng

3.4 Phân quyền (authorization)

Trang 11

3.5 Chuyển tiếp (forwarding) hoặc

tạo đường hầm (tunneling)

• Chuyển tiếp hoặc tạo đường hầm là đóng gói dịch vụ dựa trên TCP khác như là Telnet hoặc IMAP trong một phiên SSH mang lại hiệu quả bảo mật của SSH đến với các dịch vụ dựa trên TCP khác

• SSH hỗ trợ 3 kiểu chuyển tiếp sau :

Trang 12

• + X forwarding là một hệ thống window phổ biến đối với các trạm làm việc Unix, một trong những đặc điểm của nó là tính trong suốt Sử dụng X bạn có thể chạy ứng dụng X từ xa để mở các cửa sổ của chúng trên

màn hình hiển thị cục bộ của bạn

• + Agent forwarding SSH client có thể làm việc với một SSH agent trên cùng một máy Sử dụng một đặc trưng gọi là agent forwarding, client cũng có thể liên lạc với các agent trên những máy từ xa Điều thuận lợi

là nó cho phép client trên nhiều máy làm việc với một agent và có thể tránh vấn đề liên quan đến tường lửa

Trang 13

• + TCP port forwarding: SSH sử dụng TCP/IP làm cơ chế vận chuyển của nó, thường là cổng 22 trên máy chủ, vì nó mã hóa và giải mã lưu lượng truy cập qua kết nối Những ứng dụng khác sử dụng giao thức

TCP như telnet, SMTP, NNTP, IMAP và một số giao thức khác cũng có thể được hướng tới các port TCP khác dùng SSH Quá trình này được gọi là TCP port forwarding Port forwarding được gọi là đường hầm

vì kết nối SSH cung cấp một “đường hầm” xuyên qua

để cho các kết nối TCP khác có thể đi qua Tuy nhiên SSH Port forwarding chỉ hoạt động trên giao thức

TCP và không làm việc được trên các giao thức khác như UDP hay AppleTalk

Trang 14

4 Kiến trúc chung của một hệ thống SSH

Trang 15

– Các loại khóa thành phần: User key, Host key, Server key, Session key, Key generator.

Trang 16

• Known hosts database

Là một chồng host key Client và server dựa vào cơ

sở dữ liệu này để xác thực lẫn nhau

• Agent

Một chương trình lưu user key trong bộ nhớ Agent trả lời cho yêu cầu đối với khoá quan hệ hoạt động như là kí hiệu một giấy xác thực nhưng nó không tự phơi bày khoá của chúng Nó là một đặc điểm rất có ích

• Signer

Một chương trình kí hiệu gói chứng thực hostbased.

Trang 17

• Random seed

Một dãy dữ liệu ngẫu nhiên đựoc dùng bởi các thành phần SSH để khởi chạy phần mềm sinh số ngẫu nhiên

• Configuration file

Một chồng thiết lập để biến đổi hành vi của một SSH client hoặc SSH server Không phải tất cả thành phần đều được đòi hỏi trong một bản bổ sung của SSH Dĩ nhiên những server, client và khoá là bắt buộc nhưng nhiều bản bổ sung không có agent và

thậm chí vài bản không có bộ sinh khoá

Trang 18

đầy đủ.

• - Giao thức lớp vận chuyển SSH (SSH-TRANS)

- Giao thức xác thực SSH (SSH-AUTH)

- Giao thức kết nối SSH (SSH-CONN)

- Giao thức truyền file SSH (SSH-SFTP)

Trang 19

5.2 Tóm tắt cơ chế hoạt động của SSH-2

• Một phiên hoạt động của SSH-2 trải qua 4

bước chủ yếu như sau:

– Thiết lập kết nối ban đầu (SSH-TRANS)– Tiến hành xác thực lẫn nhau (SSH-AUTH)– Mở phiên kết nối để thực hiện các dịch vụ (SSH-CONN)

– Chạy các dịch vụ ứng dụng SSH ( có thể là SSH-SFTP)

Trang 20

6 Các thuật toán được sử dụng trong SSH

• Những thuật toán khóa công khai :

– Rivest-Shamir-Adleman (RSA)

– Thuật toán chữ ký số (DSA)

– Thuật toán thoả thuận khoá Diffie-Hellman

• Những thuật toán khoá bí mật

– Thuật toán mã hoá dữ liệu bí mật quốc tế (IDEA)– Chuẩn mã hoá tiên tiến (AES)

– Chuẩn mã hoá dữ liệu (DES)

– Trible-DES (3DES)

Trang 21

• Những thuật toán khoá bí mật (tiếp)

Trang 22

7 Các loại tấn công mà SSH có thể cản được

7.1 Eavesdropping

Một eavesdropper là một người rình mò trên mạng, có thể biết được giao thông mạng mà không làm ảnh hưởng đến đường truyền Hình thức mã hóa của SSH chống lại eavesdropping

7.2 Dịch vụ đặt tên và giả mạo IP

Nếu một kẻ tấn công phá hoại dịch vụ đặt tên (DNS, NIS, …), các chương trình liên quan đến mạng có thể bị ép buộc kết nối đến máy tính khác Cũng tương tự, một kẻ tấn công có thể giả mạo một host bằng cách đánh cắp địa chỉ IP đang dùng Trong các trường hợp khác, bạn cũng sẽ gặp rắc rối: các chương trình trên máy khách có thể kết nối sai đến máy chủ, đánh cắp mật khẩu mà bạn cung cấp Trình bảo vệ SSH chống lại kiểu tấn công này bằng cách kiểm tra mã hóa và nhận dạng máy chủ

Trang 23

7.3 Chiếm đoạt kết nối

Một kẻ tấn công lanh lợi không chỉ có thể theo dõi được giao thông mạng, mà còn có thể xen vào, chiếm đoạt một kết nối

TCP Đây là các tai hại rõ ràng, dù cho phương thức xác nhận của bạn có tốt như thế nào đi nữa, kẻ tấn công có thể đơn giản là đợi cho đến khi bạn đăng nhập, sau đó đánh cắp kết nối và chèn các lệnh bất chính của hắn vào trong session của bạn SSH

không thể chống lại kiểu chiếm quyền điều khiển này, từ đó trở

đi đây trở thành điểm yếu trong TCP hoạt động bên dưới SSH Tuy nhiên, SSH đáp trả không hiệu quả (trừ kiểu tấn công từ

chối dịch vụ) Trình kiểm tra tính toàn vẹn của SSH phát hiện một session có bị sửa đổi hay không, và ngắt kết nối ngay lập tức mà không sử dụng bất kỳ dữ liệu bị sửa đổi nào

Trang 24

7.4 Tấn công Man-in-the-Middle

Đây là kiểu tấn công mà có một người thứ ba xen vào giữa, là kiểu tấn công chủ động đặc biệt không dễ bị phát hiện

Tuy nhiên SSH có đủ khả năng để chống lại kiểu tấn công này

Trang 25

8 Các mối đe dọa mà SSH không thể cản

• Phá mật khẩu

SSH cải tiến quá trình an toàn mật khẩu bằng cách mã hóa nó khi truyền qua mạng Tuy nhiên, mật khẩu vẫn là điểm yếu của quá trình xác thực, bạn phải cẩn thận với điều này Bạn phải chọn một mật khẩu an toàn, dễ nhớ đối với bạn nhưng lại khó đoán với người khác Bạn phải tránh bị đánh cắp mật

khẩu, tốt nhất là chỉ một mình bạn biết cách truy cập vào tài khoản của mình.

Trang 26

• IP và các kiểu tấn công TCP

SSH hoạt động trên nền TCP, vì vậy nó dễ trở thành

điểm yếu để tấn công vào TCP và IP Các đảm bảo về tính riêng tư, tính toàn vẹn, và tính xác thực của SSH sẽ hạn chế rủi ro đối với các cuộc tấn công từ chối dịch vụ

TCP/IP chịu được các sự cố mạng như là sự tắc nghẽn và hỏng các liên kết Nếu kẻ thù tấn công vào

một Router, IP có thể định tuyến xung quanh nó Tuy nhiên, nó không được thiết kế để chống lại các gói dữ liệu ảo mà kẻ thù đưa vào trong mạng TCP IP điều

khiển các thông báo không được xác thực Và trong kết quả trả về, TCP/IP có 1 số các điểm yếu cố hữu có thể

khai thác được, như là :

Trang 27

o SYN flood

o TCP RST, ICMP không thật

o TCP bất đồng bộ và chiếm quyền

o Phân tích đường truyền

o Convert Channels (kênh biến đổi)

o Sự cẩu thả của người dùng

Trang 28

TÀI LIỆU THAM KHẢO

mat/66513_Bao-ve-ket-noi-Internet-thong-qua-SSH.aspx

Ngày đăng: 21/03/2015, 00:05

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w