Directory traversal là gì?
- ★
- ★
- ★
- ★
- ★
Một cuộc tấn công directory traversal nhằm mục đích truy cập các file và thư mục được lưu trữ bên ngoài thư mục gốc (root folder) của web. Bằng cách thao tác với các biến tham chiếu file với “dot-dot-slash (../)” và các biến thể của nó hoặc bằng cách sử dụng đường dẫn file tuyệt đối, bạn có thể truy cập các file và thư mục tùy ý được lưu trữ trên hệ thống tập tin (system file) bao gồm mã nguồn ứng dụng hoặc cấu hình và các file hệ thống quan trọng. Dưới đây là ví dụ của cuộc tấn công directory traversal
Trong các ứng dụng web có trang web động (dynamic web page), đầu vào thường được nhận từ các trình duyệt thông qua các phương thức yêu cầu GET hoặc POST. Đây là một ví dụ về URL yêu cầu GET.
GET http://test.webarticles.com/show.asp?view=oldarchive.html HTTP/1.1
Host: test.webarticles.com
Với URL này, trình duyệt yêu cầu trang show.asp từ máy chủ và nó cũng có tham số view với giá trị oldarchive.html. Khi yêu cầu này được thực thi trên máy chủ web, show.asp truy xuất file oldarchive.html từ hệ thống tập tincủa máy chủ, hiển thị và sau đó gửi lại cho trình duyệt hiển thị file cho người dùng. Kẻ tấn công sẽ cho rằng show.asp có thể truy xuất file từ hệ thống tập tin và gửi URL tùy chỉnh sau.
GET http://test.webarticles.com/show.asp?view=../../../../../Windows/system.ini HTTP/1.1
Host: test.webarticles.com
Điều này sẽ khiến trang show.asp truy cập file system.ini từ hệ thống tập tin và hiển thị nó cho người dùng. Ký hiệu ../ hướng dẫn hệ thống đi lên một thư mục. Kẻ tấn công phải đoán có bao nhiêu thư mục mà anh ta phải truy cập để tìm thư mục Windows trên hệ thống, nhưng điều này có thể dễ dàng thực hiện bằng cách thử và sai (trial and error).
Learning English Everyday