Tôi đã có một cuộc thảo luận thú vị với đồng nghiệp về bảo mật trong PHP.Bảo mật PHP về Biểu mẫu và Thao tác DOM
Giả sử một người có trang web PHP đang chạy với biểu mẫu HTML chuẩn. Một kẻ tấn công quyết định sử dụng các công cụ của Nhà phát triển Chrome và thêm vào DOM enctype="multipart/form-data"
và file input
.
Kẻ tấn công tải lên tệp, có thể nó sẽ không thực thi nếu nó là vi-rút nhưng nó vẫn sử dụng băng thông/bộ nhớ cho thời điểm đó. Tệp sẽ đi vào thư mục PHP /tmp
chỉ bằng cách thực hiện việc này? Điều này có làm cho mọi hình thức trở nên không an toàn khi người dùng có thể tải lên một tệp dưới bất kỳ hình thức nào không?
Trên quy mô lớn hơn nếu 100.000 người đã thêm vào DOM và tải lên tệp gigabyte ngẫu nhiên thì sao? Nó sẽ không tạm thời làm cho họ đạt băng thông và/hoặc lưu trữ của họ?
Bạn sẽ vẫn cần một số loại mã phía máy chủ để xử lý việc tải lên, nếu nó không có ở đó, nó sẽ không tải lên! – Marty
Nó sẽ tự động đi vào '$ _FILES ['name'] ['tmp_name']' phải không? – JREAM
Nếu bạn có nhà cung cấp dịch vụ lưu trữ tính phí cho ** băng thông ** đến, hãy yêu cầu họ nhảy khỏi cầu. Nhưng có, các công cụ được tự động lưu trữ trong '/ tmp', nhưng được tái chế theo thời gian. –