2.2.3 Tính cước AccountingTính cước cho phép quản trị viên có thể thu thập thông tin như thời gian bắt đầu, kết thúc truy cập hệ thống của người dùng, các câu lệnh đã thực thi, thống
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
TÊN CHUYÊN ĐỀ: AN NINH MẠNG MÁY TÍNH, NGUY
CƠ CÁC CUỘC TẤN CÔNG VÀ GIẢI PHÁP BẢO MẬT
Trang 3Chương 1:
1.1 Nguy cơ của các cuộc tấn công
1.2 An ninh mạng máy tính
AN NINH MẠNG MÁY TÍNH VÀ NGUY CƠ CÁC CUỘC TẤN CÔNG
Trang 41.1 Nguy cơ của các cuộc tấn công
Với sự phát triển đa dạng của công nghệ thông tin hiện nay,
sẽ nảy sinh ra những lỗ hổng bảo mật với mức độ nghiêm trọng khác nhau và biện pháp khắc phục phức tạp và khó khăn hơn
Chương 1:
1.1.1 Các đối tượng tấn công mạng.
Là những đối tượng sử dụng các kỹ thuật về Internet để dò tìm các lỗ hổng bảo mật trên hệ thống để thực hiện xâm nhập và chiếm đoạt thông tin bất hợp pháp nhằm chiếm đoạt tài sản hoặc thông tin dữ liệu quan trọng.
Các đối tượng tấn công mạng cụ thể là:
• Hacker: (tin tặc) Xâm nhập bất hợp pháp vào mạng bằng cách sử dụng các công cụ phá mật khẩu hoặc khai thác các điểm yếu của hệ thống để sửa đổi phần cứng và phần mềm của máy tính.
• Masquerader: Giả mạo thông tin, địa chỉ IP, tên miền, định danh người dùng…
• Eavesdropping: Là những đối tượng nghe trộm thông tin nhằm đánh cắp dữ liệu trong các cuộc hội thoại.
AN NINH MẠNG MÁY TÍNH VÀ NGUY CƠ CÁC CUỘC TẤN CÔNG
Trang 51.1.2 Các lỗ hổng bảo mật
Là những điểm yếu trên hệ thống mà dựa vào đó đối tượng tấn công
có thể xâm nhập trái phép vào hệ thống.
• Lỗ hổng loại A: Cho phép người ngoài truy cập bất hợp pháp vào hệ thống, có thể phá hủy toàn bộ hệ thống
• Lỗ hổng loại B: Là lỗ hổng không cần kiểm tra tính hợp lệ của hệ thống
mà tự cho phép người sử dụng có thêm các quyền trên hệ thống dẫn đến lộ và lọt thông tin
• Lỗ hổng loại C: Cho phép thực hiện hình thức tấn công theo kiểu DoS (Denial of Services – Từ chối dịch vụ) làm ảnh hưởng tới chất lượng dịch vụ, ngưng trệ, gián đoạn hệ thống, nhưng không phá hỏng dữ liễu hoặc đoạt được quyền truy cập hệ thống
Trang 61.1.3 Một số phương thức tất công mạng
• Tấn công trực tiếp: Dùng máy tính tấn công máy tính khác với mục đích dò mật khẩu, tên tài khoản tương ứng,
• Kỹ thuật đánh lừa (Social Engineering): sử dụng để nhập công cụ vào mạng và máy tính
• Kỹ thuật tấn công vào vùng ẩn : kẻ tấn công có thể sử dụng kỹ thuật View
Source của trình duyệt để đọc tiêu đề này và từ đó tìm ra các lỗ hổng của trang Web mà chúng muốn tấn công Từ đó có thể tấn công vào hệ thống máy chủ để lấy thông tin về các phiên của khách hàng
• Tấn công vào các lỗ hổng bảo mật: Các lỗ hổng bảo mật được phát hiện ngày càng nhiều trong hệ điều hành, máy chủ web hay các phần mềm khác,
• Nghe lén: Các hệ thống trao đổi thông tin qua mạng đôi khi không được bảo mật tốt và lợi dụng điều này, hacker có thể truy cập vào các đường dẫn dữ liệu để nghe trộm hoặc đọc dữ liệu được truyền đi
• Kỹ thuật giả mạo địa chỉ: Họ tự đặt địa chỉ IP của máy tính mình trùng với địa chỉ IP của một máy tính trong mạng bị tấn công Nếu như làm được điều này, hacker có thể lấy dữ liệu, phá hủy thông tin hay phá hoại hệ thống
• Kỹ thuật chèn mã lệnh: Chèn mã cho phép kẻ tấn công đưa mã thực thi vào
phiên web của người dùng khác Khi mã này được chạy, nó sẽ cho phép kẻ tấn công thực hiện nhiều hành động như giám sát phiên làm việc trên trang web hoặc có thể chiếm toàn quyền kiểm soát máy tính của nạn nhân
• Khai thác tình trạng tràn bộ đệm: Tràn bộ đệm là một tình trạng xảy ra khi dữ liệu được gửi quá nhiều so với khả năng xử lý của hệ thống hay CPU Hacker sẽ làm tê liệt hệ thống và chiếm quyền kiểm soát
• Tấn công vào hệ thống có cấu hình không an toàn: Các lỗ hổng này được tạo ra
do các ứng dụng có các thiết lập không an toàn hoặc người quản trị hệ thống định cấu hình không an toàn Chẳng hạn như cấu hình máy chủ web cho phép ai cũng có quyền duyệt qua hệ thống thư mục Việc thiết lập như trên có thể làm lộ các thông tin nhạy cảm như mã nguồn, mật khẩu hay các thông tin của khách hàng
• Các cuộc tấn công bằng cách sử dụng cookie: Cookie là các phần tử dữ liệu có cấu trúc nhỏ được chia sẻ giữa trang web và trình duyệt của người dùng Chúng được tạo bởi các trang web để lưu trữ, truy xuất và xác định thông tin về những người dùng đã truy cập trang web và các khu vực họ đi qua trong trang web
• Can thiệp vào các tham số URL: Đây là một cuộc tấn công đưa các tham số trực tiếp vào URL Những kẻ tấn công có thể sử dụng các câu lệnh SQL để khai thác
cơ sở dữ liệu trên các máy chủ bị lỗi
• Vô hiệu hoá Dịch vụ: Kiểu tấn công này thường làm tê liệt một số dịch vụ
Hacker sẽ gửi các yêu cầu này liên tục khiến hệ thống bị tắc nghẽn và một số dịch vụ sẽ không khả dụng cho khách hàng thực sự
Trang 7* Một số kiểu tấn công khác:
• Lỗ hổng không đăng nhập:
• Thay đổi dữ liệu
• Password-base Attact
• Identity Spoofing
Trang 81.2 An ninh mạng máy tính
Trang 91.2.2 Các phương thức đảm bảo an toàn và an ninh mạng
Một số phương thức bảo đảm an toàn, bảo mật thông tin, dữ liệu:
Mật mã (Cryptography)
Xác thực (Authentication)
Phân quyền (Authorization)
Tính cước (Accounting)
Trang 102.1 Giải pháp bảo mật AAA
2.2 Định nghĩa
2.3 Giao thức sử dụng trong giải pháp AAA
GIẢI PHÁP BẢO MẬT AAA
Chương 2:
Trang 11Chương 2:
2.1 Giải pháp bảo mật AAA
GIẢI PHÁP BẢO MẬT AAA
AAA cho phép người quản trị mạng biết các thông tin về tình hình cũng như hệ thống bảo mật trong mạng đang thế nào
AAA với ba thành phần:
• Xác thực (authentication)
• Phân quyền (authorization)
• Tính cước (accounting)
AAA có thể dùng để tập hợp thông tin từ nhiều thiết bị trên mạng
Trang 132.2.2 Phân quyền (Authorization)
Phân quyền được thực thi sau khi xác thực đã hoàn thành.
Phân quyền trong AAA cho phép hoạt động giống như một tập các thuộc tính
mô tả những gì một người dùng được xác thực có thể có.
Trang 142.2.3 Tính cước (Accounting)
Tính cước cho phép quản trị viên có thể thu thập thông tin như thời gian bắt đầu, kết thúc truy cập hệ thống của người dùng, các câu lệnh đã thực thi, thống kê lưu lượng, tài nguyên sử dụng sau đó lưu trữ thông tin trong một hệ thống cơ sở dữ liệu quan hệ
Nói cách khác, tính cước cho phép giám sát các dịch vụ và tài nguyên được sử dụng bởi người dùng.
Trang 152.3 Giao thức sử dụng trong giải pháp AAA
2.3.1 Giới thiệu
Có hai giao thức bảo mật dùng trong dịch vụ AAA:
• TACACS (Terminal Access Controller Access Control System)
• RADIUS (Remote Authentication Dial-In User Service)
TACACS và RADIUS được sử dụng từ một thiết bị như máy chủ truy cập mạng (NAS) đến máy chủ AAA.
Phân biệt giữa TACACS+ và RADIUS
Trang 162.3.2 TACACS+
2.3.2.1 Khái niệm TACACS+
TACACS là một giao thức được chuẩn hóa sử dụng giao thức hướng kết nối (connection-oriented) là TCP trên cổng 49, được biết đến như một tập hợp các giao thức được tạo ra và nhằm mục đích kiểm soát quyền truy cập vào các thiết
bị đầu cuối máy tính lớn và Unix.
Cisco đã tạo ra một giao thức mới gọi là TACACS +, được phát hành như một tiêu chuẩn mở vào đầu những năm 1990,
TACACS + được chia thành ba phần:
• Chứng thực: Các giao thức TACACS+ chuyển tiếp nhiều loại tên người dùng và thông tin mật khẩu Thông tin này được mã hóa trên mạng với MD5.
• Cấp quyền: TACACS + cung cấp một cơ chế máy chủ truy cập theo đó danh sách người dùng đã truy cập được kết nối đến một cổng để sử dụng.
• Tính cước: TACACS cung cấp thông tin tính cước cho cơ sở dữ liệu thông qua TCP để đảm bảo một bản ghi tính cước hoàn chỉnh và an toàn hơn
Trang 172.3.2.2 Nguyên lý hoạt động của TACACS+
A, Xác thực
Tiến trình xác thực của TACACS+
TACACS+ sử dụng ba loại gói tin cho tiến trình xác thực:
• START: Gói tin khởi tạo yêu cầu xác thực phiên người dùng, được gửi đến máy chủ AAA.
• REPLY: Gói tin trả lời yêu cầu tới AAA client, cũng là thông điệp muốn gửi đến AAA client.
• CONTINUE: Gói tin đáp ứng cho thông điệp được gửi từ gói tin REPLY
mà máy chủ AAA gửi.
Các giá trị có thể được trả về từ máy chủ AAA đến máy khách AAA trong thông báo REPLY cuối cùng như sau:
- CHẤP NHẬN: Xác thực người dùng đã thành công và quy trình phân quyền có thể bắt đầu nếu AAA client được định cấu hình cho phân quyền.
- TỪ CHỐI: Xác thực người dùng không thành công Đăng nhập sẽ bị từ chối hoặc người dùng cuối sẽ được nhắc thử lại, tùy thuộc vào cấu hình của AAA client.
- LỖI: Đã xảy ra lỗi tại một số điểm trong quá trình xác nhận Máy khách AAA thường
sẽ cố gắng xác thực lại người dùng hoặc thử một phương pháp xác thực người dùng khác.
Trang 182.3.2.2 Nguyên lý hoạt động của TACACS+
B, Phân quyền và tính cước
Tiến trình phân quyền của
FAIL: Cho biết người dùng nên bị từ chối truy cập vào dịch vụ được yêu cầu.
PASS_ADD: Cho biết phân quyền thành công và thông tin có trong thông báo RESPONSE nên được sử dụng cùng với thông tin được yêu cầu
PASS_REPL: Cho biết phân quyền thành công nhưng máy chủ đã chọn bỏ qua YÊU CẦU và sẽ thay thế nó bằng thông tin được gửi lại trong RESPONSE.
FOLLOW: Cho biết rằng máy chủ AAA muốn máy khách AAA gửi yêu cầu phân quyền đến một máy chủ khác Thông tin máy chủ mới sẽ được liệt kê trong gói RESPONSE Máy khách AAA có thể sử dụng máy chủ mới đó hoặc coi phản hồi là FAIL.
ERROR: Cho biết sự cố xảy ra trên máy chủ AAA và cần khắc phục sự cố thêm.
* REQUEST: Thông báo này được gửi từ máy khách AAA đến máy chủ AAA
để cho biết thông báo về hoạt động Một trong ba giá trị có thể được bao gồm trong YÊU CẦU:
- START: Chỉ ra rằng một dịch vụ đã bắt đầu.
- STOP: Chỉ ra rằng dịch vụ đã kết thúc.
- CONTINUE: Cho biết một dịch vụ đã bắt đầu và đang được tiến hành nhưng có thông tin cập nhật để cung cấp liên quan đến dịch vụ; đôi khi cũng được gọi là bản ghi Watchdog hoặc CẬP NHẬT.
Tiến trình tính cước của
- SUCCESS: Cho biết rằng máy chủ nhận được bản ghi từ máy khách
- ERROR: Chỉ ra lỗi trên máy chủ và bản ghi không được lưu trữ
- FOLLOW: Cho biết rằng máy chủ muốn máy khách gửi bản ghi đến một máy chủ AAA khác và bao gồm thông tin máy chủ đó trong RESPONSE
Trang 192.3.2.3 Ưu tiên của TACACS+
+ Có khả năng nhận gói reset trong TCP, một thiết bị có thể thông báo ngay lập tức cho một thiết bị đầu cuối khác rằng đã xảy ra lỗi đường truyền
+ TCP là một giao thức có thể mở rộng vì cơ chế khôi phục lỗi tích hợp của nó Nó có thể tương thích để phát triển cũng như làm nghẽn mạng bằng việc sử dụng số thứ tự để truyền lại.+ Toàn bộ tải trọng được mã hóa bằng TACACS + sử dụng khóa bí mật được chia sẻ TACACS + đánh dấu một trường trong tiêu đề để xác định thử xem có mã hóa hay không.+ TACACS+ mã hóa toàn bộ gói tin với việc dùng khóa bí mật chung nhưng bỏ qua header TACACS chuẩn, với header là một trường xác định body có mã hóa hay không
+ TACACS+ hỗ trợ đa dạng giao thức
+ Với TACACS +, chúng ta có thể sử dụng hai phương pháp để kiểm soát quyền thực thi lệnh của một người dùng hoặc một nhóm nhiều người dùng:
⁻ Phương pháp đầu tiên là tạo một mức đặc quyền với một số lệnh giới hạn và người dùng được xác thực bởi bộ định tuyến và máy chủ TACACS sau đó sẽ được cấp mức đặc quyền
Trang 202.3.3 RADIUS
2.3.3.1 Khái niệm RADIUS
RADIUS là một giao thức mạng được sử dụng để xác thực và cho phép người dùng truy cập vào một mạng từ xa
Thông tin được sử dụng để xác thực được lưu trữ tập trung trong Radius Server Khi cần xác thực người dùng, NAS (Radius client) sẽ chuyển thông tin của người dùng đến Radius Server để kiểm tra
Kết quả sẽ được máy chủ Radius trả về cho NAS Thông tin trao đổi giữa Radius Server và Radius Client được mã hóa Có thể hiểu Radius Server cung cấp cho Radius Client khả năng truy cập tài khoản người dùng trên Active directory
Trang 21Mỗi phản hồi trong số ba phản hồi RADIUS này có thể bao gồm một thuộc tính thông báo phản hồi bổ sung Máy chủ RADIUS có thể phản hồi với lý do từ chối, yêu cầu thêm thông tin hoặc thông báo chào mừng chấp nhận.
Các thuộc tính ủy quyền được chuyển đến NAS, chỉ định các quyền được phép.Ví dụ: các thuộc tính phân quyền sau có thể được bao gồm trong Access-Accept:
• Địa chỉ IP cụ thể được gán cho người dùng
• Dải địa chỉ IP người dùng có thể chọn
• Thời gian tối đa mà người dùng có thể kết nối
• Danh sách truy cập, hàng đợi ưu tiên hoặc các hạn chế khác đối với quyền truy cập của người dung
RADIUS tận dụng mô hình máy khách/máy chủ (client/server) để xác thực quyền truy cập của người dùng mạng Trong thực tế, yêu cầu người dùng truy cập mạng được gửi từ máy khách như hệ thống người dùng hoặc điểm truy cập WiFi đến máy chủ RADIUS để xác thực
Bằng cách sử dụng các phương pháp xác thực như PAP, CHAP hoặc EAP, máy chủ RADIUS kiểm tra xem thông tin có chính xác hay không
Khi NAS được cấu hình để sử dụng RADIUS, bất kỳ người dùng nào của NAS sẽ gửi thông tin xác thực cho NAS
NAS có thể chọn xác thực bằng RADIUS khi nó có được thông tin Để thực hiện việc này, NAS đưa ra một "Yêu cầu truy cập" chứa các thuộc tính như tên người dùng, mật khẩu người dùng, ID và cổng mà người dùng đang truy cập Sau khi có mật khẩu, mật khẩu sẽ được ẩn bằng một phương pháp dựa trên Thuật toán mã hóa RSA MD5
• Thông số L2TP.
• Thông số VLAN
• Thông số chất lượng dịch vụ
2.3.3 RADIUS
2.3.3.2 Nguyên lý hoạt động của RADIUS
A, Xác thực và phân quyền (Authentication & Authorization):
Người dùng hoặc máy tính gửi thông tin xác thực để truy cập tài nguyên mạng tới Máy chủ truy cập mạng (NAS)
Sau đó, NAS sẽ gửi thông báo Yêu cầu truy cập RADIUS đến máy chủ RADIUS, yêu cầu quyền cấp quyền truy cập thông qua giao thức RADIUS
Kết nối giữa NAS và máy chủ RADIUS được mã hóa với chuỗi bảo mật được chia sẻ
và xác định trước giữa hai đầu
A, Xác thực và phân quyền (Authentication & Authorization):
Máy chủ RADIUS hiện có thể thực hiện việc này bằng cách truy vấn các nguồn khác như máy chủ Kerberos, SQL, LDAP hoặc Active Directory để xác thực thông tin đăng nhập của người dùng
Sau đó, máy chủ RADIUS gửi về 1 trong 3 phản hồi cho NAS:
1 Access Reject (Từ chối truy cập)
2 Access Challenge (Yêu cầu gửi thêm thông tin truy cập)
3 Access Accept (Chấp nhận truy cập)
Luồng xác thực và phân quyền của Radius
Trang 222.3.3 RADIUS
2.3.3.2 Nguyên lý hoạt động của RADIUS
B, Tính cước (Accounting)
Tính cước của Radius
RFC 2866 mô tả việc tính cước Khi NAS cấp quyền truy cập mạng cho người dùng, Thông tin thanh toán (gói Yêu cầu thanh toán RADIUS chứa thuộc tính Loại trạng thái hoạt động với giá trị
"Bắt đầu") được gửi đến máy chủ RADIUS bằng cổng mặc định
Định kỳ, bản ghi Cập nhật tạm thời (gói Yêu cầu thanh toán RADIUS chứa thuộc tính Loại trạng thái hoạt động với giá trị "cập nhật tạm thời") có thể được NAS gửi đến máy chủ RADIUS để cập nhật trạng thái của phiên
Cuối cùng, khi chấm dứt quyền truy cập mạng của người dùng, NAS sẽ phát hành bản ghi dừng thanh toán cuối cùng (gói RADIUS Billing Request chứa thuộc tính Acct Status Type với giá trị "stop" (Dừng)) cho máy chủ RADIUS, cung cấp thông tin cuối cùng về thời gian, tổng số gói được truyền, tổng dữ liệu đã truyền, lý do ngắt kết nối và các thông tin khác liên quan đến việc truy cập mạng của người dùng