Lỗ hổng File Inclusion và những cách tấn công máy chủ của hacker

Mã tin: 2280175 - Lượt xem: 130 - Trả lời: 0
Đặt tin VIP ngày: Soạn CV3 2280175 gửi 8777 (15k/sms. Mỗi tin + 24 giờ)
Đặt tin VIP tháng? Bấm vào đây
  1. Linh vattubk
    Thành viên mới Tham gia: 04/05/2016 Bài viết: 1.794 Điện thoại: 0963237535
    Vừa qua, các chuyên gia bảo mật vừa công bố lỗ hổng khá nguy hiểm mang tên File Inclusion cho phép các hacker lợi dụng tấn công vào những tập tin quan trọng trên các hệ thống server website qua việc thực thi các đoạn mã độc nằm trong các gói tập tin bằng chức năng include. Đây là một vấn đề thực sự quan trọng mà các công ty thuê máy chủ cần biết để giữ an toàn cho hệ thống website của khách hàng.

    Lỗ hổng File Inclusion cho phép tin tặc truy cập trái phép vào những tập tin nhạy cảm trên máy chủ web hoặc thực thi các tệp tin độc hại bằng cách sử dụng chức năng “include”. Lỗ hổng này xảy ra do cơ chế kiểm tra đầu vào không được thực hiện tốt, khiến tin tặc có thể khai thác và chèn các dự liệu độc hại.Hàm ‘Include’ Trước khi nói về chi tiết lỗ hổng File Inclusion, chúng ta cần hiểu sơ qua về một lời gọi hàm ‘include()’. Toàn bộ nội dung trong một file cụ thể sẽ được sao chép vào một file khác chứa lời gọi ‘include’. Phương thức này được sử dụng nhằm tránh việc code lặp và có thể sử dụng bất kì lúc nào. Lập trình viên thường sử dụng hàm include() nhằm thêm những dữ liệu, tệp tin mã nguồn dùng chung của các tệp tin trong ứng dụng. Những nơi thường được sử dụng như footers, headers, menu files …

    >>> Xem thêm: ThinkSystem SR850

    Cách thức tấn công File Inclusion

    Như các bạn đã biết, hàm Include() là một hàm có chức năng gọi toàn bộ các file có chứa dữ liệu được sao chép qua một file khác để tránh việc code bị trùng lặp và có thể gọi để sử dụng bất cứ lúc nào cần thiết trong lập trình website code back end. CÁc lập trình viê ngày nay thường rất hay sử dụng hàm lệnh này để thêm dữ liệu, mã nguồn và sử dụng chúng cho các hàm cần thiết. Những nơi mà các lập trình viên hay sử dụng hàm này thường là ở menu files, footers.

    Tuy đây là một tiện ích khi lập trình website tuy nhiên nếu để các hacker lợi dụng và khai thác triệt để thì chúng sẽ trở nên vô cùng nguy hiểm khi các hacker sử dụng RFI (Remote File Inclusion) cho phép chính các hacker này có thể truy cập từ xa một file trên máy chủ bị tấn công và thao tác nó từ xa hay khởi tạo một đoạn mã độc ngầm chạy trên cả máy chủ lẫn người dùng và điều này sẽ giúp các hacker có thể dễ dàng đánh cắp các session token hặc ngay cả các dữ liệu mà chúng ta thực hiện và phải duyệt qua để tãi lên webshell có thể gây hại nghiêm trọng đến toàn bộ hệ thống máy chủ và máy tính người dùng chưa kể đến các loại dữ liệu giao dịch có giá trị cao.

    >>> Xem thêm: mua máy chủ lenovo sr650



    PHP là một loại ngôn ngữ lập trình có nguy cơ bị tấn công nhiều nhất do chúng thường xuyên sử dụng hàm include cho toàn bộ hệ thống code của mình và đó sẽ là một môi trường rất thuận lợi để các hacker này thực hiện và quan trọng hơn, theo thông kê thì có đến 70% các website bán hàng, website sản phẩm của các công ty hiện nay đang sử dụng những loại mã nguồn mở để làm web như wordpress,… và chúng đều được lập trình bằng PHP.

    Khắc phục lỗ hổng File Inclusion Lỗ hổng xảy ra khi việc kiểm tra đầu vào không được chú trọng. Khuyến cáo riêng thì không nên hoặc hạn chế tới mức tối thiểu phải sử dụng các biến từ “User Input” để đưa vào hàm include hay eval. Trong trường hợp phải sử dụng. với các thông tin được nhập từ bên ngoài, trước khi đưa vào hàm cần được kiểm tra kỹ lưỡng

    1. Chỉ chấp nhận kí tự và số cho tên file (A-Z 0-9). Blacklist toàn bộ kí tự đặc biệt không được sử dụng.
    2. Giới hạn API cho phép việc include file từ một chỉ mục xác định nhằm tránh directory traversal.
    Tấn công File Inclusion có thể nguy hiểm hơn cả SQL Injection do đó thực sự cần thiết phải có những biện pháp khắc phục lỗ hổng này. Kiểm tra dữ liệu đầu vào hợp lý là chìa khóa để giải quyết vấn đề.

    >>> Xem thêm: Lenovo thinksystem sr550
    #1
backtop