Comment savoir si mon serveur est déjà compromis en raison du bogue Shellshock?
Non. C'est l'idée d'une vulnérabilité de sécurité. Si vous deviez cliquer sur Laissez entrer les crackers? OK / Annuler ce ne serait pas vraiment une vulnérabilité.
Vous aurez peut-être de la chance de vérifier les journaux de vos vecteurs d'attaque, mais étant donné que de nombreux services sont vulnérables et qu'ils ne consignent pas tous à chaque accès, il n'est probablement pas possible de trouver de manière concluante une attaque.
S'il a été compromis, y a-t-il un dossier particulier où je devrais rechercher les fichiers malveillants?
Non, un fichier malveillant pourrait se trouver n'importe où.
Les rootkits communs s'installent dans /root
ou /
ou /tmp
ou l'un des chemins binaires, mais ils pourraient vraiment être n'importe où. Ils peuvent avoir un nom similaire à un vrai service ou quelque chose d '"important" ressemblant à " IPTables
" ou " kernel-bin
" mais ils peuvent aussi être des chaînes de caractères aléatoires ou le même nom qu'un véritable binaire (juste dans un chemin différent). Vous pouvez repérer un rootkit vraiment évident qui se charge /etc/rc.local
ou établit des connexions via netstat -neopa
. Recherchez les noms de processus suspects dans top -c
.
Un rootkit moins courant et beaucoup plus difficile à trouver remplace une bibliothèque ou se charge lui-même en tant que bibliothèque shim et intercepte les appels système. Ceci est presque impossible à trouver à moins que vous ne stracez / ltracez chaque élément en cours d'exécution sur votre système et que vous compariez le comportement avec le comportement attendu d'un système ou d'un code source connu.
Il serait plus rapide, plus facile et plus concluant de simplement recharger le système.
À quoi ressemble un fichier malveillant?
Probablement comme tout autre binaire ou bibliothèque ELF classique. Il peut également s'agir d'un script.
En conclusion, si vous pensez qu'il y a une possibilité que votre système ait été compromis, traitez-le comme s'il avait été compromis et prenez les mesures nécessaires.
bash
installés et un câble réseau branché, non?shellshock n'est pas un ver donc il n'y a pas de fichiers à rechercher. Shellshock est un moyen d'attaquer un réseau pour y entrer. Une fois à l'intérieur, qui sait ce que fera l'attaquant.
la source
is there a particular folder where I should look for malicious files
.J'ai vu une tentative d'exploiter le bogue, qui installerait un bot IRC en tant que
/var/tmp/x
. Mais en général, il n'y a pas de fichiers particuliers à rechercher, car ils peuvent être n'importe où ou nulle part.Si vous avez été compromis par le serveur Web, tout nouveau fichier ou processus appartenant à l'utilisateur du serveur Web serait suspect.
Dans le cas où un attaquant utilise d'abord le
bash
bogue pour entrer dans le système et ensuite une vulnérabilité locale à devenirroot
, il pourrait devenir presque impossible à repérer.Regardez également cette question similaire .
la source
Je voudrais faire écho à la réponse de suprjami et dire que si votre système est vulnérable, vous devez le traiter comme compromis.
Si vous exécutez apache, vous pouvez consulter les journaux des tentatives d'intrusion Shellshock avec la commande suivante:
Cette commande extrait toutes les lignes contenant "cgi" des journaux d'accès d'Apache (par défaut appelés access_log, access_log.1, access_log.2 etc.), puis les redirige vers egrep avec l'expression régulière.
(Source: http://linux.slashdot.org/story/14/09/24/1638207/remote-exploit-vulnerability-found-in-bash )
la source
Puisqu'il existe plusieurs vecteurs d'attaque pour Shellshock, certains d'entre eux étant encore inconnus du grand public ou causés par un script CGI personnalisé, il n'y a aucun moyen précis de savoir si vous êtes compromis ou non.
En plus de l'approche habituelle "voyons si certains fichiers système ont changé ou si quelque chose d'autre suspect s'est produit récemment", vous pouvez garder un œil sur le comportement de votre serveur.
netstat
des connexions réseau étranges ou desps aux
processus que vous ne reconnaissez pas?Si vous disposez d'une surveillance appropriée de l'intégrité du serveur (telle que
Zabbix
), elle peut également vous aider à détecter les failles de sécurité. Vous pouvez également comparer les sommes MD5 / SHA des fichiers système à une bonne sauvegarde connue.Agissez simplement comme votre serveur a été compromis et étudiez tout ce à quoi vous pouvez penser.
la source
J'ai juste eu le plaisir de nettoyer un ancien système Plesk compromis. La première chose qui l'a révélé était de nombreux processus qui ont commencé à écouter un certain nombre de ports et d'autres essayant de télécharger du code à partir du serveur de numérisation d'origine.
Après les journaux, j'ai découvert que le trou ultime était le
cgi_wrapper
script, quelque chose qui était censé protéger et protéger le système est ce qui a réellement déchiré le trou dans la protection. Voici quelques-unes des lignes de journal des sondes et de l'attaque réussie:Ce sont les lignes du access_log, car ce n'est qu'un exemple, notez le 200 sur deux des lignes tandis que les autres échouent avec 404. Vous n'avez pas à vous soucier des lignes qui ont un 404 car elles n'ont pas réussi, ceux avec 200 l'ont fait cependant. Le schéma de ces attaques est toujours le même: 1. trouver un script cgi vulnérable utiliser un exploit shellshock pour télécharger et exécuter un script perl, supprimer à nouveau le script perl. Le script perl va en fait télécharger certains fichiers sources (tgz), les compiler et les exécuter, à partir de ce que j'ai vu, ils incluent au moins une porte dérobée et un mécanisme de mise à jour automatique, ainsi que ce qui ressemble à des exploits pour essayer d'obtenir des privilèges d'exécution élevés. Tous les scripts initiaux sont réellement exécutés en tant qu'utilisateur fourni par l'encapsuleur tandis que les services ultérieurs sont démarrés avec un PPID de 1 (démarré à partir du processus racine)).
Et voici les lignes error_log correspondantes:
Fichiers téléchargés sur / tmp Comme on pourrait le deviner, je n'ai pas le fichier bot.pl car il est supprimé tout de suite.
Après un certain temps, j'ai remarqué des connexions ssh de divers endroits comme la Chine qui ne visitent généralement pas beaucoup notre serveur. J'ai corrigé bash comme mesure d'urgence (cela aurait été bien d'avoir des sources corrigées disponibles sur le site Web de la FSF et pas seulement les sources et les fichiers de correctifs vraiment anciens (dont l'un ne s'appliquait pas correctement au début). Le système est prévu pour une essuyez maintenant, donc si quelqu'un cherche autre chose à propos de l'attaque, vous pouvez demander, mais faites-le bientôt.
la source
Cette réponse n'est pas spécialement liée à Shellshock mais pour tout système que vous pensez compromis
deuxième remarque: vous ne pouvez pas être sûr d'avoir récupéré d'un système compromis vers le système racine. Votre seule action est de détruire et de réapprovisionner le système
Essayez d'obtenir une version statique
rpm
et exécutez la commanderpm --verify --all
. Il vous indiquera quels fichiers appartenant à un package ont été modifiés. Mais comme vous pouvez l'exécuter sur un système compromis, vous pouvez ne pas faire entièrement confiance au résultat. Ensuite, vous pouvez simplement faire unrpm -qa
pour obtenir la liste des packages, recréer un autre système avec les mêmes versions de packages, puis unfind / -type f |xargs -r -n 100 md5sum |sort
sur les deux systèmes et voir ce qui diffère. De plus, si vous gérez correctement votre système (c'est-à-dire que vous n'installez rien manuellement en dehors de / opt ou / usr / local / bin ou d'un autre emplacement non géré), vous pouvez rechercher tous les fichiers de votre système qui n'appartiennent pas à un package, avecfind / -type f -exec rpm -qf {} \;
. Il devrait afficher des erreurs pour les fichiers inconnus. Je vous laisse ne pas montrer les points positifs comme exercice ;-)Pour faire de même périodiquement avec la preuve cryptographique, il existe un outil appelé
Tripwire
que vous pouvez toujours trouver en version gratuite. Il est vieux mais fait son travail. Une alternative plus récente estAIDE
, mais il n'utilisait pas de crypto quand je l'ai regardé il y a des années.Il existe des outils qui peuvent vous aider. Par exemple, recherchez le package
rkhunter
. Il analysera votre ordinateur à la recherche de kits d'outils racine connus et de fichiers exploités.De toute évidence, ces outils auraient dû être installés et configurés avant que le système ne soit compromis, et ces outils peuvent également être ciblés si votre système est correctement piraté pour accéder à la racine. De plus, ces outils peuvent être très intensifs et ralentir votre système.
la source
La seule façon de savoir si votre serveur est compromis est d'avoir quelque part une signature de vos fichiers et d'y comparer vos fichiers actuels. Néanmoins, vous pouvez voir si vous êtes vulnérable.
la source
Comment savoir si votre box Linux est compromise.
Si si retourne
tu es.
Pour exécuter la mise à jour, sous root, exécutez la commande suivante
la source
yum
et non un autre gestionnaire de packages.Vous pouvez vérifier si vous êtes vulnérable en exécutant les commandes suivantes (code fourni par CSA). Ouvrez une fenêtre de terminal et entrez la commande suivante à l'invite $:
Si votre bash n'est PAS à jour, il imprimera:
Si votre bash est à jour, vous ne verrez que:
Plus de détails sont disponibles derrière ce lien .
la source