Tải bản đầy đủ (.docx) (23 trang)

Đồ án bảo mật máy chủ web cực hay và chi tiết

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (222.49 KB, 23 trang )

Mục lục
1
Kiểm tra đảm bảo an ninh, bảo mật cho máy chủ web
1 Kiểm tra lập kế hoạch và quản lý máy chủ web
Mục đích kiểm tra:
Khía cạnh quan trọng nhất của việc triển khai bảo mật máy chủ Web là lập kế hoạch cẩn
thận trước khi cài đặt, cấu hình và triển khai. Kiểm tra lập kế hoạch để đảm bảm rằng máy
chủ web bảo mật phù hợp với tất cả các chính sách tổ chức liên quan không.
Tìm ra nguyên nhân tại sao máy chủ web hoạt động không hiệu quả
1.1 Kiểm tra lập kế hoạch cài đặt và phát triển
Kiểm tra lập kế hoạch cài đặt và phát triển có đúng theo kế hoạch ban đầu không, để cân
bằng sự tiện dụng và hiệu năng, rủi ro và kịp thời có những thay đổi phù hợp với khả năng
của tổ chức. Một kế hoạch triển khai cho phép các tổ chức duy trì những cấu hình bảo mật
và có những trợ giúp trong việc xác định các lỗ hổng bảo mật mà nguyên nhân là do sự sai
lệch so với kế hoạch.
Danh mục kiểm tra Kết quả Nhận xét
 Kiểm tra cần xác định được mục đích của máy chủ
web
o Những loại thông tin sẽ được lưu trữ trên máy chủ
web?
o Những loại thông tin sẽ được xử lý và được truyền
qua máy chủ web?
o Những yêu cầu bảo mật cho thông tin?
o Bất kỳ thông tin sẽ được khôi phục như thế nào từ
nơi lưu trữ trên các máy chủ khác (cơ sở dữ liệu lưu
trữ, máy chủ mail)?
o Những yêu cầu bảo mật cho bất kỳ máy chủ khác
như thế nào? (cơ sở dữ liệu lưu trữ, máy chủ thư
mục, máy chủ mail và máy chủ proxy)?
o Những dịch vụ nào sẽ được cung cấp bởi máy chủ
web?


o Những yêu cầu bảo mật cho các dịch vụ được thêm
vào?
o Những yêu cầu nào cho sự liên tục của dịch vụ
được cung cấp bởi các máy chủ web, những quy
định trong liên tục các kế hoạch hoạt động và kế
hoạch khôi phục sau thiệt hại.?
o Kiểm tra vị trí đặt máy chủ web trong mạng có
đúng vị trí chưa (có trong miền DMZ không)?
 Kiểm tra các giao thức được sử dụng trên web
o Giao thức HTTP
2
o Giao thức HTTPS
o Giao thức lưu trữ Internet (ICP)
o Giao thức lưu trữ siêu văn bản (HTCP)
o Giao thức phối hợp lưu trữ web (WCCP)
o SOCKS
o Các dịch vụ cơ sở dữ liệu (kết nối cơ sở dữ liệu mở
ODBC)
 Kiểm tra quyền hạn cho từng loại người dùng trên
máy chủ web và máy chủ hỗ trợ
 Kiểm tra cách quản lý máy chủ web (ví dụ, cục bộ,
điều khiển từ xa mạng nội bộ, mạng bên ngoài)
 Kiểm tra xác thực các tài khoản như thế nào và dữ
liệu xác thực sẽ được bảo vệ theo cách nào
 Kiểm tra ứng dụng máy chủ web phù hợp với các
yêu cầu của tổ chức
 Mục đích của việc kiểm tra máy chủ có thể đưa ra
bảo mật tốt hơn, mặc dù có ít chức năng trong một
số trường hợp.
o Kiểm tra chi phí

o Kiểm tra tính tương thích với cơ sở hạ tầng đã tồn
tại
o Kiểm tra kiến thức của các nhân viên hiện tại
o Kiểm tra mối quan hệ sản xuất đã có
o Kiểm tra lịch sử điểm yếu trong quá khứ
o Kiểm tra chức năng
 Kiểm tra các hình thức bảo vệ an ninh vật lý có thích
hợp không?
o Khóa
o Truy nhập bằng công cụ đọc thẻ
o Nhân viên bảo vệ
o Các công cụ phát hiện xâm nhập vật lý IDSs (cảm
biến, camera giám sát)
 Kiểm tra nhiệt độ, độ ẩm của môi trường có phù hợp
không?
 Kiểm tra có nguồn điện dự phòng? Sẽ cung cấp
được nguồn điện là bao lâu?
 Kiểm tra khả năng sẵn sàng cao, có kết nối mạng đến
ít nhất 2 nhà cung cấp dịch vụ không ?
 Kiểm tra vị trí đặt của máy chủ web, nếu vị trí đặt
máy chủ web tại những nơi thiên tai thì có đủ độ
cứng để chống lại thảm họa thiên tai không hoặc có
một trang web dự phòng bên ngoài không?
1.2 Nhân viên quản lý bảo mật
Mục đích kiểm tra:
3
Kiểm tra vai trò chung, ý thức trách nhiệm của từng cá nhân liên quan đến máy chủ web.
Đối với từng tổ chức thì vai trò trách nhiệm của từng cá nhân cũng khác nhau.
1.2.1 Cán bộ quản lý công nghệ thông tin cấp cao/ Giám đốc thông tin
Danh mục kiểm tra Kết quả Nhận xét

 Kiểm tra cán bộ quản lý công nghệ thông tin cấp
cao/ Giám đốc thông tin (CIO) có thực hiện trách
nhiệm đảm bảo an ninh cho tổ chức không.
o Kiểm tra hoạt động phối hợp các hoạt động phát
triển và duy trì các chính sách, thủ tục, tiêu chuẩn
an toàn thông tin cho tổ chức
o Kiểm tra hoạt động phối hợp các hoạt động phát
triển và duy trì kiểm soát các thay đổi và quản lý
thủ tục của tổ chức
o Kiểm tra hoạt động phối hợp với các cấp lãnh đạo
cấp trên và xử lý, các vấn đề công cộng và các nhân
viên khác liên quan để giảm thiểu các chính sách
chung và quá trình công bố thông tin cho website
và đảm bảm chính sách được thực thi
1.2.2 Cán bộ quản lý bảo mật các hệ thống thông tin
 Kiểm tra cán bộ quản lý bảo mật các hệ thống thông
tin (ISSPM) giám sát việc triển khai và tuân thủ các
tiêu chuẩn, quy tắc, quy định trong chính sách bảo
mật của tổ chức không. Kiểm tra trách nhiệm của
những cán bộ liên quan đến những khía cạnh sau:
o Đảm bảo các thủ tục bảo mật được phát triển và
triển khai
o Đảm bảo các chính sách, tiêu chuẩn, quy tắc và yêu
cầu được thực thi
o Đảm bảo tất cả các hệ thống quan trọng được xác
định và lập kế hoạch dự phòng, kế hoạch khôi phục
sau thiệt hại, và tính liên tục trong việc thực thi các
kế hoạch triển khai cho các hệ thống quan trọng
o Đảm bảo tất cả các hệ thống quan trọng được xác
định và lập kế hoạch kiểm tra bảo mật định kỳ theo

