[Pkg-clamav-devel] Bug#994983: clamav-daemon: Postinst script assumes /var/lib/clamav/ to be writable, which is not always the case

Dominik dr896543 at gmail.com
Fri Sep 24 11:26:11 BST 2021


Package: clamav-daemon
Version: 0.103.3+dfsg-0+deb10u1
Severity: normal
Tags: patch

Dear Maintainer,

in order to limit network bandwith and harddisk capacity, we use a setup
with shared virus patterns. For this, the directory /var/lib/clamav is
shared by multiple systems, only the master system (responsible for
pattern update) having write access. 

This breaks the post-install process:

clamav-daemon (0.103.3+dfsg-0+deb10u1) wird eingerichtet ...
/var/lib/dpkg/info/clamav-daemon.postinst: 464: /var/lib/dpkg/info/clamav-daemon.postinst: cannot create /var/lib/clamav/clamav.conf: Permission denied
dpkg: Fehler beim Bearbeiten des Paketes clamav-daemon (--configure):
 »installiertes clamav-daemon-Skript des Paketes post-installation«-Unterprozess gab den Fehlerwert 2 zurück
Fehler traten auf beim Bearbeiten von:
 clamav-daemon

Which we can fix by modifying /var/lib/dpkg/info/clamav-daemon.postinst

sudo patch --forward /var/lib/dpkg/info/clamav-daemon.postinst << EOF
--- /tmp/clamav-daemon.postinst	2021-05-21 12:53:07.386753639 +0200
+++ /tmp/clamav-daemon.postinst.new	2021-05-21 12:53:48.410539251 +0200
@@ -264,11 +264,11 @@
   configure)
 
   # The DEB*FILE files are used temporarily during the update of the CLAMAV* files.
-  DEBCONFFILE=/var/lib/clamav/clamav.conf
+  DEBCONFFILE=/tmp/clamav.conf
   CLAMAVCONF=/etc/clamav/clamd.conf
-  DEBROTATEFILE=/var/lib/clamav/clamdrotate.debconf
+  DEBROTATEFILE=/tmp/clamdrotate.debconf
   CLAMAVROTATEFILE=/etc/logrotate.d/clamav-daemon
-  DEBSYSTEMDCLAMDCONF=/var/lib/clamav/extend.conf
+  DEBSYSTEMDCLAMDCONF=/tmp/extend.conf
   CLAMAVSYSTEMDCLAMDONF=/etc/systemd/system/clamav-daemon.service.d/extend.conf
 
   # Update the configuration file
EOF


sudo apt -y install --fix-broken 


Please consider not to use /var/lib/clamav/ as temporary location to
generate configuration files.



-- Package-specific info:
--- configuration ---
Checking configuration files in /etc/clamav

