Sau khi đọc về SQL injection Tôi tự hỏi làm thế nào nó là an toàn để tạo ra các ứng dụng trong Laravel và làm thế nào để kiểm tra nếu bảo mật của bạn đáp ứng các tiêu chuẩn ngày nay?Làm thế nào an toàn là laravel 5.1?
Trả lời
Tôi đã phát triển một vài ứng dụng Laravel và thấy chúng khá an toàn trong mắt tôi.
Tôi đã chạy nhiều thử nghiệm thâm nhập, máy quét OWASP ZAP, sqlsus và 5+ bao gồm bbqsql và các công cụ tương tự cho thử nghiệm bút DB, nmap để quét cổng, sau đó chuyển ZAP sang chế độ tấn công để thực hiện các XSS và CSRF khác nhau. không có lỗ hổng nào từ Laravel - chỉ một vài thứ từ chính máy chủ của tôi mà tôi đã vá lỗi.
Điều quan trọng là phải nói rằng không có ứng dụng nào an toàn 100% vì nó phụ thuộc rất nhiều vào cách bạn làm việc.
Tuy nhiên, Laravel không làm một công việc khá tốt ra khỏi hộp bằng cách bảo vệ bạn khỏi:
SQL injection: nếu bạn sử dụng truy vấn hùng biện này sẽ giữ cho bạn an toàn. Nhưng bạn sẽ dễ bị tổn thương nếu bạn sử dụng các truy vấn
DB::raw()
vì các truy vấn này có thể mở bạn thành tiêm.CSRF: Laravel chăm sóc này với CSRF mã thông báo rằng nó sẽ kiểm tra trên mỗi yêu cầu
POST
do đó hãy chắc chắn rằng bạn sử dụng chúng, về cơ bản này bảo vệ bạn khỏi một ai đó cách thay đổi bản chất của yêu cầu, tức làPOST
-GET
.XSS: Đầu tiên khử trùng đầu vào của người dùng. Các biến không được thoát bằng cú pháp lưỡi
{!! !!}
, giải quyết thành<?= e($foo) ?>
bên trong mã HTML của bạn, trong khi{{ }}
thoát dữ liệu.
Đây là ngắn tổng quan ngắn gọn về bảo mật Laravel. Một khi bạn bắt đầu mở bản thân với tập tin tải lên vv nó có thể là một chút khó khăn hơn, bổ sung làm những điều không an toàn trong PHP.
Bài viết này here, có thể là một bài đọc thú vị để đi sâu hơn một chút với phần trên.
Nói tóm lại tôi đã tìm thấy Laravel để được an toàn từ tất cả các cuộc tấn công mà tôi từng chạy bằng cách sử dụng hùng hồn và vệ sinh đầu vào nơi cần thiết cùng với việc sử dụng đúng cú pháp lưỡi và CSRF
token.
- 1. Làm thế nào an toàn là ng-nếu để ẩn thông tin an toàn
- 2. Làm thế nào an toàn là 'unsafePerformIO (newTVarIO 0) `?
- 3. Làm thế nào an toàn chủ đề là V4L2?
- 4. Làm thế nào an toàn là MD5 và SHA1
- 5. Làm thế nào an toàn thread là enum trong java?
- 6. Cookie :: quên không làm việc laravel 5.1
- 7. Laravel 5.1 sử dụng session.upload_progress
- 8. Biến an toàn phiên PHP an toàn như thế nào?
- 9. Laravel 5.1 DB: chọn toArray()
- 10. TokenMismatchException trong VerifyCsrfToken - Laravel 5.1
- 11. Làm thế nào để sử dụng mã không an toàn trong bối cảnh an toàn?
- 12. Biểu mẫu an toàn tự động trên Laravel 4.2
- 13. làm thế nào để sử dụng phím nước ngoài trong laravel 5.1 di cư
- 14. Làm thế nào để chạy task scheduler trong windows 10 với Laravel 5.1
- 15. Quay lại URL trong Laravel 5.1
- 16. Laravel 5.1 đổi tên dự án
- 17. Laravel 5.1 Xem không tìm thấy
- 18. Phiên PHP an toàn như thế nào?
- 19. Đăng ký nhiều bước trong Laravel 5.1
- 20. Làm thế nào an toàn để lưu phiên với Redis?
- 21. Làm thế nào để tuần tự an toàn một lambda?
- 22. Làm thế nào để xác định mảng an toàn thread?
- 23. Làm thế nào để CopyOnWriteArrayList có thể an toàn luồng?
- 24. Làm thế nào để tăng an toàn asio fork
- 25. File Upload để AWS S3 Laravel 5.1
- 26. ActiveSupport :: SecureRandom an toàn như thế nào?
- 27. Là chuỗi String.intern() an toàn
- 28. An toàn loại an toàn()
- 29. Làm thế nào để đánh giá một mô-đun python là an toàn thread hay không?
- 30. Là C# 6? (Elvis op) chủ đề an toàn? Nếu vậy, làm thế nào?
bạn có thể xây dựng trên 'chỉ một vài thứ từ .... vá lên'. – davejal
Chúng là những việc cần làm với cấu hình máy chủ và cài đặt apache của tôi. Mà tôi cố định bằng cách cập nhật apache và thay đổi một số cài đặt máy chủ. Họ là những điều nhỏ nhặt và vẫn khó khai thác nhưng an toàn hơn là xin lỗi. – James
Bạn có chắc chắn về {!! !!} Điều? – jartaud