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

Nội dung chính cần kiểm tra để đánh giá an toàn website

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 (107.16 KB, 8 trang )

NỘI DUNG CHÍNH CẦN KIỂM TRA ĐÁNH GIÁ AN TOÀN WEBSITE
Nội dung kiểm tra Mô tả
Thời gian
thực hiện
1. Kiểm tra quản lý cấu hình
1.1 Kiểm tra mã hóa SSL/TLS
Kiểm tra xem hệ thống hiện tại hỗ trợ
những thuật toán mã hóa nào, độ mạnh
của những khóa được sử dụng (trong
thuật toán) trên SSL/TLS đã đủ mạnh
hay chưa. Ngoài ra phần này cũng kiểm
tra tính hợp lệ của các chứng chỉ
SSL/TLS đang được sử dụng trong hệ
thống hiện tại.
2 Kiểm tra DB Listener
Kiểm tra tính năng cho phép kết nối từ
xa đến CSDL có được cho phép hay
không. Nếu cho phép kiểm tra xem nó
có thiết lập chế độ xác thực hay không,
các mật khẩu mặc định đã được thay đổi
chưa.
3
Kiểm tra về quản lý cấu
hình hạ tầng
Xem xét các yếu tố hạ tầng cấu hình lên
ứng dụng mà có thể kiểm tra được đã
đảm bảo đủ bảo mật hay chưa. Kiểm tra
với những lỗi (trong hạ tầng) đã được
tung ra. Xem xét các giao diện quản trị
có thể, và kiểm tra xem chúng có thể
truy xất từ internet hay không, xem xét


và thay đổi những người dùng mặc định
và mật khẩu mặc định.
4 Kiểm tra về quản lý cấu
hình ứng dụng
Kiểm tra với những trường hợp ví dụ
của ứng dụng, những file hay thư mục
thường có trên ứng dụng xem có để lộ
thông tin gì không. Xem xét và tập hợp
đủ những ghi chú chưa được xóa hết để
thu thập thêm thông tin. Ngoài ra, nếu có
thêm quyền sâu hơn có thể kiểm tra
thêm các tính năng khác như: Cấu hình
chung của hệ thống đã ổn chưa, những
log ghi lại được đặt ở đâu, gồm những
thông tin gì.
5 Kiểm tra về xử lý kiểu file
Xem xét với các loại file có phần mở
rộng khác nhau. Từ những phần mở rộng
của các file và cách xử lý đó có thể suy
luận để biết ứng dụng hỗ trợ những công
nghệ gì.
6
Kiểm tra những file cũ,
sao lưu, không có tham
chiếu
Kiểm tra xem trên ứng dụng có để lộ ra
thông tin gì từ việc nâng cấp lên các
phiên bản mới (mà vẫn còn để lại những
file của phiên bản cũ, hay bị tự động đổi
tên), rồi những thông tin để lộ trong

những phần dự phòng mà có thể truy
xuất được. Những file mà vốn không
tham chiếu đến từ ứng dụng nhưng bị dự
đoán được tên cũng có thể tạo ra những
lỗi trong bảo mật của toàn bộ ứng dụng.
7
Kiểm tra các giao diện hạ
tầng và quản trị ứng dụng
(nếu có)
Xem xét các giao diện quản trị trong hệ
thống để tìm ra xem có thể truy xuất vào
đấy mà không cần xác thực hay xác thực
mặc định không.
8
Kiểm tra các phương thức
HHTP và XST
Có nhiều phương thức HTTP cho phép
người dùng thực hiện nhiều thao tác đặc
biệt (chỉnh sửa, xóa, dò vết…) trên phía
ứng dụng. Phần này kiểm tra xem những
phương thức không cần thiết đó đã bị
chặn hay chưa.
2. Kiểm tra xác thực tài khoản
1
Kiểm tra quyền ủy nhiệm
qua các kênh mã hóa
Kiểm tra xem ứng dụng có hỗ trợ những
giao thức nào: http, https. Thông thường
quan tâm đến khả năng hỗ trợ https của
ứng dụng.