Config file: clamd.conf
-----------------------
AlertExceedsMax disabled
PreludeEnable disabled
PreludeAnalyzerName = "ClamAV"
LogFile = "/var/log/clamav/clamav.log"
LogFileUnlock disabled
LogFileMaxSize = "4294967295"
LogTime = "yes"
LogClean disabled
LogSyslog disabled
LogFacility = "LOG_LOCAL6"
LogVerbose disabled
LogRotate = "yes"
ExtendedDetectionInfo = "yes"
PidFile disabled
TemporaryDirectory disabled
DatabaseDirectory = "/var/lib/clamav"
OfficialDatabaseOnly disabled
LocalSocket = "/var/run/clamav/clamd.ctl"
LocalSocketGroup = "clamav"
LocalSocketMode = "666"
FixStaleSocket = "yes"
TCPSocket disabled
TCPAddr disabled
MaxConnectionQueueLength = "15"
StreamMaxLength = "26214400"
StreamMinPort = "1024"
StreamMaxPort = "2048"
MaxThreads = "12"
ReadTimeout = "180"
CommandReadTimeout = "30"
SendBufTimeout = "200"
MaxQueue = "100"
IdleTimeout = "30"
ExcludePath = "/initrd.img", "/vmlinuz"
MaxDirectoryRecursion = "25"
FollowDirectorySymlinks disabled
FollowFileSymlinks disabled
CrossFilesystems = "yes"
SelfCheck = "3600"
ConcurrentDatabaseReload = "yes"
DisableCache disabled
VirusEvent disabled
ExitOnOOM disabled
AllowAllMatchScan = "yes"
Foreground disabled
Debug disabled
LeaveTemporaryFiles disabled
User = "clamav"
Bytecode = "yes"
BytecodeSecurity = "TrustSigned"
BytecodeTimeout = "60000"
BytecodeUnsigned disabled
BytecodeMode = "Auto"
DetectPUA disabled
ExcludePUA disabled
IncludePUA disabled
ScanPE = "yes"
ScanELF = "yes"
ScanMail = "yes"
ScanPartialMessages disabled
PhishingSignatures = "yes"
PhishingScanURLs = "yes"
HeuristicAlerts = "yes"
HeuristicScanPrecedence disabled
StructuredDataDetection disabled
StructuredMinCreditCardCount = "3"
StructuredMinSSNCount = "3"
StructuredSSNFormatNormal = "yes"
StructuredSSNFormatStripped disabled
ScanHTML = "yes"
ScanOLE2 = "yes"
AlertBrokenExecutables disabled
AlertBrokenMedia disabled
AlertEncrypted disabled
StructuredCCOnly disabled
AlertEncryptedArchive disabled
AlertEncryptedDoc disabled
AlertOLE2Macros disabled
AlertPhishingSSLMismatch disabled
AlertPhishingCloak disabled
AlertPartitionIntersection disabled
ScanPDF = "yes"
ScanSWF = "yes"
ScanXMLDOCS = "yes"
ScanHWP3 = "yes"
ScanArchive = "yes"
ForceToDisk disabled
MaxScanTime = "120000"
MaxScanSize = "104857600"
MaxFileSize = "26214400"
MaxRecursion = "16"
MaxFiles = "10000"
MaxEmbeddedPE = "10485760"
MaxHTMLNormalize = "10485760"
MaxHTMLNoTags = "2097152"
MaxScriptNormalize = "5242880"
MaxZipTypeRcg = "1048576"
MaxPartitions = "50"
MaxIconsPE = "100"
MaxRecHWP3 = "16"
PCREMatchLimit = "10000"
PCRERecMatchLimit = "5000"
PCREMaxFileSize = "26214400"
OnAccessMountPath disabled
OnAccessIncludePath disabled
OnAccessExcludePath disabled
OnAccessExcludeRootUID disabled
OnAccessExcludeUID disabled
OnAccessExcludeUname disabled
OnAccessMaxFileSize = "5242880"
OnAccessDisableDDD disabled
OnAccessPrevention disabled
OnAccessExtraScanning disabled
OnAccessCurlTimeout = "5000"
OnAccessMaxThreads = "5"
OnAccessRetryAttempts disabled
OnAccessDenyOnError disabled
DevACOnly disabled
DevACDepth disabled
DevPerformance disabled
DevLiblog disabled
DisableCertCheck disabled
AlgorithmicDetection = "yes"
BlockMax disabled
PhishingAlwaysBlockSSLMismatch disabled
PhishingAlwaysBlockCloak disabled
PartitionIntersection disabled
OLE2BlockMacros disabled
ArchiveBlockEncrypted disabled

