A l`hébergement mutualisé et inquiet de la sécurité? Voici ce que vous devez savoir

partagé hébergement

. Il est l`option pas cher, est-ce pas? Et pour une grande bande de la population, il est tout ce qu`ils auront jamais besoin d`héberger leur site Web ou application web. Et quand bien fait, l`hébergement mutualisé est évolutif, rapide et sécurisé.

Mais ce qui se passe quand il ne se fait pas bien?

Eh bien, c`est quand les questions de sécurité dangereuses commencent à se glisser. C`est alors que votre site est à risque d`être défiguré, ou les données privées que vous détenez l`objet de fuites. Mais ne vous inquiétez pas. La grande majorité des hébergeurs ont adopté des mesures de sécurité décentes. Il est seulement la mouche par nuit, sous-sol hôtes bonne affaire que vous avez à se méfier.

sharedhosting-pirate

Nous allons explorer les questions de sécurité entourant hébergement mutualisé. Mais d`abord, nous allons parler de ce qui fait une plate-forme d`hébergement mutualisé sécurisé.

Ce qui fait un hôte Web sécurisé

Il y a quelques considérations de sécurité hors concours qui devraient être faits en ce qui concerne l`hébergement mutualisé.

  • Chaque utilisateur sur le serveur doit être isolé des autres utilisateurs, et ne devrait pas être en mesure d`accéder ou de modifier les fichiers d`autres utilisateurs.
  • Une vulnérabilité de sécurité dans la logique d`un site web hébergé sur le serveur ne devrait pas être en mesure d`influer sur les autres utilisateurs.
  • Le serveur est régulièrement patché, mis à jour et suivi pour régler les problèmes de sécurité d`architecture.
  • Chaque utilisateur doit avoir leur propre accès à la base isolée, et ne doit pas être autorisé à modifier les enregistrements stockés ou autorisations de table d`autres utilisateurs.

Encore une fois, la plupart des hébergeurs répondent à ces exigences pour leurs offres communes. Mais si vous cherchez à hébergement plusieurs sites Web sur un serveur, ou sont curieux de voir comment votre société d`hébergement empile la pensée, ou même de lancer votre propre entreprise d`hébergement et sont désireux de trouver comment sécuriser vos utilisateurs, s`il vous plaît lire.

Mais d`abord, un déni de responsabilité

Avant d`entrer dans la viande de regarder des attaques communes nivelé à l`hébergement mutualisé, je veux juste dire que ce poste ne sera pas (et ne doit pas être lu comme) une liste exhaustive des problèmes de sécurité potentiels.

La sécurité est, en un mot, grand. Il y a beaucoup de façons dont vous pouvez compromettre un site. Cela va doubler pour l`hébergement partagé. les couvrir dans un seul article n`a jamais été sur les cartes.

sharedhosting-disclaimer

Si vous êtes paranoïaque à propos de votre sécurité, obtenir un VPS ou serveur dédié. Ce sont des environnements dans lesquels vous avez (pour la plupart) un contrôle absolu sur ce qui se passe. Si vous n`êtes pas sûr sur les différents types d`hébergement web, consultez cet article de mon collègue, James Bruce.Les diverses formes de site d`hébergement Explained [Technologie Explained]Les diverses formes de site d`hébergement Explained [Technologie Explained]Lire la suite

Je tiens également à souligner que ce poste ne doit pas être interprété comme une attaque partagée hébergement. Au contraire, il est un aspect purement académique sur les questions de sécurité entourant cette catégorie d`hébergement Web.

Répertoire Traversal

Commençons avec directory traversal (souvent connu sous le nom « chemin traversal) attaques. Ce type d`attaque permet d`accéder à des fichiers et des répertoires qui sont stockés à l`extérieur de la racine web.

