cvechecker 漏洞掃描工具部署及效果展示


cvechecker 漏洞掃描工具部署及效果展示

介紹

cvechecker的目標是通過掃描已安裝的軟件並將結果與CVE數據庫進行匹配來報告系統上可能存在的漏洞。

官方提示:

  • 可能會產生許多誤報(漏洞已通過修訂版本修復,但該工具無法檢測修訂本身)。
  • 但是該工具也需要您的幫助。最多的工作是告訴cvechecker如何檢測安裝了哪個軟件以及哪個版本。

cvechecker的核心功能就是拿到軟件的版本號,然后根據規則去匹配cve漏洞庫,cvechecker沒有依賴於包版本管理器,而是直接通過查找軟件包的版本號,然后構造CPE信息,通過在cve數據庫中查找給CPE信息來提取CVE信息, 開發者維護了一個軟件包和各個命令的映射關系表。內容類似於:

,perlivp,1,perlivp$,# perlivp v([0-9][0-9](.[0-9]+)+),a,perl,perl,\1,,,
,libvorbis.so,1,libvorbis.so.,Xiph.Org libVorbis ([0-9][0-9]*(.[0-9]+)+),a,xiph,libvorbis,\1,,,

用戶自己也可以定義添加這種映射表,同時這也是作者所提議的,而默認的映射表是由開發者維護的,默認只有651條,因此這里就是漏報的一處主要原因。另外一個原因就是上面提到的,無法檢測補丁。

支持的數據庫:

參考鏈接

安裝使用

  • 測試機器:CentOS 7

  • 環境要求

    1. SQLite3, MySQL, PostgreSQL, Redis
    2. git
    3. gccGNU Make
    4. libxslt
    5. libconfig
  • 一. 環境部署:

    • 1.工具安裝

      # sudo yum -y install libxslt libconfig sqlite
      
    • 2.安裝
      先下載release版,最新版是4.0 https://github.com/sjvermeu/cvechecker/releases/tag/cvechecker-4.0

      # tar zxvf cvechecker-cvechecker-4.0.tar.gz
      # cd cvechecker-cvechecker-4.0
      # ./configure -prefix=/root/cve/ --enable-sqlite3 
      # make
      # make install
      
      
      • 踩坑

      • 1 ./configure -prefix=/root/cve/ --enable-sqlite3 過程中失敗 已安裝sqlite,卻提示失敗

        ...
        checking for pkg-config... /bin/pkg-config
        checking pkg-config is at least version 0.9.0... yes
        checking for CONFIG... yes
        checking for SQLITE3... no
        configure: error: Package requirements (sqlite3 >= 3.6.16) were not met:
        
        No package 'sqlite3' found
        
        Consider adjusting the PKG_CONFIG_PATH environment variable if you
        installed software in a non-standard prefix.
        
        Alternatively, you may set the environment variables SQLITE3_CFLAGS
        and SQLITE3_LIBS to avoid the need to call pkg-config.
        See the pkg-config man page for more details.
        
      • 解決辦法:

        # yum -y install sqlite-devel
        
      • 2 ./configure -prefix=/root/cve/ --enable-sqlite3 過程中失敗 找不到Makefile.in文件

        config.status: error: cannot find input file: `Makefile.in'
        
      • 解決辦法:

        # aclocal
        # autoheader
        # automake --add-missing
        
      • 3 make過程失敗 libbsd

        configure: error: Package requirements (libbsd) were not met:
        
        No package 'libbsd' found
        
        Consider adjusting the PKG_CONFIG_PATH environment variable if you
        installed software in a non-standard prefix.
        
        Alternatively, you may set the environment variables BSD_CFLAGS
        and BSD_LIBS to avoid the need to call pkg-config.
        See the pkg-config man page for more details.
        
      • 解決辦法:

        # yum -y install libbsd-devel
        
    • 3.修改配置文件

      # cp ./conf/cvechecker.conf  /etc
      

      根據自己環境配置,mysql的在這里配置用戶名等

      #
      # Generic settings
      # 
      
      dbtype = "sqlite"; 
      #dbtype="mysql";
      cvecache = "/usr/local/var/cvechecker/cache";
      datadir = "/usr/local/share/cvechecker";
      stringcmd = "/usr/bin/strings -n 3 '@file@'";
      version_url = "https://raw.github.com/sjvermeu/cvechecker/master/versions.dat";
      #userkey = "servertag";
      
      #
      # For Sqlite3
      #
      sqlite3: {
        localdb = "/usr/local/var/cvechecker/local";
        globaldb = "/usr/local/var/cvechecker/global.db";
      };
      
      # 
      # For MySQL
      # 
      mysql: {
        dbname = "cvechecker";
        dbuser = "cvechecker_rw";
        dbpass = "password4cvechecker_rw";
        dbhost = "mysql.company.com";
      };
      
    • 4.初始化表

      # cvechecker -i
      
    • 5.獲取漏洞數據

      # pullcves pull
      
    • 6.生成掃描文件列表

      # find / -type f -perm -o+x > scanlist.txt
      # echo "/proc/version" >> scanlist.txt
      
    • 7.執行掃描

      # cvechecker -b scanlist.txt
      
    • 8.輸出匹配條目

      # cvechecker -r
      

      # cvechecker -r -C  // 以cvs格式輸出
      
    • 9.生成web UI報告 cvereport -D 生成文件的目標目錄 acknowledgements.xml所在目錄

      # cvereport -D /root/ /root/cvechecker-cvechecker-4.0/data/acknowledgements.xml
      

時間:03/05/2021

作者:HsinTsao


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM