web-dev-qa-db-fra.com

À quel moment le «piratage» devient-il illégal? (NOUS)

Situation hypothétique: avant d'embaucher une société de développement Web, je veux tester leur capacité à concevoir des applications Web sécurisées en consultant les sites Web de leurs clients précédents.

Issue: cette situation soulève un gros drapeau rouge: en ce qui concerne la consultation d'un site Web, qu'est-ce qui est ou n'est pas dans le champ d'application de la loi? Ou en d'autres termes: à quel moment fouiller un site Web devient-il illégal ?

  • Voir la source avec Firebug? Naturellement, ce serait légal.
  • Mais que faire si je modifie le HTML (comme une valeur de formulaire cachée avant la soumission)?
  • Peut-être que je modifie ou supprime ensuite JavaScript, comme un script de validation côté client. Serait-ce légal?
  • Et si je mets% 3Cscript% 3Ealert (1)% 3C/script% 3E à la fin de l'URL.
  • Ou peut-être que je tape l'URL: example.com/scripts/ et que je peux afficher leur répertoire en raison de paramètres d'autorisation défectueux?
  • Que se passe-t-il si je manipule des données transmises dans des en-têtes HTTP, par exemple une quantité/un prix de produit négatif pour voir si elles font une validation côté serveur (naturellement, je ne terminerai pas le paiement).

Tout cela me semble parfaitement inoffensif car:

  1. Je ne cause pas de stress excessif à leur serveur en spammant, en reflétant le site avec wget ou en injectant du SQL potentiellement dangereux.
  2. Je ne cause aucune perte potentielle ou dommage monétaire, car je n'exploite jamais les vulnérabilités, je teste uniquement leur existence (preuve de concept).
  3. Aucune de mes actions n'aura aucune implication pour la confidentialité des données des utilisateurs. En aucun cas aucune de mes actions ne pourrait révéler des informations confidentielles ou privées sur quiconque.
  4. Si je trouvais quelque chose, j'informerais immédiatement le webmaster de l'exploit potentiel afin qu'il puisse le corriger.

Mais même si je suis logiquement en mesure de justifier mes raisons pour tester le site, cela ne rend pas nécessairement mes actions légales. En fait, les cyber-lois sont notoirement en arrière aux États-Unis, et même les actions les plus ridiculement triviales peuvent être considérées comme du piratage.

Questions: Y a-t-il une ligne définie dans le sable qui sépare le piratage illégal de "tester sans permission"? Ou tout ce scénario est-il une zone grise que je devrais éviter (probablement le cas). Existe-t-il des ressources en ligne pouvant être liées qui pourraient élargir mes connaissances dans cette zone entièrement grise? Quelles sont les lois spécifiques ou lois qui gèrent cela?

Veuillez garder à l'esprit que le choix le plus logique serait de simplement: demander des autorisations. Cependant, en raison de lourdes contraintes de temps, au moment où j'obtiendrais la permission, tout serait pour rien.

58
Moses

Ne fais pas ça! Ne fais pas ça! Si vous êtes aux États-Unis, la loi est très large. Vous ne voulez même pas sur la pointe des pieds jusqu'à la ligne.

La loi pertinente est la Computer Fraud and Abuse Act (18 U.S.C.1030). En un mot (et en simplifiant légèrement), en vertu de la CFAA, c'est un crime fédéral "d'accéder intentionnellement à un ordinateur sans autorisation ou de dépasser l'accès autorisé". Ce langage est très large, et j'imagine qu'un procureur ambitieux pourrait essayer de l'utiliser pour aller après tout sur votre liste, sauf # 1 (voir la source).

Orin Kerr, l'un des principaux juristes dans ce domaine, qualifie la statue de "vague" et "extraordinairement large" , et a dit que "personne ne sait vraiment ce qu'elle interdit" .

Et, comme l'explique @Robert David Graham, il y a eu des cas où des gens ont été poursuivis, menacés de poursuites ou poursuivis pour avoir fait aussi peu que taper un guillemet simple dans une zone de texte, ajouter un ../ vers une URL ou en vous inscrivant à Facebook sous un pseudonyme. Il est assez sauvage que cela constitue à lui seul une infraction fédérale, même s'il n'y a aucune intention malveillante. Mais c'est l'environnement juridique dans lequel nous vivons.

Je dirais, ne prends pas de risques. Obtenez une autorisation écrite de la société dont vous souhaitez tester les sites Web.

45
D.W.

La loi n'est pas claire. Tout ce que vous faites, aussi innocent soit-il, pourrait être considéré comme un crime. Tout ce que le propriétaire du site Web a à faire est de dire "Je ne voulais pas que cela se produise", et vous pourriez être condamné pour un crime.

Avant de faire un don à un site Web de secours aux victimes du tsunami, Daniel Cuthbert a tapé ../../../ dans l'URL. Il a été condamné pour "intention de pirater" (au Royaume-Uni).

