4DepCheck adalah alat untuk menganalisis dan mendeteksi dependensi/perpustakaan yang rentan dari berbagai bahasa pemrograman berkat:
Sebelum penggunaan 4DepCheck , Anda harus menginstal persyaratan berikutnya:
Anda harus menginstal Docker untuk menggunakan 4DepCheck . Jika Anda memerlukan instruksi untuk instalasi Docker, lihat halaman How-To Install Docker.
Untuk menghindari harus menggunakan sudo saat Anda menggunakan perintah docker , buat grup UNIX yang disebut docker dan tambahkan pengguna ke dalamnya. Ketika daemon docker dimulai, itu membuat kepemilikan soket UNIX dibaca/dapat ditulis oleh kelompok docker .
Untuk penggunaan 4DepCheck , Anda dapat mengatur variabel lingkungan berikutnya sesuai kebutuhan:
export PROJECT_NAME='project_to_analyze'
export ABSOLUTE_PATH_TO_YOUR_PROJECT='/home/user/project_to_analyze'
Jika Anda telah mengatur variabel lingkungan sebelumnya, Anda hanya perlu menjalankan perintah Docker berikutnya:
$ 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
Jika Anda belum mengatur variabel lingkungan, Anda hanya perlu mengganti variabel dalam perintah Docker sebelumnya sesuai kebutuhan.
Output yang diharapkan untuk kueri sebelumnya akan ditampilkan di stdout dan akan disimpan di /tmp/4depcheck/$PROJECT_NAME.json . Contoh untuk output ini ditunjukkan di bawah ini:
[{
"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"
}]
Untuk bug, pertanyaan, dan diskusi, silakan gunakan masalah GitHub atau ping saya di Twitter (@3Grander).