Comment une grande entreprise commet-elle des erreurs de recrue qui laissent des failles de sécurité? [fermé]

15

Sony a récemment été piraté avec une injection SQL et les mots de passe de leurs utilisateurs ont été stockés en texte brut. Ce sont des erreurs de débutant. Dans une si grande entreprise, comment cela passe-t-il l'AQ? Comment n'ont-ils pas de meilleures équipes que de savoir mieux que cela?

La taille même de l'entreprise qui a été piratée rend cela différent. Cela nous affecte tous parce que nous pourrions tous un jour nous retrouver dans une équipe qui est responsable de quelque chose comme ça, puis nous obtenons la hache. Quels sont donc les facteurs qui y ont conduit, et comment les prévenir?

Richard
la source
Cette question n'a pas invité de réponses constructives basées sur des faits et des références: c'est une liste de diverses spéculations sur la façon dont une entreprise Sony est merdique. Consultez la barre latérale des questions connexes pour plusieurs questions sur les étapes à suivre pour gérer les injections SQL, le contrôle qualité et la sécurité. (
Commentateurs: les commentaires sont destinés à demander des éclaircissements, pas à une discussion approfondie. Si vous souhaitez discuter de cette question avec d'autres personnes, veuillez utiliser le chat . Voir la FAQ pour plus d'informations.
4
@Mark Odd, il a recueilli des réponses extrêmement constructives, qui sont probablement très proches de la réalité. Cela dit, une meilleure question serait: «pourquoi n'y a-t-il pas de législation en place pour punir un comportement aussi imprudent dans une si grande entreprise?»
Konrad Rudolph
3
Il est assez étrange que cette question soit à nouveau close. Draconien. Encore.
richard

Réponses:

24

La première chose qui me vient à l'esprit est parce qu'ils sont assez grands pour faire croître quelques couches de bureaucratie. Cela signifie, entre autres, que vous n'avez plus de codeurs vraiment intelligents en charge du processus d'embauche, ce qui signifie qu'ils perdent leur capacité à éliminer les programmeurs potentiels et les personnes d'AQ qui sont incompétents. Ce qui conduit à l'écriture de mauvais code et à sa mise en production, et nous savons tous ce qui se passera ensuite ...

Mason Wheeler
la source
3
Je pense que vous avez mis le doigt sur la tête avec la bureaucratie, mais il y a aussi d'autres problèmes qui en découlent. Si vous avez un développeur intelligent qui détecte un problème important, il faut un acte de Dieu pour obtenir l'approbation pour travailler sur un correctif, le faire tester et le déplacer en production. Tout ce qu'il faut, c'est qu'une personne dans la bureaucratie pense que le risque de faire le changement (retards dans d'autres projets, erreurs de production, etc.) l'emporte sur le risque de ne pas faire le changement (qui pourrait pirater une entreprise de cette taille?).
Mayo
18

Parce que les programmeurs n'ont pas été invités à tester cela et la culture d'entreprise écrasante ne leur a pas donné suffisamment de latitude pour que leur sens de l'éthique professionnelle se manifeste et exige encore quelques semaines pour tester les failles de sécurité. Ou d'insister pour qu'ils soient en sécurité dès le départ.

Parce que le patron ne voulait pas passer quelques semaines supplémentaires à tester les problèmes de sécurité pour ... quelle que soit la raison. Un bonus supplémentaire à la fin de l'année. Présentant Johnson du département suivant. Droits de vantardise. Devoir envers l'entreprise. Paresse. Méfiance à l'égard des conseils du sous-traitant.

Parce que le grand patron a exigé plus de profits et a promu Johnson par rapport à Bob parce que ses chiffres étaient meilleurs plutôt que d'exiger un meilleur produit. Parce que la qualité et la sécurité sont des valeurs difficiles à afficher sur une feuille de calcul. Parce que les entreprises existent pour gagner de l'argent.

De telles choses sont un problème systématique. Cela se résume à "parce qu'ils sont des imbéciles".

Les programmeurs d' édition peuvent éviter d'être la chèvre sacrificielle en signalant un problème à leur patron. Il fera soit la bonne chose et fera un plan pour le réparer, ou vous dira de l'ignorer. S'il ne le résout pas, officialisez-le, demandez-le par e-mail. Utilisez des mots clés relatifs au problème, comme «vulnérabilité», «injection», «violation de sécurité» dans ce cas. Des trucs qu'une recherche d'email ramasserait.

C'est passer la balle. C'est maintenant la responsabilité de votre patron. Si c'est important, comme si des gens vont mourir quand cette chose échoue, passez la tête et portez le problème à l'attention de son patron. Vous pouvez être licencié pour avoir simplement renvoyé la balle, et vous pouvez toujours être licencié même si vous le transmettez, mais c'est la bonne chose à faire. Pas aussi juste que de régler le problème, mais proche.

