laravel 5.1有多安全?

时间:2015-10-24 04:38:13

标签: mysql security sql-injection laravel-5.1

在阅读了SQL注入之后,我想知道在Laravel中创建应用程序有多安全,以及如何测试您的安全性是否符合当今的标准?

1 个答案:

答案 0 :(得分:22)

我开发了一些Laravel应用程序,发现它们在我眼中非常安全。

我运行了各种渗透测试,OWASP ZAP扫描程序,sqlsus和5+工具,包括bbqsql和数据库笔测试类似的东西,nmap用于端口扫描,然后将ZAP切换到攻击模式以执行各种XSS和CSRF,发现没有来自Laravel本身的漏洞 - 我修补了我服务器本身的一些事情。

重要的是要说没有应用程序是100%安全的,因为它很大程度上取决于你的工作方式。

然而,Laravel通过保护您免受开箱即用:

  • SQL注入:如果您使用Eloquent查询,这些将确保您的安全。但是如果您使用DB::raw()查询,您将会受到攻击,因为这些查询可以让您打开注射。

  • CSRF:Laravel使用CSRF令牌来处理这个问题,它会检查每个POST请求,因此请确保使用它们,这实际上可以保护您免受更改请求性质的人的影响,即来自{ {1}}至POST

  • XSS:首先清理用户输入。使用刀片式语法GET不会对变量进行转义,该语法会在HTML代码中解析为{!! !!},而<?= e($foo) ?>会转义数据。

这是Laravel安全性的一个非常简短概述。一旦你开始使用文件上传等等,它可能会有点棘手,另外在PHP中做不安全的事情。

这篇文章here可能是一篇有趣的读物,可以更深入地了解上述内容。

简而言之,我发现Laravel可以保护我免受所有攻击的侵害,因为我需要使用Eloquent和消毒输入以及正确使用刀片语法和{{ }}令牌。