变量中的数据可能泄漏吗? Laravel

问题描述 投票:0回答:2

我正在处理推介项目,并且我的测试功能如下(以检查推介用户):

$referrals = auth::user()->referrals;
echo $referrals;

以下内容的输出是这样的:

[{"id":2,"name":"XYZ","email":"[email protected]","is_subscribed":"0","is_referrer":"0","created_at":"Time here","referred_by":"1"}]

和在控制器中:

$referrals = auth::user()->referrals;
$host = request()->getHost();
$Link = $host.'?ref='.\Hashids::encode(auth()->user()->id);
foreach ($referrals as $users){
    return view('dashboard', compact('users', 'Link'));
}

[一切正常,但是担心我的网站受到攻击,它会泄漏其他推荐用户的电子邮件地址。

在我看来,我仅显示“推荐用户的名称”。

<td>
   {{ $users->name }}
</td>

可以吗?做这样的事情?

感谢

php laravel security
2个回答
1
投票

入侵您的网站并非不可能,但将非常困难。刀片在服务器端和客户端之间的分离方面非常有效。但是,您必须注意为刀片中使用的模型创建的自定义功能可能会泄漏一些您不想要的信息。

您还可以声明未在响应中显示的模型的隐藏值。

希望它有所帮助


0
投票

没有刀片模板在服务器端组装。只要您不将数据输出到视图(并且没有在生产环境中以开发模式运行),就不会泄漏。多亏了!– @杰里米·哈里斯

大量帮助!

© www.soinside.com 2019 - 2024. All rights reserved.