Luận Văn SQL Injection – tấn công và cách phòng tránh

Thảo luận trong 'Chưa Phân Loại' bắt đầu bởi Thúy Viết Bài, 5/12/13.

  1. Thúy Viết Bài

    Thành viên vàng

    Bài viết:
    198,891
    Được thích:
    173
    Điểm thành tích:
    0
    Xu:
    0Xu
    Lời cảm ơn

    Lời đầu tiên em muốn gửi là lời biết ơn chân thành tới thày Nguyễn Hải Châu.
    Trong suốt thời gian thực hiện khóa luận thày đã tạo điều kiện cho em về thời gian và
    những sự giúp đỡ quý báu về kiến thức, sự chỉ dẫn, định hướng và tài liệu tham khảo
    quý báu. Và sau đó em muốn gửi lời biết ơn chân thành nhất tới toàn thể các thày cô
    trong trường. Các thày cô là những người có kiến thức sâu rộng, nhiệt tình với sinh
    viên, và trên hết đó là các thày cô luôn là tấm gương sáng về nghị lực, lòng say mê
    khoa học, và sự chính trực cho chúng em.
    Những lời biết ơn thân thương nhất con xin kính gửi tới bố mẹ. Bố mẹ đã cho
    con cả quá khứ hiện tại và tương lai. Cám ơn những người bạn tốt trong tập thể
    K51CC, những người bạn đã cùng chia sẻ những niềm vui, nỗi buồn trong suốt quãng
    đời sinh viên của tôi. Kỉ niệm về các bạn là những kỉ niệm đẹp nhất của tôi thời sinh
    viên trên giảng đường đại học.
    Cuối cùng em xin kính chúc các thày cô và toàn thể các bạn sinh viên trường
    Đại học Công nghệ một sức khỏe dồi dào, đạt được những thành công trên con đường
    học tập và nghiên cứu khoa học. Chúc trường ta sẽ sớm trở thành ngọn cờ đầu của
    giáo dục nước nhà và Quốc tế.


    Mục lục

    Lời cảm ơn 1
    Chương 1. Đặt vấn đề
    . 6
    1.1. Đặc trưng của ứng dụng sử dụng cơ sở dữ liệu. . 6
    1.2. SQL Injection và tính nghiêm trọng của vấn đề an ninh cơ sở dữ liệu
    . 7
    1.2.1. Khái niệm SQL Injection: 7
    1.2.2. SQL Injection và vấn đề an ninh cơ sở dữ liệu. . 8
    Chương 2. SQL Injection và các cách tấn công phổ biến 12
    2.1. Nhận diện điểm yếu SQL injection trong ứng dụng Web 12
    2.1.1. Thăm dò dựa trên phản hồi 12
    2.1.2. Cơ chế sinh truy vấn SQL bên trong ứng dụng và các phương
    pháp chèn truy vấn SQL 15
    2.2. Các phương pháp tấn công phổ biến . 18
    2.2.1. Tấn công khai thác dữ liệu thông qua toán tử UNION . 18
    2.2.2. Khai thác thông qua các câu lệnh điều kiện . 24
    2.2.3. Blind SQL Injection – phương thức tấn công nâng cao 27
    2.2.4. Vấn đề qua mặt các bộ lọc tham số đầu vào 38
    2.2.5. Một số phương pháp qua mặt bộ lọc của tường lửa Web 43
    Chương 3. Phòng chống SQL Injection 49
    3.1. Phòng chống từ mức xây dựng mã nguồn ứng dụng . 49
    3.1.1. Làm sạch dữ liệu đầu vào 49
    3.1.2. Xây dựng truy vấn theo mô hình tham số hóa 52
    3.1.3. Chuẩn hóa dữ liệu 60
    3.1.4. Mô hình thiết kế mã nguồn tổng quát . 61
    3.2. Các biện pháp bảo vệ từ mức nền tảng hệ thống 65
    3.2.1. Các biện pháp bảo vệ tức thời . 65
    3.2.2. Các biện pháp bảo vệ database . 69
    3.3. Đề xuất một số giải pháp 70
    Phụ lục: . 72
    Cấu hình ModSecurity phòng chống SQL Injection.
    72
    1. Cài đặt . 72
    2. Cấu hình . 74
    2.1. Cấu hình tổng quát 75
    2.2. Cấu trúc các luật . 78
    Tài liệu tham khảo . 92



    Tóm tắt nội dung

    Theo các báo cáo về an ninh mạng gần đây, như của Whitehat Security(1)
    hay
    trên trang Verizon Business
    (2)
    , Sans Institute
    (3)
    , thì đều cho thấy mức độ phát triển
    nhanh chóng, tính nghiêm trọng của các lỗ hổng bảo mật và sự quan tâm chưa đúng
    mức của các tổ chức tới vấn đề này. SQL Injection là một vấn đề an ninh ứng dụng
    Web được nhấn mạnh trong các báo cáo trên. Khóa luận này có tên “SQL Injection –
    tấn công và cách phòng tránh
    ”, nhằm mục đích trình bày những hình thái cơ bản của
    các cuộc tấn công SQL Injection lên các ứng dụng Web, từ đó rút ra một mô hình kèm
    theo các khuyến nghị cho việc phát triển ứng dụng Web an toàn.
    Nội dung khóa luận sẽ được trình bày sẽ xoay quanh ba nội dung chính. Thứ
    nhất là nguồn gốc hình thành các điểm yếu SQL Injection trong mã nguồn ứng dụng
    và cách nhận biết. Thứ hai là các phương pháp được sử dụng để thăm dò, khai thác,
    lợi dụng các điểm yếu này để tiến hành tấn công vào ứng dụng web. Thứ ba là các
    khuyến nghị trong việc xây dựng ứng dụng Web, kèm theo đó là đề xuất mô hình phát
    triển ứng dụng Web an toàn.


    Bảng tóm tắt các ký hiệu viết tắt
    Ký hiệu Diễn giải

    Database Cơ sở dữ liệu
    DBMS Database Management System
    (hệ quản trị Cơ sở dữ liệu)
    WAF Web Application Firewall
    (tường lửa cho ứng dụng Web)
    SQL Structured Query Language
    (Ngôn ngữ truy vấn có cấu trúc)
     

    Các file đính kèm:

Đang tải...