Lori Drew a été reconnue coupable de piratage de MySpace, car elle a violé les conditions d'utilisation de MySpace en créant un faux compte, qui a ensuite été utilisé par sa fille de 14 ans pour harceler une autre fille, qui s'est ensuite suicidée. Les condamnations ont été annulées plus tard, et le gouvernement a décidé de ne pas faire appel - mais c'est toujours une expérience à éviter.

Andrew "weev" Auernheimer a été reconnu coupable de vol d'identité, car AT&T a fourni des informations de compte client aux premiers propriétaires d'iPad sur leur site Web, et il a écrit un script qui vient d'énumérer les URL et de les télécharger.

Brian K. West a été menacé de poursuites parce qu'il a cliqué sur un bouton intitulé "Modifier" sur un site Web de journal - et a été surpris de découvrir que cela lui permettait de modifier la page Web actuelle. Après avoir signalé le problème au journal, le FBI l'a enquêté (notamment en fouillant le lieu de travail de West et en saisissant certains documents) et un procureur l'a apparemment menacé de poursuites pour crime.

Dans un cas récent, il a été constaté que lorsque vous faites remplir une boîte de réception de spam, donc en le faisant, vous êtes coupable de le "pirater" tel que défini par la loi sur la fraude et les abus informatiques.

Je fais tout ce que tu décris. Il y a des lignes que je ne franchirai pas: je vais tester l'injection SQL, mais je n'accéderai pas à la base de données. Mais je le fais parce que je peux me permettre d'avoir des avocats à prix élevé pour me défendre. De plus, je ne ferai pas de bêtises. Par exemple, Daniel Cuthbert a été reconnu coupable d '"intention de pirater" parce qu'il n'arrêtait pas de changer son histoire lorsqu'on lui demandait pourquoi il l'avait fait, de sorte que le tribunal n'en croyait aucune.

54
Robert David Graham

La seule constante dans de nombreuses juridictions semble être que la seule action sûre sur votre liste est le numéro 1.

Dans certaines régions, vous seriez d'accord avec la modification des données, mais vous ne devriez vraiment pas le risquer.

J'irais jusqu'à dire que vous abordez cette question de la mauvaise façon.

Meilleure approche:

Informez la société de développement Web que si elle veut votre entreprise, elle doit fournir la preuve que l'application a été testée selon une norme particulière. Au Royaume-Uni, vous pouvez le faire en exigeant un test par une personne ou une équipe approuvée par CREST ou CHECK. Ou vous pouvez obtenir une assurance en utilisant l'un des cabinets d'audit Big-4. S'ils ont passé un test, vous pouvez demander la visibilité de la méthodologie et des résultats.

Meilleure approche:

Demandez-leur de démontrer les contrôles de sécurité et de gouvernance dans leur cycle de vie de développement. Une organisation mature en matière de sécurité utilisera un SDLC complet qui réduira la probabilité de vulnérabilités, et même supprimera des classes entières de vulnérabilités. Les tests de pénétration ne sont presque qu'une confirmation à la fin du processus.

11
Rory Alsop

Mise en garde: Je ne suis pas un avocat, juste un geek suggérant la prudence.

Y a-t-il une ligne définie dans le sable qui sépare le piratage illégal des "tests sans autorisation"? Ou tout ce scénario est-il une zone grise que je devrais éviter (probablement le cas). Existe-t-il des ressources en ligne pouvant être liées qui pourraient élargir mes connaissances dans cette zone entièrement grise? Quelles sont les lois ou lois spécifiques qui gèrent cela?

Non. Il n'y a même pas d'accord sur les juridictions qui s'appliquent et encore moins sur les lois applicables dans ces juridictions. Même en ignorant les sanctions pénales, vous devriez éviter de le faire simplement à cause des sanctions civiles.

Si vous faites la moitié des choses sur cette liste, vous violez probablement les conditions de service, et toute utilisation non-bonne foi des ressources informatiques peut vous mettre en danger de poursuites civiles. Vos arguments selon lesquels vous n'utilisez pas de ressources indues sont basés sur des spéculations sur la manière dont des ingénieurs raisonnables concevraient/déploieraient des systèmes. Vous pouvez très bien avoir raison, mais vous n'avez pas et ne pouvez pas vérifier ces affirmations à l'avance ou vous assurer contre elles. Si une fusion dans leur salle de serveurs coïncide simplement avec votre sondage, vous ne voulez pas être en mesure de prouver que vous ne l'avez pas causé.

Les charges utiles apparemment inoffensives peuvent devenir un problème lorsqu'elles sont multipliées par de nombreux visiteurs. Par exemple, votre charge utile alert(1) injectée peut sembler inoffensive, mais si vous trouvez un vuln XSS persistant et qu'il se manifeste sur la page d'accueil où il est vu par x client potentiel pendant d jours. Pour certaines valeurs de x et d, ce n'est pas anodin et vous n'avez pas le pouvoir d'atténuer ces variables.

Même les stylo-testeurs contractuels devraient avoir une assurance responsabilité civile lorsqu'ils travaillent avec autorisation conformément à "Test de pénétration: le pirate informatique tiers"