2 Kiểm tra liệt kê use
Sử dụng những thông báo khác nhau
trong ứng dụng để có thể tập hợp được
danh sách các tài khoản trong ứng dụng,
thường quan tâm đến những tài khoản
quản trị hơn. Mục đích cuối cùng là lập
ra được danh sách những tài khoản của
ứng dụng
3
Kiểm tra tài khoản khách
hoặc mặc định
Kiểm tra mật khẩu mặc định, hay cặp
(tài khoản, mật khẩu) mặc định trong hệ
thống có được sử dụng hay không. Kiểm
tra xem mật khẩu có dễ đoán hay không,
những thông tin về mật khẩu có thể dự
đoán được từ những thông tin liên quan
khác không.
4 Kiểm tra bruteforce
Kiểm tra khả năng chống đỡ của hệ
thống với kiểu tấn công dò toàn bộ
(bruteforce) cả với kiểu dò theo từ điển,
và dò theo luật, dò tất cả các trường hợp
có thể
5
Kiểm tra khả năng vượt
qua các lược đồ xác thực
Kiểm tra khả năng có thể truy xuất vào
những phần nào của ứng dụng mà không
cần xác thực. Thông thường đó sẽ là

những đường dẫn ẩn mà người dùng
bình thường không được tham chiếu đến
6
Kiểm tra lỗi nhớ hoặc đặt
lại mật khẩu
Kiểm tra xem ứng dụng có cho phép
trình duyệt ghi nhớ mật khẩu khi đăng
nhập vào hệ thống hay không. Chức
năng đổi mật khẩu cũng được kiểm tra
xem việc đổi mật khẩu đã đủ xác đáng
hay chưa, các câu hỏi bảo mật của quản
trị viên có để lộ câu trả lời hay không,
mật khẩu mới sinh ra có thể dự đoán
được hay không.
7 Kiểm tra thoát hoặc duyệt Kiểm tra chức năng đăng xuất có hoạt
quản lý bộ đệm
động đúng đắn hay không, các thông tin
nhạy cảm ở phần đệm có được làm sạch
khi người dùng thoát khỏi ứng dụng hay
không.
8
Kiểm tra trả lời tự động
(CAPTCHA)
Đánh giá hệ thống CAPTCHA của ứng
dụng hiện tại xem có thể bẻ khóa được
nó hay không.
9
Kiểm tra xác thực đa yếu
tố
Với hệ thống sử dụng đa xác thực, xem

xét hệ thống có hoạt động đúng như thiết
kế hay không. Phân tích những ưu và
nhược điểm của các loại hệ thống đa xác
thực khác nhau.
10
Kiểm tra các điều kiện
tương tự
Kiểm tra trong những tiến trình xảy ra
đồng thời cùng can thiệp vào một tài
nguyên (thường là biến nào đó) thường
có gây ra hiện tượng sai lệch nào không
3. Kiểm tra quản lý phiên làm việc
1
Kiểm tra lược đồ quản lý
phiên (session)
Kiểm tra khả năng từ việc phân tích
những session (đã có) có thể dự đoán
được những session tiếp theo. Hay từ
những session thu được có thể phân tích
ra những giá trị như: tên tài khoản, mật
khẩu,… ở trong đó hay không.
2
Kiểm tra thuộc tính
Cookies
Các thuộc tính của cookies như: HTTP
Only, Secure, cần phải được triểm tra
để đảm bảo những thông tin nhạy cảm
luôn được truyền trong những đường đã
mã hóa
3

Kiểm tra khả năng đặt
trước phiên làm việc
Kiểm tra xem hệ thống có thể bị tấn
công định trước phiên hay không.
4
Kiểm tra khẳ năng lộ các
biến phiên làm việc
Các biến lộ rõ trong session cũng có thể
để lộ những dữ liệu nhạy cảm với người
dùng. Phần này sẽ kiểm tra nhằm đảm
bảo những giá trị trong các biến này là
không nhạy cảm.
5
Kiểm tra các lỗi giả lập
yêu cầu liên kết chéo
Kiểm tra xem ứng dụng có thể chống lại
CSRF hay không
4. Kiểm tra phân quyền tài khoản
1
Kiểm tra khả năng truy
cập file, thư mục (Path
Traversal)
Kiểm tra xem hệ thống có bị lỗi Path
Traversal hay không. Lỗi này cho phép
truy xuất đến những file mà đáng ra ta
không có có quyền truy xuất đến.
2
Kiểm tra khả năng vượt
qua các lược đồ phân
quyền

