Laravel данных до javascript может ли это быть небезопасным и открытой уязвимостью? - PullRequest
0 голосов
/ 14 апреля 2020

У меня есть этот метод в контроллере:

$ep = new Enterprise;
$d = new Chat;
$dataDao = new Data2;
$model = new Data;
$empresa = $ep->getEnterprise();
$tmp_talent = new Talent();
$nm = $d->all($request->session()->get('user')->email);
$data = [
    0 => $empresa,
    'vacantes' => $tmp_talent->getOpenJobsXTalent($request->session()->get('user')->email),
    "messages" => $nm,
    "userId"=> $dataDao->getMyUserId(),
    "categories"=>$model->getCategories(),
    //"subcategories"=>$model->getSubCategories()
];
return view('chat.dash')->with('data',$data);

И это соответствующий им файл ресурсов:

<script>
    var allMessages = {!! json_encode($data['messages']) !!};

Мой вопрос: может ли это представлять уязвимость, чем злоумышленник мог использовать, чтобы нанести ущерб моему сайту или моим конечным пользователям?

Ответы [ 2 ]

2 голосов
/ 14 апреля 2020

Вы отображаете неэкранированные данные, которые не должны использоваться для отображения записей пользователей

Вы используете json здесь, поэтому вы хотите использовать @json()

или

<?php echo json_encode($array); ?>;

Laravel документы

0 голосов
/ 14 апреля 2020

Эти данные могут быть уязвимы, если они конфиденциальны, и у вас также есть уязвимость XSS, позволяющая злоумышленнику получить их.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...