SQL Injection – Phần 1: Khái niệm, mục tiêu và cơ chế | Diễn đàn công nghệ - Tin học Việt
  1. Thông Báo: Bạn nào có nhu cầu đặt banner, textlink vui lòng liên hệ trực tiếp qua email: lephuochuusvc@gmail.com giúp mình, giá hấp dẫn cho mọi người
    : Hoặc Tải bảng báo giá mới nhất tại đây để biết thêm thông tin chi tiết>>>

SQL Injection – Phần 1: Khái niệm, mục tiêu và cơ chế

Thảo luận trong 'Kiến thức về bảo mật-virus' bắt đầu bởi lovestory, Thg 1 23, 2015.

Lượt xem: 1,236

  1. lovestory

    1. Khái niệm

    SQL injection là một kỹ thuật cho phép những kẻ tấn công lợi dụng lỗ hổng của việc kiểm tra dữ liệu đầu vào trong các ứng dụng web và các thông báo lỗi của hệ quản trị cơ sở dữ liệu trả về để inject (tiêm vào) và thi hành các câu lệnh SQL bất hợp pháp.


    SQL injection có thể cho phép những kẻ tấn công thực hiện các thao tác delete, insert, update… trái phép trên cơ sở dữ liệu của ứng dụng, thậm chí là server mà ứng dụng đó đang chạy.


    SQL injection là lỗ hổng thường gặp nhất của các website trên internet. Nó là lỗi của các ứng dụng web chứ không phải vấn đề ở cơ sở dữ liệu hay web server. Hầu hết các lập trình viên đều kém trong vấn đề phòng chống SQL injection.


    2. Mục tiêu

    Mục đích chính của SQL injection là truy cập vào cơ sở dữ liệu bất hợp pháp hoặc khai thác thông tin từ các cơ sở dữ liệu đó.


    Dựa trên cách sử dụng và xử lý dữ liệu người dùng cung cấp, SQL injection có thể được sử dụng để thực hiện các kiểu tấn công sau:


    • Authentication Bypass: hacker có thể đăng nhập vào ứng dụng mà không cần cung cấp username và password, thậm chí có thể chiếm quyền quản trị.
    • Information Disclosure: người tấn công lấy các thông tin nhạy cảm được lưu giữ trên cơ sở dữ liệu.
    • Compromised Data Integrity: thực hiện deface trang web, chèn nội dung độc hại lên trang web, hoặc thay đổi nội dung cơ sở dữ liệu.
    • Compromised Availability of Data: người tấn công xóa thông tin trên cơ sở dữ liệu, xóa log, hoặc thông tin kiểm chứng trên cơ sở dữ liệu.
    • Remote Code Execution: cho phép người tấn công làm hại hệ thống của host.

    3. Cơ chế:

    [​IMG]


    Cơ chế hoạt động của một website


    Mục tiêu tấn công của SQL injection chính là các lỗ hổng trong web application chứ không phải bản thân cơ sở dữ liệu. Thông qua việc khai thác lỗi của web application, người tấn công có thể tiếp cận cơ sở dữ liệu và khai thác/phá hủy dữ liệu trên đó. Các ứng dụng này bị lỗi là do trong quá trình phát triển đã không tuân theo các quy chuẩn về code bảo mật và việc xử lý dữ liệu lưu trữ trong các cơ sở dữ liệu quan hệ (relational database). Tất cả các cơ sở dữ liệu quan hệ (SQL Server, Oracle, IBM DBZ và MySQL) đều có thể bị tấn công bởi kiểu tấn công này.
     
    :
  • Chia sẻ trang này