Tải bản đầy đủ (.pdf) (5 trang)

bảo mật ứng dụng web kiểm tra thâm nhập thủ công hay quét tự động

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 (153.38 KB, 5 trang )

Bảo mật ứng dụng Web:
kiểm tra thâm nhập thủ công
hay quét tự động
GIỚI THIỆU
Với hơn90% cácứng dụng Web cómắc các lỗi bảo mậtvà hơn 70%các tấncông là
vào các giao thức HTTP/S. Chính vì vậy, các tổ chức cần phải bổ sung các công cụ
mạng để bảo đảm cho cácứng dụng Web của họ. Tỷ lệ phần trăm củacác tấn công
xuấthiện trên cổng80 và 443dường như rất lớn, mặt khác ở đây là các cổngnày
gần như là cửa trước để tổ chứctruyền thông online.
Ngày nay,khi các ứng dụng Webngày càng trở nên phứctạp thì một số lượng lớn
các dữ liệu nhạy cảm trongđó có thôngtin cá nhân,tài chính,y tế được trao đổi và
lưu trữ. Các khách hàng không chỉ mong đợi mà chính bản thân họ còn yêu cầu cần
được bảo mật các thông tin này.Nhưng việcđánh giá một ứng dụng Websẽ điđến
đâu bằngviệc kiểmtra ứng dụng theophươngpháp thủ công haybằng các công cụ
và hệ thống tự động.Nó cho ta thấy từ các khái niệm, bằng việc môhình hóa rủi ro
bảo mật được giới thiệutrong các ứng dụngcũng như các biện pháp đốiphó khác
được thêm vàobổ sung.Sự bảo mật cần phải đượcxem như là các thànhphần
quan trọng kháctrong mỗi ứng dụng, phải được phântích, xem xét qua từng bước
trong mỗi chukỳ sử dụng củaứng dụng. Việc tìmra các lỗ hổng trong các ứng
dụngWeb có thể đượcthực hiệnbằng nhiều cách:
Tự động
 Bằngcác công cụ quét
 Sự phân tích tĩnh
Thủ công
 Kiểm tra sự thâm nhập
 Xem xét lại code
Mục đích chính củabài viết này là để kiểmtra các phươngpháp phát hiện lỗ
hổng đặcbiệt là việc so sánh giữa phương pháp tự động và phương pháp kiểm tra
sự thâm nhập thủ công.
LỊCH SỬ
Việc kiểmtra sự thâm nhậpbảo mật thủ công là phương


pháp đã có từ lâu. Các nhà phát triển kiểmtra cáclỗ hổng
ứng dụngcủa họ và các vấn đề trong suốt thờigian tồn tại
của ứngdụng. Tuy nhiên, khimà cáctấn công ngày càng
tinh vivà các ứngdụng phức tạp ngàymột tăng thì mụctiêu
của cácchuyên gialà tìm ravà khaithác các vấnđề bảo mật như vậy càng thể hiện
rõ. Những người này được biết đếnnhư là các “cây kiểmtra”. Việc kiểm tra tự
độngcác ứng dụng Webđược đưa ra năm 1992.Khi đó các web còn khá sơ sài và
các trình duyệtweb chỉ đủ để có thể quản lý sự phức tạp của các ứng dụng động.
Mục tiêu chính củacáccôngcụ này là tự động quá trình kiểmtra ứngdụng web và
các lỗiliên quanvới mục đích tìm ra các lỗ hổng.
CÁC LOẠI LỖ HỔNG
Nhìn chung,hầu hết cácứng dụng webđều cóthể nhóm thànhmột trong hai loại:
kỹ thuật và logic. Các lỗ hổng kỹ thuật được biết đếnnhư là: Cross-SiteScripting
(XSS), Injection Flaws(cáckhe hở dễ bị xâmnhập) và Buffer Overflows (tràn bộ
đệm). Còncác lỗ hổng logicthì khó khăn hơntrong việc phân loại ra. Các lỗ hổng
này liên quan đến tính logic củaứng dụng mànó chưahề được dự định từ trước.
Ví dụ: vào đầunăm 2002, một người đã cố ý sử dụnglỗ hổng logic để vòng tránh
được sự kiểm tra tính hợp lệ củacác thôngtin cá nhân cần thiết trong ứng dụng
MicrosoftHotmail -cho phépngườidùng thiếtlập lại mậtkhẩu bằng việc đoán câu
trả lời với mỗi câu hỏi bảomật đơn lẻ.
CÁC LỖ HỔNG KỸ THUẬT
Các công cụ và các hệ thốngtự độngcho việc kiểm tra các lỗ hổng kỹ thuật phải
bao gồm cả tính phương pháp và tínhtoàn diện.Xem xét qua ứng dụng đăngký
cho MicrosoftHotmail. Biểu mẫu này bao gồm xấp xỉ 30 thành phần cần thiết: một
số bị ẩn, mộtsố được trưng bày. Mỗi thành phần của biểu mẫu này là tiềm ẩn nguy
cơ Cross-SiteScripting,InjectionFlaws, Buffer Overflows hayImproperError
Handling. Bạn cóbiết rằng có tới hơn70 kỹ thuật khácnhau cóthể được sử dụng
để khám phá Cross-SiteScripting. Điều này cho thấyrằng biểu mẫu đăngký cần
phải cóhơn 2000 lần testmới có thể test thấu đáo. Các hệ thống cũngnhư công cụ
như crawl hay phân tích và kiểmtra ứng dụngweb tốthơn so với cách kiểm tra

