32
LOGO GVHD : TS. Nguyễn Tấn Khôi TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG Khoa Công Nghệ Thông tin Bộ Môn Mạng và truyền thông BÁO CÁO : TÌM HIỂU VÀ KHAI THÁC CÁC CÔNG CỤ BẺ KHÓA SSL Sinh Viên : Nguyễn Trường Thuật – 08T2 Dương Văn Sơn – 08T2 Nguyễn Minh Đức Đà Nẵng, Tháng 10 năm 2012 AN TOÀN THÔNG TIN MẠNG

SSL TLS NguyenTruongThuat

Embed Size (px)

Citation preview

Page 1: SSL TLS NguyenTruongThuat

LOGO

GVHD : TS. Nguyễn Tấn Khôi

TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNGKhoa Công Nghệ Thông tin

Bộ Môn Mạng và truyền thông

TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNGKhoa Công Nghệ Thông tin

Bộ Môn Mạng và truyền thông

BÁO CÁO :TÌM HIỂU VÀ KHAI THÁC CÁC CÔNG CỤ BẺ

KHÓA SSL

Sinh Viên : Nguyễn Trường Thuật – 08T2Dương Văn Sơn – 08T2Nguyễn Minh Đức

Đà Nẵng, Tháng 10 năm 2012

AN TOÀN THÔNG TIN MẠNG

Page 2: SSL TLS NguyenTruongThuat

NỘI DUNG BÁO CÁO

Tổng quan về giao thức SSL/TLS Tổng quan về giao thức SSL/TLS1

2

Demo Demo33

Tấn công và cách phòng chống

Page 3: SSL TLS NguyenTruongThuat

LÝ THUYẾT1

Giới Thiệu Về

SSL

2

Ứng Dụng SSL

Lịch sử phát triển của giao thức SSL

Cấu trúc của giao thức SSL

Các thuật toán mã hóa dùng trong SSL

Các ứng dụng phổ biến của SSL

Ứng Dụng SSL Trên Web Server

Tổng Quan Về Giao Thức SSL Tổng Quan Về Giao Thức SSL 1

Mô tả quá trình truyền thông của SSL

Page 4: SSL TLS NguyenTruongThuat

Lịch sử phát triển của giao thức SSL

Tại sao sử dụng SSL?

- Việc truyền các thông tin nhạy cảm trên mạng rất không an toàn vì những vấn đề sau:

+ Bạn không thể chắc rằng bạn đang trao đổi thông tin với đúng đối tượng cần trao đổi.

+ Dữ liệu mạng có thể bị chặn ,vì vậy dữ liệu có thể bị 1 đối tượng thứ 3 khác đọc trộm, thường được biết đến như attacker + Nếu attacker có thể chặn dữ liệu, attacker có thể sửa đổi dữ liệu trước khi gửi nó đến người nhận.

Page 5: SSL TLS NguyenTruongThuat

Lịch sử phát triển của giao thức SSL

Giao thức SSL là gì?

- SSL (Secure Sockets Layer) là giao thức an ninh thông tin mạng được sử dụng rộng rãi nhất hiện nay nhằm mã hóa và cung cấp một kênh an toàn giữa các máy tính trên Internet hoặc mạng nội bộ.

- Được phát triển bởi Netscape, ngày nay giao thức Secure Socket Layer (SSL) đã được sử dụng rộng rãi trên World Wide Web trong việc xác thực và mã hoá thông tin giữa client và server

- SSL ám chỉ một lớp (bảo mật) trung gian giữa Transport Layer

và Application Layer.

Page 6: SSL TLS NguyenTruongThuat

Giao thức SSL là gì?

- Để đảm bảo tính bảo mật thông tin trên internet hay bất kì mạng TCP/IP nào thì SSL ra đời kết hợp với những yếu tố sau để thiết lập giao dịch an toàn:

- SSL được thiết kế như là một giao thức riêng cho vấn đề bảo mật có thể hỗ trợ cho rất nhiều ứng dụng

Page 7: SSL TLS NguyenTruongThuat

Lợi Ích Khi Sử Dụng SSL !

*Toàn vẹn dữ liệu: đảm bảo thông tin không bị sai lệch và nó phải thể hiện chính xác thông tin gốc gửi đến.

*Mã hoá: đảm bảo thông tin không thể bị truy cập bởi đối tượng thứ

ba. Để loại trừ việc nghe trộm những thông tin “ nhạy cảm” khi nó

được truyền qua Internet.

Page 8: SSL TLS NguyenTruongThuat

Lịch sử phát triển của giao thức SSL

Các phiên bản của SSL

Giao thức SSL ban đầu được phát triển bởi Netscape.

