Symfony · Symfony · CVE-2022-24752
**Nome do software vulnerável e versões afetadas**
Versões do SyliusGridBundle anteriores à 1.10.1 e à 1.11-rc2
**Descrição**
O problema está relacionado ao pacote SyliusGridBundle para aplicações Symfony, no qual valores adicionados ao final da ordenação de consultas eram passados diretamente para o banco de dados. Isso poderia potencialmente levar a injeções de SQL, embora os mantenedores não tenham certeza se isso poderia resultar em injeções diretas de SQL. A vulnerabilidade permite que um invasor remoto execute consultas SQL arbitrárias.
**Recomendações**
Para versões anteriores à 1.10.1 e 1.11-rc2, sobrescreva a classe `SyliusComponentGridSortingSorter.php` e registre-a no contêiner como uma solução temporária. A classe atualizada deve incluir validação de entrada para evitar possíveis injeções SQL.
Para implementar a solução alternativa, crie uma nova classe `Sorter.php` no diretório `src/App/Sorting` com o seguinte conteúdo:
```php
<?php
// src/App/Sorting/Sorter.php
declare(strict types=1);
namespace AppSorting;
use SymfonyComponentHttpKernelExceptionBadRequestHttpException;
use SyliusComponentGridDataDataSourceInterface;
use SyliusComponentGridDefinitionGrid;
use SyliusComponentGridParameters;
use SyliusComponentGridSortingSorterInterface;
final class Sorter implements SorterInterface
{
public function sort(DataSourceInterface $dataSource, Grid $grid, Parameters $parameters): void
{
$enabledFields = $grid->getFields();
$expressionBuilder = $dataSource->getExpressi