En anglais plaine? Eh bien, imaginons que vous utilisez Alice et Bob le même serveur pour héberger leurs sites Web. Les fichiers d`Alice sont stockés dans / var / www / alice, tandis que les documents de Bob se trouvent dans / var / www / bob. De plus, supposons qu`il ya un autre dossier sur le serveur (/ usr / crappyhosting / myfolder) qui contient un fichier non crypté en texte brut (nous l`appellerons pwd.txt) contenant les noms d`utilisateur et mots de passe du système.

sharedhosting-serveur

Avec moi jusqu`à présent? Bien. Maintenant, imaginons le site Web de Bob sert des fichiers PDF générés localement, et le fichier local est référencé dans l`URL. Quelque chose comme:

http://example.com/file?=report.pdf

Que se passerait-il si je remplacé le « report.pdf » avec les certains paramètres UNIX qui changent le répertoire?

http://example.com/file?=../alice/

Si le serveur est configuré correctement, cela vous permettra de voir la racine du document d`Alice. Intéressant, mais nous sommes beaucoup plus intéressés par ce fichier passeport juteux. mots de passe Accio!

http://example.com/file?=../../../usr/crappyhosting/myfolder/pwd.txt

C`est vraiment aussi simple que ça. Mais comment pouvons-nous y faire face? C`est facile.

Jamais entendu parler d`un utilitaire Linux peu connu appelé chroot? Vous avez probablement déjà deviné ce qu`il fait. Il définit la racine de Linux / UNIX dans un dossier arbitraire, ce qui rend impossible pour les utilisateurs d`en sortir. En effet, il arrête les attaques traversal d`annuaire dans leurs pistes.

partagé chroot

Il est difficile de dire si votre hôte a cela en place sans enfreindre la loi. Après tout, pour le tester, vous seriez l`accès aux systèmes et fichiers que vous n`êtes pas autorisé à accéder. Dans cet esprit, il serait peut-être judicieux de parler à votre hébergeur et se renseigner sur la façon dont ils isolent leurs utilisateurs les uns des autres.

Opérez-vous votre propre partagé hébergement serveur et ne pas utiliser chroot pour protéger vos utilisateurs? Il est vrai que, chroot votre environnement peut être difficile. Heureusement, il y a une multitude de plugins qui rendent facile. Jetez un oeil à mod_chroot, en particulier.

injection commande

Revenons à Alice et Bob. , Nous connaissons l`application web de Bob a quelques ... Ahem ... Les questions de sécurité en elle. L`un d`entre eux est la vulnérabilité d`injection de commande, ce qui vous permet d`exécuter commandes système arbitraires.Un guide rapide pour commencer avec la ligne de commande LinuxUn guide rapide pour commencer avec la ligne de commande LinuxVous pouvez faire beaucoup de choses incroyables avec des commandes sous Linux et il est d`apprendre vraiment pas difficile.Lire la suite

Le site Web de Bob vous permet de exécuter une requête whois sur un autre site qui est alors affiché dans le navigateur. Il y a une boîte d`entrée standard HTML qui accepte un nom de domaine, puis exécute la commande du système whois. Cette commande est exécutée en appelant la commande PHP system ().

Que se passerait-il si quelqu`un entré la valeur suivante?

example.com && cd ../alice/ && rm index.html

Eh bien, nous allons le décomposer. Une partie de cela pourrait vous être familier si vous avez lu notre « Guide de démarrage Pour Linux » E-book, que nous en 2010 déjà publié, ou ont jeté un regard sur notre Commande Linux Cheat Sheet ligne.Mise en route Guide Pour LinuxMise en route Guide Pour LinuxUn newbie Mise en route Guide de Linux! Vous avez probablement entendu parler de Linux, le système libre, exploitation open source qui a fait pression contre Microsoft.Lire la suite

Tout d`abord, il va exécuter une requête whois sur example.com. Ensuite, il changerait répertoire de travail actuel à la racine du document d`Alice. Ensuite, il supprimerait le fichier appelé « index.html » qui est la page d`index de son site Web. Ce n`est pas bon. Non monsieur.

sharedhosting-linux

Donc, comme les administrateurs système, comment pouvons-nous atténuer ce? Eh bien, va revenir à l`exemple précédent, nous pouvons toujours mettre tous les utilisateurs dans leur propre isolé, aseptisé, environnement chroot.

Nous pouvons aborder également ce à partir d`un niveau de langue. Il est possible (bien que, cela peut casser des choses) à l`échelle mondiale supprimer les déclarations de fonction des langues. C`est-à-dire, il est possible de supprimer la fonctionnalité des utilisateurs langues ont accès.

En regardant PHP en particulier, vous pouvez supprimer la fonctionnalité avec runkit - boîte à outils officielle de PHP pour modifier la fonctionnalité de la langue. Il y a une foule de documents là-bas. Lire en elle.

Vous pouvez également modifier le fichier de configuration de PHP (php.ini) pour désactiver les fonctions qui sont souvent victimes de mauvais traitements par des pirates. Pour ce faire, ouvrez un terminal sur votre serveur et ouvrez votre fichier php.ini dans un éditeur de texte. J`aime utiliser VIM, mais NANO est également acceptable.

Trouvez la ligne qui commence par disable_functions et ajoutez les définitions de fonctions que vous souhaitez interdire. Dans ce cas, il serait exec, shell_exec et système, bien qu`il soit intéressant de noter qu`il existe d`autres fonctions intégrées qui sont exploitables par les pirates.

disable_functions = exec, shell_exec, système

Langue et attaques de base interprète

Alors, regardons PHP. C`est la langue qui alimente un nombre surprenant de sites Web. Il est également livré avec un certain nombre de particularités et les comportements étranges. Comme ça.

PHP est généralement utilisé en conjonction avec l`Apache toile serveur. Pour la plupart, il est impossible de charger plusieurs versions de la langue avec cette configuration.

sharedhosting-phpelephant

Pourquoi c`est un problème? Eh bien, imaginons l`application Web de Bob a été construit en 2002. C`est depuis longtemps. C`est de retour quand Michelle Branch a été encore en tête des charts, Michael Jordan joue toujours pour les Wizards de Washington et PHP est un langage très différent.

Mais le site Web de Bob fonctionne toujours! Il utilise tout un tas de fonctions PHP abandonnées et dépréciés, mais ça marche! En utilisant une version moderne de PHP aurait pour effet de briser le site Web de Bob, et pourquoi devrait réécrire Bob son site pour répondre aux caprices de son hébergeur?

Cela devrait vous donner une idée du dilemme face à certains hébergeurs. Ils ont à l`équilibre en gardant un service sécurisé et son architecture, tout en gardant qu`en harmonie avec les clients assurant payer sont heureux.

En conséquence, il n`est pas rare de voir les petits, les hôtes indépendants utilisent les anciennes versions de PHP (ou toute autre langue, pour cette matière) interprète.

Il est fréquent de voir les petits, les hôtes indépendants utilisent les anciennes versions de PHP, ce qui expose potentiellement les utilisateurs à des risques de sécurité.

Pourquoi est-ce une mauvaise chose? Eh bien, d`une part, il exposerait les utilisateurs à un certain nombre de risques de sécurité. Comme la plupart des logiciels, PHP est constamment mis à jour pour répondre à la pléthore de failles de sécurité qui sont constamment découverts (et divulgués).

De plus, cela signifie que les utilisateurs ne peuvent pas utiliser les dernières (et plus) fonctions linguistiques. Cela signifie également que les fonctions qui ont été dépréciées pour une raison demeurent. Dans le cas du langage de programmation PHP, ceci inclut les terribles risible (et récemment déconseillés) fonctions de mysql_ qui sont utilisés pour interagir avec le système de base de données relationnelle MySQL, et dl (), qui permet aux utilisateurs d`importer leurs propres extensions de langage.

En tant qu`utilisateur, vous devriez être en mesure de voir quelle version d`un interprète est en cours d`exécution sur votre service. Si elle est dépassée, ou contenant un certain nombre de failles de sécurité, communiquez avec votre hôte.

Qu`en est-il sysadmins? Vous avez quelques options ici. Le premier (et le plus prometteur) est d`utiliser Docker pour chacun de vos utilisateurs. Docker vous permet d`exécuter plusieurs environnements isolés en même temps, un peu comme une machine virtuelle ne, mais sans avoir à exécuter un autre système d`exploitation. En conséquence, c`est rapide. Vraiment, vraiment rapide.

En anglais plaine? Vous pouvez exécuter le dernier et le plus grand interprète de bord de saignement pour la majorité des utilisateurs, tandis que les clients qui utilisent les anciennes applications qui utilisent, anciens interprètes dépréciés de le faire sans compromettre d`autres utilisateurs.

Cela a aussi l`avantage d`être agnostique langue. PHP, Python, Ruby. Peu importe. C`est tout pareil.

Ne pas avoir Nightmares

Ce poste était destiné à faire une ou deux choses. Tout d`abord, il était d`attirer votre attention sur le nombre de problèmes de sécurité que les entreprises d`hébergement Web doivent faire face afin d`assurer la sécurité de leurs clients et de leurs données.

Il a également pour but de vous montrer comment les sites hébergés sur le même serveur peuvent affecter l`autre. Vous voulez faire une brèche dans ce domaine? Commencez obéir à de bonnes normes, codage sécurisé. En particulier, commencer vos entrées désinfectante à la fois la fin avant et à l`arrière-plan.

Un bon départ est avec la nouvelle fonctionnalité de validation de formulaire HTML5. Nous en avons parlé avant dans notre guide HTML5. Collectivement, nous pouvons rendre les sites Web plus sûr en étant meilleurs, les programmeurs les plus consciencieux.

Comme toujours, je suis pour entendre vos pensées. envoyez-moi un commentaire ci-dessous.

Crédit photo: Tout le monde a besoin d`un Hacker (Alexandre Dulaunoy), autocollant sur la fenêtre de taxi (Cory Doctorow), salle de serveur (Torkild Retvedt), Linux Livres et revues (library_mistress), Elephant PHP (Markus Tacker)

Articles connexes