Context: Pe Debian, la întărirea PHP, am dezactivat și șters câteva module PHP nefolosite: de exemplu, pentru wddx am șters:
- /etc/php/7.3/*/conf.d/20-wddx.ini
- /etc/php/7.3/mods-available/wddx.ini
- /usr/share/php7.3-xml/xml/wddx.ini
- /usr/lib/php/*/wddx.so
Când am făcut upgrade, modulele PHP au reapărut în /usr/share/php7.3-xml/xml/wddx.ini și /usr/lib/php/*/wddx.so, deși dpkg nu a adăugat corect configurația de „activare” în /etc (mulțumesc pentru întreținere sau dpkg pentru verificarea asta!):
Nu se înlocuiește fișierul de configurare șters /etc/php/7.3/mods-available/wddx.ini
AVERTISMENT: Fișierul ini al modulului wddx nu există în /etc/php/7.3/mods-available
Întrebare: Există o modalitate, poate cu dpkg-divert sau un declanșator local dpkg, de a-i spune lui dpkg să nu scrie din nou unele fișiere sau să le ștergă după ce sunt scrise?
P.S.
- mai multe module PHP sunt împachetate în php7.3-xml și am nevoie de unul dintre ele, așa că nu este posibil să șterg întregul pachet Debian.
- suprafața de atac este deja foarte redusă, având în vedere că modulele PHP nu sunt activate, este o rafinare să ștergeți și fișierul .so, împiedicând un atacator uman și poate învingând un script malware automat prost, chiar și cu drepturi de root – evident că ar trebui să fie doar o parte a apărării globale.
- este posibil să ștergeți manual aceste fișiere după upgrade sau să utilizați un instrument de gestionare a configurației (Ansible, Puppet, Dockerâ¦), întrebarea este despre un mod integrat de a face acest lucru cu dpkg.