thủ công các ứng dụng. Tuynhiên các công cụ đang kiểmtra và đangquét thường
khôngphát hiện hết được 100%cáclỗ hổng kỹ thuật, không có lý do nào có thể tin
tưởng rằng điều này sẽ xảy ra trong tươnglai gần. Cuộc chạy đuaban đầu tồn tại
với các công cụ quét đang có nhiều vấn đề trong cụ thể như:
- Trìnhkhách sinh các URL
- Các hàm JavaScript
- Ứng dụng logout
- Các hệ thống dựatrên phiên liên lạcyêu cầu chỉ rõcác đườngdẫn người dùng
- Đệ trìnhform tự động
- Các password
- Các website“vôtận” với các sessionID dựa trên URL ngẫu nhiên
Các công cụ bảo mật ứng dụngweb tự động đang ngàycàng được hoàn thiện, các
cuộc chạy đua giữa hai phương pháp thủ công và tự động này đều cầncó điểm
chung và cần đượclàmsáng tỏ. Thứ nhất, đánhgiá tự động sẽ giảm bất kỳ sự
khôngchắc chắnnào (hướng tích cực). Ngược lại, thời gian sẽ là nguyên nhân
khôngkhả thi của kiểm tra thủ công vớicác lỗ hổng kỹ thuật để tăngtừ khó khăn
nhỏ đến không thể khikích thước và phạm vị ứngdụng tăng. Trongnhiều tổ chức
kinh doanh,nó sẽ không đơn giản để giảm thời gian, sự cố gắng và tiền cầnđể truy
cập hàng nghìn các ứng dụngweb đangtồn tại.Thứ hai, vai trò của con người ảnh
hưởngđến việckiểm tra hàngnghìn đếnhàng triệu các lỗ hổng kỹ thuật là chủ đề
đáng nói và khôngthể tin tưởng một cách tuyệtđối. Quan điểm củacác nhànghiên
cứu của công ty IDClà “Vấn đề là sự thời gian và giá thành. Việc làm thủ công là tốn
thời gian và giá thành. Nhưng nếu bạn có những người làm việc tốt thực sự thì nó sẽ
rất an toàn, còn nếu không, họ sẽ chỉ nhìn vào các dòng code mỗi ngày. Với phần
mềm quét, bạn có thể làm các công việc này nhanh hơn, rẻ hơn và có thể bao phủ
nhiều vùng lãnh thổ địa lý.”
CÁC LỖ HỔNG LOGIC
Các lỗ hổng logic có thể được khám phábằng việc hiểu một ứngdụnglàm việc như
thế nào và bằng việc tìm racác yếu điểm của nó. Khicả công cụ tự độngvà kỹ năng
kiểmtra đều không tích cực thông quamột ứng dụng web, thìchính khiđó bạnsẽ

phải cầnđến hiểu ứng dụnglàm việc như thế nàovà quá trình logic nằm dưới nó
ra sao.Việc hiểu sự logic của một ứngdụngsẽ chophép kiểmtra sự thâm nhập thủ
công để phávỡ logic kinh doanhvàphơi bày ra các lỗ hổng bảo mật.Ví dụ: một
ứng dụngcó thể hướng vào người dùng từ điểm Ađến điểm Brồi đến điểm C,
trong đó,điểmB tồn tại một kiểm tra bảo mật hợp lệ.Sự xemxét thủ công tại Acủa
ứng dụngcó thể cho thấyrằng nó là hoàntoàn có thể đi trực tiếp từ điểm Ađến
điểm C bằng việc thông quaviệc hợp lệ từ điểm B.
THỐNG KÊ
Dựa vào phântích gần đây của 100website,các con số thống kê dưới đây đã được
đưa ra:
- 36%các websitecó kiểm trathủ côngpháthiện kémhơn số lỗ hổngso với
phươngpháptự động.
- 17%kiểm tra thủ công phát hiện cáclỗ hổngtrong khiđó quét tự độngkhôngthể
thấymột lỗ hổng nào.
- 46%việc tìmkiếm của các kiểm tra viên thủ công và công cụ quét tự động đã
được bổ sung.
Các thống kê có thể sai lạc, vàcông thức80-20 không cầnthiết để áp dụng.Vì việc
tìm được 80% các lỗ hổng làkhông đủ nếu một lỗ hổng lớnbị bỏ qua.
KẾT LUẬN
Ở phần trên chúngta đã được nghegiới thiệu về các phương pháp khác nhau được
sử dụng để khám phá các lỗ hổng trong bảo mật ứng dụng web.Cả hai phương
pháp kiểm tra thủ công và bằng các công cụ tự độngđều cóthể được sử dụng để
khámphá các lỗ hổng trong các ứng dụng.Các công cụ tự độngcó hạn chế của nó,
tuy nhiên nếu sử dụng đúng, các côngcụ tự động có thể đượcsử dụng trongcác tổ
chức để tìm ra một dãy các lỗ hổng, việcnày làm cho chúngta có thể tiết kiệm
được tiền và thời gian. Với cách kiểm tra thủ công được sử dụng để tăngkết quả
cho các lỗ hổnglogic. Cáctổ chức từ đó sẽ quyết định sự trộn lẫn củaviệc quét tự
độngvới quét thủ công để đưa ra ứngdụng webcó bảomật tốt nhất.

×