Trờng ĐH Bách khoa Hà Nội
Báo cáo đề tài nhánh 3
Thuộc đề tài:
Nghiên cứu xây dựng hệ thống kiểm soát
trung cập mạng và an ninh thông tin dựa
trên sinh trắc học sử dụng công nghệ nhúng
Chủ nhiệm đề tài: Nguyễn Thị Hoàng Lan
8600-3
Hà Nội - 2010
BỘ KHOA HỌC VÀ CÔNG NGHỆ
BỘ GIÁO DỤC VÀ ĐÀO TẠO
Trường Đại học Bách khoa HN
CHƯƠNG TRÌNH KHCN CẤP NHÀ NƯỚC KC.01/06-10
BÁO CÁO NHÁNH 3
KẾT QUẢ KHOA HỌC CÔNG NGHỆ ĐỀ TÀI
Nghiên cứu xây dựng hệ thống kiểm soát truy cập
mạng và an ninh thông tin dựa trên sinh trắc học
sử dụng công nghệ nhúng
Mã số đề tài: KC.01.11/06-10
Cơ quan chủ trì đề tài: Đại học Bách khoa Hà Nội
................................................................................................................31
1.4.1 Bảo mật phân hệ “Tạo lập CSDL, quét nhập, mã hoá và cập nhật chỉ
bản 10 ngón vào CSDL”.......................................................................................36
1.4.2 Bảo mật phân hệ “Biên tập và kiểm tra chất lượng” ............................................38
1.4.3 Bảo mật phân hệ “Tổ chức cơ sở dữ liệu”............................................................39
1.4.4 Phân hệ “Tra tìm, Đối sánh”.................................................................................39
1.4.5 Bảo mật phân hệ “Tiếp nhận, Xử lý và Trả lời các yêu cầu” ...............................41
1.5 Xây dựng kịch bản và lập trình thử nghiệm giải pháp đối sánh thẩm định sinh
trắc học vân tay trực tuyến (vân tay sống) để kiểm soát truy cập mạng ........................41
1.5.1 Bài toán truy cập mạng.........................................................................................41
1.5.2 Phân tích, thiết kế ứng dụng kiểm soát truy cập mạng.........................................48
1.5.3 Biểu đồ Usecase và biểu đồ tuần tự quá trình kiểm soát truy cập mạng ..............50
1.5.4 Cài đặt ứng dụng kiểm soát truy cập mạng trên nền hệ thống BioPKI ................60
1.5.5 Kịch bản thử nghiệm và kết quả...........................................................................66
1
Chương 2.
HỆ NHẬN DẠNG VÂN TAY TỰ ĐỘNG C@FRIS VÀ XÂY DỰNG
GIẢI PHÁP BẢO MẬT DỰA TRÊN SINH TRẮC HỌC TRÊN NỀN
HỆ THỐNG BioPKI ........................................................................................72
2.1 Nghiên cứu giải pháp và lập trình cài đặt thử nghiệm hệ truy cập mạng dựa trên
sự kết hợp đa sinh trắc vân tay và vân lòng bàn tay ......................................................72
2.1.1 Giới thiệu mở đầu .................................................................................................72
2.1.2 Sơ đồ nguyên lý chung của hệ KSTC...................................................................74
2.1.3 Về một số bộ công cụ nhận dạng đường vân trên thế giới ...................................77
2.1.4 Mục tiêu, yêu cầu xây dựng hệ kiểm soát truy cập (KSTC) ................................81
Chương 4.
THỬ NGHIỆM VÀ ĐÁNH GIÁ...................................................................153
2
4.1 Thử nghiệm ứng dụng kiểm soát truy cập mạng trong phòng thí nghiệm...................153
4.1.1 Mô hình thử nghiệm ...........................................................................................153
4.1.2 Nội dung và kết quả thử nghiệm ........................................................................153
4.1.3 Kết quả đánh giá .................................................................................................154
4.1.4 Đánh giá chung:..................................................................................................155
4.2 Thử nghiệm ứng dụng C@FRIS được tích hợp thêm các lớp bảo mật của hệ
thống BioPKI 155
4.2.1 Mô hình thử nghiệm ...........................................................................................155
4.2.2 Nội dung và kết quả thử nghiệm ........................................................................157
4.3 Đánh giá chung ............................................................................................................162
KẾT LUẬN ..........................................................................................................................164
TÀI LIỆU THAM KHẢO.....................................................................................................167
3
DANH MỤC CÁC TỪ VIẾT TẮT
AFIS: Automated Fingerprint Identification System
CCCD/CCCP: Căn Cước Công Dân/ Căn Cước Can Phạm
CSDL: Cơ Sở Dữ Liệu
KSTC: Kiểm Soát Truy Cập
PTN MP&THHT: Phòng Thí Nghiệm Mô Phỏng và Tích Hợp Hệ Thống
Hình 1.27 Giao diện khi người dùng đăng nhập CSDL thành công....................................68
Hình 1.28 Giao diện khi người dùng thực hiện truy vấn CSDL..........................................69
Hình 1.29 Giao diện thiết lập các thông số ban đầu cho RA Application Server................69
Hình 1.30 Giao diện chính khi khởi động ứng dụng RA Application Server......................70
Hình 1.31 Giao diện chính của RA Application Server khi lắng nghe các yêu cầu ............70
Hình 1.32 Giao diện chính của ứng dụng quản lý truy cập ở DBServer .............................71
Hình 2.1 Sơ đồ nguyên lý hệ kiểm soát truy cập ứng dụng kỹ thuật nhận dạng
đường vân...........................................................................................................75
Hình 2.2 Màn hình tiêu biểu của công cụ Trích chọn đặc điểm chỉ bản lòng bàn
tay.......................................................................................................................79
Hình 2.3 Màn hình tiêu biểu của công cụ Đối sánh chỉ bản lòng bàn tay. ..........................79
5
Hình 2.4 Màn hình tiêu biểu của công cụ Thu nhận chỉ bản lòng bàn tay. .........................87
Hình 2.5 Màn hình hiển thị CSDL chỉ bản lòng bàn tay. ....................................................87
Hình 2.6 CSDL được tổ chức theo lô, mỗi lô khoảng 500 chỉ bản......................................88
Hình 2.7 Màn hình hiển thị các bảng CSDL chỉ bản gốc sau khi chuyển đổi số hóa..........91
Hình 2.8 Màn hình đăng nhập hệ thống...............................................................................97
Hình 2.9 Màn hình tạo bảng mới .........................................................................................97
Hình 2.10 Màn hình mở file ảnh vân tay và vân lòng bàn tay có sẵn trên máy chủ............99
Hình 2.11 Màn hình tra tìm, đối sánh tự động vân lòng bàn tay .......................................102
Hình 2.12 Màn hình cấu hình tham số cho chương trình ..................................................102
Hình 2.13 Màn hình cấu hình tham số cho chương trình ..................................................105
Hình 2.14 Bảng cơ sở dữ liệu yêu cầu tra cứu vân lòng bàn tay đầy đủ ...........................105
Hình 2.15 Bảng cơ sở dữ liệu yêu cầu tra cứu vân lòng bàn tay đầy đủ ...........................106
Hình 2.16 Màn hình tra cứu hàng loạt (theo lô) ................................................................107
Hình 2.17 Màn hình Hiển thị và thẩm định kết quả khi cần kiểm tra................................108
Hình 2.18 Kết quả xử lý phân đoạn ảnh, tách nét từ ảnh 256 cấp xám .............................112
thực tế .................................................................................................................142
Bảng 3.3 Bảng đánh giá so sánh các tính năng đạt được của phân hệ “Biên tập và
kiểm tra chất lượng”qua quá trình đánh giá thử nghiệm thực tế ........................144
Bảng 3.4 bảng đánh giá so sánh các tính năng đạt được của phân hệ “Tổ chức cơ
sở dữ liệu” qua quá trình đánh giá thử nghiệm thực tế ......................................145
Bảng 3.5 Bảng đánh giá so sánh các tính năng đạt được, tính năng đang nâng cấp
của phân hệ “Tra tìm, đối sánh” .........................................................................151
Bảng 3.6 Bảng đánh giá so sánh các tính năng đạt được, tính năng đang nâng cấp
của phân hệ “Tiếp nhận, xử lý và trả lời các yêu cầu” .......................................152
7
Chương 1.
NGHIÊN CỨU KHẢO SÁT CÁC GIẢI PHÁP KIỂM SOÁT
TRUY CẬP TÀI NGUYÊN CƠ SỞ DỮ LIỆU
1.1 Yêu cầu kiểm soát truy cập và phân loại
Như chúng ta đã biết, trong mỗi hệ thống thông tin an toàn thì yêu cầu
đặt ra đối với các tài nguyên thông tin của tổ chức và cá nhân đó là phải đảm
bảo được tính mật, tính toàn vẹn, tính xác thực và tính sẵn sàng [7].
- Tính mật có nghĩa là thông tin chỉ được phép truy cập bởi người có
quyền truy cập.
- Tính toàn vẹn đảm bảo các mục tiêu sau: Ngăn ngừa việc thay đổi
thông tin trái phép của người dùng không có thẩm quyền, ngăn ngừa
việc vô ý thay đổi thông tin của người dùng có thẩm quyền, duy trì tính
nhất quán cho thông tin.
- Tính xác thực là đảm bảo thông tin cần được xác thực nguồn gốc. Tính
xác thực thường đi kèm với tính chống chối bỏ, mạo nhận và giả mạo.
- Tính sẵn sàng được thể hiện là thông tin được đưa đến người dùng kịp
thời, không bị gián đoạn. Mọi hành vi làm gián đoán quá trình truyền
truy cập vào các tài nguyên mà họ không được phép.
- Quá trình kiểm toán (Accounting): Kiểm soát mọi thao tác mà người
dùng thực hiện lên hệ thống, ghi lại tất cả các thao tác mà người dùng
đã thực hiện vào những thời điểm, hoàn cảnh cụ thể.
Ba quá trình này có mối quan hệ rằng buộc lẫn nhau để đảm bảo an toàn cho
thông tin trong hệ thống. Nên kiểm soát truy cập chính là công cụ để quản lý
việc truy cập tài nguyên hệ thống của người dùng và đảm bảo sự mở rộng hay
hạn chế quyền hạn của người dùng.
Cụ thể hơn, kiểm soát truy cập có thể được hiểu như là biện pháp đảm bảo tất
cả các đối tượng truy cập vào hệ thống đều tuân theo qui tắc, chính sách bảo
vệ dữ liệu. Hệ thống kiểm soát truy cập gồm 2 phần [7]:
9
- Tập chính sách và qui tắc truy nhập (Security Policies): đưa ra phương
pháp và cách thức truy cập thông tin lưu trữ trong hệ thống.
- Tập các thủ tục kiểm soát (Control Procedures): kiểm tra yêu cầu truy
nhập, cho phép hay từ chối yêu cầu truy cập tài nguyên của hệ thống.
Hình 1.1 Hệ thống kiểm soát truy cập
- Chính sách an toàn an ninh (Security Policies) chỉ ra cách mà chủ thể
và đối tượng trong hệ thống được nhóm lại, để dùng chung kiểu truy
cập nào đó, cho phép thiết lập việc chuyển quyền truy cập. Điều này
phụ thuộc vào việc thiết kế và quản lý hệ thống phân quyền truy cập tài
nguyên. Nó còn chỉ ra cách định danh (Identifier), tức là cách gán cho
đối tượng một định danh nào đó (tên gọi) theo một cách thống nhất,
không có sự trùng lặp các định danh.
- Từ các chính sách an toàn an ninh của hệ thống chúng ta xây dựng các
luật truy cập tài nguyên thông tin của hệ thống. Quy định rõ những đối
tượng hay nhóm đối tượng nào được phép truy cập hệ thống và được
Quá trình xác thực gồm 2 pha đó là nhận dạng danh tính (Identification) và
xác thực (Authentication) [5].
- Nhận dạng danh tính (Identification)
Nhận dạng danh tính là phương pháp người dùng báo cho hệ thống biết họ
là ai (chẳng hạn như bằng cách dùng tên người dùng). Bộ phận nhận dạng người
dùng của hệ thống kiểm soát truy cập thường là một cơ chế tương đối đơn giản,
hoạt động chủ yếu dựa trên một hệ thống tên người dùng (username) hoặc định
danh người dùng (userID). Trong trường hợp đối với một hệ thống hoặc một
quy trình (process), việc nhận dạng thường dựa vào [9]:
- Tên máy tính (computer name).
- Địa chỉ truy cập thiết bị (Media Access Control – MAC – address).
11
- Địa chỉ giao thức mạng (Internet Protocol – IP –address).
- Định danh của tiến trình (Process ID – PID).
Điều kiện:
- Định danh phải là duy nhất, không thể có một định danh cho 2 người
và một người không thể có hai định danh.
- Không được dùng định danh để xác định vị trí hay tầm quan trọng của
người dùng trong tổ chức, chẳng hạn không được có định danh chỉ ra
rằng người này là chủ tịch, giám đốc hoặc nhân viên.
- Tránh việc sử dụng các thư mục chung hoặc các thư mục được dùng
chung bởi nhiều người dùng, như thư mục gốc (root), thư mục của
người quản lý (admin), hoặc thư mục của người quản lý hệ thống.
- Không nên dùng các thư mục không hỗ trợ việc quy trách nghiệm và
chúng có thể trở thành những lỗ hổng nguy hiểm của hệ thống.
- Xác thực (Authentication)
Pha này xác minh định danh của người dùng, chẳng hạn bằng cách so sánh
mật khẩu mà người dùng đăng nhập với mật khẩu được lưu trữ trong hệ thống.
hệ thống. Một người dùng nào đó có thể có quyền truy cập đến tài nguyên của
hệ thống và khi người này thực hiện truy cập thì hệ thống sẽ ghi lại các thông
tin liên quan đến:
- Quá trình xác thực người dùng thành công hay không thành công?
- Khi nào người dùng thực hiện truy cập?
- Thực hiện truy cập như thế nào?
- Và kết quả truy cập?
Tất cả những thông tin trên sẽ được sử dụng để kiểm soát việc truy cập
đến tài nguyên của mọi người dùng trong hệ thống, xác định rõ ràng rằng họ
đã thực hiện gì trong hệ thống và để quy trách nhiệm, chống giả danh, mạo
nhận và chối bỏ [5].
13
Nói cụ thể hơn, quá trình kiểm toán sẽ ghi lại trong nhật kí hệ thống
mọi thông tin mà người dùng tương tác với hệ thống từ khi người dùng đăng
nhập hệ thống đến khi phiên làm việc của người dùng kết thúc.
1.1.4 Phân loại kiểm soát truy cập
Kiểm soát truy cập đảm bảo tính sẵn sàng, tính tin cậy và tính toàn vẹn
của các đối tượng (thông tin, các tiến trình, và các tài nguyên khác) trong hệ
thống. Tùy thuộc vào tiêu chí sử dụng để phân loại ta có thể phân loại kiểm
soát truy cập thành nhiều dạng khác nhau.
- Nếu dựa trên tiêu chí vị trí thực hiện truy cập thì có 2 loại cơ bản:
• Kiếm soát truy cập tại chỗ.
• Kiểm soát truy cập từ xa: Khi thực hiện truy cập đến các tài nguyên
của hệ thống dữ liệu được truyền qua môi trường mạng. Người dùng
không phải đến tận cơ quan làm việc của mình để xem, copy hay
chỉnh sửa dữ liệu mà chỉ cần ngồi ở nhà sử dụng máy tính có kết nối
mạng để thực hiện điều này.
1.2.1 Kỹ
thuật
nhận
dạng
và
xác
thực
(Identification
and
Authentication techniques)
Từ lâu, việc xác thực người dùng được biết tới phổ biến là sử dụng
username và password, ngoài ra còn có nhiều kỹ thuật khác sử dụng để xác
thực người dùng như sử dụng thẻ token, đặc trưng sinh trắc…. Mỗi nhân tố sử
dụng để xác thực người dùng đều có những điểm mạnh và điểm yếu riêng.
Việc kết hợp các nhân tố này trong việc xác thực (xác thực đa nhân tố) sẽ
giúp tăng độ an toàn cho hệ thống so với việc chỉ sử dụng đơn nhân tố trong
việc xác thực, tuy nhiên khi đó thì mức độ phức tạp của hệ thống cũng tăng
lên.
Có 3 loại nhân tố xác thực (Authentication factors) chính [7]:
- Loại 1, dựa những thông tin người dùng biết (something you know):
Như là mật khẩu (password), mã số PIN.
16
Một số lý do khác khiến mật khẩu bị lộ như bị tấn công brute force, tấn
công chặn bắt gói tin (packet sniffers) khi mật khẩu được truyền dưới dạng
plain text qua mạng, tấn công giả mạo địa chỉ IP, tấn công Man-In-TheMiddle…
Theo đó, một số hệ thống bảo mật đưa ra các chính sách để tăng độ an
toàn cho mật khẩu của người dùng như: Đưa ra một giới hạn về thời gian hiệu
lực của mật khẩu, độ dài tối thiểu của mật khẩu, độ phức tạp tối thiểu…Tuy
nhiên, trên thực tế thực hiện điều này lại gặp phải nhiều khó khăn do tính khả
thi của những chính sách này đối với người sử dụng là không cao.
Một ví dụ của việc xác thực người dùng sử dụng password đó là Challenge
Handshake Authentication Protocol (CHAP).[9]
Hình 1.3 Challenge Handshake Authentication Protocol
Khi người dùng cố gắng đăng nhập vào hệ thống, server đảm nhiệm vai
trò xác thực sẽ gửi một thông điệp thử thách (challenge message) trở lại máy
tính người dùng. Lúc này máy tính người dùng sẽ phản hồi lại username và
password được mã hóa. Server xác thực sẽ so sánh phiên bản mã hóa
username và password của người dùng được lưu trữ với phiên bản mã hóa
vừa nhận, nếu trùng khớp, người dùng sẽ được xác thực. Bản thân password
không bao giờ được gửi dưới dạng plain text qua mạng. Phương thức CHAP
thường được sử dụng khi người dùng đăng nhập vào các server từ xa (remote
servers). Thông thường password thường được băm (hash pasword), có một
17
ưu điểm đó là không thể giải mã bản băm của password để thu được
password.
như, khoảng thời gian sinh mật khẩu dựa trên giá trị mà bộ sinh số ngẫu nhiên
tạo ra hay thời gian mà gói tin đến, hay khoảng thời gian mà người dùng ấn
phím.
Thẻ sử dụng yêu cầu - đáp ứng (challenge response tokens): Sau một
khoảng thời gian cố định hệ thống sẽ gửi cho người dùng một chuỗi kí tự đặc
biệt (special “challenge” string) và yêu cầu người dùng gửi lại chuỗi kí tự đáp
ứng. Người dùng sẽ điền chuỗi kí tự do hệ thống gửi vào token của họ, token
sẽ sinh ra chuỗi kí tự đáp ứng, chuỗi kí tự này sẽ được người dùng gửi lên cho
hệ thống.
c) Xác thực người dùng dựa trên tickets
Kỹ thuật này sử dụng bên thứ 3 để xác minh và thẩm định người dùng.
Mỗi vé bảo mật (a security ticket) có thể là một số duy nhất hoặc một gói
thông tin mà được hệ thống gửi tới người dùng. Vé này được sử dụng làm
bằng chứng để xác thực hoặc phân quyền. Vé được được xây dựng một cách
cẩn thận và phải đủ dài và phức tạp để chống lại việc giả mạo.
Hệ thống Kerberos là hệ thống điển hình xác thực người dùng dựa trên
tickets. Trong hệ thống này, các máy chủ Kerberos đóng vai trò là bên thứ 3
để xác thực người dùng. Kerberos authentication dùng một server trung tâm
để kiểm tra việc xác thực người dùng và cấp phát vé thông hành (service
tickets) để người dùng có thể truy cập vào tài nguyên. Kerberos là một
phương thức rất an toàn trong authentication bởi vì nó sử dụng kỹ thuật mã
hóa khá mạnh (cả mã hóa đối xứng và bất đối xứng). Kerberos cũng dựa trên
độ chính xác của thời gian xác thực giữa Server và Client computer, do đó cần
19
đảm bảo có một time server hoặc authenticating servers được đồng bộ thời
gian. Kerberos là nền tảng xác thực chính của nhiều hệ điều hành như Unix,
Windows [9].
Khả năng chấp nhận được của một đặc trưng sinh trắc (biometric) xác
định phụ thuộc vào nhiều yếu tố: Tính toàn thể, vạn năng (universality), tính
duy nhất (uniqueness), tính vĩnh cửu (permanence), tính thu thập được
(collectability), hiệu năng (performance), tính chấp nhận (acceptability). Có
thể thấy rằng không có đặc trưng sinh trắc nào là hoàn hảo, mỗi đặc trưng có
những ưu, nhược điểm của riêng mình, như việc sử dụng đặc trưng ADN thì
có khả năng truy nguyên danh tính rất cao và khả năng bị đánh lừa thấp song
khả năng trích chọn đặc trưng từ ADN lại khó khăn và hiệu năng thấp. Trái
lại, công nghệ sinh trắc dựa trên hình học bàn tay lại có hiệu năng cao nhưng
khả năng thẩm định lại thấp (tính duy nhất). Vì vậy, tùy thuộc từng hệ thống
mà người ta sẽ chọn công nghệ sinh trắc phù hợp nhất với hoàn cảnh.
21
Độ tin cậy của kết quả xác thực căn cứ vào tỉ lệ từ chối sai - FRR (False
Rejection Rate), tỉ lệ chấp nhận sai - FAR (False Acceptance Rate) và EER
(Equal Error Rate).
a) FAR là tỉ lệ chấp nhận sai, một người dùng chưa đăng kí trong hệ
thống nhưng vẫn xác thực như là một thành viên trong hệ thống.
b) FRR là tỉ từ chối sai, một người dùng đã đăng kí trong hệ thống
nhưng hệ thống khi xác thực lại cho kết quả là người dùng này
không phải là thành viên của hệ thống.
c) EER là điểm cân bằng giữa FAR và FRR và cung cấp điểm đạt được
hiệu năng tốt nhất của hệ thống. Trong hầu hết các hệ thống người
ta luôn mong muốn giảm tối thiểu đồng thời cả hai giá trị FAR và
FRR.
e) Xác thực đa nhân tố
Những hệ thống yêu cầu kết quả xác thực có độ chính xác cao và an
toàn trong bảo mật thường sử dụng kết hợp 2 hoặc nhiều nhân tố nhận dạng
không được bảo vệ. Thông thường chủ sở hữu của tài nguyên chính là
người đã kiến tạo nên tài nguyên (như tập tin, thư mục).
- Các đặc quyền truy cập: Đây là những quyền khống chế những thực thể
tài nguyên mà chủ nhân của tài nguyên chỉ định cho mỗi người hoặc
một nhóm người dùng.
DAC có thể được áp dụng thông qua nhiều kỹ thuật khác nhau:
- Danh sách kiểm soát truy cập (Access control list – ACL) định danh
các quyền (rights) và phép (permissions) được chỉ định cho một tài
nguyên trong hệ thống, ví dụ như trong hệ trong hệ thống có 4 người
dùng A, B, C, D chẳng hạn, khi đó ta có danh sách kiểm soát truy cập
của các file trong hệ thống như sau: File 0: (A, rx), File1: (A, rw-), (B,
23