问题标签 [clam]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
256 浏览

centos - 如何禁止 Clamav 从 Internet 下载病毒库

我在公司代理下的服务器(Centos 7)中安装了 clamav 软件。每次尝试运行freshclam时,我都想阻止clamav尝试下载病毒数据库。我每个月左右手动更新 .cvd 文件。那么如何阻止clamav频繁下载。

0 投票
1 回答
580 浏览

java - 将 Netty 与 ClamAV Instream 一起使用

我一直在纠结使用 Netty 将字节流式传输到 ClamAV 服务的配置。我正在运行 Apache Camel 路线。

使用 Netty,我无法拦截“超出 INSTREAM 大小限制”消息。

INSTREAM 必须在此命令前加上 n 或 z。扫描数据流。在 INSTREAM 之后,流在发送命令的同一个套接字上以块的形式发送到 clamd。这避免了建立新 TCP 连接的开销和 NAT 问题。块的格式是: '' 其中是以字节为单位的以下数据的大小,以网络字节顺序表示为 4 字节无符号整数,并且是实际块。流式传输通过发送一个长度为零的块来终止。注意:不要超过 clamd.conf 中定义的 StreamMaxLength,否则 clamd 将回复超过 INSTREAM 大小限制并关闭连接。

使用直接同步套接字连接我没有问题。谁能指出我应该如何使用 Netty 来做到这一点的正确方向?或者我应该坚持使用同步套接字连接。

使用同步套接字实现。归功于https://github.com/solita/clamav-java “Antti Virtanen”。

使用带有入站和出站通道处理程序的 Netty 实现。

0 投票
3 回答
3080 浏览

docker - docker 容器中的防病毒软件 - fanotify 在主机和容器之间工作吗?

我需要使用开源软件对 docker 容器内的文件实施防病毒访问扫描解决方案。Clamav On-Access工作正常,但有一些要求和限制:

  • 需要 CAP_SYS_ADMIN 能力才能在容器内工作
  • 需要按容器运行,而不是按主机运行
  • 每个正在运行的容器中的签名需要 850Mb 常驻内存,即使是很小的容器

这个限制 - “从主机观看时,fanotify 不适用于容器事件”,真的存在还是我只是错误配置了 ClamAV?我对 fanotify 如何与命名空间一起工作没有深入的了解,但对我来说它看起来像是内核限制。

更新:此限制是否有任何解决方法?添加/var/lib/docker/overlay2/container_id/merged是一种选择,因为动态容器性质clamd.conf需要在每个容器事件上更新。但即使添加了路径,ClamAV 也不会检测到容器中的恶意文件。

每个容器运行 ClamAV 会产生巨大的内存开销,尤其是对于小型容器。

链接集合:

0 投票
1 回答
6187 浏览

clam - Can't stop Clamav deamon in Linux

I am trying to stop Clamav service in Linux, but I am not able to do that. I have installed Clamav in a seperate directory.

When running below command:

I get this error message:

Warning: Stopping clamav-daemon.service, but it can still be activated by: clamav-daemon.socket

When running:

I get:

Any help will be appreciated. Thanks.

0 投票
0 回答
70 浏览

linux - 如何保护 ClamAV 守护进程和客户端之间的通信?

我有一个在 Heroku 上运行的 Web 应用程序。我想扫描上传的文件。我的clamd在 Heroku 之外的 EC2 实例上运行。
这两个系统之间的ClamAV通信是否加密?
我需要自己处理加密吗?我可以配置ClamAV这样做还是需要在网络级别上这样做?

0 投票
0 回答
245 浏览

django - 如何在 k8s 环境中设置平静的防病毒软件并从 django 应用程序 pod 进行交互?

我在我的 django 应用程序中使用 django-clamd ( https://github.com/vstoykov/django-clamd )。在上传文件和检测到包含病毒的文件时,扫描在我的本地系统上运行良好。我想在 kubernetes 环境中为我的应用程序 pod 实现相同的目标。任何想法如何在 k8s 中将 clam 防病毒设置为单个实例(集群中每个节点一个 pod),以便可以使用 clamav 扫描部署在不同命名空间中的应用程序?我不想为每个应用程序部署设置一个单独的 clamav 实例,因为单个 clam av 实例需要大约 1 GB 的 RAM。

0 投票
0 回答
38 浏览

database - 我可以在自己的程序中使用其他防病毒数据库签名吗?

我开发自己的杀毒软件。但是数据库有问题。我可以在自己的防病毒软件中使用 ClamAV 防病毒数据库吗?

0 投票
1 回答
397 浏览

node.js - 尝试为 clamAV 指定二进制路径

我正在尝试在 NodeJS 中的 Windows 10 pro 机器上使用 clamscan。Clamscan 安装到

C:\Program Files\ClamAV

我有这个代码..

我收到错误消息。没有有效和活动的病毒扫描二进制文件处于活动状态且可用,并且没有提供主机/套接字选项!

网上所有的配置示例似乎都是针对 linux 路径的..

有没有人有在 Windows 上使用它的经验?谢谢

0 投票
0 回答
17 浏览

docker - 使用 imageinspector 对 docker 图像进行 clamav 扫描的更多输出

我正在尝试使用 docker 图像的图像检查器运行 Clamav 的防病毒扫描,同时遍历图像数量。我无法获得更多扫描输出,我只能获得摘要,但是想知道受感染的文件的位置以及存在什么样的问题。有关此案例的文档很差,无法找到更多信息,有人知道它是如何深入工作以获取有关扫描的更多信息吗?

使用以下命令运行扫描:

docker run --privileged -p 8080:8080 -v pwd: pwd-v /usr/sbin/clamd:/usr/sbin/clamd -v /var/run/docker.sock:/var/run/docker.sock -v / var/run/clamav/clamd.ctl:/var/run/clamav/clamd.ctl -w pwd openshift/image-inspector --scan-type=clamav --clam-socket=/var/run/clamav/clamd.ctl -path "${MKDIR}" -username "${SP_ID}" -password-file "./${PWD_FILE}" --image "${URI_DIGEST}" | tee -a "../$IMG_SCAN_RESULT_FILE"

输出看起来像:

Oct 01 00:22:33 为图像 xxxxxxxxx.azurecr.io/xxxxx:latest sha256:xxxxx 2020/10/01 00:22:33 拉动图像 xxxxx.azurecr.io/xxxxx@sha256:xxxxxx 2020/ 运行图像检查器10/01 00:22:41 完成下载图像(已下载 91597Kb) 2020/10/01 00:22:47 提取图像 xxxxxx.azurecr.io/xxxxxxxx@sha256:xxxxxxxxxxxxxxxxxxxxxxxx 到 /mnt/image-inspector/xxxxxxxxxx.azurecr。 io-xxxxxxxxxxxxxxxx 2020/10/01 00:22:59 clamav 扫描耗时 6s(发现 500 个问题)

已尝试标志 -i(不是有效标志),或 | grep FOUND 2>&1 无效。有谁知道如何获得 clamav scan 的更多输出?

0 投票
1 回答
141 浏览

docker - clamav docker build 针对非 root 用户问题

现在 docker build 为非 root 用户创建正常,但是当我们为构建的图像执行 docker run 时,它给出了权限错误。错误:无法以附加模式打开/var/log/clamav/freshclam.log(检查权限) mkdir:无法创建目录'/var/run/clamav':权限被拒绝在此处输入代码

此 ClamAV docker 文件需要哪些更改才能在没有权限问题的情况下为非 root 用户运行?请帮忙