Hiện nay, có khá nhiều phương pháp xác thực, hầu hết các phương thức xác thực đều dựa trên: o Những gì bạn biết Username Password o Những gì bạn có Smart Card, Certificate Giới hạn nhữ
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
CƠ SỞ TẠI TP.HỒ CHÍ MINH
ĐỒ ÁN MÔN HỌC:
BẢO MẬT THÔNG TIN
TÌM HIỂU VỀ PASSWORD VÀ CÁC VẤN ĐỀ LIÊN QUAN
Trang 2Mở đầu
Lúc đầu khi xuất hiện mạng máy tính, nảy sinh vấn đề nhiều người cùng sử dụng hệ thống và bảo mật thông tin, nên đã phát sinh ra password Password lúc đầu chỉ đơn giản là người ta dùng một chuỗi
kí tự để ngăn cản sự truy cập của những người khác
Khi vấn đề password cracking đang ngày một tăng lên, cùng với sự tăng tốc về tốc độ của máy tính và sự rẻ dần của bộ nhớ, khả năng crack password của hacker ngày càng cao và thời gian ngày càng ngắn lại Cùng với đó là yêu cầu đối với người dùng khi sử dụng password cũng ngày càng cao: password phải được thay đổi theo chu kì, phải chọn password có độ mạnh theo quy định, và phải nhớ password của mình cũng như giữ bí mật nó
Từ các vấn đề trên,ta thấy: password là vấn đề nhạy cảm trong một máy tính, trong một mạng nhỏ cho đến mạng internet rộng lớn Vì vậy, nội dung đồ án này sẽ trình bày tổng quát về password và các vấn
đề liên quan như: xác thực, cracking password, cũng như đánh giá
độ mạnh của một password Từ đó chúng ta sẽ rút ra những kinh
nghiệm để bảo vệ thông tin của mình trước các cuộc tấn công
Trang 3I.SƠ LƯỢC VỀ VẤN ĐỀ XÁC THỰC:
Nói một cách đơn giản, xác thực là một quá trình nhận dạng người
dùng Trong môi trường mạng phát triển ngày càng mạnh mẽ, việc xác nhận
chính xác quyền truy cập hợp lệ của người dùng có ý nghĩa rất lớn trong bảo mật thông tin Hiện nay, có khá nhiều phương pháp xác thực, hầu hết các phương thức xác thực đều dựa trên:
o Những gì bạn biết (Username Password)
o Những gì bạn có (Smart Card, Certificate)
Giới hạn những giao thức, cho phép những kẻ tấn công khai thác
Trang 4 Sử dụng SSL để mã hóa dữ liệu Username Password để truyền giữa Client và Server
b Degest Authentication
Được thiết kế để nâng cao bảo mật hơn phương thức Basic Authentication
Được dựa trên nền tảng xác thực Challenge-Response
Nâng cao bảo bảo mật hơn phương thức Basic Authentication, hệ thống sẽ mã hóa Username Password trước khi truyền đi trên mạng
2.Kết hợp với phương thức xác thực NTLM của Windows:
Sử dụng công nghệ xác thực NT LAN Manager (NTLM) cho HTTP
Chỉ làm việc với IE và trên nền tảng Web server là IIS
Kết hợp với xác thực trên Windows sẽ thích hợp cho môi trường mạng cục bộ của doanh nghiệp
Trang 5 Nó là một phương thức xác thực mà không phải truyền bất kỳ thông tin nào về Username password trên mạng
3.Negotiate Authentication – Thỏa thuận xác thực:
Đây là một phương thức xác thực mở rộng cho NTLM Authentication
Cung cấp xác thực dựa trên nền tảng Kerberos
Sử dụng quá trình thương lượng để quyết định mức độ bảo mật được
sử dụng
Nó được cấu hình và sử dụng không chỉ cho mạng cục bộ
Trang 6B.Xác thực dựa vào smartcard và cirtificate:
1 Xác thực dựa vào Certificate:
Sử dụng Public Key để mã hóa và chứng chỉ số (Digital Certificate)
để xác thực người dùng
Nó được quan tâm và kết hợp với phương thức xác thực two-factor
Khi một người dùng biết được Username Password người đó còn phải cung cấp Certificate nữa thì mới được xác thực
Người dùng có thể bị đánh cắp Certtificate
Rất nhiều phần mềm hiện nay hỗ trợ xác thực qua chứng chỉ số
Trang 72.Xác thực dựa vào Forms:
Trang 83.Xác thực dựa vào RSA Secure Token:
Phương thức xác thực SecureID sử dụng một "token – Vé, card) Có một thiết bị phần cứng sẽ sinh ra các mã xác thực sau mỗi 60 giây và
sử dụng một tấm Card để giải mã key
Một người dùng thực hiện quá trình xác thực và tài nguyên mạng sẽ phải điền mã PIN và số hiển thị cho SecureID cho mỗi thời gian đó
Trang 9C.Xác thực dựa vào Sinh trắc học:
Một hệ thống xác thực dựa vào Sinh trắc học sẽ phải có những thiết bị nhận diện được người dùng dựa vào các yếu tố sinh học như: Vân tay, mắt, mặt, bàn tay…
Đây là một phương thức xác thực có tính bảo mật rất cao và thuận tiện cho người sử dụng không phải nhớ mật khẩu hay mang theo một tấm Card
Từ những điều vừa trình bày ở trên, ta có thể nhận thấy, các phương pháp xác thực bằng sinh trắc học hay sử dụng smart card có ưu điểm là có tính bảo mật rất cao, hacker khó có thể tấn công được hệ thống vì hacker khó có thể có được smartcard và càng không thể có được đặc điểm sinh học giống với users Thế nhưng để triển khai điều này ta cần một chi phí rất lớn – đặc biệt là chi phí lắp đặt hệ thống xác thực này tại các thiết bị của hệ thống thông tin
Từ sự phân tích trên cho ta thấy rằng giải pháp sử dụng password luôn
là một giải pháp hiệu quả khi chi phí thấp và dễ dàng sử dụng với độ bảo mật chấp nhận được, có thể nó sẽ rất hiệu quả nếu chúng ta có những chính sách hợp lý Do vậy, chúng ta sẽ tập trung thảo luận và nghiên cứu về password và những vấn đề bảo mật liên quan
Trang 10II PASSWORD và VẤN ĐỀ CRACKING PASSWORD:
Ngày nay, với sự phát triển không ngừng của kĩ thuật máy tính, nguy cơ bị hacker tấn công vào hệ thống thông tin ngày càng gia tăng, vấn đề password ngày càng trở nên phức tạp, giờ đây password không chỉ đơn thuần là một chuỗi kí tự bí mật của riêng users, mà nó luôn ở trong nguy cơ bị cracking cao độ, do đó đòi hỏi người dùng cần có những kiến thức mới về password
Vậy password là gì?
Password ( tạm dịch là mã xác nhận), là một từ hoặc một chuỗi kí
tự bí mật, được sử dụng để xác thực, chứng minh hoặc nhận dạng người
sử dụng truy cập tài nguyên
Tại sao password lại cần thiết?
o Password giúp ta ngăn chặn việc xâm nhập trái phép vào hệ thống, bảo vệ thông tin, và giúp ta xác nhận duy nhất cá nhân đăng nhập
hệ thống cũng như ghi vết lại những hành động của họ trên dữ liệu
o Bất cứ hệ thống nào, một vài người dùng nhất định có những đặc quyền mà những người khác không có Bằng cách nhận dạng chính bạn trên chính máy tính của bạn hoặc các website, bạn được tiếp cận môi trường làm việc của riêng bạn và các dữ liệu các nhân của bạn, những tài liệu này là các dữ liệu nhạy cảm và không muốn công khai
Các hiểm họa đến từ password:
o Trong khi phần lớn các tổ chức và 99% người dùng tại gia vẫn phụ thuộc vào passwords như là một hình thức nhận dạng cơ bản đối với các dữ liệu nhạy cảm và riêng tư, thì các mạng có cơ chế bảo
Trang 11mật thấp vô hình chung tạo ra các lỗ hổng cho hacker tiếp cận tài nguyên của công ty và tài sản người dùng
o Mặc dù passwords là phương tiện cần thiết, thân thiện với người dùng nhất để nhận dạng người dùng khi tiếp cận mạng hoặc cơ sở
dữ liệu của họ, nhưng sự thật người dùng rất lơ là với những yêu cầu là họ cần thay đổi password, cần tạo ra một password có tính bảo mật và làm theo những chỉ dẫn để giữ nó càng bí mật càng tốt Kết quả là một số lượng lớn các password có thể dò được, các passwords giống nhau trên nhiều hệ thống, và người dùng phải ghi chú để đăng nhập gồm password và cả tên đăng nhập.
Những nguy hiểm khi password bi lộ:
o Identity theft (trộm thông tin nhận dạng): identity theft xảy ra khi
dữ liệu tài khoản của bạn bị một người nào khác sử dụng Điều này đưa đến những tổn hại về tài chính, cũng như là tổn hại cá nhân
(dùng tài khoản của bạn để rút tiền, v.v….)
o Sensitive data exposure (lộ dữ liệu nhạy cảm): nội dung của thư
điện tử , các dự án, tài liệu, ảnh bị phơi bày trước các hacker, hay
các cá nhân nhắm đến bạn với mục đích xấu
o Company data exposure (lộ dữ liệu công ty): các hoạt động gián
điệp lấy các thông tin nhạy cảm nội bộ thông qua dữ liệu tài khoản được duy trì và giữ gìn thiếu cẩn thận dẫn đến sự ảnh hưởng vô
cùng to lớn đến công ty bạn đang làm việc
o Sử dụng cho các hoạt động tội phạm: tài khoản của bạn sẽ bị sử
dụng cho mục đích tội phạm nếu không giữ nó cẩn thận Đừng quên rằng dấu vết sẽ lần lại tài khoản của bạn và do đó bạn không
tránh khỏi liên quan
Vậy tấn công password là gi?
Tấn công password là ta tìm cách có được password của môt
userID nào đó để xâm nhập vào hệ thống của họ
Một password có thể bị tấn công với rất nhiều hình thức khác nhau:
Trang 12o Lỗ hổng bảo mật vật lý: một lỗ hổng vật lý của máy tính sẽ hoàn toàn
bị khai thác ngay cả khi phương pháp nhận dạng phức tạp nhất, phương pháp mã hóa bảo mật nhất Ví dụ: một chương trình theo dõi các thao tác trên bàn phím (keylogger), cả phần mềm lẫn phần cứng được cài đặt,khóa của bạn sẽ bị lộ, do đó mọi dữ liệu mã hóa và tài khoản bị tổn hại Bất chấp password của bạn dài và bảo mật đến đâu thì lỗ hổng bảo mật vật lí là một trong những trường hơp nguy hiểm nhất
o Packet sniffers: bắt mật khẩu trên môi trường không mã hóa tốt, đặt
biệt trong môi trường mạng Lan khi các máy ra Net bắt buộc phải đi
ra default gateway Các hệ thống truyền đạt thông tin qua mạng đôi khi không chắc chắn lắm và lợi dụng điều này, hacker có thể truy cập vào data paths để nghe trộm hoặc đọc trộm luồng dữ liệu truyền qua.Hacker nghe trộm sự truyền đạt thông tin, dữ liệu sẽ chuyển đến sniffing hoặc snooping Nó sẽ thu thập những thông tin quý giá về hệ thống như một packet chứa password và username của một ai đó Các chương trình nghe trộm còn được gọi là các sniffing Các sniffing này
có nhiệm vụ lắng nghe các cổng của một hệ thống mà hacker muốn nghe trộm Nó sẽ thu thập dữ liệu trên các cổng này và chuyển về cho hacker
o Trojan horse programs: xuất hiện như dạng link trên các trang web
làm chi người dùng tin tưởng click vào, bắt cài activex khi người dùng muốn logon vào một trang web, trong các phần mềm cài đặt, email…Sau khi Trojan đã về máy người dùng thì nó có thể lấy password khi người dùng nhập và gửi về khổ chủ
o Tấn công dùng Cookies :Cookie là những phần tử dữ liệu nhỏ có cấu
trúc được chia sẻ giữa website và trình duyệt của người dùng Cookies được lưu trữ dưới những file dữ liệu nhỏ dạng text (size dưới 4KB) Chúng được các site tạo ra để lưu trữ, truy tìm, nhận biết các thông tin về người dùng đã ghé thăm site và những vùng mà họ đi qua trong site Những thông tin này có thể bao gồm tên, định danh người dùng, mật khẩu, sở thích, thói quen, …Cookies được Browser của người dùng chấp nhận lưu trên đĩa cứng của máy tính, không phải Browser nào cũng hổ trợ cookies
Trang 13o Bẻ khóa: có hai phương pháp là bẻ khóa bằng tay và bẻ khóa tự động
Bẻ khóa bằng tay: sử dụng một userID hợp lệ ( hacker có thể dễ
dàng tìm được bằng cách sử dụng war dailer ), dự đoán mật khẩu mà user đó có thể sử dụng Sau đó thử từng mật khẩu đó cho đến khi thành công
Bẻ khóa tự động: tìm file mã hóa password, sau đó tiến hành giải mã để có được file password dạng plantext
Để tìm hiểu về vấn đề này, trước hết ta phải tìm hiểu về cơ chế mã hóa và xác nhận password
Mã hóa password: hiện nay, đa số password được “ băm” một chiều bằng các hàm băm ví dụ như SHA hoặc MD5 Do dó trên các ứng dụng tốt, password chỉ được lưu dưới dạng chuổi kí tự đã được băm chứ không bao giờ được lưu dưới dạng plaintext
Xác nhận password: Giả sử user A có password là a, password này
0cc175b9c0f1b6a831c399e269772661 rồi chứa vào CSDL Khi user
A login và dùng password a để đăng nhập, application sẽ hash a và so sánh giá trị vừa hash xong với giá trị đã lưu trong CSDL Nếu chúng trùng nhau, user A được vào
Khi các hệ thống bi nhân nhượng, các hacker chỉ có thể có được file mã hóa password, không thể có được file password dạng plaintext, do đặc tính một chiều của hàm băm, các hacker muốn có được password dang plaintext chỉ
Trang 14hết các hệ thống, tấn công từ điển có thể hoàn thành trong thời gian ngắn để so sánh với các tổ hợp từ có thể
Việc lập file từ điển khá đơn giản, nhất là khi bạn biết khá rõ về user này Ví dụ: một thuật ngữ thường xuyên được sử dụng trong công việc của user, hoặc tên một người quan trọng đối với user đó cũng có thể được đưa vào từ điển
Dạng brute-force:
Đây là phương pháp bẻ password bằng cách vét cạn tất cả các trường hợp ghép nối các kí tự có thể có, bắt đầu từ những kí tự đơn giản thông thường cho đến những kí tự đặc biệt, sau đó băm ra để so sánh với password người dùng
Do đó, với một máy tính mạnh có khả năng ghép nối các kí tự lại với nhau, hacker có thể bẻ được tất cả những password nếu
có đủ thời gian
Dạng tổng hợp:
Là sự kết hợp giữa tấn công bằng từ điển và brute force Tấn công bằng từ điển sẽ quét các từ có nghĩa, tấn công brute force
sẽ quét các kí tự còn lại như kí tự đặc biệt, kí tự số…
Ví dụ: user sử dụng password là intertainment111 Khi đó không thể dùng phương pháp từ điển vì không có từ nào chứa
số, nếu dùng phương pháp brute force thì quá lâu Ta sẽ dùng phương pháp tấn công tổng hợp, bằng cách sử dụng phương pháp từ điển để lấy ra một từ có nghĩa, sau đó dùng phương pháp brute force ghép thêm 2 con số vào sau từ đó và dò tìm password Phương pháp này sẽ hiệu quả hơn nhiều
Dưới đây ta sẽ khảo sát một vài chương trình minh họa tiêu biểu:
1 Tấn công brute_force:
Windows là hệ điều hành phổ biến nhất trên thế giới, nó luôn tiềm ẩn những lỗi bảo mật Trong phần này tôi sẽ trình bày phương thức tấn công một máy tính cài hệ điều hành Windows Từ những kiến thức và khả năng tấn công vào máy tính cài hệ điều hành Windows tôi sẽ đưa ra các giải pháp bảo mật cho hệ thống
Tấn công Password của tài khoản trong Windows
Trang 15a Trên máy Local
Giả sử bạn không biết mật khẩu của một máy tính trong hệ thống, nhưng bạn lại nhờ người đó gõ mật khẩu của họ và cho bạn mượn máy tính dùng tạm Và bạn giờ đây là làm thế nào để biết được Password trên máy bạn đang logon
Rất nhiều phần mềm có thể Exports đoạn mã hoá của Password ra thành một File điển hình là PasswordDump, WinPasswordPro, trong bài viết này tôi trình bày với các bạn sử dụng WinPasswordPro
Bật chương trình WinPasswordPro lên Import Password từ máy Local
Sau Khi Import Password từ file SAM vào sẽ được
Trang 16Sau đó ta Export danh sách User và Password đã đƣợc mã hoá ra một file txt và gửi vào Mail của chúng ta, sang máy chúng ta cũng dung phần mềm này để giải mã ngƣợc lại
Mở file TXT đã exports ra ta có dữ liệu password đã đƣợc mã hoá
Trang 17Sau khi lấy được dữ liệu User – Password đã mã hoá ta Uninstall chương trình này trên máy nạn nhân để khỏi lộ - rồi gửi file đó vào Mail để về máy của ta Giải mã – đây là công đoạn tốn thời gian Đối với mật khẩu dài 10 ký
tự mất khoảng 1 tiếng
Bật chương trình WinPasswordPro trên máy của chúng ta chọn File -> Import PWDUMP file rồi chọn đường dẫn tới file password được mã hoá Sau khi Import từ file PWDUMP ta được - Nhấn vào Start ta sẽ có 3 phương thức tấn công Password
+ Brute Force
+ Dictionary
+ Smart Table