Cho đến bây giờ, có ba phiên bản của SSL:

* SSL 1.0: Bởi Netscape. Nó chứa một số khiếm khuyết nghiêm trọng và không bao giờ được tung ra bên ngoài

* SSL 2.0 Microsoft cũng đã giới thiệu giao thức PCT cạnh tranh trong lần tung ra Internet Explorer đầu tiên của nó vào năm 1996

*SSL 3.0 Phản ứng lại giao thứcPCT của Microsft cải tiến SSL 2.0

Page 9: SSL TLS NguyenTruongThuat

Cấu trúc của giao thức SSL

- SSL được thiết kế để dùng TCP cung cấp 1 dịch vụ bảo mật đáng tin cậy.SSL không phải là một giao thức đơn mà là 2 lớp giao thức:

Page 10: SSL TLS NguyenTruongThuat

Cấu trúc của giao thức SSL

1.Giao Thức SSL Record Protocol

SSL Record Protocol cung cấp 2 dịch vụ cho kết nối SSL:

+ Confidentiality (tính cẩn mật): Handshake Protocol định nghĩa 1 khóa bí mật được chia sẻ, khóa này được sử dụng cho mã hóa quy ước các dữ liệu SSL

+ Message integrity (tính toàn vẹn thông điệp):Handshake Protocol cũng định nghĩa 1 khóa bí mật được chia sẻ, khóa này được sử dụng để hình thành MAC (mã xác thực message).

Page 11: SSL TLS NguyenTruongThuat

Cấu trúc của giao thức SSL

1.Giao Thức SSL Record Protocol

Toàn bộ hoạt động của SSL Record Protocol:

Page 12: SSL TLS NguyenTruongThuat

Cấu trúc của giao thức SSL2.Giao thức SSL Change Cipher Spec Protocol

- Giao thức SSL Change Cipher Spec là giao thức đơn giản nhất trong ba giao thức đặc trưng của SSL.

- Giao thức này bao gồm một message đơn 1 byte giá trị là 1. Mục đích chính của message này là sinh ra trạng thái tiếp theo để gán vào trạng thái hiện tại,và trạng thái hiện tại cập nhật lại bộ mã hóa để sử dụng trên kết nối này

Page 13: SSL TLS NguyenTruongThuat

Cấu trúc của giao thức SSL3.Giao thức SSL Alert

- Giao thức SSL Alert được dùng để truyền cảnh báo liên kết SSL với đầu cuối bên kia.

+bad_record_mac: MAC không chính xác+unsupported_certificate: dạng certificate nhận được thì không hỗ trợ. +certificate_revoked: certificate đã bị thu hồi bởi nhà cung cấp. +certificate_expired: certificate đã hết hạn đăng ký.

Page 14: SSL TLS NguyenTruongThuat

Cấu trúc của giao thức SSL4.Giao Thức SSL Handshake

- Giao thức này cho phép server và client chứng thực với nhau và thương lượng cơ chế mã hóa , thuật toán MAC và khóa mật mã được sử dụng để bảo vệ dữ liệu được gửi trong SSL record.

- Giao thức SSL Handshake thường được sử dụng trước khi dữ liệu của ứng dụng được truyền đi.

Page 15: SSL TLS NguyenTruongThuat

Cấu trúc của giao thức SSL

4.Giao thức SSL Handshake

Cơ chế giao thức SSL Handshake

Page 16: SSL TLS NguyenTruongThuat

Các thuật toán mã hóa dùng trong SSL

- Các thuật toán mã hoá là các hàm để mã hoá và giải mã thông tin.- Giao thức SSL hỗ trợ rất nhiều các thuật toán mã hoá, sử dụng trong quá trình xác thực server và client

Một số thuật toán SSL sử dụng : Thuật toán Symmetric (Pre-Shared Key) còn gọi là mã hóa đối xứng. Có nghĩa là A dùng key K để encrypt dữ liệu và send cho B thì khi đó B cũng dùng key K để decrypt dữ liệu. key K cả 2 người đều giữ để encrypt và decrypt data.Ưu điểm: của cách này là chỉ cần dùng 1 key ta có thể encrypt và decrypt được cho data. Dễ làm …Nhược điểm: nếu ta muốn trao đổi data dc encrypt với nhìu người thì phải cần nhìu key => khó nhớ, dễ quên, không an toàn

Page 17: SSL TLS NguyenTruongThuat

Các thuật toán mã hóa dùng trong SSL