các yêu cầu chính sách bảo mật với hệ thống tương
ứng
1.2.3 Cán bộ bảo mật hệ thống thông tin
Kiểm tra trách nhiệm giám sát của cán bộ bảo mật hệ thống thông tin cho tất cả các
khía cạnh của bảo mật thông tin với đối tượng cụ thể, đảm bảo rằng các hoạt động bảo
4
mật thông tin của tổ chức phù hợp với các chính sách, tiêu chuẩn thủ tục của từng
phòng ban. Các ISSO có trách nhiệm với các hoạt động sau mà có liên quan đến máy
chủ web:
• Hợp tác trong việc triển khai và phát triển các công cụ bảo mật, cơ chế, và công
nghệ đơn giản
• Duy trì các thông tin cấu hình chuẩn của máy chủ web và hỗ trợ hạ tầng mạng
được kiểm soát bởi tổ chức, nhưng không giới hạn đến các hệ điều hành, tường
lửa, định tuyến và các ứng dụng máy chủ web
• Duy trì tính toàn vẹn của hệ thống bằng cách tiến hành các kiểm tra bảo mật và
lập lịch kiểm tra cho các hệ thống quan trọng
1.2.4 Cán bộ quản trị mạng và máy chủ web
Kiểm tra trách nhiệm của cán bộ quản trị máy chủ web đối với thiết kế chung, triển
khai, duy trì cho máy chủ web. Cán bộ quản trị mạng có trách nhiệm với thiết kế
chung, triển khai, duy trì cho một mạng. Hàng ngày, cán bộ quản trị mạng và máy chủ
web thực hiện các yêu cầu bảo mật cho hệ thống mà họ phải chịu trách nhiệm quản trị.
Những giải pháp và vấn đề bảo mật có thể bắt nguồn từ những nguyên nhân bên ngoài
(bản vá lỗi và sửa lỗi bảo mật từ những nhà sản xuất hoặc các nhóm ứng cứu sự cố
bảo mật máy tính) hoặc bên trong tổ chức (phòng an ninh). Các cán bộ quản trị có
trách nhiệm với các hoạt động sau có liên quan đến máy chủ web:
 Kiểm tra cài đặt và cấu hình các hệ thống phù hợp với chính sách và tiêu chuẩn
bảo mật tổ chức và phù hợp với những cấu hình mạng hệ thống
 Kiểm tra duy trì hệ thống quản lý bảo mật, bao gồm cả sao lưu thường xuyên và
áp dụng những bản vá lỗi 1 cách kịp thời
 Kiểm tra giám sát tính toàn vẹn hệ thống, các cấp độ bảo vệ và các sự kiện bảo

mật liên quan
 Theo dõi phát hiện những bất thường về an ninh liên quan đến hệ thống thông
tin
 Tiến hành kiểm tra bảo mật theo yêu cầu
1.2.5 Nhà phát triển ứng dụng web
Kiểm tra nhà phát triển ứng dụng web có trách nhiệm xem xét, chức năng, hiệu năng,
và bảo mật nội dung web và các ứng dụng trên web mà họ tạo ra. Các mối đe dọa sẽ
5
gia tăng hướng vào những ứng dụng web thay vì các phần mềm và hệ điều hành máy
chủ web. Kiểm tra cụ thể theo từng khía cạnh sau:
 Kiểm tra cơ chế xác thực để đảm bảo xác thực không thể vượt qua khi một
người dùng mã độc giả mạo dữ liệu của người dùng hệ thống gửi đến ứng
dụng, bao gồm các yêu cầu HTTP, thông tin, các chuỗi truy vấn, cookie từ các
trường điền thông tin và các trường ẩn
 Kiểm tra cơ chế xử lý lỗi một cách bảo mật không dẫn đến tiếp xúc với các
thông tin triển khai nhạy cảm
 Kiểm tra quy trình bảo vệ bảo vệ, lưu trữ thông tin nhạy cảm bằng ứng dụng.
Bảo vệ không đầy đủ có thể cho phép dữ liệu giả mạo và truy cập đến các
thông tin bí mật như tên người dùng, mật khẩu số tài khoản thẻ tín dụng
 Kiểm tra việc duy trì các bản ghi ứng dụng cụ thể của bản thân. Trong nhiều
trường hợp, thiếu ghi nhật ký máy chủ web sẽ không theo dõi được hoạt động
của từng người dùng tại từng mức độ ứng dụng. Ghi log nhật ký kông đầy đủ
có thể dẫn đến thiếu thông tin về xâm nhập có thể xẩy ra và thiếu sẵn sàng khi
xác minh hành động người sử dụng (cả hợp pháp và trái phép)
1.3 Thực tiễn quản lý
Kiểm tra các hoạt động thực tiễn quản lý nhằm xác định các tài sản hệ thống thông tin
và sự phát triển, tài liệu hóa, triển khai các chính sách, tiêu chuẩn, thủ tục và hướng
dẫn nhằm đảm bảo tính toàn vẹn, sẵn sàng, bí mật của các tài nguyên hệ thống thông
tin
Để đảm bảo bảo mật cho máy chủ web và hỗ trỡ cho cơ sở hạ tầng mạng, các tổ chức

cần phải triển khai kiểm tra các hoạt động sau:
 Kiểm tra chính sách bảo mật hệ thống thông tin tổ chức có hoạt động theo các
nguyên lý cơ bản, quy tắc bảo mật và mục đích theo kế hoạch đã đề ra ban đầu
hay không. Các chính sách cần đưa ra trách nhiệm cụ thể từng khu vực của hệ
thống thông tin (triển khai, thực hiện. kiểm toán và soát xét) . Các chính sách
phải được thực thi một cách nhất quán trong tổ chức sao cho có hiệu quả.
 Kiểm tra quản lý và kiểm soát thay đổi/cấu hình – quy trình kiểm soát thay đổi
thiết hệ thống, phần cứng, chương trình, phần mềm nhằm đảm bảo hệ thống có
thể chống lại những thay đổi không hợp lệ trước, trong khi và sau khi triển khai
6
hệ thống. Kiểm soát cấu hình theo chính sách bảo mật hệ thống thông tin. Kiểm
soát cấu hình theo phương pháp truyền thống được giám sát theo bảng kiểm
soát cấu hình là quyền hạn cuối cùng về tất cả các thay đổi đề xuất đến hệ thống
thông tin.
 Kiểm tra quản lý và đánh giá rủi ro – đánh giá rủi ro là quy trình phân tích và
làm rõ rủi ro. Quy trình này bao gồm xác định phạm vi đánh giá, phương pháp
thực hiện, thu thập và phân tích các dữ liệu có liên quan và làm rõ những kết
quả phân tích rủi ro. Thu thập và phân tích dữ liệu rủi ro yêu cầu xác định các
tài sản, mối đe dọa, điểm yếu, biện pháp an toàn, hậu quả và các khả năng xảy
ra tấn công thành công
 Kiểm tra cấu hình chuẩn – Các tổ chức cần phải phát triển các cấu hình bảo mật
