写在前面
在某次安全测试中碰到此框架,测了半天也没发现XSS之类的漏洞,查了一下Laravel有默认配置的安全机制,总结记录一下。本文以Laravel5.5为例分析部分安全机制以及涉及到的获取请求写法还有网上公开的Laravel框架漏洞
laravel5.5中文手册
laravel5.5源码
安全机制
XSS防御–Blade模板引擎从输入到输出
定义路由获取变量->把变量传给视图做渲染->渲染结果作为响应内容返回用户
定义一个路由,在resources/views
下有welcome.blade.php
将$data
变量传入其中渲染,返回视图view()
web.php
Route::get('/', function () {
return view('welcome', [‘name’=>$name]);
});
welcome.blade.php
Hello, {
{ $name }}
Blade模板 的 {
{}}
语法会自动调用 PHP htmlentites
函数来防御 XSS 攻击
用以下写法可显示未转义数