Muhammad Sobirov

#8971de 56,334
32.6CVSS total
Vulnerabilidades · 4
Média
1
Alta
3
PT-2026-80856
8.8
2026-08-24
Nektos · Act · CVE-2026-76847
**Nome do Software Vulnerável e Versões Afetadas** nektos/act versões 0.2.81 a 0.2.89 **Descrição** O software inicia um backend HTTP Artifacts V4 sempre que os fluxos de trabalho utilizam actions/upload-artifact@v4 ou actions/download-artifact@v4. As RPCs do plano de controle, incluindo 'CreateArtifact', 'GetSignedArtifactURL', 'ListArtifacts', 'FinalizeArtifact' e 'DeleteArtifact', aceitam um `workflow run backend id` fornecido pelo chamador sem verificar se ele pertence ao solicitante. Isso ocorre porque a função `validateRunIDV4()` em pkg/artifacts/artifacts v4.go analisa o valor, mas não realiza a comparação necessária com o ID de execução da tarefa solicitante. Além disso, as URLs assinadas são autenticadas por meio de uma chave HMAC hardcoded (0xba 0xdb 0xee 0xf0), tornando as assinaturas forjáveis e ambíguas entre diferentes pares de nome de artefato e ID de tarefa. Por padrão, a flag `--artifact-server-addr` utiliza o endereço de saída do host em vez do endereço de loopback, deixando o backend acessível a partir da rede circundante. Isso permite que clientes não autorizados leiam, sobrescrevam ou excluam artefatos de jobs em execução simultaneamente, expondo potencialmente segredos e credenciais de implantação. **Recomendações** Para as versões 0.2.81 a 0.2.89, vincule o servidor de artefatos ao endereço de loopback e evite o uso de actions/upload-artifact@v4 e actions/download-artifact@v4 até que uma correção esteja disponível.
PT-2026-80857
8.7
2026-08-24
Typeorm · Typeorm · CVE-2026-76848
**Nome do Software Vulnerável e Versões Afetadas** TypeORM versões 0.2.21 through 1.1.0 **Description** O método `SelectQueryBuilder.distinctOn` do TypeORM aceita um array de strings e o armazena no mapa de expressões sem validação. Para drivers da família PostgreSQL, a função `createSelectDistinctExpression()` em `src/query-builder/SelectQueryBuilder.ts` une esse array e interpola o resultado na instrução gerada como `SELECT DISTINCT ON (values)`. Isso ocorre sem escape, aspas, validação de identificadores ou lista de permissões (allowlist), e sem passar pelo auxiliar de escape do driver ou pelo `replacePropertyNames`. Como o ponto de interpolação é uma lista de expressões SQL entre parênteses, um invasor pode inserir expressões arbitrárias, incluindo subconsultas correlacionadas. Se uma aplicação encaminhar valores controlados pelo cliente para o `distinctOn`, isso permite que o cliente leia dados acessíveis pela função do banco de dados da aplicação através de inferência booleana ou baseada em tempo, independentemente da entidade consultada. Este caminho não é protegido pela verificação de lista de permissões `validateOrderByCondition` utilizada pela família `orderBy`. **Recommendations** Atualize o TypeORM para uma versão posterior à 1.1.0. Como medida paliativa temporária, evite passar valores controlados pelo cliente para o método `distinctOn` do `SelectQueryBuilder`.
PT-2026-80854
8.3
2024-03-21
Npm · Webpack-Dev-Middleware · CVE-2026-76844
**Nome do Software Vulnerável e Versões Afetadas** webpack-dev-middleware versões 5.3.4 through 5.x webpack-dev-middleware versões 6.1.2 through 6.x webpack-dev-middleware versões 7.1.0 through 7.x **Description** O software não valida adequadamente os endereços de URL antes de retornar arquivos locais, permitindo o acesso potencial a arquivos na máquina do desenvolvedor. Isso ocorre na função `getFilenameFromUrl()` quando o `publicPath` é configurado sem uma barra final. Um invasor pode criar uma requisição onde uma sequência de pontos (dot-dot) está incorporada em um segmento do caminho (ex: `/assets../.env`), ignorando a guarda de travessia. O sistema então corta o caminho em um deslocamento fixo, resultando em um traversal de caminho que resolve um diretório acima do caminho de saída. Este problema afeta especificamente ambientes onde o middleware é suportado pelo sistema de arquivos físico, como quando a variável `writeToDisk` é definida como `true` ou um `outputFileSystem` personalizado é fornecido. Se o servidor de desenvolvimento estiver exposto a uma rede ou permitir requisições de origem cruzada, um invasor poderá exfiltrar arquivos sensíveis, como senhas ou código-fonte. **Recommendations** Para as versões do webpack-dev-middleware 5.3.4 through 5.x, 6.1.2 through 6.x e 7.1.0 through 7.x, defina a variável `writeToDisk` como `false` ou evite usar um `outputFileSystem` personalizado para impedir o acesso ao sistema de arquivos físico. Como medida de mitigação temporária, certifique-se de que a configuração `publicPath` termine com uma barra final para evitar a falha no corte de deslocamento.