chuẩn trong phạm vi lớn sử dụng nhiều ứng dụng, hệ điều hành, nhằm cung cấp
các cho các nhà quản trị mạng và máy chủ web cách cấu hình hệ thống 1 cách
bảo mật và đảm bảo tuân thủ theo chính sách bảo mật của tổ chức.
 Kiểm tra thực hành lập trình bảo mật – các tổ chức cần phải thông qua chủ
trương phát triển ứng dụng bảo mật để đảm bảo những ứng dụng web của hộ
được bảo mật một cách đầy đủ
 Kiểm tra về đào tạo và nhận thức về bảo mật – Một chương trình đào tạo bảo
mật là vô cùng quan trọng đối với an toàn thông tin chung của tổ chức. Làm
cho người dùng và quản trị viên nhận thức ý thức trách nhiêm bảo mật của họ

và giảng dạy cho họ các thực hiện hợp lý phù hợp với thực tiễn tốt nhất cho bảo
mật.
 Kiểm tra kế hoạch khôi phục sau thảm họa, liên tục các hoạt động, phục hồi
khẩn cấp nhằm thiết lập tính năng nâng cao cho phép một tổ chức hoặc cơ sở để
duy trì các hoạt động khi sự kiện bị gián đoạn
 Kiểm tra chứng nhận và công nhận – chứng nhận trong bối cảnh bảo mật các hệ
thống thông tin có nghĩa là hệ thống đó đã được phân tích để xác định đã phù
hợp với tất cả các yêu cầu của tổ chức. Công nhận xảy ra khi quản lý của tổ
chức chấp nhận khi hệ thống phù hợp với các yêu cầu bảo mật của tổ chức.
1.4 Kế hoạch bảo mật hệ thống
Kiểm tra đối tượng của kế hoạch bảo mật hệ thống là kiểm tra phương pháp cải tiến
bảo vệ cho các tài nguyên hệ thống thông tin. Mục đích kiểm tra lập kế hoạch an toàn
hệ thống là cung cấp tổng quan về các yêu cầu bảo mật và riêng tư của hệ thống và mô
7
tả các biện pháp tại nơi đó hoặc kế hoạch phù hợp với các yêu cầu. Kế hoạch bảo mật
hệ thống cũng cần phải đưa ra trách nhiệm và hành động mong muốn của tất cả các cá
nhân truy cập vào hệ thống. Kế hoạch bảo mật hệ thống cần phải được soát xét 1 cách
đầy đủ tài liệu hóa các quy trình cấu trúc của kế hoạch, chi phí để bảo vệ bảo mật cho
1 hệ thống. Kế hoạch cần phải phản ánh đầu vào từ các nhà quản lý khác nhau với
trách nhiệm liên quan đến hệ thống, bao gồm cả chủ sở hữu thông tin, chủ sở hữu hệ
thống và ISSPM.
Nói chung, một kế hoạch bảo hệ thống cần bao gồm các điều sau:
• Xác định hệ thống – cung cấp những thông tin cơ bản về hệ thống. Kế hoạch có
các thông tin chung như là có đầu mối liên hệ với hệ thống, mục đích của hệ
thống và mức độ nhạy cảm của hệ thống và môi trường mà hệ thống được triển
khai.
• Các biện pháp – mô tả các biện pháp đo lường đánh giá để phù hợp với các yêu
cầu bảo vệ của hệ thống thông tin. Các biện pháp nhìn chung rơi vào 3 loại sau:
o Các biện pháp quản lý, tập trung vào quản lý hệ thống bảo mật máy tính và
quản lý rủi ro cho 1 hệ thống

o Các biện pháp điều hành, đây là những biện pháp được triển khai chính và
được thực thi bởi mọi người. Các biện pháp này đòi hỏi chuyên môn đặc
biệt hoặc kỹ thuật cao và thường dựa vào các hoạt động quản lý cũng như
các biện pháp kỹ thuật
o Các biện pháp kỹ thuật, là những cơ chế bảo mật hệ thống máy tính sử
dụng. Các biện pháo có thể cung cấp bảo vệ tự động từ những truy cập, lạm
dung trái phép, tạo điều kiện phát hiện các hành vi vi phạm bảo mật, và hỗ
trợ các yêu cầu bảo mật cho ứng dụng và dữ liệu. Việc triển khai các biện
pháp kỹ thuật, tuy nhiên đòi hỏi cần nhắc các hoạt động quan trọng và phù
hợp với quản lý bảo mật trong tổ chức
1.5 Các yêu cầu về nguồn nhân lực
Nguồn nhân lực là tài sản vô cùng quan trọng của tổ chức trong việc duy trì và phát
triển tổ chức. Nguồn nhân lực phù hợp và đầy đủ là khía cạnh quan trọng ảnh hưởng
đến bảo mật máy chủ web. Các tổ chức cần phải xem xét trên thực tế, nói chung giải
pháp kỹ thuật không thể thay thế cho kỹ năng và kinh nghiệm của cá nhân.
Khi xem xét đến những tác động của nguồn nhân lực và triển khai một máy chủ, các tổ
chức cần phải xem xét các vấn đề sau:
8
• Kiểm tra yêu cầu của nhân viên về hệ thống mạng của nhân viên, tổ chức có
đáp ứng đầy đủ không? Điều này sẽ bao gồm các vị trí như quản trị hệ thống và
quản trị máy chủ web, chủ trang web, quản trị mạng
• Kiểm tra các kỹ năng cần thiết của nhân viên: những kỹ năng cần thiết nào để
hoàn thành đầy đủ kế hoạch, phát triển và duy trì máy chủ web? Ví dụ bao gồm
cả quản trị hệ điều hành, quản trị mạng, nội dung hoạt động chuyên môn, lập
trình
• Kiểm tra tổ chức có những nguồn nhân lực sẵn sàng nào? Thêm vào đó, các kỹ
năng hiện tại là gì và các kỹ năng này có đủ để hỗ trợ cho máy chủ web không
1.6 Kiểm tra những nền tảng máy chủ web
Mặc dù nhiều tổ chức quản lý máy chủ web hoạt động trên những hệ điều hành đa
năng, đây là những trường hợp mà tổ chức có thể sử dụng trong những trường hợp cần

