Kiểm thử bảo mật thủ công là gì?
Pentester dùng kỹ năng/kinh nghiệm để tìm lỗ hổng ứng dụng. Có lỗ hổng không phát hiện được bằng công cụ DAST (lỗi ủy quyền, lỗi logic nghiệp vụ) cần pentester giỏi.
Tại sao cần kiểm thử bảo mật?
Mục tiêu: xác định mối đe dọa và lỗ hổng tiềm ẩn của hệ thống, để hệ thống vận hành không bị khai thác/hack.
Tại sao cần kiểm thử thủ công?
QA có thể quyết định tức thì dựa trên trực giác. Duyệt code và kiểm tra phần tử theo ý muốn. Chi phí thấp hơn và phản hồi nhanh hơn tự động hóa trong trường hợp này.
Loại kiểm thử nào làm thủ công?
Thực thi test case thủ công không dùng công cụ tự động. Kiểm tra từ góc độ người dùng cuối. Đảm bảo ứng dụng hoạt động theo tài liệu yêu cầu.
Khi nào nên kiểm thử bảo mật?
Nên làm pen test ngay trước khi đưa hệ thống vào production, khi không còn thay đổi liên tục. Best practice: test trước khi production.
Cách nào tốt hơn: thủ công hay tự động?
Lỗ hổng logic khó test bằng công cụ tự động. Cần hiểu phạm vi/luồng ứng dụng để tìm vấn đề an ninh. Thủ công cho phép tester tự tạo exploit tùy lỗ hổng/tình huống.
Kiểm thử bảo mật trong kiểm thử thủ công
Kiểm thử phần mềm/an ninh: test lỗ hổng hệ thống, đảm bảo dữ liệu/nguồn người dùng an toàn trước kẻ tấn công tiềm ẩn. Ngăn chặn rủi ro/đe dọa hại hệ thống/ứng dụng.
Cách thực hiện kiểm thử bảo mật
- Script tùy chỉnh cho doanh nghiệp + phần mềm quét tự động
- Phương pháp nâng cao thủ công: tạo test case nghiêm ngặt (đánh giá khả năng mã hóa, kiểm tra kiểm soát người dùng, phân tích sâu ứng dụng tìm lỗ hổng lồng nhau)
Kỹ thuật kiểm thử thủ công
- Xem tài liệu spec yêu cầu phần mềm
- Lập kế hoạch test rõ ràng
- Viết test case bao phủ mọi yêu cầu
- Yêu cầu QA lead review test case
- Thực thi test case, phát hiện bug
Ví dụ kiểm thử thủ công
Test thủ công tìm lỗi không dùng công cụ/automation script. Tài liệu test plan hướng dẫn quy trình để phủ toàn bộ thực thi.
Cách thực hiện kiểm thử an ninh phần mềm
- Giám sát quản lý kiểm soát truy cập
- Phân tích xâm nhập động (Penetration Testing)
- Phân tích code tĩnh (Static Code Analysis)
- Kiểm tra kiểm soát truy cập server
- Điểm vào/ra/đi
- Quản lý phiên
- Quản lý mật khẩu
- Tấn công brute force
Yêu cầu trong kiểm thử thủ công
Các test khác nhau trong phát triển phần mềm. Có thể functional hoặc non-functional. Kế hoạch chỉ định cách thực thi test case thủ công. Triển khai framework automation (Selenium WebDriver).
Tại sao cần kiểm thử thủ công?
Giúp hiểu toàn diện vấn đề. Tự động hóa tiết kiệm thời gian, kết quả nhanh, nhưng thủ công nắm vững khái niệm và cảm xúc vấn đề.
Loại test nào thuộc kiểm thử thủ công?
Acceptance testing, White box testing, Black box testing trong vòng đời test.
Kiểm thử thủ công là gì?
So với test automation. Thực hiện thủ công tìm lỗi phần mềm. Tester đóng vai người dùng để đảm bảo ứng dụng hoạt động như mong đợi.
Kiểm thử thủ công và cách làm
Tester kiểm tra thủ công phần mềm tìm lỗi, bug, vấn đề. Test như end-user, đảm bảo tính năng hoạt động. Thực thi từng test case thủ công. Người dùng dùng tính năng như end-user.
Kiểm thử hiệu năng thủ công
- Phân tích môi trường test
- Xác định metric hiệu năng
- Lập kế hoạch test hiệu năng
- Cấu hình môi trường test
- Triển khai thiết kế test
- Thực thi test
- Phân tích, báo cáo, test lại
Tại sao làm kiểm thử thủ công?
Xác định bug/vấn đề tính năng trước triển khai. Xác thực tính năng chính. Không cần công cụ auto chạy test case và báo cáo lỗi.