Tom*_*ran -2 forms sql-injection input laravel
我在Laravel的页面中有一些表格.根据文档,三重括号 - {{{}}}可以逃避输出.所以当我使用时:
{{{ Form::text('name') }}}
Run Code Online (Sandbox Code Playgroud)
我可以100%确定不可能将SQL注入命令插入此表单输入吗?
luk*_*ter 11
不,你明白{{{ }}}错了.他们逃脱了输出.
所以,如果你这样做
{{{ Form::text('name') }}}
Run Code Online (Sandbox Code Playgroud)
结果是这样的:
<input name="test" type="text">
Run Code Online (Sandbox Code Playgroud)
它仍然会生成HTML代码,但它会被转义,所以它不会被解释为HTML而是纯文本
将数据保存到数据库时,必须阻止SQL注入.通常你在控制器中这样做.如果您使用的口才或Laravels查询生成器,你不必担心得多.它将处理可能的SQL注入点.只有执行原始SQL,您才需要注意.
来自Laravel Docs:
注意: Laravel查询构建器始终使用PDO参数绑定来保护您的应用程序免受SQL注入攻击.无需清除作为绑定传递的字符串.
| 归档时间: |
|
| 查看次数: |
7953 次 |
| 最近记录: |