Tìm hiểu về SSL và ứng dụng trên web sever

22 628 0
Tìm hiểu về SSL và ứng dụng trên web sever

Đ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ìm hiểu về SSL và ứng dụng trên web sever

1 ®¹i häc th¸I nguyªn Trêng ®¹i häc c«ng nghÖ th«ng tin & truyÒn th«ng BÁO CÁO AN NINH MẠNG §Ò tµi : TÌM HIỂU VỀ SSL VÀ ỨNG DỤNG TRÊN WEB SEVER GVHD : Th.S NGUYỄN ĐỨC BÌNH Sinh viên thực hiện : NGUYỄN CÔNG LONG ĐỖ VĂN TRUYỀN Lớp : An Ninh Mạng N02 Th¸i Nguyªn, th¸ng 05 n¨m 2012 2 MỤC LỤC LỜI NÓI ĐẦU…………………………………………………………………….2 I. Giới thiệu về SSL…………………………………………………………… 3 I.1 Lịch sử phát triển của giao thức SSL……………………………………………………3 I.1.1 Tại sao sử dụng SSL?………………………………………………………………3 I.1.2 Giao thức SSL là gì?……………………………………………………………… 4 I.1.3 Các phiên bản của SSL………………………………………………………… 4 I.2 Cấu trúc của giao thức SSL…………………………………………………………… 5 I.2.1 Giao thức SSL Record ………………………………………………………………6 I.2.2 Giao thức SSL Change Cipher Spec……………………………………………… 8 I.2.3 Giao thức SSL A l er t……………………………………………………………………………… 9 I.2.4 Giao thức SSL Handshake………………………………………………………………….10 I.3 Các thuật toán mã hóa dùng trong SSL………………………………………………… 12 II. Ứng dụng của SSL………………………………………………………………… 13 II.1 Các ứng dụng phổ biến của SSL………………………………………………………. 13 II.2 Ứng Dụng SSL Trên Web Server………………………………………………………14 II.2.1 Web Server ? ……………………………………………………………………….14 II.2.2 Giải Pháp Bảo Vệ Web Server…………………………………………………… 16 II.2.3 Quy Trình Và Cài Đặt SSL…………………………………………………………18 III. Demo …………………………………………………………………………………. 19 TÀI LIỆU THAM KHẢO…………………………………………………………………… 20 3 LỜI NÓI ĐẦU -Như chúng ta đã biết thì kể từ khi Internet ra đời. Cùng theo đó lĩnh vực công nghệ tin không ngừng phát triền, kèm theo Mạng Internet mang lại rất nhiều tiện ích hữu dụng cho người sử dụng, một trong các tiện ích phổ thông của Internet là hệ thống thư điện tử (email), trò chuyện trực tuyến (chat), máy truy tìm dữ liệu (search engine), các dịch vụ thương mại và chuyển ngân, và các dịch vụ về y tế giáo dục như là chữa bệnh từ xa hoặc tổ chức các lớp học ảo. Chúng cung cấp một khối lượng thông tin và dịch vụ khổng lồ trên Internet. - Nguồn thông tin khổng lồ kèm theo các dịch vụ tương ứng chính là hệ thống các trang Web liên kết với nhau và các tài liệu khác trong WWW (World Wide Web). =>Đó là một kênh trao đổi thông tin rất hữu ích và nhanh chong . Song tất cả không phải là toàn mỹ , nghĩa là mọi thông tin khi bạn trao đổi thông qua Internet có thể bị bên thứ 3 tác động vào hay là lộ mất mát thông tin…vv Để khắc phục những hạn chế đó người ta đã phát triển nên các giao thức giúp phần nào hạn chế điều đó. Trong đó biết tới một giao thức góp phần tối ưu công việc bảo mật thông tin trên nền World Wide Web. Đó là giao thức SSL (viết tắt Secure Sockets Layer) Hôm nay nhóm em xin trình bày những hiểu biết về giao thức SSL cũng như ứng dụng của nó trên Web Server. 4 “ Tìm hiểu SSL và ứng dụng trên web sever ” Đề tài có th ể còn nhi ều thi ếu sót m ong Thầy và các bạn đóng góp ý kiến để đề tài được hoàn t h i ện hơn.Chúng em xin cảm ơn sự hướng dẫn của Thầy Ths. Nguyễn Đức Bình đã g i úp chú ng em hoàn thành đề t à i này. Tìm hiểu SSL và ứng dụng trên Web Sever I. Giới thiệu về SSL I.1 Lịch sử phát triển của giao thức SSL I.1.1 Tại sao sử dụng SSL? - Như chúng ta đ ã biết công ngh ệ thông tin ngày càng phát tri ển và thay đ ổi hàng ngày hàng gi ờ. Đồng thời cùng v ới sự ra đời của Internet, thì đã góp ph ần tăng thêm m ột kênh truy ền tải thông tin. - Ngày nay việc bảo mật thông t i n là yếu tố quan trọng để qu yết đ ị nh sự sống còn của một tổ chức ,một công ty hay doanh nghiệp . Với sự phát t r i ển nhanh chóng của công nghệ đã mang lại nhiều t i ệ n ích cho ng ườ i dùng như ng đồng t hờ i cũng đặt ra một nhu cầu hết sức cấp thiết về sự an toàn và bảo mật .Và SSL chính là giải pháp tốt nh ất h i ện nay đáp ứng nh ững nhu cầu đó và nó được coi như là “lá chắn cuối cù ng ” trong bảo mật thư ơng mại điện t ử. - Việc truyền các thông t i n 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ể l uôn l uô n chắc rằng bạn đang trao đổ i thông t i n 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 t r ộ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. - Như vậy SSL được đã được phát triển nhằm giải quyết tri ệt để các vấn đề t r ên I.1.2 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 5 nội bộ. SSL thường được sử dụng khi một trình duyệt web cần kết nối bảo mật đến một máy chủ web. - Đượ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. Tổ chức IETF (Internet Engineering Task Force ) đã chuẩn hoá SSL và đặt lại tên là TLS (Transport Layer Security). Mặc dù là có sự thay đổi về tên nhưng TSL chỉ là một phiên bản mới của SSL. Phiên bản TSL 1.0 tương đương với phiên bản SSL 3.1. Tuy nhiên SSL là thuật ngữ được sử dụng rộng rãi hơ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. Giao thức SSL hoạt động bên trên TCP/IP và bên dưới các giao thức ứng dụng tầng cao hơn như là HTTP (Hyper Text Transport Protocol), IMAP ( Internet Messaging Access Protocol) và FTP (File Transport Protocol). => Để đả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 (Secure Socket Layer) ra đời kết hợp với những yếu tố sau để thiết lập giao dịch an toàn: *Xác thực: đảm bảo tính xác thực của trang mà bạn sẽ làm việc ở đầu kia của kết nối. Cũng như vậy, các trang Web cũng cần phải kiểm tra tính xác thực của người sử dụng. *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, dữ liệu phải được mã hoá để không thể bị đọc được bởi những người khác ngoài người gửi và người nhận. *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. I.1.3 Các phiên bản của SSL - Giao thức SSL ban đầu được phát t r i ể n bở i N e t sc ape . Ngày nay Visa, MasterCard, American E xpr es s cũng như nh i ều công ty giải pháp t à i chính hàng đầu khác trên thế giới đã và đang ứng dụng SSL trong thương mại điện t ử. - Cho đến bây giờ, có ba phiên bản của SSL: * SSL 1.0: được sử dụng nội bộ chỉ bởi Netscape Communications. 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: được kết nhập vào Netscape Communications 1.0 đến 2.x. Nó có một số điểm yếu liên quan đến sự hiện thân cụ thể của cuộc tấn công của đối tượng trung gian. Trong một nỗ lực nhằm dùng sự không chắc chắn của công chúng về bảo mật của SSL, Microsoft cũng đã giới thiệu giao thức PCT cạnh tranh trong lần tung ra Internet Explorer 6 đầu tiên của nó vào năm 1996. *SSL 3.0: Netscape Communications đã phản ứng lại sự thách thức PCT của Microsoft bằng cách giới thiệu SSL 3.0 vốn giải quyết các vấn đề trong SSL 2.0 và thêm một số tính năng mới. Vào thời điểm này, Microsoft nhượng bộ và đồng ý hỗ trợ SSL trong tất cả các phiên bản phần mềm dựa vào TCP/IP của nó . I.2 Cấu trúc của giao thức SSL SSL được t h i ế t kế để dùng TCP cung cấp 1 dịch vụ bảo mật đầu c uố i - đến - đầu cuối đáng t i n cậy.SSL không ph ải là một g i ao thức đơn mà là 2 l ớ p g i ao t hức , như m i nh họa dướ i đây: Hình 5: Chồng g i ao thức SS L - Theo hình này, SSL ám chỉ một lớp (bảo mật) trung gian giữa lớp vận chuyển (Transport Layer) và lớp ứng dụng (Application Layer). SSL được xếp lớp lên trên một dịch vụ vận chuyển định hướng nối kết và đáng tin cậy, chẳng hạn như được cung cấp bởi TCP. - SSL Record P r o t oco l cung cấp các dịch vụ bảo mật cơ bản cho nhiều g i ao thức khác nhau ở các l ớ p trên.Trong t hực tế, Hyper T ex t Transfer Pro t oco l (HTTP),cung cấp dịch vụ trao đổi cho tương tác Web c li en t / s er v er ,c ó thể hoạt động trên đ ỉ nh của SSL.Ba g i ao thức l ớ p trên đ ược đ ị nh nghĩa như là các phần của SSL: Hand shake Pr o t oco l, Change Cypher Spec Protocol và Alert Protocol.Các g i ao thức mang t í nh đặc t r ưn g - SS L này được dùng trong phần qu ản lý trao đổi SSL - Như vậy có ta thấy SSL có 2 lớp giao thức hay 4 thành phần con của SSL: + SSL Handshake Protocol. 7 + SSL Change Cipher Spec Protocol. + SSL Alert Protocol. + SSL Record Protocol. II.2.1 Giao Thức SSL Record Protocol. SSL Record P r o t oco l cung cấp 2 dịch vụ cho kết nối S SL : + 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 SS L. + Message integrity (tính toàn vẹn thông đi ệp ) : H and sh a k e Pr ot oco l cũng định nghĩa 1 khóa bí mật được chi a sẻ, khóa này được sử dụng để hình thành MAC (mã xác thực message). - Hình sau chỉ ra toàn bộ hoạt động của SSL Record Pro t oco l .SS L Record Protocol nhận 1 message ứng dụng sắp được truyền đi,phân mảnh d ữ liệu thành nhiều block,nén dữ liệu 1 cách tùy chọn,áp dụng vào 1 MAC,mã hóa,thêm vào heade r,và truyền khối kết quả thu được trong 1 segment TCP.Dữ liệu nhận được được giải mã,kiểm tra ,giải nén, sắp xếp lại và phân p hố i đến ng ườ i sử dụng ở l ớ p cao hơn. 8 Phân mảnh :Mỗi message của l ớ p bên trên được phân mảnh thành các block ,mỗi block là 2 14 byte (16384 byte) hoặc ít hơn. Nén: Nén phải là không mất mát thông t i n và có thể không làm tăng chiều dài nộ i dung nhiều hơn 1024 byte (Dĩ nhi ên,n g ườ i ta mong muốn nén làm co lại dữ liệu hơn là nới rộng dữ liệu.Tuy nhiên ,với những block ngắn,có thể ,do định dạng quy ước,thuật toán nén thực sự làm cho ou tput dà i hơn input).Trong SSLv3 (cũng như ph i ên bản h i ện tại của TLS),không có thu ật toán nén nào được chỉ rõ,vì vậy t hu ật t oán nén mặc định là null. Tính toán MAC (mã xác thực message) trên d ữ liệu đã được nén.Đ ể thực h i ện cần dùng đến1 khóa bí mật được chia sẻ.Phép t í nh được định nghĩa như s au : hash(MAC_write_secret || pad_2 || hash(MAC_write_secret || pad_1 ||seq_num ||SSLCompressed.type || SSLCompressed.length || SSLCompressed.fragment)) trong đó: + || : phép nố i / hoặc . +MAC_write_secret : khóa bí mật được chia sẻ. + hash : thuật toán băm mã hóa , MD5 hoặc SH A -1. + pad_1 : byte 0x36 (0011 0110) được l ặp lại 48 lần (384 bit) cho MD5 và 40 lần (320 bit) cho SH A -1. + pad_2 : byte 0x5c (0101 1100) được l ặp lại 48 lần cho MD5 và 40 lần cho SH A -1. +seq_num: sequence number cho message nay +SSLCompressed.type : g i ao thức ở l ớ p trên được dùng để xử lí phân mảnh này. +SSLCompressed.length : chiều dà i của phân mảnh đã được nén. +SSLCompressed.fragment : phân mảnh đã được nén (nếu nén không được d ùn g , phân mảnh ở dạng plaintext). Mã hóa theo phương pháp mã hóa đối xứng:Mã hóa có t hể không làm tăng chiều dài nội dung hơn 1024 byte,vì vậy chiều dài tổng cộng không vượt quá 2 14 +20 48. Các t huậ t toán mã hóa sau được cho phép: Block cipher (Mã hóa khối) Stream cipher (Mã hóa luồng) T hu ật t oán Kích thước khóa T hu ật t oán Kích thước khóa AE S 128,25 6 RC4- 40 40 IDE A 128 RC4-128 128 RC2- 40 40 DES- 40 40 DE S 56 3DE S 168 Fortezz a 80 9 Cuối cùng của xử lí SS L Record Protocol là gắn thêm vào1 head e r ,bao gồm các mục sau: Content Type (8 bit): g i ao thức l ớ p trên được dùng đ ể xử lí phân mảnh đi kèm. Major Version (8 bit): chỉ ra ph i ên bản SSL tối đa được dùn g . Ví dụ , SSLv3,giá trị này là 3. Minor Version (8 bit) : chỉ ra ph i ên bản tối t h i ểu được dùng.Ví dụ , SSLv3 ,giá trị này là 0. Compressed Length (16 bit) : chiều dà i theo byte của phân mảnh pl a i nt ext (hoặc chiều dài theo byte của phân mảnh đã nén nếu nén đư ợc dùng).Gía trị lớn nhất là 2 14 +2048. I.2.2 Giao thức SSL Change Cipher Spec Protocol Giao thức SSL Change Cipher Spec là g i ao thức đơn g i ản nhất trong ba g i ao thức đặc trưng của SSL mà sử dụng g i ao thức SSL Record . Giao thức này bao gồm một message đơn 1 byte g i á trị là 1. Mục đích chính của m es s ag e này là sinh ra trạng t há i t i ếp theo để gán vào trạng t há i hiện tại,và trạng t há 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. I.2.3 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.Như với nh ững ứng dụng khác sử dụng SSL, a l er t messages được nén và mã hóa , được chỉ định bở i trạng t h á i hiện t ại . Mỗi message trong g i ao thức này gồm 2 bytes .B y t e đầu t i ên giữ g i á trị cảnh báo(1) hoặc nguy hiểm(2) để t h ông báo độ nghiêm ngặt của message.N ếu mức độ là nguy hi ểm ,SS L lập tức chấp dứt kết nối.Những kết nố i cùng phiên khác vẫn có thể t i ếp tục nhưng sẽ khôn g kết nối nào khác trên phiên này được khởi tạo thêm.Byte thứ hai chứa một mã chỉ ra cảnh báo đặc trưng.Đầu t i ên , chúng ta liệt kê nh ững cảnh báo đó mà l uô n ở mức nguy hiểm ( được định nghĩa từ những thông số SS L): 10 unexpected_message : message không thích hợp bad_record_mac: MAC không chính xác decompression_failure : việc giải nén nh ận i nput không thích hợp(ví dụ như không thể giải nén hoặc giải nén lớn hơn độ dài t ố i đa cho phép). handshake_failure : bên gửi không thể thương l ư ợ ng một bộ chấp nhận được của các thông số bảo mật được đưa ra từ những lựa chọn có sẵn [...]... những ứng dụng đi kèm SSL được IANA( Internet Assigned Numbers Authority) công nhận : Name Nsiiop Https Smtps Nntps Ldaps Ftps-data Ftps Telnets Imaps Port 261 443 465 563 636 989 990 992 994 Description Dịch vụ IIOP trên TLS /SSL HTTP trên TLS /SSL SMTP trên TLS /SSL NNTP trên TLS /SSL LDAP trên TLS /SSL FTP-dữ liệu trên TLS /SSL FTP-điều khiển trên TLS /SSL TELNET trên TLS /SSL IRC trên TLS /SSL Hình 1 - Ngoài... Cài đặt SSL Như ở mục trên đã trình bày xin đưa ra 2 phương pháp cài đặt SSL trên 2 loại Web erver phổ biến đó là IIS và Apache + Cách cài đặt SSL trên máy chủ Internet Information Services (IIS) Web trên Win Server.( Xin một chứng chỉ cho web) + Cách cài đặt SSL trên máy chủ Apache Web Server trên hệ điều hành CenTos.( Tự tạo một chứng chỉ web) III Demo * Cài đặt SSL máy chủ IIS * Cài đặt SSL máy... II.2 Ứng Dụng SSL Trên Web Server II.2.1 Web Server ? - Web Server (Máy phục vụ Web) : máy tính mà trên đó cài đặt phần mềm phục vụ Web, đôi khi người ta cũng gọi chính phần mềm đó là Web Server Tất cả các Web Server đều hiểu và chạy được các file *.htm và *.html - Máy Web Server là máy chủ có dung lượng lớn, tốc độ cao, được dùng để lưu trữ thông tin như một n hàng dữ liệu, chứa những website đã được... truyền tải trên Web Trong bài viết này sẽ giới thiệu 2 phương pháp: + Cách cài đặt SSL trên máy chủ Internet Information Services (IIS) Web trên Win Server.( Xin một chứng chỉ cho web) + Cách cài đặt SSL trên máy chủ Apache Web Server trên hệ điều hành CenTos( Tự tạo một chứng chỉ web) 18 II.2.3 Quy Trình Và Cài Đặt SSL II.2.3.1 Quy trình cài đặt 1 Chọn 1 Server Cho ứng dụng 2 Tạo 1 CSR(Certificate... trang điện tử hoặc các dịch vụ Web khác yêu cầu phiên giao dịch an toàn thì bạn cần phải mã hóa dữ liệu được truyền thông giữa máy chủ Web và các máy khách của nó Trường hợp thường được sử dụng nhất đó là Secure Sockets Layer (SSL) , SSL sử dụng mã hóa khóa công khai để bảo vệ thông tin bí mật của người dùng (như là thẻ tín dụng, số tài khoản ngân hàng) vẫn được truyền tải trên Web Trong bài viết này sẽ... là thuật toán trao đổi khoá dùng trong SSL dựa trên thuật toán RSA - RC2 and RC4: - SHA-1 (Secure Hash Algorithm): - Các thuật toán trao đổi khoá như KEA, RSA key exchange được sử dụng để 2 bên client và server xác lập khoá đối xứng mà họ sẽ sử dụng trong suốt phiên giao dịch SSL Và thuật toán được sử dụng phổ biến là RSA key exchange - Các phiên bản SSL 2.0 và SSL 3.0 hỗ trợ cho hầu hết các bộ mã hoá... cho việc cung cấp thông tin trực tuyến -Có nhiều loại Web Server khác nhau, nhưng chủ yếu trên thị trường chỉ thường sử dụng Apache và IIS (Internet Information Server của Microsoft) Hình 3 17 II.2.2 Giải Pháp Bảo Vệ Web Server - Truyền thông HTTP được định nghĩa cho máy chủ Web nói chung, thông thường là các trang thông tin - Một số phương pháp cho Web Server an toàn hơn(hình vẽ): Hình 4 Tuy nhiên nếu... trong phiên giao dịch SSL II Ứng dụng của SSL II.1 Các ứng dụng phổ biến của SSL Tuy đến nay vẫn còn tồn tại một số lỗ hổng có thể bị 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ó Nó phổ biến đến mức nếu thấy tên một giao thức có hậu tố “s” thì người ta biết ngay giao thức ứng dụng đó được kết hợp kèm với SSL Sau đây là một số... nhận 11 I.2.4 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 Cơ chế giao thức SSL Handshake: 1) Client sẽ gửi cho server số phiên bản SSL đang dùng, các tham... số ứng dụng phổ biến hiện nay của SSL như bảo mật trong Remote Desktop Protocol cho kết nối Terminal Service, Http cho Outlook 15 Web Access hay Smtp/Imap/Pop3 cho mail , ứng dụng quan trọng của SSL mà không thể không nhắc tới là SSL VPN - Đó là lý do tại sao không chỉ các nhà cung cấp thiết bị mạng phần cứng đang đua nhau trong việc phát triển các sản phẩm hổ trợ SSL VPN mà cả những nhà cung cấp thiết . Outlook Name Port Description Nsiiop 261 Dịch vụ IIOP trên T LS / SS L 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 T LS / SS L Ftps 990 FTP- điều. (SSTP). II.2 Ứng Dụng SSL Trên Web Server II.2.1 Web Server ? - Web Server (Máy phục vụ Web) : máy tính mà trên đó cài đặt phần mềm phục vụ Web, đôi khi người ta cũng gọi chính phần mềm đó là Web Server khiển trên T LS / S SL Telnets 992 TELNET trên TLS /SSL Imaps 994 IRC trên TLS /SSL 16 Web Access hay Smtp/Imap/Pop3 cho mail , ứng dụng quan trọng của SSL mà không thể không nhắc t ớ i là SSL VPN -

Ngày đăng: 12/04/2014, 18:23

Từ khóa liên quan

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

Tài liệu liên quan