thiết. Mặc dù có nhiều công nghệ liên quan đến khu vực máy chủ web, và đều dựa trên
công nghệ mạnh và bắt đầu sử dụng rộng rãi hơn trong môi trường máy chủ web
1.6.1 Hệ điều hành tin cậy
Những hệ điều hành tin cậy là những hệ điều hành có đảm bảo về độ bảo mật bao gồm
các cơ chế bảo mật bổ sung mà không tìm thấy trong hầu hết các hệ điều hành đa
năng. Những hệ điều hành này cung cấp chính sách kiểm soát rộng rãi về bảo mật bao
gồm các quyền truy cập, khả năng kiểm toán. Nhiều hệ điều hành tin cậy được xác
nhận 1 cách độc lập để đảm bảo chúng phù hợp với các yêu cầu trong hướng dẫn thiết
kế.
Những hệ điều hành tin cậy được sử dụng trong các ứng dụng mà bảo mật là khía cạnh
quan trọng, bao gồm tài nguyên mạng, người sử dụng, quy trình và bộ nhớ. Đặc biệt là
những hệ điều hành có thể giới hạn truy cập đến tài nguyên hệ thống.
Kiểm tra nền tảng web cần chú ý đến những vấn đề như sau:
• Kiểm tra bảo mật ở tình trạng như thế nào ?
• Tổ chức có cần chuyên gia trong lĩnh vực quản trị hệ điều hành tin cậy không?
• Có thêm chi phí mua và hỗ trợ hệ điều hành tin cậy?
• Hệ điều hành tin cậy có tương thích với những ứng dụng web đã tồn tại của tổ
chức không?
9
• Hệ điều hành tin cậy có tương thích với những ứng dụng và máy chủ khác của
tổ chức không?
1.6.2 Máy chủ web
Hệ điều hành đơn giản cải tiến bảo mật bằng cách giảm thiểu những chức năng, dịch
vụ, tính năng không cần thiết. Ứng dụng máy chủ web trên những hệ thống thường đã
được làm cứng hóa và được cấu hình sẵn để bảo mật.
Yếu điểm lớn nhất của những hệ thống này là không phù hợp với những website đa
lớp, phức tạp và lớn, và có thể hỗ trợ cho J2EE, .NET, PHP. Một công cụ có thể vừa là
nơi chứa cơ sở dữ liệu vừa là giao diện web. Cuối cùng, sẽ rất khó để cấu hình các
công cụ của những nhà sản xuất khác nhau hoạt động tốt cùng nhau.
Ngoài các công cụ máy chủ web, cũng có một số càng công cụ bảo mật có sẵn cho các

máy chủ web. Các hệ thống này làm tăng thêm cơ chế bảo mật trên máy chủ web đó.
Trong một số trường hợp, các hệ thống có thể ngăn chăn tấn công đến máy chủ web.
Kiểm tra xem máy chủ web có sử dụng những công cụ phổ biến như:
• Có sử dụng SSL không?
• Kiểm tra bảo mật cổng, giám sát các luồng thông tin vào ra từ máy chủ web để
phát hiện tấn công tiềm ẩn
• Kiểm tra lọc nội dung, giám sát các luồng thông tin vào ra từ máy chủ web để
phát hiện những dữ liệu không phù hợp hoặc nhạy cảm, đưa ra hành đồng khi
cần thiết
• Kiểm tra xem việc xác thực người dùng qua những cơ chế nào, và điều khiển
đến đúng URL trên chính mảy chủ web đó
Khi mua một thiết bị web cần chú ý đến một số vấn đề sau:
• Kiểm tra hệ điều hành cơ sở có những tính năng gì và kiểm tra bảo mật ở tình
trạng như thế nào ?
• Làm thế nào để thiết bị riêng của mình ở tình trang kiểm tra bảo mật (Chú ý đến
các tùy chọn cấu hình của các thiết bị web bị hạn chế, do đó 1 thiết bị web sẽ
chỉ thường bảo mật với cấu hình cài đặt chuẩn)
• Kiểm tra các thiết bị máy chủ web của tổ chức làm việc tốt với nhau?
• Kiểm tra các tùy chọn mở rộng vốn có trong thiết bị này có thể chấp nhận cho
tổ chức không?
10
• Kiểm tra cấu hình thiết bị thì có khó khăn như thế nào? Thiết bị có đủ linh hoat
để đáp ứng nhu cầu của tổ chức ?
• Kiểm tra mức độ đáp ứng của các nhà sản xuất và cung cấp các bản vá lỗi cho
các lỗ hổng tiềm ẩn nhanh như thế nào?
• Kiểm tra có phần mềm cơ bản sử dụng trên thiết bị độc quyền, mã nguồn mở,
hoặc kết hợp cả hai không?
• Kiểm tra xem thời gian hỗ trợ của nhà sản xuất là bao nhiêu thời gian
1.6.3 Máy chủ web và những hệ điều hành cứng hóa
Những hệ điều hành cứng hóa dựa trên những hệ điều hành đa năng đã được sửa đổi

hoặc đóng gói cứng (ví dụ Linux, Unix, Windows) là những phân phối được thiết kế
để hỗ trợ cho máy chủ web bảo mật. Ứng dụng máy chủ web cũng thường dựa trên
những ứng dụng máy chủ web đã được đóng gói và sửa đổi (Apache, IIS). Những gói
này đều có nhiều tùy chọn bảo mật hơn và được thiết kế để dễ cấu hơn bằng những mã
trước biên dịch và giao diện người dùng đồ họa (GUI). Mặc dù mỗi gói khác nhau,
nhưng chúng đều dựa vào một hoặc nhiều tùy chọn bảo mật sau.
Kiểm tra máy chủ web và những hệ điều hành cứng hóa cần quan tâm đến những vấn
đề sau:
• Kiểm tra cấu hình mặc định ban đầu bảo mật
• Kiểm tra các phần mềm máy chủ web và hệ điều hành cứng hóa
• Kiểm tra khả năng giám sát mở rộng
• Kiểm tra các gói ứng dụng
• Kiểm tra hệ thống phát hiện xâm nhập IDS, có phát hiện kịp thời các xâm nhập
hay không
1.6.4 Công nghệ ảo hóa – công nghệ máy ảo
Công nghệ máy ảo hóa được sử dụng ngày càng nhiều cho những máy chủ web. Sử
dụng công nghệ ảo hóa, một máy tính vật lý có thể cho phép chạy nhiều máy ảo, với
mỗi hệ điều hành khách khác nhau có nhiều ứng dụng liên quan. Công nghệ máy ảo
đang liện tục được cải tiến. Phiên bản mới được thiết kế với công nghệ ảo hóa bộ vi xử
lý x86 64.
Công nghệ ảo hóa cho phép các tổ chức giảm thiểu chi phí khi chạy nhiều máy chủ
web trên 1 máy chủ máy tính đơn và cung cấp cơ chế để đáp ưungs nhanh trước những
11
tấn công vào máy chủ web. Danh sách dưới đây định nghĩa 3 loại chính về công nghệ
máy ảo. Chú ý một vài phần mềm ảo hóa có thể là phần mềm triển khai lai, dựa trên hệ
điều hành khách và phần cứng
• Ảo hóa toàn bộ, sẽ giả lập tất cả những yêu cầu phần cứng bằng hệ điều khách.
Ảo hóa toàn bộ cũng có ích trong trường hợp hệ điều hành khách chạy nhiều
kiến trúc máy khác nhau hơn một máy chủ. Kết quả ảo hóa toàn bộ làm tăng
hiệu suất đáng kể bởi vì tất cả các lệnh đều được mô phỏng bằng phần mềm