Kiểm tra lược đồ phân quyền đã hợp lý
chưa, có cho phép người sử dụng quyền
của những nhóm khác, hay cấp độ quyền
khác hay không. Ví dụ như khả năng
truy xuất sau khi đăng xuất, khả năng
truy xuất vào những tài nguyên mà
không cần xác thực.
3
Kiểm tra khả năng nâng
quyền
Kiểm tra khả năng thay đổi các tham số
để người dùng có thể sử dụng những
quyền cao hơn.
5. Kiểm tra xác duyệt thông tin
1
Kiểm tra kiểu tấn công
kịch bản không liên trang
liên tục (Reflected Cross
Site Scripting)
Kiểm tra xem website có khả năng
chống lại cách tấn công mà kẻ tấn công
tìm cách chèn các đoạn mã kịch bản
nguy hiểm tới phía người dùng hay
không
2
Kiểm tra kiểu tấn công
kịch bản liên trang liên tục
(Store Cross Site
Scripting)
Kẻ tấn công tìm cách lưu các đoạn mã

nguy hiểm lên máy chủ nhằm tấn công
liên tục vào mọi người dùng khi sử dụng
hệ thống, việc kiểm tra này nhằm đánh
giá website có khả năng lọc các đoạn mã
nguy hiểm hay không.
3
Kiểm tra kiểu tấn công
kịch bản thông qua mô
hình đối tượng tài liệu
(DOM based Cross Site
Scripting)
Kẻ tấn công tìm cách chèm các đoạn mã
vào trang HTML phía người dùng bằng
cách sử dụng mô hình DOM, việc kiểm
tra này để đánh giá ứng dụng có khả
năng lọc các đoạn mã nguy hiểm hay
không
4
Kiểm tra kiểu tấn công
chèm câu truy vấn cơ sở
dữ liệu (SQL Injection)
Kiểm tra xem website có khả năng
chống lại kiểu tấn công vào CSDL hay
không khi mà kẻ tấn công tìm cách chèn
các câu truy vấ dữ liệu vào các phần
điền thông tin phía người dùng nhằm ăn
cắp thông tin về dữ liệu
5
Kiểm tra kiểu tấn công
chèn XML vào ứng dụng

(XML Injection)
Kiểm tra Website có bị lỗ hổng hay
không khi mà kẻ tấn công tìm cách chèn
đoạn XML sai cú pháp thông qua điền
thông tin của ứng dụng để gây lỗi nhằm
thu thập thông tin
6
Kiểm tra kiểu tấn công
chèn các lệnh thực thi phía
máy chủ (SSI – Server
Side Includes)
Kiểm tra xem kẻ tấn công có khả năng
chèn các câu lệnh thực thi phía máy chủ
thông qua điền thông tin của Website để
lấy thông tin về máy chủ hay không
7
Kiểm tra kiểu tấn công
chèn câu truy vấn theo
giao thức truy nhập thư
mục dịch vụ (LDAP –
Lightweight Directory
Access Protocol)
Kiểm tra xem Website có khả năng bị
tấn công khi kẻ tấn công tìm cách tấn
công vào giao thức truy nhập thư mục
mà chứa thông tin về người dùng hay
không.
8
Kiểm tra tấn công chèn
câu truy vấn vào ứng dụng

mà có sử dụng mô hình
quan hệ hướng đối tượng
Ứng dụng Website sử dụng mô hình
hướng đối tượng khi làm việc với cơ sở
dữ liệu, kiểm tra xem Website có khả
năng bị tấn công theo kiểu chèn câu truy
vấn SQL hay không
9
Kiểm tra kiểu tấn công
chèn các câu truy vấn theo
cú pháp của XPath (XPath
Injection)
XPath là ngôn ngữ được thiết kế và phát
triển để thiết kế và phát triển để thao tác
trên dữ liệu được mô tả với XML, nó
được thiết kế giống SQL. Việc kiểm tra
nhằm xác định Website có khả năng bị
kẻ tấn công ăn cắp thông tin về CSDL
thông qua việc chèn câu truy vấn Xpath
vào điền thông tin của ứng dụng
10
Kiểm tra kiểu tấn công
vào mail máy chủ (SMTP
– Simple Mail Transfer
Protocol)
Kiểm tra Website có bị tấn công không
khi kẻ tấn công gửi dữ liệu nguy hiểm
thông qua mẫu thư đóng góp ý kiến lên
máy chủ
11

