Une technique souvent utilisée par les crackers informatiques, et les voleurs éprouvés, consiste à effacer ses empruntes digitales de la scène du crime. Celà consiste habituellement à effacer ou modifier les logs stockés sur l'ordinateur et qui les exposeraient en cas d'examen consciencieux. Des logs non protégés rendront impossibles la vérification du système dans la plupart des cas. Quand un cracker prend le contrôle d'un système, il prend également le pouvoir de lire, modifier et effacer n'importe quel log.
Aller plus loin
- L'article (32 clics)
- Modular Syslog (26 clics)
# C'est pas mal...
Posté par VACHOR (site web personnel) . Évalué à 10.
Un problème, cependant :
"You can rotate logs, but you have to put them back together to make the checks. Specifically, do not erase old logs."
Faut bien enlever les vieux logs un jours, quand même ! Surtout sur un système en prod qui est bien chargé...
Un truc étrange aussi :
"Take care of key file permissions; the /var/ssyslog directory should be mode 0700 and all files inside 0600"
Si le hacker est root pour modifier les logs, il peut aller changer les permissions ???
Il faut surement un truc en plus pour chiffrer le fichier de clefs sur un password. Après il faut bien sur se souvenir du password...
[^] # Re: C'est pas mal...
Posté par kael . Évalué à 8.
bon par contre pour l'espace de stoquage et les arbres c'est pas top.....
:)
[^] # Re: C'est pas mal...
Posté par freePK . Évalué à 3.
PK
[^] # Re: C'est pas mal...
Posté par simon . Évalué à 1.
[^] # Re: C'est pas mal...
Posté par Benoit Rousseau . Évalué à 0.
Le probleme c'est qu'il faut monopoliser le graveur en permanence, et ca c'est plus ennuyeux
# syslog-ng
Posté par pappy (site web personnel) . Évalué à 10.
http://www.balabit.hu/en/downloads/syslog-ng/(...)
Aller voir l'excellente doc en Français :
http://www.hsc.fr/ressources/breves/syslog-ng.html(...)
[^] # Re: syslog-ng
Posté par Mathieu Dessus (site web personnel) . Évalué à 9.
[^] # Re: syslog-ng
Posté par Manu (site web personnel) . Évalué à 6.
Tu changes le niveau de log des messages de netfilter et tu ajoutes la bonne ligne dans ton syslog.
Moi j'ai mis le niveau alert qui ne semble quasiment pas utilisé.
[^] # Re: syslog-ng
Posté par Tame . Évalué à 0.
[^] # Re: syslog-ng
Posté par LeAg . Évalué à 3.
cf. man syslog.
Ils sont la, alors autant s'en servir !!!
# L'article est très technique
Posté par Sébastien Koechlin . Évalué à 10.
Ça ne règle pas le problème de l'effacement des logs. Une fois que les lignes ont disparu, il est toujours impossible de savoir ce qu'il s'est produit.
On n'a pas encore fait mieux que l'universitaire (j'ai oublié son nom) traquant Pengo (le pirate allemand) avec une batterie d'imprimantes matricielles ;-)
[^] # Re: L'article est très technique
Posté par DPhil (site web personnel) . Évalué à 10.
[^] # Re: L'article est très technique
Posté par Thomas Cataldo (site web personnel) . Évalué à 10.
[^] # Re: L'article est très technique
Posté par Jerome Demeyer . Évalué à 10.
Sur le serveur de log, on sait quelle machine écrit quoi, car chaque ligne est précédée d'un timestamp et d'un hostname.
Un tel serveur de logs ne devrait pas proposer d'autres services (meme un ssh) et on ne pourrait s'y connecter que directement (sur la console).
Là, on à déjà un système bien sécurisé.
[^] # Re: L'article est très technique
Posté par Jiquem . Évalué à 10.
C'est comme pour tripwire, il faut partir d'une basse saine avant d'installer une telle configuration. Sinon ca ne sert à rien du tout.
[^] # Re: L'article est très technique
Posté par Jerome Demeyer . Évalué à -3.
[^] # Re: L'article est très technique
Posté par woof . Évalué à -2.
pas si c'est la dernière brique du dernier étage ;)
quoi? stupide?
rooh, -1
[^] # Re: L'article est très technique
Posté par Henri . Évalué à 10.
[^] # Re: L'article est très technique
Posté par Laurent PELLISSIER . Évalué à 9.
[^] # Re: L'article est très technique
Posté par Sébastien BLAISOT . Évalué à 3.
parce que si un pirate a pris la main sur ta machine qui a un "*.* @logger", qu'est-ce qui l'empche de générer un déni de service en lancant tout plein de logs sur ton serveur de logs ?
voir meme, depuis l'exterieur (i.e. il a encore rien pénétré), il fait générer du log à une machine (plein de mauvaise connection ou passwd par ex).
la machine innonde le serveur de logs, qui part en rideaux, et qui ne voit rien de la suite de l'attaque, notamment le meilleur moment, celui de la pénétration (sans arriere pensée aucune, bien entendu).
De plus, le problème avec la majorité des syslogs, c'est que soit tu empeche tout le monde de te balancer des logs, soit tu autorise tout le monde a t'en envoyer. La solution que tu décris ne peux donc etre REELLEMENT utilisée en prod et secure QUE si tu protege en plus ton serveur de logs par un firewall.
suis-je clair ?
[^] # Re: L'article est très technique
Posté par Jerome Demeyer . Évalué à -5.
Afin de limiter les répercussion des dénis de services, plusieurs propositions :
- Mettre pas mal de disques sur la bécane :)
- faire un cron qui checke régulièrement la taille des logs, et qui les tournent/gzip dès qu'elles atteignent 10Megs (par exemple)
- les logs gzippés doivent du coup être archivées dans un répertoire à part, sur un filesystème distinct
- ce filesystem distinct est automatiquement sauvegardé sur bande dès qu'il dépasse un quota d'utilisation (par exemple de 60%). les logs archivées sur bandes sont supprimées. Les paranoïaques pourront archiver sur WORM¹ de 5.2Go.
d'autres améliorations peuvent être apportées, mais le gzip divise par 100 la taille d'une log...
1-WORM = Write Once, Read Many - c'est un peu comme un CDR de 1.3, 2.6 ou 5.2 Go.
[^] # Re: L'article est très technique
Posté par Sébastien BLAISOT . Évalué à 3.
1) quand syslog ecoute sur le réseau pour qu'on lui envoie des logs (cas du serveur de logs), il ecoute TOUT LE MONDE. c'est a dire que TOUTE machine qui a acces au serveur de logs peut lui envoyer des logs qu'il stockera.
Pour limiter cela et pour choisir quelles machines peuvent envoyer des logs au serveur de logs, on peut soit utiliser un firewall (sur le serveur de logs ou mieux, entre le serveur de logs et le reste), soit utiliser syslog en mode inetd, en utilisant un TCPwrapper.
De plus, tes adresses pouvant etre spoofées, et comme on est en UDP et qu'il n'y a pas de retour de connection, ce n'est qu'une protection limitée.
2) le serveur peut etre innondé de logs, ce qui générera un DoS.
un DoS ne se fait en général pas en 20 ans, mais tres rapidement.
- mettre beaucoup de disque, c'est retarder l'échéance, mais ca ne résoud en rien le pb. le DoS prendra juste un peu plus de temps.
- si on souhaite utiliser un script en crontab, alors il doit etre lancé tres souvent, ce qui peut impliquer d'autres problèmes.
- gzipper un log, c'est long et ca utilise plein de ressources. si tu le fait alors meme que tu es en train de recevoir une enoooorme quantité de logs, ca va pas arranger les choses et ca risque meme d'accelerer ton DoS
Evidemment, avec une machine 32 procs <mettez ici le processeur le plus puissant que vous connaissez>, 20Go de RAM et 200To de disque dur, connecté au serveur qui balance les logs par un triple lien gigabit, ca devrait deja limiter les DoS, mais tout dépend aussi du budget qu'on s'autorise.
[^] # Re: L'article est très technique
Posté par Jerome Demeyer . Évalué à 2.
2- Les DoS sont très difficiles à gérer. Je propose des solutions (d'ailleurs je ne comprend pas bien la mojorité de [-] que je me suis pris pour les proposition, mais bon...), tu poses à ces solutions des limites réelles, c'est bien. J'aimerais savoir ce que tu proposes, toi qui semble avoir réfléchit au problème, parce que moi je devient à court ?
Je pense que d'une part les DoS sur les logs sont assez rares, et d'autre part vaut t'il mieux qu'un serveur de logs tombe plutôt que ce soit le serveur web (ou autre). En tant qu'admin, on ne supporterais pas la moindre bécane en rade, mais le client ne préfèrerait il pas que les frontaux restes debouts, pour assurer la continuité du service ?
[^] # Re: L'article est très technique
Posté par Olivier Jeannet . Évalué à 3.
Je ne comprends pas ta remarque, tu as l'air de ne pas avoir compris le système. Le système qui est envisagé empêche d'effacer des lignes dans les logs, sinon le "check" retourne une erreur, puisque au départ on a une clef (secrète) et ensuite cette clef est recalculée avec chaque nouvelle ligne. S'il manque une ligne (ou plusieurs), on obtient une clef différente à la fin.
# Log centralisés
Posté par Euclide (site web personnel) . Évalué à 4.
et d'ajouter
*.* logserver en tete du fichier de conf de syslog.
Bon il faut évidemment que la machine logueuse soit protégée mais ca c'est pas trop compliqué.
[^] # Re: Log centralisés
Posté par Sébastien BLAISOT . Évalué à 6.
or, ce qu'il manque le plus souvent, c'est un admin qui mette en place un outil de filtrage/tri des logs et qui passe le temps nécessaire à étudier le résultat.
# autre methode
Posté par tfing . Évalué à 10.
il y a plusieurs methodes pour cela :
- soit en utilisant chattr
- soit en utilisant les patchs du kernel LIDS (http://www.lids.org(...))
de cette maniere, un mechant pirate qui aurait pris le controle sur votre systeme ne pourrait pas enlever ses traces, seulement en ajouter (niark, niark !)
[^] # Re: autre methode
Posté par Jerome Demeyer . Évalué à 7.
Par contre, mettre des attributs append_only (-a) ou immutable (-i) sur des fichiers contenus dans un chroot ou un jail spécifique à un daemon, prison ne contenant ni utilisateur root ni de binaire chattr, devient réellement intéressant, voire recommandé.
C'est même la meilleure facon de faire (à mon avis, que de préparer un filesystem chrooté par daemon sur son serveur. De plus, avec un named pipe pour écrire les logs, celles ci ne seront meme pas visibles pour le daemon, donc pour le pirate ayant réussi à faire un buffer overflow...
[^] # Re: autre methode
Posté par Mathieu Dessus (site web personnel) . Évalué à 7.
Par contre c'est tres chiant, car pour supprimer (ou faire tourner) ces fichiers de logs, il faut rebooter et aller sur la console !
# imprimante
Posté par dcantin . Évalué à 5.
[^] # Re: imprimante
Posté par f l . Évalué à 2.
[^] # Re: imprimante
Posté par woof . Évalué à 10.
*SCRIITCH RIITCKHREIIIITCH SCRIIIKTCHKK RIIIGTCKHCHHH* etc .. ;)
[^] # Re: imprimante
Posté par gle . Évalué à 3.
En se limitant à ne logguer sur ce support que les problèmes graves comme une attaque en cours, on doit avoir de quoi voir venir non ?
[^] # Re: imprimante / GNI ?
Posté par Nico . Évalué à -2.
[^] # Re: imprimante / GNI ?
Posté par gle . Évalué à 5.
Un CD-R, ou une imprimante, ça a l'immense avantage que tu peux écrire dessus, mais pas effacer, donc la trace est inaltérable.
Parceque la méthode décrite dans l'article permet de savoir si les logs ont été altérés, mais une fois qu'on sait que les logs ont été altérés, on n'en sait pas plus sur ce qui a bien pu se passer. Bref, c'est pas vraiment instructif pour savoir où était la faille et comment patcher le trou.
Hors-sujet : Pourquoi mon post au-dessus est à -1/12 ? Yeupou n'a finalement pas tort.
[^] # Re: imprimante / GNI ?
Posté par Nico . Évalué à 8.
Pour un CD, je vois mal graver 1 ligne de log ( 1 session CD ) toutes les secondes !
Y'a quand meme des problemes de synchro !
# Pas une idée toute neuve...
Posté par Le_Maudit Aime . Évalué à 5.
Si vous voulez une description d'une usine à gaz qui fasse tout cela d'une manière sécurisée.
cf. http://www.counterpane.com/secure-logs.html(...)
# Commentaire supprimé
Posté par Anonyme . Évalué à 10.
Ce commentaire a été supprimé par l’équipe de modération.
[^] # Re: Les logs au départ c pas pour la sécurité a long terme
Posté par Aza . Évalué à 4.
Le vrai problème que pose AMHA les logs ca n'est pas les logs en eux mêmes c'est qu'il faut les lires et savoir quoi logguer. Logguer plein de trucs ca permet certes de produire des beaux graphiques mais franchement combien de boites ont une politique efficace de verification des logs et savent s'organiser en cas de problème pour voir vraiment ce qui a été et ce qui n'a pas été ? Tres peu a mon avis.
Si un gus fait un troyen qui utilises des requetes basé sur les ports reservés au DNS pour passer le firewall (je crois que nameserver c'est le port 42 mais j'en suis plus sur du tout) il a peut de chance qu'on le voit : franchement qui regarde les logs d'un DNS ?
Bref le problème encore une fois de plus est humain, pour la sécurité des logs comme dit plus haut, il existe déja des solutions techniques.
[^] # Re: Les logs au départ c pas pour la sécurité a long terme
Posté par Benoît Sibaud (site web personnel) . Évalué à 2.
nameserver 42/tcp name # IEN 116
domain 53/tcp nameserver # name-domain server
domain 53/udp nameserver
[^] # Commentaire supprimé
Posté par Anonyme . Évalué à 2.
Ce commentaire a été supprimé par l’équipe de modération.
# Une alternative...
Posté par j . Évalué à 8.
http://metalog.sf.net(...)
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.