O 4DePcheck é uma ferramenta para analisar e detectar dependências/bibliotecas vulneráveis de diferentes linguagens de programação graças a:
Antes do uso do 4DePcheck , você deve ter instalado os próximos requisitos:
Você deve ter instalado o Docker para usar o 4depcheck . Se você precisar de instruções para a instalação do Docker, consulte a página de como instalar o Docker.
Para evitar ter que usar sudo quando você usar o comando docker , crie um grupo UNIX chamado docker e adicione usuários a ele. Quando o docker Daemon começa, torna a propriedade do soquete Unix lido/gravável pelo docker Group.
Para o uso do 4DePcheck , você pode definir as próximas variáveis de ambiente conforme necessário:
export PROJECT_NAME='project_to_analyze'
export ABSOLUTE_PATH_TO_YOUR_PROJECT='/home/user/project_to_analyze'
Se você definiu as variáveis de ambiente anterior, só precisará executar o próximo comando do Docker:
$ docker run -v /tmp/4depcheck:/tmp/4depcheck
-v $ABSOLUTE_PATH_TO_YOUR_PROJECT:$ABSOLUTE_PATH_TO_YOUR_PROJECT
3grander/4depcheck:0.1.0 $PROJECT_NAME $ABSOLUTE_PATH_TO_YOUR_PROJECT
Se você não definiu as variáveis de ambiente, só precisará substituir as variáveis no comando Docker anterior, conforme necessário.
A saída esperada para a consulta anterior será mostrada no stdout e será armazenada em /tmp/4depcheck/$PROJECT_NAME.json . Um exemplo para esta saída é mostrado abaixo:
[{
"cve_severity": "medium",
"cve_product": "cxf",
"cve_product_version": "3.1.6",
"cve_id": "CVE-2017-3156",
"cve_type": "java",
"cve_product_file_path": "/opt/modules/system/org/apache/cxf/main/cxf-core-3.1.6.jar"
}, {
"cve_severity": "high",
"cve_product": "netty",
"cve_product_version": "4.0.33",
"cve_id": "CVE-2016-4970",
"cve_type": "java",
"cve_product_file_path": "/opt/modules/system/io/netty/main/netty-all-4.0.33.Final.jar"
}, {
"cve_severity": "high",
"cve_product": "xalan-java",
"cve_product_version": "2.7.1",
"cve_id": "CVE-2014-0107",
"cve_type": "java",
"cve_product_file_path": "/usr/plugins/xslt-debugger/lib/rt/xalan.jar"
}, {
"cve_severity": "high",
"cve_product": "xalan-java",
"cve_product_version": "2.7.1",
"cve_id": "CVE-2014-0107",
"cve_type": "java",
"cve_product_file_path": "/usr/plugins/xslt-debugger/lib/rt/serializer.jar"
}, {
"cve_severity": "medium",
"cve_product": "axis",
"cve_product_version": "1.4",
"cve_id": "CVE-2014-3596",
"cve_type": "java",
"cve_product_file_path": "/usr/plugins/tasks/lib/axis-1.4.jar"
}, {
"cve_severity": "medium",
"cve_product": "jquery",
"cve_product_version": "1.4.2",
"cve_id": "CVE-2011-4969",
"cve_type": "js",
"cve_product_file_path": "/usr/js/jquery-1.4.2/jquery.js"
}]
Para insetos, perguntas e discussões, use os problemas do Github ou me ping no Twitter (@3Grander).