Le piratage de sites web : motivations des pirates

Transcription

Le piratage de sites web : motivations des pirates
Le piratage de sites web : motivations des
pirates,conséquences pour les entreprises
Arnaud Jacques
Le serveur web : une donnée sensible du système d'information
Le site internet est la vitrine sur le web de chaque entreprise. Il informe les clients, les fournisseurs, les futurs salariés
sur la société et participe à l'image et la notoriété de votre structure et de vos marques.
C'est pourquoi, les sites web ont toujours été des éléments sensibles de la sécurité. En effet, par définition, un site web
est un serveur public. N'importe qui dans le monde est sensé pouvoir y accéder. Y compris les hackers.
Les sites web sont donc continuellement sollicités en terme de tentatives de piratage. Pour s'en convaincre, il suffit de
regarder les logs de votre serveur web : Les tentatives d'accès à des pages web "pas très orthodoxes" sautent au yeux.
Et il y en a une multitude dans chaque tranche de 24 heures...
Exemple de recherche de failles applicatives dans les logs d'un site web.
Le piratage d'un serveur web : Un acte simple
Sans rentrer dans de purs détails techniques, il faut savoir qu'il existe des trous de sécurité dans la plupart des logiciels
applicatifs web, tels que Zope, SPIP ou Joomla par exemple.Certains logiciels de piratage sont dédiés à la recherche de
ce type de failles.
Généralement, un tel outil peut détecter plusieurs centaines de failles dans une multitude de logiciels applicatifs web.
L'utilisation de ces outils est simple : Il suffit de scanner tout ou partie des adresses IP d'Internet afin de trouver des
failles dans les serveurs web.
Une fois la faille trouvée, il suffit d'appliquer la méthode de son exploitation pour accéder aux fichiers stockés sur le
disque dur du serveur web. La méthode en question peut être de l'injection SQL, de l'inclusion de fichier, de l'intrusion
FTP, de l'intrusion du service web, de l'URL poisoning, etc. Étant donné que des scanners de failles tournent en
permanence sur Internet, il faut bien comprendre que si votre site web comporte une faille de sécurité, elle sera trouvée
et exploitée rapidement !
Pour allez un peu plus loin, nous vous conseillons ces statistiques détaillées sur les attaques de serveurs web.
Ce qui a changé
Depuis quelques années, les pirates informatiques qui s'attaquent aux sites web ont changé de comportement. Ils ne
modifient plus les pages web en signant leur réalisation (defacing en anglais). Au contraire, ils ont tendance à rester le
plus invisible possible sur le site afin d'y rester le plus longtemps possible. Comment ? Sur la globalité des infections de
sites web, deux grands types d'infection ressortent :
La modification des pages web : Elle est invisible en terme de rendu. Elle est elle même constituée de deux types de
modifications :
L'ajout d'un iframe pointant vers un site web hostile, contrôlé par le pirate.
L'ajout d'un Javascript hostile.
Le dépôt d'un fichier hostile sur le serveur.
Voyons en détail ces deux types d'infection.
La modification des pages web
En ajoutant un iframe dans une page web du serveur, le pirate peut obtenir des informations sur les visiteurs du site web
infecté.
Par exemple :
Leur adresse IP, donc à peu de chose prêt leur zone géographique
Leur configuration (résolution graphique, etc.)
En déduire les statistiques de fréquentation de site web. Cela peut être utile (donc monnayable) à la concurrence.
etc.
Bien entendu, l'iframe peut pointer aussi sur un script hostile, de nature HTML ou PHP, qui pourra par exemple,
télécharger un malware à l'insu de l'internaute.
En ajoutant un Javascript hostile, lorsque la page est vue par un internaute, le javascript hostile s'exécute sur le poste
de l'internaute. Il peut donc être victime d'un "exploit" de navigateur, d'un téléchargement de malware sur son poste à
son insu, etc.
Le dépôt d'un fichier hostile
Dans la très grande majorité, les fichiers hostiles déposés sur les sites web sont de nature exécutables (.exe Windows,
ELF Linux, ...) ou interprétés (HTML, PHP, Perl, Javascript, ...).On y retrouve les types de malwares suivants :
Des prises en main à distance du serveur. Ces scripts, nommés "Shell" ou "Remoteadmin", permettent de lancer
n'importe quelle commande sur le serveur, avec les droits du serveur web. Imaginez les possibilités qui s'offrent au
pirate via ce biais... Il peut changer les pages web de votre site, effacer des données, explorer la base de données du
site web, rechercher une faille dans le système d'exploitation pour obtenir les droits Administrateur sur le serveur, et
bien plus encore...
Des outils d'identification du serveur. Ils se nomment "PHP.Id". Ils permettent de connaître le système d'exploitation du
serveur, le type de CPU utilisé, la quantité mémoire, la configuration d'apache et de PHP, les versions de certaines
librairies, etc.
Des Mailers. Ces scripts permettent d'envoyer des emails. Ce sont de mailing lists simplifiées. Ils permettent donc
d'envoyer en masse du spam ou du phishing. Sur le dos de la bande passante du serveur web bien sûr.
Des scripts IRC. Ceux ci sont nommés "IRCBot". Ils permettent une communication avec le pirate par le canal de
communication IRC qui reste ouvert 24h/24h. Cette communication permet de lancer des commandes sur le serveur via
un simple client IRC.
Et bien sûr, une quantité de malwares windows qui sont stockés pour être ensuite téléchargés par des internautes
victimes, via le biais de failles de sécurité, ou de programme indésirables de type "Downloaders". Le pirate ne stockant
pas ces malwares chez lui, mais sur le site web victime, il devient très difficile de remonter à lui lors d'une enquête.
etc.
Quel est l'objectif visé par le pirate ?
Pourquoi les pirates dépensent-ils autant d'énergie pour modifier les pages web d'un serveur ou y déposer un fichier ? Il
y a plusieurs réponses à cela.
Le principal intérêt est financier. En effet, si un pirate peut lancer des commandes sur un site web, alors il peut voir le
contenu des fichiers, et accéder à la base de données. Souvent sans même décrypter le mot de passe d'accès de la
base de données : soit parce qu'il n'y en a pas, soit parce qu'il est stocké "en clair" dans un des fichiers du serveur web.
Alors, dans ce cas, posez-vous les questions suivantes :
Y a-t-il des données sensibles dans vos fichiers du site web ? Qu'il y a-t-il dans la base de données ?
D'expérience, ous savons que dans certains cas, des entreprises stockent les mots de passe de leurs clients ou
fournisseurs (pour accéder à une zone privée du site web par exemple). D'autres stockent des devis, des demandes de
contact, des listes de personnes, et même des numéros de cartes bancaires... Toutes ces informations ont une valeur
pécuniaire, surtout vis-à-vis de la concurrence.Dans le cas des "Mailers", le fait d'envoyer des emails de phishing
permet au pirate un gain financier rapide. En effet, il est de notoriété publique de pouvoir récupérer des comptes Paypal
valides, et autres comptes bancaires, via le phishing.
L'autre intérêt est d'avoir "sous la main" une multitude de serveurs web dont on exploitera la puissance CPU ou la bande
passante.La puissance CPU pourra être utilisée pour casser des mots de passe simultanément sur plusieurs serveurs
(cracking distribué).
La bande passante utilisée sur plusieurs serveurs permettra de perpétrer des dénis de service distribués par saturation
du serveur victime. Elle peut aussi être utilisée par l'exécution d'un scanner de failles web pour couvrir une autre grande
part des adresses IP d'Internet, et ainsi, couvrir plus rapidement la totalité des adresses IP qui composent Internet.
Notons au passage que si votre site web est utilisé à des fins de tentatives de piratage vers d'autres sites web, la
responsabilité du propriétaire du site attaquant est engagée.
Les conséquences
Comme nous l'avons évoqué dans les paragraphes précédents les conséquences sont principalement financières.
Comment calculer l'impact de ce type d'incident ? Posons-nous rapidement ces quelques questions :
Quel est le coût d'un vol des informations sensibles qui seraient hébergées sur votre site web et quel est le coût si ces
mêmes informations sont transmises à la concurrence ?
Quel est le coût de se voir blacklisté par Google ?
Quelle est la répercussion en terme d'image pour vous ou votre entreprise si votre site web est utilisé à des fins illégales
Quel est le coût d'une bande passante saturée lors d'un déni de service effectué à partir de votre serveur web ?
Quel est le coût de voir son site web fermé par l'hébergeur pour cause de non respect des conditions générales de
vente ?
Exemple de blacklist d'un site web sous Firefox.
Au delà de l'aspect purement financier, si vous êtes propriétaire d'un site web, votre responsabilité peut être engagée en
cas de litige. Par exemple, même si c'est à votre insu, si vous divulguez des malwares via votre site web, ou si vous
perpétrez des attaques vers d'autres cibles.
Si vous êtes un internaute, vous pouvez être infecté par un malware sur votre poste de travail, de façon transparente,
sans vous en rendre compte, par le simple fait de visiter le site web piraté.
Protégez-vous efficacement de cette menace
Gardez vos serveurs web à jour
Tout serveur web doit être impérativement à jour. Cela parait évident et simple au premier abord, mais quand on
regarde de plus près, c'est un peu plus compliqué que cela. En effet, pour être efficace, il faut mettre à jour :
Le système d'exploitation Le service Web (Apache, IIS, etc)
Les briques logicielles du serveur web (PHP, MySQL, et toutes les extensions utilisées par le service web)
L'applicatif web (Zope, SPIP, Joomla, etc). C'est là que ça se corse ! Lorsqu'un logiciel est utilisé pour la publication de
contenu, il est souvent modifié pour coller au besoin de fonctionnalité, ou d'esthétisme. C'est d'autant plus tentant si
l'applicatif web est open source. Cependant, non seulement les modifications peuvent engendrer de nouvelles failles de
sécurité qu'il n'y a pas dans le logiciel original, mais en plus cela complexifie énormément la maintenance du logiciel !
Comment mettre une nouvelle version de Joomla lorsqu'une page PHP sur trois à été modifiée ?
Installez un antivirus
On ne le dira jamais assez : Procurez vous un antivirus pour votre station de travail, mais aussi pour vos serveurs !Nous
entendons souvent dire "Notre serveur web ne craint pas les virus, il est sous Linux (ou Mac OS)". Sauf qu'avec un
serveur Linux ou Mac OS, il est possible de propager des malwares pour le système d'exploitation Windows...Et mieux
vaut un antivirus gratuit plutôt que rien !
Dans le cadre d'une entreprise, notre appliance de sécurité permet le filtrage antiviral en temps réel du surf sur internet.
L'intégrité du poste de travail en est renforcée.
Optez pour de l'hébergement dédié
L'hébergement mutualisé comporte un certain nombre de risques de sécurité pour votre site web. Par exemple :
Vous n'avez pas accès au système d'exploitation du serveur. Vous ne pouvez donc pas vous assurer qu'il est à jour en
terme de patchs de sécurité.
Vous n'avez pas accès à la configuration du service web (Apache, IIS, ...). Vous ne pouvez donc pas vérifier que des
directives de configuration renforçant la sécurité sont inclues dans la configuration du service web. Pire encore, ces
directives de sécurité ne sont généralement pas appliquées afin que tous les sites hébergés sur le serveur fonctionnent.
Vous ne pouvez pas installer de logiciels dédiés à la sécurité de votre serveurs web, par exemple un antivirus, un
Système de Détection d'Intrusion (IDS), etc.
Et le pire, c'est que la sécurité de votre site web dépend directement des autres sites hébergés sur le serveur ! En effet,
dans le cadre d'un hébergement mutualisé, il n'est pas rare de voir plus d'une centaine de sites web hébergés sur le
serveur. Que se passe-t-il si l'un d'entre eux comporte une faille si importante qu'elle permet d'exécuter des commandes
sur le serveur web ?
Pour toutes ces raisons, nous vous conseillons d'utiliser un hébergement dédié pour votre site web. Ainsi, le périmètre
de sécurité de votre site web vous appartient !
.
Auditez régulièrement votre site web
Un audit de votre serveur web permet de faire un état des lieux des failles présentes, de leur implications, et de la mise
en œuvre permettant leur correction.Il est conseillé d'en effectuer régulièrement, notamment avant la mise en production
d'une nouvelle version de votre site web.

Documents pareils