• Ảo hóa riêng sẽ chỉ mô phỏng phần cứng cần thiết để chạy một hệ điều hành
khách cố định.
• Ảo hóa một phần sẽ không ảo hóa phần cứng, thay vào đó nó dùng một giao
diện lập trình ứng dụng API có thể được sử dụng bởi một hệ điều hành khách,
hoặc tận dụng khả năng ảo hóa được hỗ trợ bởi bộ vi xử lý
Ảo hóa thêm vào các lớp phức tạp khác để thiết lập máy chủ web. Cả 2 loại hệ điều
hành máy chủ và hệ điều hành khách đều cần thiết được bảo mật. Nếu công nghệ ảo
hóa hỗ trợ bảo mật, thì có thể tiến hành sao lưu cho mỗi hệ điều hành khách và ứng
dụng máy chủ web, những bản lưu này cho phép được khôi phục nếu xảy ra tấn công.
Máy chủ web, hệ điều hành khách của nó, máy chủ hệ điều hành và phần mềm ảo cần
phải được vá lỗi một cách kịp thời. Điều quan trọng cần phải lưu ý là nếu ứng dụng
hay hệ điều hành khách bị thỏa hiệp thì máy ảo khách có thể bị lây nhiễm sang các
máy chủ khác trong mạng như thế nó là một máy chủ vật lý độc lập. Mỗi hệ điều hành
và phần mềm máy chủ web liên quan càn phải được cấu hình và duy tri theo những
khuyến ở những nội dung tiếp theo
2 Kiêm tra bảo mật máy chủ web
Trước khai bắt đầu cài đặt phần mềm máy chủ web cần phải đọc tài liệu của các nhà
sản xuất máy chủ web trước và hiểu được các tùy chọn khác nhau trong suốt quá trình
cài đặt.
2.1 Kiểm tra hoạt động cài đặt máy chủ web
Nguyên tắc chung đầu tiên là chỉ cài các dịch vụ cần thiết cho máy chủ web để loại bỏ
bất kỳ những lỗ hổng nào thông qua những bản vá lỗi hay bản cập nhật. Bất kỳ ứng
12
dụng, dịch vụ hay các tập lệnh không cần thiết nào có thể bỏ luôn trong quá trình cài
đặt. Trong suốt quá trình cài đặt cần thực hiện kiểm tra theo những bước sau:
• Kiểm tra cài đặt phần mềm máy chủ web hoặc là trên một máy chủ chuyên
dụng hoặc trên một hệ điều hành khách chuyên dụng nếu ảo hóa đang được sử
dụng
• Kiểm tra việc áp dụng bất kỳ những bản vá lỗi hay bản cập nhật nào để khắc
phục bất kỳ những điểm yếu đã biết

• Kiểm tra việc tạo ra những phân vùng logic hay những ổ đĩa vật lý chuyên dụng
(phân tách hệ điều hành và ứng dụng máy chủ web) cho nội dung web
• Kiểm tra loại bỏ hoặc vô hiệu hóa tất cả các dịch vụ không cần thiết cài bởi ứng
dụng máy chủ web (các dịch vụ quản trị từ xa, truyền tập tin)
• Kiểm tra loại bỏ hoặc vô hiệu hóa tất cả các tài khoản đăng nhập mặc định được
tạo ra bởi quá trình cài đặt máy chủ web
• Kiểm tra loại bỏ tất cả những tài liệu hướng dẫn của nhà sản xuất từ máy chủ
• Kiểm tra loại bỏ tất cả những ví dụ hoặc kiểm tra các tập tin từ máy chủ bao
gồm cả những tập lệnh và mã thực thi
• Kiểm tra áp dụng những mẫu bảo mật thích hợp hoặc những tập lệnh cứng đến
máy chủ
• Kiểm tra cầu hình lại dịch vụ HTTP banner hay những dịch vụ khác
2.2 Cấu hình kiểm soát truy cập
Kiểm tra kiểm soát truy cập để xác định thông tin nào từ máy chủ web có thể được
truy cập sử dụng các kiểm soát truy cập vào trang web công cộng. Phần mềm máy chủ
web có thể bao gồm các cơ chế để cung cấp các điều khiển truy cập vào vào các tài
nguyên, thiết bị và các tập tin. Điều quan trọng là thiết lập các quyền hạn giống hệt
nhau cho cả hệ điều hành và ứng dụng máy chủ web. Quản trị máy chủ web cần phải
xem xét cách tốt nhất để cấu hình kiểm soát truy cập bảo vệ cho các khu vực lưu trữ
thông tin trên các máy chủ web:
• Kiểm tra hạn chế truy cập của các ứng dụng máy chủ web đến các tài nguyên
khác
• Kiểm tra hạn chế truy cập của người dùng thông qua những kiếm soát truy cập
bổ sung bắt buộc bời máy chủ web
Kiểm tra những tập tin điển hình để truy cập cần phải tuân theo những điều sau:
• Phần mềm ứng dụng và các tập tin cấu hình
13
• Kiểm tra các tập tin liên quan trực tiếp đến các cơ chế bảo mật:
o Kiểm tra tập tin lưu mã băm mật khẩu và những tập tin khác được sử
dụng trong xác thực

o Kiểm tra các tập tin có chưa các thông tin ủy quyền được sử dụng trong
truy cập hay không?
o Kiểm tra những thông tin khóa quan trọng được sử dụng trong lĩnh vực
bí mật, toàn vẹn và dịch vụ chống chối bỏ
• Kiểm tra log máy chủ và các tập tin giám sát hệ thống
• Kiểm tra các tập tin cấu hình và phần mềm hệ thống
• Kiểm tra các tập tin nội dung của trang web
2.2.1 Kiểm tra cấu hình quyền hạn cho ứng dụng máy chủ web
Kiểm tra cấu hình quyền hạn cho ứng dụng máy chủ web để hạn chế các tập tin có thể
bị truy cập bới những quy trình dịch vụ máy chủ web. Những quy trình này chỉ cho
phép có quyền đọc những tập tin cần thiết và không có quyền truy cập các tập tin khác
ví dụ như truy cập đến các tập tin log nhật ký máy chủ. Khi kiểm tra sử dụng hệ điều
hành máy chủ web cần tuân theo những điểm sau:
• Kiểm tra những quy trình dịch vụ được cấu hình để chạy như một người dùng
và bị giới hạn quyền, những quy trình dịch vụ này có chạy quyền quản trị, siêu
quyền hay những tài khoản tương tự không, nếu có tắt bỏ
• Kiểm tra các tập tin nội dung web có thể được đọc những không được ghi bởi
những quy trình dịch vụ
• Kiểm tra những quy trình dịch vụ không được phép ghi lên những thư mục có
chứa những nội dung web công khai
• Kiểm tra những quy trình được ủy quyền cho người quản trị máy chủ web mới
có quyền ghi các tập tin nội dung web
• Ứng dụng máy chủ web có thể ghi vào những tập tin nhật ký máy chủ web,
nhưng những tập tin nhật ký không được đọc bởi những ứng dụng máy chủ
web. Chỉ những quy trình mức siêu quyền/hệ thống/quản trị có quyền đọc
những tập tin nhật ký máy chủ web
• Những tập tin tạm thời được tạo ra bởi ứng dụng máy chủ web, có thể được
sinh ra những trang web động hoặc người dùng đưa thông tin lên, những tập tin
này cần phải xác định bảo vệ phù hợp
• Việc truy cập đến bất kỳ tập tin tạm thời nào được tạo ra bởi ứng dụng máy chủ