Thuật toán Asymmetric còn gọi là mã hóa bất đối xứng. Các nhà khoa học đã chứng minh được rằng luôn có 1 cặp 1 số nguyên tố vô cũng lớn là P với Q (trong đó P đại diện cho private key còn Q là Public Key) và độ dài của cặp số này dài đến 1024 bit. Ví dụ: Bây giờ A muốn send dữ liệu mã hóa cho B thì A: data + Q(B) = CipherKhi B nhận:B: Cipher + P(B) = data Khi này attacker cho dù capture được Cipher thì cũng không decrypt dc vì ko có P(B).

Page 18: SSL TLS NguyenTruongThuat

Các thuật toán mã hóa dùng trong SSL

Thuật toán Kerberos Muốn sự dụng được Kerberos thì ta phải có ít nhất 3 PC, trong đó có 1 PC đứng ra làm Distribution Key. Khi A muốn giao dịch mã hóa với B thì A phải chạy lên DC xin key và dùng key đó để mã hóa data và khi B nhận dc data đã được mã hóa thì B lên so sánh key của A dùng có phải do DC cấp ko và từ đó decrypt dc data.ưu điểm: độ bảo mật tốt hơn so với dạng Pre-Shared key.Nhược điểm: không thể triển khai rộng rãi

Page 19: SSL TLS NguyenTruongThuat

Mô tả quá trình truyền thông của SSL

Page 20: SSL TLS NguyenTruongThuat

Ứng Dụng SSL

Các ứng dụng phổ biến của SSL

- Tuy vẫn còn một số lỗi hổng khai thác, nhưng SSL vẫn là giao thức bảo mật cao nhất mà chưa một giao thức bảo mật nào có thể thay thế vai trò của nó

Name Port Description

Nsiiop 261 Dịch vụ IIOP trên TLS/SSL

Https 443 HTTP trên TLS/SSL

Smtps 465 SMTP trên TLS/SSL

Nntps 563 NNTP trên TLS/SSL

Ldaps 636 LDAP trên TLS/SSL

Ftps-data 989 FTP-dữ liệu trên TLS/SSL

Ftps 990 FTP-điều khiển trên TLS/SSL

Telnets 992 TELNET trên TLS/SSL

Imaps 994 IRC trên TLS/SSL

- Ứng dụng đi kèm SSL được IANA(Internet Assigned Numbers Authority) công nhận :

Page 21: SSL TLS NguyenTruongThuat

Ứng Dụng SSL Trên Web Server

2.Ứng Dụng SSL

Web Server ?

Máy chủ có dung lượng lớn, tốc độ cao dùng để lưu trữ thông tin ,chứa website cùng những thông tin liên quan khác.

Có địa chỉ IP hoặc tên miền

Khi máy tính kết nối đến một Web Server và gửi đến yêu cầu truy cập các thông tin từ một trang Web nào đó, Web Server Software sẽ nhận yêu cầu và gửi lại cho bạn những thông tin mà bạn mong muốn

Page 22: SSL TLS NguyenTruongThuat

Các Phương Thức Tấn Công

Giả mạo Certifcate – Hay MITM. Máy attack là 1 proxy và mọi thông tin của victim đều đi qua proxy này.

Page 23: SSL TLS NguyenTruongThuat

Công Cụ Tấn Công

Dùng Tool Burpsuite Burpsuite_v1.3. Đây là một tools có tính năng là một Intercept

Proxy Quick_Batch_File_Compiler_3.21 là một tools chuyển file.bat

file.exe Tạo ra một file.bat với nội dung: Có thể đổi được proxy máy bị

tấn công

Page 24: SSL TLS NguyenTruongThuat

Demo

Tùy chỉnh cấu hình

Page 25: SSL TLS NguyenTruongThuat

Demo

Kết quả.

Page 26: SSL TLS NguyenTruongThuat

Công Cụ Tấn Công

Dùng công cụ SSLtrip hay hệ điều hành BackTrack ( hệ điều hành này hỗ trợ ssltrip)

Page 27: SSL TLS NguyenTruongThuat

Demo

Cấu hình để hệ điều hành chuyển tiếp địa chỉ ip

Page 28: SSL TLS NguyenTruongThuat

Demo

Chúng ta phải làm cho tất cả lưu lượng HTTP bị chặn sẻ được định tuyến đến cổng mà SSLtrip lắng nghe.

Page 29: SSL TLS NguyenTruongThuat

Demo

Cấu hình giả mạo ARP để chặn lưu lượng của host Victim.

Page 30: SSL TLS NguyenTruongThuat

Demo

Chạy SSLtrip

Page 31: SSL TLS NguyenTruongThuat

Demo

Kết Quả

Page 32: SSL TLS NguyenTruongThuat

LOGO

THANKS YOUTHANKS YOU

Khoa Công Nghệ Thông tinBộ Môn: Mạng và truyền thông

Khoa Công Nghệ Thông tinBộ Môn: Mạng và truyền thông