O código-fonte constitui os blocos de construção fundamentais de qualquer aplicação ou produto de software. É a espinha dorsal de qualquer organização centrada na tecnologia. O código fonte aloja informação proprietária sobre as propriedades intelectuais da sua empresa e protege os dados que mantêm a sua empresa a funcionar.
A integração de componentes de código aberto de terceiros facilita às equipas de software a utilização do código que já está disponível, sem terem de desenvolver de raiz. Infelizmente, o lado negativo desta conveniência envolve riscos que visam fornecedores terceiros, causando ataques à cadeia de fornecimento. Durante um ataque à cadeia de fornecimento, os cibercriminosos podem inserir malware no código de terceiros ou construir sistemas, entregando assim malware à organização e aos seus clientes associados.
Neste blogue, vou demonstrar como evitar malware no código-fonte utilizando o plugin MetaDefender Jenkins.
Secure Compilações com MetaDefender Plugin para Jenkins
O plug-inMetaDefender for Jenkins verifica as compilações do Jenkins em busca de malware e verifica o código-fonte e os artefatos em busca de ameaças. O malware avançado pode facilmente contornar um único mecanismo antivírus (AV), colocando o código-fonte em risco. Os falsos positivos na deteção de malware também são um efeito colateral comum na maioria das soluções AV, levando a esforços de correção, tempo e recursos desperdiçados. O MetaDefender for Jenkins utiliza o Metascan - umatecnologia de varredura múltipla - para aumentar as taxas de deteção e diminuir os tempos de deteção de surtos para suas compilações de software.
Aqui estão dois cenários que mostram como o malware se pode infiltrar: no código fonte e durante o processo de compilação.
Cenário 1: Malware no código fonte
O código-fonte, neste caso, pode ser o seu próprio código-fonte (da máquina comprometida de um programador) ou de uma biblioteca de terceiros. No primeiro cenário, eu queria verificar um repositório de biblioteca de terceiros no GitHub. Para me certificar de que o repositório está livre de ameaças, adicionei um passo de construção para analisar com o plugin MetaDefender para Jenkins.

Também queria que a compilação retornasse como "falhou" se houvesse alguma ameaça no código-fonte.

Depois de tentar executar a compilação, o resultado foi marcado como "falhado" devido aos ficheiros infectados detectados pelo plug-in MetaDefender Jenkins.

Cenário 2: Malware introduzido no processo de compilação
Se pensa que a verificação do seu repositório é suficiente para proteger o seu código-fonte, isso pode nem sempre ser verdade. Algum malware não existe no repositório de código-fonte original, mas pode ser introduzido quando descarrega componentes como dependências ou bibliotecas. Neste segundo vídeo, demonstrei um exemplo do segundo cenário e como o evitar utilizando o plug-in MetaDefender Jenkins.
Como pode ver, não foram encontrados problemas depois de ter analisado o código-fonte na primeira execução.

Depois disso, adicionei uma nova etapa de compilação ao processo usando um arquivo build.bat e iniciei a compilação novamente.

Para fins de demonstração, utilizei o npm para descarregar um pacote de teste EICAR para simular a ação de instalar malware num cenário real. Nesse caso, embora não houvesse nenhuma ameaça no código-fonte original, o pacote npm malicioso ocorreu no script durante a compilação. O plugin MetaDefender Jenkins detectou a ameaça, marcando a construção como falhada.

Os resultados pormenorizados da análise são apresentados em MetaDefender Core .

Sobre OPSWAT MetaDefender para Jenkins
OPSWAT MetaDefender para Jenkins verifica se há malware e segredos nas suas compilações antes de liberar o aplicativo para o público. Com base em todos os recursos da plataforma MetaDefender - incluindo mais de 30 mecanismos antivírus líderes, Deep CDR, e Proactive DLP-, o plug-in MetaDefender para Jenkins examinará minuciosamente seu código-fonte e artefatos em busca de ameaças. Você será informado sobre possíveis problemas por meio de proteções contra falhas incorporadas que ajudam a evitar surtos de malware e vazamento de dados confidenciais. Saiba mais sobre MetaDefender para Jenkins e outras ferramentas gratuitasOPSWAT .
Para mais informações, contacte os nossos especialistas em cibersegurança.