web bị giới hạn đến những quy trình máy chủ web
14
Điều này cần thiết để đảm bảo ứng dụng máy chủ web không thể lưu lại (hoặc, trong
một vài trường hợp, đọc) tập tin bên ngoài cấu trúc tập tin được xác định đến nội dung
web công khai. Đây có thể là 1 lựa chọn cấu hình trong phần mềm máy chủ, hoặc nó
có thể chọn hệ điều hành kiểm soát quy trình máy chủ. Đảm bảo những thư mục hoặc
tập tin (bên ngoài cây thư mục đã được xác định) không được phép truy cập mặc dù
người dùng thực hiện trực tiếp duyệt đến những URL
Để giảm thiểu những tác động của một số loại tấn công DoS, cấu hình máy chủ web
giới hạn số lượng tài nguyên hệ điều hành có thể dùng. Một số vấn đề cần lưu ý là:
• Cài nội dung web lên những phân vùng logic hay ổ đĩa cứng khác nhau hơn là
ứng dụng máy chủ web và hệ điều hành
• Dành riêng 1 phần bộ nhớ để đưa tập tin lên. Nếu việc đưa tập tin lên máy chủ
web được cho phép. Lý tưởng nhất, cập nhật nên được đặt trên một phân vùng
riêng để cung cấp sự đảm bảo tốt hơn để giới hạn ổ cứng không thể bị vượt qua
• Phải đảm bảo những tập tin nhật ký được lưu ở những vị trí thích hợp. Trường
hợp lý tưởng, các tập tin nhật ký được lưu trên một phân vùng riêng. Nếu một
cuộc tấn công làm cho dung lượng tập tin nhật ký tăng đột biến quá giới hạn,
phân vùng vật lý đảm bảo các máy chủ web có đủ tài nguyên để xử lý tình
huống 1 cách hợp lý
• Cấu hình tối đa các kết nối mạng hoặc quy trình máy chủ web mà máy chủ web
có thể cho phép
2.2.2 Cấu hình thư mục có chứa nội dung web bảo mật
Không sử dụng các liên kết, bí danh hoặc các biểu tượng (shortcut) trong cây thư mục
tập tin có chứa nội dung web công khai mà trỏ đến những thư mục hay tập tin trên hệ
thống máy chủ hay hệ thống tập tin mạng. Nếu có thể, vô hiệu hóa khả năng của phần
mềm máy chủ web theo các liên kết và các bí danh. Các tập tin cấu hình và nhật ký
máy chủ web phải được đặt ở bên ngoài những thư mục tập tin web công khai
Các bước sau đây là bắt buộc để hạn chế quyền truy cập vào cây thư mục tập tin có
chưa nội dụng web cụ thể:

15
• Dành riêng một phân vùng logic hay ổ cứng cho nội dung web và thiết lập các
thư mục con có liên quan đến các tập tin nội dung máy chủ web, bao gồm đồ
họa nhưng không bao gồm các tập lệnh và chương trình khác.
• Xác định cây thư mục riêng dành cho các chương trình, tập lệnh bên ngoài
được thực thi như một phần của nội dung web (CGI, ASP, PHP)
• Vô hiệu hóa thực thi của các tập lệnh mà không phải dùng tài khoản quản trị.
Hành động này được thực hiện bằng cách tạo ra và kiểm soát truy cập vào một
thư mục riêng biệt có chứa các tập lệnh ủy quyền
• Vô hiệu hóa việc sử dụng những liên kết cứng hay các liên kết mềm
• Xác định một ma trận truy cập nội dung web hoàn chỉnh. Xác định thư mục và
tập tin trong tài liệu máy chủ web nên được giới hạn và có thể truy cập
Đa số các nhà cung cấp phần mề máy chủ web đều cung cấp những lệnh cho phép
người quản trị web có thể giới hạn người dùng truy cập đến cá tập tin có chứa nội
dung máy chủ web. Ví dụ, phần mềm máy chủ web Apache cung cấp chỉ lệnh
<Limit>, cho phép người quản trị web có thể hạn chế truy cập đây là tính năng truy
cập tùy chọn (ví dụ như tạo mới, xóa, kết nối…) có liên quan đến tập tin có chứa nội
dung web; bất kỳ phương thức nào bị bỏ qua từ chỉ lệnh <Limit> sẽ được cho phép.
Với chỉ lệnh <Limit> quản trị viên có thể có những yêu cầu cụ thể phù hợp với hành
động được giới hạn. Apache cho phép quản trị web giới hạn nội dung để xác thực
người dùng hay nhóm người dùng.
2.2.3 URI và Cookies
URI viết tắt của Uniform Resource Identifiers – tham chiếu tài nguyên mạng
Địa chỉ URL (Uniform Resource Locator) được dùng để tham chiếu tới tài nguyên trên
Internet. URL mang lại khả năng siêu liên kết cho các trang mạng, các tài nguyên khác
nhau.
Một URL gồm các thành phần sau:
• Giao thức (ví dụ: http, ftp) nhưng cũng có thể là một cái tên khác (ví dụ: news,
mailto).
• Tên miền (ví dụ: example.com.vn, abc.vn).

• Cổng (ví dụ: 80, 8080), tuy nhiên thành phần này có thế không bắt buộc.
• Đường dẫn tuyệt đối trên máy phục vụ của tài nguyên (ví dụ: thumuc/trang).
:80/Trang/default.aspx
16
\____/ \________/ \_/ \______________/
| | | |
| Tên miền | Đường dẫn tuyệt đối
Giao thức Cổng
URI thường bao gồm cả nội dung web công khai. Mặc dù, nhiều URI không hiển thị
nội dung web trong trình duyệt web của người dùng, họ có thể dễ dàng thấy được mã
nguồn. Do đó, không công khai nội dung web mà có các URI ẩn trong mã nguồn. Rất
nhiều kẻ tấn công và chương trình độc hại tìm thấy những thông tin nhạy cảm trên mà
nguồn:
• Địa chỉ email
• Hình ảnh trên các máy chủ khác
• Các đường dẫn đến các máy chủ khác
• Các tham số đặc biệt (ví dụ tên người dùng, mật khẩu của siêu quyền, quản trị )
• Các giá trị điền khung ẩn
• Các siêu liên kết
Cookies là 1 đoạn dữ liệu được ghi vào đĩa cứng hoặc bộ nhớ của máy người sử dụng.
Nó được trình duyệt gửi lên máy chủ mỗi khi trình duyệt tải 1 trang web từ server.
Những thông tin được lưu trữ trong cookie hoàn toàn phụ thuộc vào từng website trên
server. Mỗi website có thể lưu trữ những thông tin khác nhau trong cookie ví dụ thời
điểm cuối cùng ta đặng nhập, hoặc đánh dấu ta đã đăng nhập chưa
2.2.4 Kiểm soát tác động của các Bots web trên máy chủ web
Web bots (hoặc thu thập, tìm kiếm) là những ứng dụng phần mềm được dùng để thu
thập, phân tích và chỉ mục nội dung web. Các web bot thường được sử dụng bởi nhiều
tổ chức với nhiều mục đích. Ví dụ như:
• MSNBot, Slurp và Googlebot phân tích, chỉ mục và ghi lại các trang web cho
các dịch vụ tìm kiếm như Windows Luve Search, Yahoo và Google

