Wanneer een systeem gehackt is, kan het zijn dat de bestandsrechten en -machtigingen zijn gewijzigd. Het is dan belangrijk om deze goed in te stellen om verdere toegang door de hacker te voorkomen en de integriteit van het systeem te herstellen. Een goed begin is om het root-account te gebruiken om de bestandsrechten te wijzigen, omdat dit account de hoogste machtigingen heeft. Het is belangrijk om de rechten alleen toe te kennen aan gebruikers die deze nodig hebben om hun werk te doen. Bijvoorbeeld, als een webserver moet worden hersteld, is het niet nodig om de volledige toegang te verlenen aan een databasebeheerder. Daarnaast is het belangrijk om ervoor te zorgen dat de bestanden niet schrijfbaar zijn door onbevoegde gebruikers. Dit kan worden bereikt door het gebruik van de ‘chmod’-opdracht om de bestandsrechten te wijzigen naar de juiste instellingen. Het kan ook nodig zijn om gebruikersaccounts te verwijderen en wachtwoorden te wijzigen om te voorkomen dat de hacker opnieuw toegang krijgt.
#!/bin/bash
echo "Setting permissions..."
cd
username=$(pwd | awk -F'/' '{print $3}')
cd --
chown -R $username. ~/domains/*/public_html
[ -f ~/chmod.log ] && cat ~/chmod.log >> ~/chmod.all.log
> ~/chmod.log
# set directory permissions
echo "Directories found without chmod 755:" >> ~/chmod.log
find ~/domains/*/public_html -type d -not -perm 755 -print >> ~/chmod.log
find ~/domains/*/public_html -type d -not -perm 755 -exec chmod 755 {} +;
# set file permissions
echo "Files found without chmod 644:" >> ~/chmod.log
find ~/domains/*/public_html -type f -not -perm 644 -print >> ~/chmod.log
find ~/domains/*/public_html -type f -not -perm 644 -exec chmod 644 {} +;
# protect configuration file
for i in $(find ~/domains/*/public_html -maxdepth 5 -type f \( -name "wp-config.php" -o -name ".env" -o -name "env.php" -o -name "config*.php" -o -name "parameters.php" -o -name "settings*.php" \) -not -perm 600)
do
grep -q -l $username\_ $i && chmod 600 $i
done
cat ~/chmod.log
echo
echo "Log: ~/chmod.log"
echo "Done"
# EOF
Malware juist en goed verwijderen
Niet al deze files zijn afkomstig van malware, maar dit moet handmatig nagelopen worden. Om de bestanden te verwijderen die geïnfecteerd zijn kan via dit:
find ~/domains/*/public_html/wp-content/uploads -type f -name "radio.php" -delete
find ~/domains/*/public_html/wp-content/uploads -type f -name "wp-the1me.php" -delete
find ~/domains/*/public_html/wp-content/uploads -type f -name "wp-scr1pts.php" -delete
find ~/domains/*/public_html/wp-content/uploads -type f -name "wp-l0gin.php" -delete