Config file: freshclam.conf
---------------------------
LogFileMaxSize = "4294967295"
LogTime = "yes"
LogSyslog disabled
LogFacility = "LOG_LOCAL6"
LogVerbose disabled
LogRotate = "yes"
PidFile disabled
DatabaseDirectory = "/var/lib/clamav"
Foreground disabled
Debug disabled
UpdateLogFile = "/var/log/clamav/freshclam.log"
DatabaseOwner = "clamav"
Checks = "24"
DNSDatabaseInfo = "current.cvd.clamav.net"
DatabaseMirror = "db.local.clamav.net", "database.clamav.net"
PrivateMirror disabled
MaxAttempts = "5"
ScriptedUpdates = "yes"
TestDatabases = "yes"
CompressLocalDatabase disabled
ExtraDatabase disabled
ExcludeDatabase disabled
DatabaseCustomURL disabled
HTTPProxyServer disabled
HTTPProxyPort disabled
HTTPProxyUsername disabled
HTTPProxyPassword disabled
HTTPUserAgent disabled
NotifyClamd = "/etc/clamav/clamd.conf"
OnUpdateExecute disabled
OnErrorExecute disabled
OnOutdatedExecute disabled
LocalIPAddress disabled
ConnectTimeout = "30"
ReceiveTimeout = "30"
Bytecode = "yes"
*** SafeBrowsing is DEPRECATED ***

clamav-milter.conf not found

Software settings
-----------------
Version: 0.103.3
Optional features supported: MEMPOOL IPv6 FRESHCLAM_DNS_FIX AUTOIT_EA06 BZIP2 LIBXML2 PCRE2 ICONV JSON 

Database information
--------------------
Database directory: /var/lib/clamav
main.cld: version 62, sigs: 6647427, built on Thu Sep 16 14:32:42 2021
daily.cld: version 26302, sigs: 1935748, built on Fri Sep 24 11:04:11 2021
bytecode.cld: version 333, sigs: 92, built on Mon Mar  8 16:21:51 2021
Total number of signatures: 8583267

Platform information
--------------------
uname: Linux 4.19.0-17-amd64 #1 SMP Debian 4.19.194-3 (2021-07-18) x86_64
OS: linux-gnu, ARCH: x86_64, CPU: x86_64
Full OS version: Debian GNU/Linux 10 (buster)
zlib version: 1.2.11 (1.2.11), compile flags: a9
platform id: 0x0a217c7c0800000000080300

Build information
-----------------
GNU C: 8.3.0 (8.3.0)
CPPFLAGS: -Wdate-time -D_FORTIFY_SOURCE=2
CFLAGS: -g -O2 -fdebug-prefix-map=/build/clamav-urHr6u/clamav-0.103.3+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -D_FILE_OFFSET_BITS=64  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
CXXFLAGS: -g -O2 -fdebug-prefix-map=/build/clamav-urHr6u/clamav-0.103.3+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -D_FILE_OFFSET_BITS=64
LDFLAGS: -Wl,-z,relro -Wl,-z,now -Wl,--as-needed
Configure: '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=/usr/include' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-silent-rules' '--libdir=/usr/lib/x86_64-linux-gnu' '--libexecdir=/usr/lib/x86_64-linux-gnu' '--runstatedir=/run' '--disable-maintainer-mode' '--disable-dependency-tracking' 'CFLAGS=-g -O2 -fdebug-prefix-map=/build/clamav-urHr6u/clamav-0.103.3+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -D_FILE_OFFSET_BITS=64' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fdebug-prefix-map=/build/clamav-urHr6u/clamav-0.103.3+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -D_FILE_OFFSET_BITS=64' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now -Wl,--as-needed' '--with-dbdir=/var/lib/clamav' '--sysconfdir=/etc/clamav' '--disable-clamav' '--disable-unrar' '--enable-milter' '--enable-dns-fix' '--with-libjson' '--with-system-libmspack' '--with-libcurl=/usr' '--with-gnu-ld' '--with-systemdsystemunitdir=/lib/systemd/system' 'build_alias=x86_64-linux-gnu' 'OBJCFLAGS=-g -O2 -fdebug-prefix-map=/build/clamav-urHr6u/clamav-0.103.3+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security'
sizeof(void*) = 8
Engine flevel: 124, dconf: 124