• Mediabot được sử dụng bởi Google để phân tích nội dung phục vụ bởi một
trang AdSense
• Siêu liên kết “xác nhận” được sử dụng bởi Webmaster để tự động xác nhận các
liên kết trên trang web của họ
• EmailSiphon và Cherry Picker là những bot được thiết đặc biệt để thu thập các
trang web mail điện tử thêm vào để thêm vào danh sách thư rác. Đây là những
17
ví dụ phổ biến về chương trình có thể một tác động tiêu cực trên một trang web
hoặc người sử dụng
• Nhiều spambot thu thập các website để đăng nhập khung tạo ra những địa chỉ
email miễn phí từ đó gửi spam và spam rác các trang cá nhân, quest book, wiki
và những diễn đàn để đẩy thứ hạng tìm kiếm của 1 trang web lên
• Screen scaper lấy nội dung từ các trang web để đưa một bản sao trên máy chủ
web. Những bản sao này có thể được sử dụng để lừa đảo hoặc cố gắng để sinh
thêm doanh thu quảng cáo bằng cách hướng người dùng truy cập vào những
bản sao này
• Một số chương trình độc hại sẽ thu thập các website cho các ứng dụng có khả
năng có điểm yếu có chưa những dữ liệu nhạy cảm như thẻ tín dụng, số an sinh
xã hội)
Các bot có thể đưa ra thách thức cho các quản trị viên Webmaster của các máy chủ của
họ vì:
• Các máy chủ web thường chứa các thư mục không cần được chỉ mục
• Các tổ chức có thể không mong muốn một phần trong trang web của họ xuất
hiện trong công cụ tìm kiếm
• Máy chủ web thường chứa các trang web tạm thời mà không cần phải được lập
chỉ mục
• Các tổ chức thực hiện máy chủ web đang trả tiền cho bằng thông và muốn loại
trừ robot và spider mà không có lợi cho mục tiêu của họ
Quản trị web hoặc webmaster có thể
3 Bảo mật máy chủ web theo OWASP

3.1 Kiểm tra lỗi XSS cho ứng dụng web
a. Mô tả
Lỗi XSS xảy ra khi ứng dụng web nhận các dữ liệu độc hại và chuyển nó đến trình
duyệt cho người dùng mà không xác nhận lại dữ liệu đó có hợp lệ hay không. Kiểu tấn
công này cho phép kẻ tấn công thực thi các đoạn mã độc trong trình duyệt của nạn
nhân và có thể cướp phiên người dùng hoặc chuyển hướng người dùng đến các trang
độc hại khác. Có 3 loại XSS:
18
• Lưu trữ (stored XSS).
• Phản chiếu (reflected XSS).
• Dựa vào DOM (DOM base XSS).
Một ví dụ về lỗi Reflected XSS
Lỗi này có thể được phát hiện bằng việc kiểm tra tại các điểm vào dữ liệu (entry ponit)
hoặc phân tích mã nguồn.
b. Nội dung kiểm tra
Tìm đầu vào dữ liệu, vì lỗi XSS xảy ra chủ yếu tại các nơi nhập liệu dữ liệu. Kiểm tra
toàn bộ các dữ liệu đầu vào mà người dùng được lưu trữ phía Server và sau đó được
hiển thị bởi ứng dụng.
Cần phải bảo đảm tất cả dữ liệu đầu vào từ người dùng mà được gửi trở lại trình duyệt
web cần phải được kiểm tra để đảm bảo an toàn (thông qua kiểm định dữ liệu đầu
vào), và các dữ liệu đó phải được loại bỏ kí tự đặc biệt cẩn thận trước khi nó được xuất
ra tại các trang web. Mã hóa dữ liệu đầu ra có thể bảo đảm những dữ liệu đầu vào luôn
được xem dưới dạng văn bản trên trình duyệt thay vì những đoạn nội dung động có thể
thực thi.
Các công cụ quét lỗi có thể phát hiện XSS một cách tự động. Tuy nhiên, mỗi ứng dụng
xây dựng trang web khác nhau và sử dụng những trình biên dịch trình duyệt web khác
nhau như Javascript, ActiveX, Flash và Silverlight, làm cho việc phát hiện lỗi khó
khăn hơn. Cho nên, việc đảm bảo toàn bộ đòi hỏi sự kết hợp giữa kiểm tra mã nguồn,
và thâm nhập kiểm chứng bằng tay, bên cạnh những cách thức tự động khác. Công
nghệ Web 2.0, như Ajax, làm cho việc phát hiện XSS trở nên khó khăn hơn bằng

những công cụ tự động.
19
Kiểm tra bộ lọc đầu vào của trang web có tốt và lọc được tốt nhất hay không, ngăn
chặn được các mã script hay không.
3.2 Kiểm tra lỗi SQL Injection cho dịch vụ web
c. Mô tả
Chèn các câu SQL vào các thể đầu vào phía máy khách, nếu khai thác thành công lỗi
này thì dữ liệu có thể bị đọc, chỉnh sửa, xóa…
d. Nội dung kiểm tra
Bước 1: Kiểm tra sự tồn tại của SQL
Kiểm tra các đầu vào thường là chèn thêm các dấu nháy đơn, nháy kép hoặc dấu chấm
phẩy vào các trường kiểm tra
Bước 2: Kiểm tra chèn các câu truy vấn
Chèn các câu truy vấn trả lại True để kiểm tra xem dữ liệu của người dùng mà dạng
xác thực có tồn tại, sau đó người dùng được cho phép đăng nhập vào hệ thống, ngược
lại truy vấn sẽ bị từ chối
3.3 Kiểm tra xác thực và quản lý phiên
-Kiểm tra xác thực: kiểm tra việc thiết lập và chứng thực có tin cậy hay không. Xác
thực một đối tượng còn có nghĩa là công nhận nguồn gốc của đối tượng, trong khi xác
thực một người dùng là việc thẩm tra nhận dạng của họ, việc xác thực thường phụ
thuộc vào một hoặc nhiều nhân tố xác thực để chứng minh cụ thể, kiểm tra xác thực có
nghĩa là hiểu quá trình xác thực làm việc như thế nào và sử dụng những thông tin này
để phá vỡ các cơ chế xác thực.
-Kiểm tra quản lý phiên làm việc
Phiên là khoảng thời gian mà người dùng giao tiếp với ứng dụng, tính từ lúc người
dùng bắt đầu sử dụng ứng dụng cho đến khi người dùng kết thúc sử dụng ứng dụng.
Điều khiển phiên về tổng thể sẽ bao gồm tất cả những điều khiển lên người dùng từ
xác thực cho đến khi rời khỏi ứng dụng.
Kiểm tra quản lý phiên làm việc có 5 bài kiểm tra khác nhau:
+Kiểm tra lược đồ quản lý phiên: kiểm tra xem cookie hay session token đã được tạo