Philippe
la source
3
Mon vote pour vous en tant que PDG de l'entreprise !!!
Wajih
3
@Cheshire Ce n'était pas du "bon sens" quand cela a été fait pour la première fois. Les gens ne sont pas intrinsèquement soucieux de la sécurité; ils doivent apprendre et être constamment rappelés qu'il existe des saccades maléfiques qui n'existent que pour récupérer vos données.
Michael Todd
3
@Michael Todd: Mais ce n'est plus 1996. C'est le bon sens maintenant, et il n'y a aucune excuse pour cela.
richard
1
@Cheshire a accepté. Et développer avec la sécurité à l'esprit est bien mieux que de le tester par la suite.
Philip
1
@ Richard DesLonde: Si c'était du bon sens, je pense que je verrais moins de gens dire de bien faire les choses.
David Thornley
12

Plus l'entreprise est grande, plus les décideurs sont éloignés de toute responsabilité réelle.

Connaissant le fonctionnement des entreprises, la conception du site a probablement été confiée à une société de conseil choisie en fonction du prix le plus bas par développeur. Cette entreprise embaucherait à son tour un groupe de personnes aléatoires sur des critères similaires, une personne moyenne restant sur le projet pendant pas plus de 3 mois avant d'être transférée à autre chose.

vartec
la source
4
+1 pour l'externalisé. Je n'y avais pas pensé. Lorsque vous délocalisez, les développeurs développent exactement ce que vous spécifiez, sans poser de questions, donc la sécurité n'était peut-être pas dans les spécifications.
richard
1
@ Richard DesLonde: Je vois que vous êtes optimiste.
David Thornley
@David Thornley: Non, je viens de vivre. :-)
richard
2
@Richard DesLonde: Et tous vos projets délocalisés sont venus faire tout ce que la spécification disait? Pas mal.
David Thornley
1
@David Thornley: LOL Absolument pas. Ce n'était pas la partie sur laquelle j'insistais. Vous avez certainement raison, c'était un peu trop optimiste. :-)
richard
4

Comment fait-on des erreurs? Par paresse, manque de connaissances, manque d'expertise, opportunité, manque de processus, etc. Comment éviter les erreurs? Grâce à la diligence, l'expérience, les garanties, etc. Cette situation n'est pas catégoriquement différente des milliers de petites erreurs commises par chaque programmeur; c'est seulement différent dans l'échelle.

Que pouvons-nous en tirer? Pas tant.

Rein Henrichs
la source
Je pense que c'est différent. Sony gagne des milliards de dollars et pourtant, ils ne peuvent pas obtenir ces choses de base non? Il y a quelque chose de grave à cela. Et ce n'est pas seulement Sony. De nombreuses grandes entreprises ont été piratées récemment par injection SQL.
richard
1
Non, ce n'est vraiment pas différent. Les décisions sont prises par des personnes et non par des entreprises.
Rein Henrichs
@ Richard: Ils ont toujours eu un mauvais dossier de sécurité. C'est la même entreprise qui a inventé le rootkit Sony, tu te souviens?
Mason Wheeler
2

Une explication possible est une liste de priorité asymétrique. De nombreuses entreprises avec lesquelles j'ai travaillé ont accordé plus d'importance à la mise sur le marché d'un produit plutôt qu'à la qualité du produit / code qu'elles produisaient. Cet effet est doublé car non seulement les programmeurs sont précipités à la fin, mais il en est de même du département QA (s'ils en ont même un). J'ai également remarqué que cette attitude coïncide avec le passage au produit suivant avant la fin du précédent, ce qui aggrave encore le problème.

Un dénominateur commun à chacune de ces sociétés est la gestion non technique. Les chefs de projet, les responsables informatiques et les chefs de produit, essentiellement tous ceux qui ont leur mot à dire sur le travail de l'équipe de développement, ne sont pas tous techniques et ne comprennent pas l'importance de produire du code sécurisé de haute qualité. C'est quelque chose que je recherche quand j'interviewe avec des entreprises maintenant. Qui détient les règnes de l'asile, des détenus ou des médecins?

Je ne serais pas surpris si quelque chose de similaire, aggravé par une bureaucratie profonde, contribuait aux facteurs de sécurité de Sony et d'autres sociétés.

Jack M.
la source
0

Les gens travaillent dans de grandes entreprises, et les gens feront des erreurs, que ce soit par ignorance, paresse, mauvaises procédures, mauvaise documentation, etc. La taille de l'entreprise n'affectera que les erreurs dans la mesure où il peut y avoir plus de sources d'erreurs ou d'erreurs.

Marcelo
la source