Attaques/DoS/stop-services-local

From aldeid
Jump to navigation Jump to search

Stopper des services en local

Tuer des processes

L'objectif, du point de vue de l'attaquant, est de tuer un service afin qu'il ne puisse plus être délivré aux utilisateurs légitimes. Par exemple, un attaquant pourrait stopper le service Apache (site Web) d'un site marchand afin que les utilisateurs ne puissent plus effectuer d'achats en ligne sur ce site.

Si un attaquant a un accès physique à la cible, et qu'il possède un compte privilégié, il pourra aisément stopper des services. Sur une machine Linux, la liste des proccess en cours s'obtient par la commande ps. L'exemple qui suit montre la liste des processes qui contiennent la chaîne mysql :

# ps aux | grep mysql
root      4359  0.0  0.1   3904  1296 pts/0    S    18:26   0:00 /bin/sh /usr/lo
cal/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/var --pid-file=/usr/local/m
ysql/var/laptop-deb.pid
mysql     4465  0.0  0.7  35864  7184 pts/0    Sl   18:26   0:00 /usr/local/mysq
l/libexec/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/var --use
r=mysql --log-error=/usr/local/mysql/var/laptop-deb.err --pid-file=/usr/local/my
sql/var/laptop-deb.pid --socket=/tmp/mysql.sock --port=3306
root      6341  0.0  0.0   3144   784 pts/0    S+   19:03   0:00 grep mysql

Les chiffres 4359, 4465 et 6341 désignent le numéro d'identifiant de chaque process (ProcessID en anglais, ou PID).

La commande kill permet de tuer un processus. L'exemple suivant montre comment tuer le processus mysql ayant pour PID 4465 :

# kill 4465
# ps aux | grep mysql
root      6575  0.0  0.0   3144   768 pts/0    R+   19:10   0:00 grep mysql
Note
Si kill permet de tuer tous les processus, la plupart des services peuvent être stoppés plus proprement, par la syntaxe /chemin/binaire stop. Ainsi, dans l'exemple ci-dessus, le service mysql aurait pu être stoppé par la commande /etc/init.d/mysql stop.

Reconfigurer la machine

Dans l'exemple précédent, si le service MySQL est démarré à partir d'un script placé dans le répertoire /etc/init.d/, l'attaquant pourrait reconfigurer la machine afin de supprimer la lancement du service au démarrage de la machine, et ainsi rendre son attaque persistente.

La commande suivante permet de supprimer un service au démarrage, à condition que celui-ci soit lancé à partir de /etc/init.d/ :

# update-rc.d -f mysql remove
Removing any system startup links for /etc/init.d/mysql ...
  /etc/rc0.d/K08mysql
  /etc/rc2.d/K08mysql
  /etc/rc2.d/S90mysql
  /etc/rc3.d/K08mysql
  /etc/rc3.d/S90mysql
  /etc/rc5.d/K08mysql
  /etc/rc5.d/S90mysql
  /etc/rc6.d/K08mysql

Crasher des processes

Si un service de la machine est vulnérable à une attaque de type DoS, un attaquant peut exploiter cette faille dans l'objectif de crasher le service.

INCOMPLETE SECTION OR ARTICLE
This section/article is being written and is therefore not complete.
Thank you for your comprehension.

Les préconisations

  • Protéger physiquement les serveurs et machines sensibles
  • Maintenir son système à jour afin d'éviter que des failles référencées ne soient laissées ouvertes
  • Appliquer une politique de suivi de privilèges, afin de ne pas octroyer aux utilisateurs des droits inappropriés
  • Contrôler quotidiennement l'intégralité du système afin de tracer toute éventuelle modification de la configuration.