ra một cách bảo mật và không thể đoán trước được hay không. Một kẻ tấn công có thể
dự đoán và giả mạo những cookie yếu, có thể dễ dàng thay đổi session của những
người dùng hợp lệ.
+Kiểm tra thuộc tính Cookies:
+Kiểm tra khả năng đặt trước phiên làm việc:
20
+Kiểm tra khả năng lộ các biến phiên làm việc: kiểm tra những thông tin về các loại
Session Token (như Cookie, SessionID, Hidden Field) có bị lộ hay không, nếu thông
tin bị lộ kẻ tấn công có thể giả mạo nạn nhân và truy xuất vào ứng dụng
+Kiểm tra các lỗi giả lập yêu cầu liên kết chéo:
3.4 Đối tượng tham chiếu thiếu an toàn
Xảy ra khi người phát triển để lộ một tham chiếu đến những đối tượng trong hệ thống
như các tập tin, thư mục hay chìa khóa dữ liệu. Nếu chúng ta không có một hệ thống
kiểm tra truy cập, kẻ tấn công có thể lợi dụng những tham chiếu này để truy cập dữ
liệu một cách trái phép.
Kiểm tra tác nhân đe dọa: xem xét các loại người dùng khác nhau trong hệ thống của
bạn. Liệu có người dùng nào chỉ có một phần quyền truy cập đến các loại dữ liệu trong
hệ thống?
Kiểm tra hướng tấn công: khả năng khai thác (dễ) Kẻ tấn công, là một người dùng
trong hệ thống, có thể thay đổi một tham số ứng với một đối tượng hệ thống nào đó mà
hắn không có quyền truy cập đến. Liệu việc truy cập có thành công hay không?
Kiểm tra điểm yếu bảo mật: mức độ phổ biến (mức trung bình) và khả năng phát hiện
(dễ) Ứng dụng thường xuyên sử dụng trực tiếp tên hoặc khóa của một đối tượng khi
xây dựng các trang web. Các ứng dụng thường không kiểm tra nếu người dùng này
thật sự có quyền truy cập hay không. Đây chính là mấu chốt dẫn đến lỗi các đối tượng
tham chiếu. Người kiểm tra có thể dễ dàng thay đổi các giá trị tham số để phát hiện ra
lỗ hổng này, phân tích mã nguồn có thể giúp ta nhanh chóng phát hiện quyền truy cập
có được xem xét cẩn thận hay không?
Kiểm tra mức độ ảnh hưởng: Lỗi như thế có thể giúp kẻ tấn công nắm quyền toàn bộ
những dữ liệu có thể được liên kết bởi các tham biến. Trừ khi không gian truy cập rời

rạc, kẻ tấn công có thể truy cập tất cả các loại dữ liệu như thế
Kiểm tra khả năng mắc phải lỗi này hay không:
Cách tốt nhất để xem một ứng dụng có bị lỗi này hay không là kiểm tra tất cả các đối
tượng tham chiếu có được bảo vệ hợp lý hay không.
- Đối với các liên kết trực tiếp tới các dữ liệu cần bảo vệ, ứng dụng cần phải kiểm tra
xem người dùng đang yêu cầu có được phép truy cập đến dữ liệu đó hay không?
- Nếu liên kết là một tham biến gián tiếp, việc chuyển biến đến dữ liệu trực tiếp phải
được giới hạn bởi những giá trị cho phép đối với người dùng hiện tại
21
3.5 Giả mạo yêu cầu CSRF
Mô tả: Bất cứ ai cũng có thể lừa người dùng của bạn gửi yêu cầu đến website. Bất cứ
website hoặc HTML feed mà người dùng có thể truy cập đến đều có thể bị sử dụng.
Kẻ tấn công có thể giả mạo một yêu cầu HTML và lừa nạn nhân gửi chúng đi qua các
thẻ hình ảnh, XSS, hoặc rất nhiều kỹ thuật khác. Nếu người dùng đã được xác thực,
việc tấn công sẽ thành công. Vì vậy cần phải kiểm tra xem mỗi đường liên kết hay
form chứa những giá trị không thể đoán được cho mỗi người sử dụng. Nếu không có
những giá trị như vậy, kẻ tấn công có thể giả mạo bất cứ yêu cầu nào. Tập trung vào
liên kết và form thực hiện những chức năng thay đổi trạng thái bởi vì những thứ ấy
thường là đối tượng tấn công của CSRF.
CSRF lợi dụng ứng dụng web cho phép kẻ tấn công đoán được tất cả những chi tiết
của một hành vi nào đó Vì trình duyệt gửi những thông tin như cookie phiên làm việc
tự động, kẻ tấn công có thể tạo những trang web độc mà tạo những yêu cầu giả không
khác biệt so với những trang thực Việc phát hiện CSRF tương đối dễ qua việc tấn công
thử nghiệm hoặc phân tích mã nguồn.
3.6 Kiểm tra sai sót cấu hình an ninh
Có thể là những kẻ tấn công nặc danh từ phía ngoài, hoặc người người dùng sở hữu tài
khoản muốn kiểm soát hệ thống. Cũng nên cân nhắc những đối tượng nội bộ muốn che
dấu hành động
Kẻ tấn công sử dụng tài khoản tài khoản mặc định, trang web không được sử dụng, lỗi
bảo mật chưa được vá, tập tin và thư mục không được bảo vệ để thu thâp thông tin

hoặc truy cập hệ thống một cách bất hợp pháp
Sai sót trong cấu hình an ninh có thể xảy ra ở bất kì cấp độ ứng dụng nào, bao gồm:
nền tảng, máy chủ web, máy chủ ứng dụng, các khuôn mẫu hay các đoạn mã tùy
chỉnh. Người phát triển và nhà quản trị mạng cần phải làm việc cùng nhau để đảm bảo
rằng từng lớp được chỉnh một cách đúng đắn. Những công cụ quét tự động cũng có thể
hữu ích trong việc phát hiện những bản vá lỗi bị thiếu, sai sót trong cấu hình hoặc sử
dụng những tài khoản mặc định, những dịch vụ không cần thiết
Lỗi như vậy thường cho kẻ tấn công quyền truy cập bất hợp pháp đến những chức
năng hay dữ liệu hệ thống. Thỉnh thoảng lỗi này cũng có thể giúp kẻ tấn công chiếm
toàn bộ hệ thống.
3.7 Lưu trữ mật mã không an toàn
Nhiều ứng dụng web không bảo vệ dữ liệu nhạy cảm như thẻ tín dụng, SSN và những
mã xác thực thông tin bằng các phương thức mã hóa hay băm. Kẻ tấn công có thể ăn
22
cắp hay thay đổi những dữ liệu nhạy cảm và tiến hành trộm cắp, gian lận thẻ tín
dụng…
3.8 Sai sót hạn chế truy cập
Nhiều ứng dụng web kiểm tra quyền thực thi địa chỉ truy cập URL trước khi dựng các
liên kết và nút nhấn được bảo vệ. Tuy nhiên ứng dụng cũng phải thực hiện những kiểm
tra tương tự mỗi khi những trang thông tin được truy cập trực tiếp nếu không kẻ tấn
công có thể giả mạo URL để truy cập vào những trang thông tin ẩn này
3.9 Thiếu bảo vệ lớp vận chuyển
Các ứng dụng thường xuyên mắc sai lầm trong việc kiểm tra định danh, mã hóa và bảo
vệ sự tuyệt mật và tính toàn vẹn của những thông tin nhạy cảm trên mạng liên kết. Nó
thường được bảo vệ bởi những thuật toán yếu, sử dụng những chứng nhận đã hết hiệu
lực hoặc không sử dụng đúng cách
3.10 Chuyển hướng và chuyển tiếp thiếu thẩm tra
Ứng dụng web thường xuyên đưa người dùng đến những liên kết qua các website khác
và sử dụng những thông tin thiếu tin cậy để xác định đích đến. Nếu không được kiểm
tra một cách cẩn thận, kẻ tấn công có thể lợi dụng để chuyện nạn nhân đến các trang

web lừa đảo hay phần mềm độc hại, hoặc chuyển tiếp để truy cập các trang trái phép

23

×