--- data dir ---
total 626904
-rw-r--r-- 1 clamav clamav   1438720 Mar  8  2021 bytecode.cld
drwxr-xr-x 1 clamav clamav      4096 Aug 15  2019 clamav-3d4e0a7c395899723db1e57cc2909f46.tmp
-rw-r--r-- 1 clamav clamav 176437760 Sep 24 12:08 daily.cld
-rw-r--r-- 1 clamav clamav        69 Sep 24 11:08 freshclam.dat
-rw-r--r-- 1 clamav clamav 464053248 Sep 16 21:01 main.cld
-rw------- 1 clamav clamav        69 Sep  5 08:00 mirrors.dat

-- System Information:
Debian Release: 10.10
  APT prefers oldstable-updates
  APT policy: (500, 'oldstable-updates'), (500, 'oldstable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.19.0-17-amd64 (SMP w/1 CPU core)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages clamav-daemon depends on:
ii  adduser                3.118
ii  clamav-base            0.103.3+dfsg-0+deb10u1
ii  clamav-data            99:99
ii  debconf [debconf-2.0]  1.5.71
ii  dpkg                   1.19.7
ii  libc6                  2.28-10
ii  libclamav9             0.103.3+dfsg-0+deb10u1
ii  libcurl4               7.64.0-4+deb10u2
ii  libncurses6            6.1+20181013-2+deb10u2
ii  libsystemd0            241-7~deb10u8
ii  libtinfo6              6.1+20181013-2+deb10u2
ii  lsb-base               10.2019051400
ii  procps                 2:3.3.15-2
ii  ucf                    3.0038+nmu1
ii  zlib1g                 1:1.2.11.dfsg-1

Versions of packages clamav-daemon recommends:
ii  clamdscan  0.103.3+dfsg-0+deb10u1

Versions of packages clamav-daemon suggests:
ii  apparmor      2.13.2-10
pn  clamav-docs   <none>
pn  daemon        <none>
pn  libclamunrar  <none>

-- debconf information:
  clamav-daemon/ScanOnAccess: false
  clamav-daemon/LogSyslog: false
  clamav-daemon/ScanSWF: true
  clamav-daemon/ScanMail: true
  clamav-daemon/MaxThreads: 12
  clamav-daemon/FollowFileSymlinks: false
  clamav-daemon/SelfCheck: 3600
  clamav-daemon/FollowDirectorySymlinks: false
  clamav-daemon/MaxEmbeddedPE: 10M
  clamav-daemon/ScanArchive: true
  clamav-daemon/TCPAddr: any
  clamav-daemon/TcpOrLocal: UNIX
  clamav-daemon/OnAccessMaxFileSize: 5M
  clamav-daemon/StatsTimeout: 10
  clamav-daemon/debconf: true
  clamav-daemon/MaxHTMLNoTags: 2M
  clamav-daemon/BytecodeTimeout: 60000
  clamav-daemon/FixStaleSocket: true
  clamav-daemon/BytecodeSecurity: TrustSigned
  clamav-daemon/MaxHTMLNormalize: 10M
  clamav-daemon/LogTime: true
  clamav-daemon/LogFile: /var/log/clamav/clamav.log
  clamav-daemon/MaxConnectionQueueLength: 15
  clamav-daemon/User: clamav
  clamav-daemon/AddGroups:
  clamav-daemon/LogRotate: true
  clamav-daemon/ReadTimeout: 180
  clamav-daemon/AllowAllMatchScan: true
  clamav-daemon/DisableCertCheck: false
  clamav-daemon/MaxDirectoryRecursion: 25
  clamav-daemon/StreamMaxLength: 25
  clamav-daemon/StatsHostID: auto
  clamav-daemon/LocalSocket: /var/run/clamav/clamd.ctl
  clamav-daemon/Bytecode: true
  clamav-daemon/LocalSocketMode: 666
  clamav-daemon/StatsPEDisabled: true
  clamav-daemon/ForceToDisk: false
  clamav-daemon/StatsEnabled: false
  clamav-daemon/LocalSocketGroup: clamav
  clamav-daemon/TCPSocket: 3310
  clamav-daemon/MaxScriptNormalize: 5M
  clamav-daemon/MaxZipTypeRcg: 1M


More information about the Pkg-clamav-devel mailing list