Symlinks không nhất thiết là xấu.
Trước hết: Nếu cố gắng mở một mục tiêu liên kết tượng trưng, quyền truy cập tệp của mục tiêu có hiệu lực. Nếu bạn không được phép đọc / ghi / thực hiện mục tiêu liên kết tượng trưng, không có gì xảy ra.
Nhưng: Bạn có thể chạy các tệp bên ngoài gốc tài liệu của mình (đôi khi đó thực sự là những gì bạn muốn làm với chúng, phải không?). Vấn đề có thể xảy ra nếu bạn không ở trong môi trường suEXEC và có apache
hoặc www-data
người dùng trên một lưu trữ được chia sẻ, chịu trách nhiệm phục vụ các tệp từ các tài khoản khác nhau. Người dùng hệ thống của bạn không được phép truy cập các tệp của một khách hàng khác, nhưng apache/www-data
người dùng chủ yếu sẽ có quyền đọc trên tất cả các tài khoản được chia sẻ. Đây có thể là một tình huống trong đó một người dùng có thể truy cập các tệp của người dùng khác trên máy chủ được chia sẻ. Không phải với người dùng của riêng bạn, mà bằng cách truy cập tệp qua trình duyệt với apache/www-data
người dùng. Tóm lại: Trong trường hợp này, bạn sẽ có thể truy cập các tệp của người dùng khác => xấu.
Điều tồi tệ tiếp theo là kẻ tấn công có thể tạo liên kết tượng trưng, cũng như các tệp như / etc / passwd, ..., tải xuống dữ liệu này và tiếp tục với thông tin này. Điều này không chỉ liên quan đến symlink mà còn liên quan đến cấu hình máy chủ xấu (nơi quyền truy cập vào các tệp này bị hạn chế nghiêm ngặt). Vì vậy, không sử dụng symlink ngăn chặn một số cuộc tấn công có thể hơn.
Đó không chỉ là về bản thân symlink là một rủi ro bảo mật, mà là vấn đề cấu hình máy chủ.