2015-10-24 21 views
5

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

16

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.

+0

bạn có thể xây dựng trên 'chỉ một vài thứ từ .... vá lên'. – davejal

+0

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

+0

Bạn có chắc chắn về {!! !!} Điều? – jartaud

Các vấn đề liên quan