Kiểm tra kiểu tấn công
chèn các đoạn mã thực thi
lên máy chủ (Code
Injection)
Kẻ tấn công thường tìm cách chèn các
đoạn mã lên máy chủ thường thông qua
các File đính kèm nhằm thực thi các
mục đích phá hoại, kiểm tra xem
Website có khả năng chống lại lỗi này
hay không.
12
Kiểm tra kiểu tấn công
chèn các câu lệnh hệ thống
lên máy chủ (OS
Commanding)
Kiểm tra Website có khả năng chống lại
lỗi khi kẻ tấn công tìm cách các câu lệnh
của hệ thống vào đường dẫn hay phần
điền thông tin của ứng dụng Web
13
Kiểm tra lỗi tràn bộ nhớ
đệm (Buffer overflow
testing)
Kiểm tra ứng dụng Website có bị lỗi tràn
bộ nhớ đệm hay không
14
Kiểm tra các điểm nghi
ngờ (Incubated
vulnerability testing)
Kiểm tra Website có bị lỗ hổng tiềm

tàng hay không khi mà kẻ tấn công tìm
cách gây ra những lỗi mã kịch bản liên
trang, chèn câu truy vấn hay upload file
lên máy chủ để tấn công liên tục số
lượng lớn vào người dùng trong cùng
khoảng thời gian
15
Kiểm tra kiểu tấn công
thông qua việc sửa HTTP
(HTTP
splitting/Smuggling)
Kiểm tra Website có bị lỗ hổng không
khi kẻ tấn công chỉnh sửa các yêu cầu
HTTP
6. Kiểm tra khả năng tấn công từ chối dịch vụ
1
Kiểm tra tấn công chèn
các ký tự đặc biệt vào câu
truy vấn cơ sở dữ liệu
(SQL Wildcard)
Kiểm tra Website có khả năng bị tấn
công không khi chèn các ký tự đặc biệt
làm cho CPU bị quá tải khi xử lý
2 Kiểm tra tấn công từ chối
dịch vụ nhằm khóa tài
Nếu website khóa tài khoản của người
dùng khi mà họ xác thực sai 1 số lần thì
khoản của người dùng
(Locking Customer
Accounts)

phải kiểm tra xem ứng dụng có khả năng
bị tấn công DoS không nhằm khóa toàn
bộ người dùng của hệ thống hay không
3
Kiểm tra tấn công từ chối
dịch vụ gây tràn bộ nhớ
đệm
Kiểm tra ứng dụng Web có khăng năng
bị lỗi tràn bộ nhớ đệm khi dùng cách tấn
công từ chối dịch vụ.
4
Kiểm tra tấn công từ chối
dịch vụ gây cạn kiệt tài
nguyên của ứng dụn
Nếu ứng dụng Web cho phép người
dùng được phép tùy chỉnh số đối tượng
được tạo trên ứng dụng thì phải kiểm tra
xem hệ thống có khả năng bị vét cạn tài
nguyên hay không
5
Kiểm tra tấn công làm
giảm hiệu năng của ứng
dụng
Nếu ứng dụng Web cho phép người
dùng được phép tùy chỉnh giá trị bộ đếm
trong một chức năng lặp thì kiểm tra
xem ứng dụng có bị giảm hiệu năng hay
không khi tăng giá trị lặp lên
6
Kiểm tra tấn công từ chối

dịch vụ gây ngập ổ cứng
với các dữ liệu log
Kiểm tra ứng dụng Web có khả năng bị
lỗ hổng từ chối dịch vụ làm ngập ổ cứng
với các dữ liệu log hay không.
7
Kiểm tra khả năng giải
phóng tài nguyên của ứng
dụng
Kiểm tra xem ứng dụng Web có quản lý
tốt việc giải phóng tài nguyên hay không
8
Kiểm tra cách lưu trữ dữ
liệu bằng phiên (Session)
của ứng dụng
Kiểm tra xem ứng dụng Web có quản lý
tốt dữ liệu lưu trên phiên hay không

×