likes
comments
collection
share

Nodejs 第六十九章(杀毒)

作者站长头像
站长
· 阅读数 53

杀毒

杀毒(Antivirus)是指一类计算机安全软件,旨在检测、阻止和清除计算机系统中的恶意软件,如病毒、蠕虫、木马、间谍软件和广告软件等。这些恶意软件可能会对计算机系统和用户数据造成损害,包括数据丢失、系统崩溃、个人信息泄露等。

杀毒软件通过使用各种技术来保护计算机免受恶意软件的威胁

应用场景

  1. 杀毒软件编写
  2. 日常杀毒使用
  3. 实时保护
  4. 邮件web扫描
  5. 服务器杀毒

引擎

clamAV

ClamAV(Clam AntiVirus)是一个开源的跨平台杀毒软件,它专注于检测和清除恶意软件,包括病毒、蠕虫、木马、恶意软件和其他恶意代码。

以下是ClamAV的一些特点和功能:

  1. 开源和免费:ClamAV是一个自由开源的杀毒软件,可以在各种操作系统上免费使用,包括Windows、macOS和Linux等。
  2. 多平台支持:ClamAV是跨平台的,可以在多种操作系统上运行,包括Windows、macOS、Linux、FreeBSD等。
  3. 病毒扫描引擎:ClamAV使用强大的病毒扫描引擎来检测和识别各种恶意软件。它可以扫描文件、文件夹和压缩文件等,以查找潜在的威胁。
  4. 多种扫描模式:ClamAV提供不同的扫描模式,包括快速扫描、全盘扫描和定制扫描。用户可以根据需要选择适当的扫描模式。
  5. 实时保护:ClamAV可以提供实时监控和保护功能,可以在文件被访问、下载或执行时即时检测和阻止潜在的恶意软件。
  6. 病毒定义更新:ClamAV定期发布病毒定义数据库的更新,以保持对新出现的病毒和恶意软件变种的识别能力。用户可以手动或自动更新病毒定义文件。
  7. 命令行工具和图形界面:ClamAV提供了命令行工具和图形界面,使用户可以方便地执行扫描、更新和配置等操作。

下载安装

www.clamav.net/downloads

选择对应的操作系统

Nodejs 第六十九章(杀毒)

windows

  1. 下载完成之后安装 然后配置环境变量

安装完成之后目录会有一个 conf_examples 文件夹 它自带的

  1. clamd.conf
  2. freshclam.conf

把文件夹的内容拷贝到根目录

Nodejs 第六十九章(杀毒) Nodejs 第六十九章(杀毒)

然后把这两个文件里面的 Example 注释掉

Nodejs 第六十九章(杀毒)
  1. 更新病毒库

执行这个命令 freshclam

Nodejs 第六十九章(杀毒)

启动 clamd 服务

Nodejs 第六十九章(杀毒)

nodejs 使用

安装 clamscan

npm install clamscan
import NodeClam from 'clamscan'
const clam = new NodeClam().init({
    scanRecursively: true, //深度扫毒
    clamdscan: {
        port: 3310, //连接引擎的端口 端口配置项在这个文件 clamd.conf 默认3310
        host: 'localhost', //连接引擎的IP 
    },
    clamscan: {
        scanArchives: true, //扫描归档文件
        scanFiles: true, //扫描文件
    }
})
clam.then((clamscan) => {
    //批量扫描文件
    clamscan.scanFiles(['./index.js', './package.json','./package-lock.json'], (err, goodfiles, badfiles) => {
        if (err) {
            console.log(err)
        } else {
            console.log('扫描完成')
            //goodfiles 就是没问题的文件
            //badfiles 就是病毒文件
            console.log(goodfiles, badfiles)
        }
    })
    //扫描目录
    clamscan.scanDir('./', (err, goodfiles, badfiles) => {
        if (err) {
            console.log(err)
        } else {
            console.log('扫描完成')
            console.log(goodfiles, badfiles)
        }
    })
    //检查是否是病毒文件
    clamscan.isInfected('./index.js', (err, result) => {
        if (err) {
            console.log(err)
        } else {
            console.log(result)
        }
    })
})

演示

扫描三个文件

clamscan.scanDir 这个方法windows用不了只能在linux用

Nodejs 第六十九章(杀毒)
转载自:https://juejin.cn/post/7362473275253211186
评论
请登录