Tous les prestataires de services de tests d'intrusion devraient avoir une assurance responsabilité suffisante pour couvrir les coûts associés au risque de perdre les informations propriétaires d'un client et toute perte potentielle de revenus qui pourrait résulter d'un temps d'arrêt imprévu causé par leurs activités. Si le prestataire de services n'a pas d'assurance responsabilité civile, faites attention à la manière dont il précise la responsabilité dans ses "Conditions générales". La direction doit également s'assurer qu'elle peut récupérer d'une perte de données pendant les tests en mettant en place des plans adéquats de réponse aux incidents et de reprise après sinistre qui ont été développés et vérifiés avant le début des tests.

Si vous avez été embauché par l'entreprise, vous pourriez être tenu responsable de la perte de données/d'entreprise lorsque votre sondage arrête les systèmes de production. Si vous agissez sans contrat ni relation préalable, et pour votre propre avantage, vous êtes encore plus à risque de poursuite si leurs systèmes (qu'ils ne savaient pas sauvegarder avant de commencer votre sondage) ont des défauts que vous chatouillez.

Disons que vous allez de l'avant et que cela entraîne une poursuite civile. S'ils veulent faire pression sur vous pour qu'ils s'installent, ils pourraient augmenter le spectre des sanctions pénales ou essayer d'obtenir des dommages-intérêts punitifs en comparant vos actions à celles pour lesquelles il existe des sanctions pénales. Les juges et les jurys pourraient être sensibles à l'argument suivant basé sur "Cyber ​​Vandalism and Internet 'Hacktivism'" :

"Imaginez qu'un serrurier veuille décider quelle serrure acheter, alors il demande à un serrurier une liste de clients. Le serrurier se rend dans un dépanneur qui utilise ses serrures et trouve le magasin fermé pour la nuit. Il tripote la serrure , et l'endommage. Le propriétaire du magasin arrive le lendemain matin pour trouver la serrure cassée afin qu'il ne puisse pas l'ouvrir et ne vend donc pas de café ce matin. La plupart des juridictions ont des lois contre les vandales et ils pourraient être utilisés contre le serrurier. Les dommages-intérêts punitifs devraient s'appliquent au serrurier parce que la société a intérêt à punir les vandales. "

Indépendamment du fait que vous trouviez le serrurier qui veut acheter une serrure une bonne analogie pour vous, les juges et les jurys pourraient, et il y a un mème parmi les non-connaisseurs de la technologie que les "pirates" (définis de manière vague) sont des vandales comme décrit dans le lien ci-dessus.

TLDR: Ne vous préparez pas à un procès coûteux en devenant cowboy.

10
Mike Samuel

Cela ne répond pas à votre question particulière, mais pour votre situation hypothétique, si vous avez la permission de tester la sécurité de leur application, alors tout ce qui précède est 100% légal. Encore mieux serait de demander au candidat de mettre en place un système de test (pas son vrai site web), puis d'essayer d'attaquer ce système de test. De cette façon, si vos tests font accidentellement tomber un système sous tension (ou si quelqu'un remarque la menace et fait tomber le système), vous n'êtes pas responsable des dommages.

Pour les systèmes auxquels vous n'êtes pas affilié et qui ne demandent pas de tests de pénétration; Je ne voudrais pas tester les failles de sécurité. Oui, vous ne pourrez pas vraiment savoir que le site Web de la société XYZ est protégé contre les attaques par injection SQL sans test, mais à moins qu'ils aient convenu que vous devriez le tester - ce n'est pas votre travail de le tester, et si vous vous faites surprendre en train de le faire afin que cela puisse et doive vous poursuivre.

C'est comme demander, est-ce correct d'essayer de vérifier si la maison de mon voisin est verrouillée? Ou voir si je pouvais facilement choisir la serrure (sans jamais ouvrir la porte et entrer à l'intérieur)? Ou tester pour voir si vous pouviez ouvrir une fenêtre à travers laquelle vous pourriez vous faufiler? Si votre voisin ou la police vous remarque faire une de ces choses et se sent obligé de porter plainte, vous êtes foutu à moins que vous n'ayez une raison légitime (j'ai entendu crier à l'aide à l'intérieur; je déposais quelque chose chez eux et je ne l'ai pas fait je veux le laisser dehors sous la pluie; j'ai donc essayé de voir si je pouvais ouvrir la porte).

6
dr jimbob

En supposant que vous embauchez la société de développement Web au nom de votre entreprise, je demanderais conseil au service juridique de votre entreprise. Si vous étudiez la sécurité au nom de votre entreprise et que quelqu'un voulait poursuivre, il poursuivrait presque certainement les poches les plus profondes de votre entreprise plutôt que vous personnellement. Vous voulez vraiment que votre service juridique vous soutienne si cela devait arriver.

Le service juridique de votre entreprise est également bien mieux placé pour savoir ce que vos lois nationales et nationales autorisent. S'il y a une sorte d'enquête criminelle, le fait que vous ayez consulté votre conseiller juridique ne vous indemniserait pas, mais ce serait certainement un point en votre faveur.

5
Justin Cave