Quel est le pire trou de sécurité que vous ayez jamais vu? C'est probablement une bonne idée de limiter les détails pour protéger les coupables.
Pour ce que ça vaut, voici une question sur ce qu'il faut faire si vous trouvez une faille de sécurité, et n autre avec quelques réponses utiles si une entreprise ne (semble pas) répondre .
Parce que le nom d'utilisateur et le mot de passe sont les mêmes et que cela se passait pour le site Web de production, pas pour une version de test.
Il y a quelque temps, une faille de sécurité dans les fenêtres de la bibliothèque de chargement d'images JPG. Infecté par l'image dans un e-mail. ack
Sur un site Web sur lequel j'ai travaillé, ils ont utilisé le nom d'utilisateur et le mot de passe comme clé primaire combinée. Le nom d'utilisateur était automatiquement votre nom de famille et il n'était pas nécessaire qu'il soit unique.
Ce qui ne laisse qu'une chose qui pourrait être unique ...
Il existe une bibliothèque sous licence de rendu en nuage pour 2500 dollars avec un temps de travail limité (environ une minute) jusqu'à ce que vous soyez enregistré. Et une démonstration d'évaluation qui a fonctionné indéfiniment. La recherche du contenu exe pour un mot "démo" a révélé "[Nom du produit] Démo" et une chaîne de symboles hexagonaux à proximité. Oui, c'était le login et le mot de passe.
Une faille de sécurité qui me fait crasher se trouve dans une application héritée que je conservais auparavant. Il existait un fichier settings.ini avec les informations d'identification de la base de données en texte brut, et tous les mots de passe des utilisateurs sont stockés dans la base de données en texte brut.
La plupart des autres failles de sécurité que j'ai vues se trouvaient à mon collège et à mon collège.
Tout d’abord, j’ai pensé que je pouvais couper l’internet pour mon école simplement en faisant une attaque par inondation (très facile). Et pas seulement mes écoles secondaires Internet, mais tout le système scolaire, y compris une partie du collège. Il n'y avait absolument aucune limitation de taux. Ils ont fini par le réparer après que je l'ai démontré. (en note de bas de page, la "publicité" qui m'a fait être embauché lors de mon premier emploi en programmation)
La seconde, et qui avait beaucoup plus de possibilités, était la suivante:
Ok, tous les ordinateurs de l’école étaient connectés à un domaine, etc. Ainsi, lorsque vous vous connectez à un ordinateur, un répertoire utilisateur générique (y compris les données de l'application, les dossiers, etc.) est copié, puis la connexion est ouverte. Certaines personnes avaient leurs propres identifiants autres que le compte générique "étudiant" pour une raison ou une autre. Pendant que je parcourais le serveur public où tout était partagé, j’ai trouvé un répertoire /users
. En le regardant, j'ai découvert à partir d'un compte élève générique que j'avais accès en lecture-écriture à tous les répertoires d'utilisateurs, y compris les enseignants, l'administrateur et le compte élève générique.
Pour April Fools, j'avais prévu d'écrire un simple fichier de commandes ou un petit programme contenant quelque chose comme Class of 09 rocks!
à la connexion de tout le monde, juste pour le démontrer, mais je me suis dégonflé .. Je n'ai jamais non plus averti l'administrateur. trou de sécurité béante est toujours là probablement.
Lorsque vous avez perdu votre mot de passe et le formulaire de récupération, demandez le nom d'utilisateur et votre adresse électronique. Et ne vérifie pas l'email et envoie le mot de passe à l'email donné.
éditer/histoire:
C'était sur un site Web basé sur la télévision payante/sur abonnement. Il était facile de trouver un nom d’utilisateur, un nom d’utilisation somptueux. Aujourd'hui, la chaîne de télévision a fait faillite (pour d'autres raisons, comme le manque de professionnalisme).
Je me souviens que le site Web de Common App, destiné aux collèges, disposait de cette fonctionnalité de "sécurité" qui annonçait qu'il vous déconnecterait après un certain laps de temps. Mais pour cela, ils ont utilisé une boîte d’alerte à laquelle, si vous ne répondiez pas, le compte à rebours mettrait en pause le compte à rebours, ce qui rendrait votre session indéterminée.
La pire faille de sécurité que j'ai jamais vue concerne l'intégration d'une version antérieure de MS SQL Server, version 7.0 ou 2000, dont je ne me souviens pas exactement.
Lors de l’installation de cette version de SQL Server, le programme d’installation donne par défaut un mot de passe vide au compte "sa" !!! (le compte sa est le compte administrateur SQL, il peut tout faire sur le serveur)
Cela donnait à quiconque d'accéder à un serveur SQL non protégé par un pare-feu.
Mais ça empire.
À cette époque, de nombreux serveurs SQL étaient installés pour exécuter le service sous une authentification "système local", donnant ainsi au processus serveur SQL un contrôle illimité sur le système.
Puisque vous pouvez créer des objets COM sur un serveur SQL, vous avez soudainement eu un accès complet sur l'ordinateur sur lequel le serveur SQL était en cours d'exécution.
De nombreux sites ont été piratés de cette façon.
Il y a des années, une école avait hébergé un site Web de plate-forme d'apprentissage avec la possibilité de télécharger des fichiers .PHP sur le site Web que vous pouviez exécuter par la suite, afin de vous donner un accès complet à l'ensemble du site Web. N'a été découvert par aucun autre étudiant et je pense que cette erreur est toujours présente.
Nous avions un ancien cluster d'ordinateurs qui n'existait pas dans l'un des laboratoires dans lesquels j'ai travaillé. Quelques étudiants de premier cycle ont pensé qu'il serait amusant de le lancer pour pouvoir apprendre un peu l'informatique parallèle. Eh bien, ils l’ont fait fonctionner et cela s’est avéré très utile.
Un jour, je suis entré et je vérifiais les statistiques ... Ça tournait à 100%. À présent, il s’agissait d’un groupe de 24 nœuds et nous n’avions utilisé que trois d'entre eux. Il était donc un peu étrange de voir qu'il fonctionnait à cette charge. J'ai commencé à jouer avec elle, essayant de comprendre ce qui la chargeait ... il s'est avéré que quelqu'un y avait accès et l'utilisait comme leur propre petit serveur porno et pollueur. J'ai demandé aux étudiants quel type de sécurité ils mettaient dessus, ils m'ont regardé et m'ont dit: "La sécurité? Nous ne pensions pas qu'il en aurait besoin."
J'ai jeté un mot de passe dessus et c'était ça. La personne qui l'utilisait comme serveur porno s'est avéré être un ami de l'un des étudiants de premier cycle.
J'ai vu un buffer overflow qui pourrait être (théoriquement) traité via fax.
Un processus d'acheminement automatique des documents prenait les fax en entrée, les analysait, les extrayait, en effectuant ensuite des recherches LDAP, etc. Je ne sais pas s'il est considéré comme "le pire", glousser.
Je parcourais un site Web d'achat et, lorsque j'ai tapé mon adresse électronique, j'ai remarqué que la page de saisie de l'adresse contenait simplement l'URL "? NOrderID = 301".
Allume alors. Je change ce nombre à 99 et devinez quoi? Je reçois le nom, l'adresse et le numéro de téléphone d'une dame qui habite Bend, OR .
J'ai envoyé un e-mail à l'administrateur du site il y a quelques semaines, et il ne semblait pas très content, mais cela n'a toujours pas été corrigé ...
Cela, et pendant un certain temps, la société dans laquelle je travaillais pour la liste complète des informations sur les employés (tout ce qui concerne l'employé, de l'adresse au SSN à payer) a été stockée dans une base de données Access protégée par mot de passe.
Utilisez votre moteur de recherche préféré et cherchez comment récupérer les mots de passe d'accès à la base de données. Oui.
Glissez-le et déposez-le dans this , et vous obtiendrez le mot de passe. Un dictionnaire de cinq lettres Word.
En voici un que je n'ai pas vu mentionné trop souvent. Il s’agit d’un bogue de sécurité très valable qui pèse sur la plupart des formulaires de connexion. Je l'ai découvert il y a presque une décennie.
J'ai étudié à l'Université de Toronto, où ils disposaient d'un système appelé ROSI permettant aux étudiants de gérer leurs frais d'inscription et leurs inscriptions aux cours. Ils disposaient également de deux terminaux publics dans la zone de réunion générale, qui ne permettaient que d'afficher le site Web de ROSI. Les étudiants pouvaient entrer leur identifiant étudiant et leur mot de passe pour se connecter et gérer leurs documents.
Cependant, après la déconnexion d'un utilisateur, vous pouvez accéder au terminal et appuyer sur alt-left dans le navigateur pour revenir au formulaire de connexion, puis appuyer sur alt-droite pour continuer, puis cliquer sur rafraîchir. À ce stade, le navigateur vous demandera de confirmer le repostage des données de formulaire et si vous cliquez sur Oui, il republiera le nom d'utilisateur/le mot de passe précédent et se connectera à vous.
La plupart des formulaires de connexion sont toujours vulnérables à ce type d'attaque. La solution consiste à faire un post/redirect/get ou à utiliser une clé de nonce.
J'ai envoyé plusieurs fois par courrier à l'administrateur de mon université à ce sujet, mais je ne pense pas qu'ils l'aient corrigé au moins jusqu'à ce que je finisse par obtenir mon diplôme et que je sois parti. C'était vers 2002.
Un pair a une fois tweeté son mot de passe par accident ... c'était un très mauvais trou de sécurité.
Il y avait un endroit où l'administrateur configurait tous les répertoires personnels des utilisateurs dans un dossier FAT32 partagé.
Il y a quelques années, un ami m'a donné une vieille tête de hache qu'il avait trouvée, dans l'espoir d'être informé d'un ancien artefact. Ainsi, une recherche sur Google d’un site Web susceptible de faciliter l’identification m’a fourni un lien vers un site Web de musée quelque part dans les Midlands (Royaume-Uni).
Sauf que la page sur laquelle je suis tombé m'a donné plein de droits d'administrateur sur tout le site. Etant un type responsable, j'ai changé le nom du propriétaire du compte, juste pour qu'ils sachent que je ne leur parlais pas et leur envoyais un email leur suggérant ils bouchent le trou qui m'a laissé entrer, avant que quelqu'un de plus méchant ne le trouve.
Il va sans dire que j'ai reçu un e-mail très reconnaissant du propriétaire du site, à qui le développeur avait assuré que la panne avait été trouvée et corrigée. Bien que vous ayez à vous poser des questions sur les capacités de quelqu'un qui est et négligent .
En code signé:
System.setSecurityManager(null);
(Vous pouvez effectuer une recherche dans ce code avec Google.) Supprime toutes les restrictions de sécurité Java de tout le code exécuté dans le processus. Peut-être pas très bien pensé.
C'était il y a longtemps ... mais le système VAX de DEC était expédié avec les comptes:
login: mot de passe du système: MANAGER
et login: mot de passe sur le terrain: SERVICE
La plupart des administrateurs système connaissent le compte SYSTEM et la plupart (mais pas tous) le changeront. Cependant, tout le monde ne connaissait pas le compte FIELD qui disposait également de privilèges SYSTEM.
Un site "sécurisé" où toutes les pages étaient cryptées sauf la page de connexion!
Sur certaines machines Unix (certainement tous les SunOS), vous pouvez associer un script setuid Shell à un fichier appelé "-i". Le script shell interprète le nom de fichier comme son premier argument et exécute "sh -i" = un shell interactif, avec l'autorisation de quiconque est propriétaire du fichier setuid.
Étant donné que la plupart des scripts setuid Shell étaient exécutés en tant que root, nous vous autorisons à faire quelque chose qui nécessite un accès root, comme éjecter un CD ou charger une bande. Cela signifiait qu'il était trivial d'avoir un administrateur sur la plupart des machines Unix universitaires dans les années 1990.
XSS est ce que j'aime trouver sur un site Web.
Voici un lien vers un journal de mes découvertes:
Tous: http://xssed.com/archive/author=Dr.Optix
Seuls les spéciaux: http://xssed.com/archive/special=1/author=Dr.Optix/
Amusez-vous à les parcourir!
Le site web officiel du logiciel de filtrage chinois - Green Dam contient des informations sur le serveur mod_status largement ouvertes au public.
Pour les curieux:
http://www.lssw365.net/server-status
Pour une raison quelconque, vous voudrez peut-être appuyer sur le bouton d'arrêt peu de temps après le chargement ou sinon, il est simplement indiqué que la connexion est réinitialisée pour une raison quelconque ...
L'ensemble Classic ASP votre panier "Comersus". Le tout est un fouillis de code spaghetti et toutes les instructions SQL sont mûres pour une injection SQL car aucun filtrage n’est effectué. Malheureusement, j'ai eu la malchance de traiter cette "application" pendant presque deux ans et ce fut un cauchemar absolu!
Une fois, j'ai eu le plaisir de tenter de sécuriser un site (ASP Classic) qui "nécessitait" un mot de passe pour accéder à l'interface d'administration. Bien sûr, si vous veniez juste d’aller à l’adresse d’une des pages d’administrateur, vous pourriez faire ce que vous vouliez, connecté ou pas.
Et ils se demandaient comment ils avaient été piratés.
À titre de remarque pour tous les lecteurs, informés ou non: je viens d’acheter un ouvrage de 2008 sur le sujet, protégé par un copyright - 2008 - Dans la préface, l’auteur fait un "hé, attendez une minute ..." dans lequel il est indiqué dans détail que plus d’un professionnel de la sécurité possédant de solides compétences et une grande expérience du terrain avaient été, heu, rendu sans objet,… grand-chose, parce qu’ils avaient été témoins d’une intrusion d’une nature ou d’une autre qui paraissait relativement novice.
En essayant comme apparemment inoffensif, il y aurait une procédure formelle due à une activité non autorisée. Étant un professionnel, certains d'entre eux ont été ruinés.
La dernière intrusion à laquelle j'ai prêté attention concernait un important service bancaire qui existe depuis si longtemps que les citoyens entendent rarement leur nom de marque. Toutes les données étaient disponibles non chiffrées sur l’ensemble de la boutique - mais, chose étrange pour les non informés, c’est que cette entité bancaire était devenue une "chambre de compensation" pour (je ne connais pas les statistiques mais plus de la moitié) du traitement des transactions par carte de crédit pour plus d'un fournisseur de crédit de marque de détail.
Les intrus viennent de placer un (appareil) à la baisse. [c'est le numéro de téléphone pour la ligne du monde au point d'entrée] pas d'outils de surveillance du trafic sophistiqués ou sophistiqués, mais des outils de base. Je suggère à tout le monde de surveiller toutes les activités de crédit depuis février de cette année: Ce qui a été gagné était que les numéros de carte de crédit valides correspondent aux noms valides des comptes de crédit actifs et valides actuellement.
Sans précédent.
Comme d’habitude, c’est la personne qui n’a aucune expertise en sécurité qui dirige un magasin en tant qu’autorité de gestion. Le terme technique est "analyse du mode de défaillance" ...
Nos téléphones au travail.
Vous devez vous connecter avec votre identifiant à 4 chiffres, puis appuyer sur # et entrer votre mot de passe à 4 chiffres suivi de #. Mais si vous n'entrez aucun mot de passe et si vous appuyez sur #, il vous connectera.
Failphone échoue.
On m'a récemment demandé de réviser le code du site Web d'une entreprise, en veillant à ce que mon employeur le considère comme un projet de maintenance.
Il ne m'a pas fallu longtemps pour découvrir le fichier de texte brut situé sous la racine du site Web contenant environ 6 000 informations de carte de crédit, y compris le nom et l'adresse de facturation et le code CVV. Il n'a même pas été nommé avec imagination!
C’était le pire problème avec ce site, mais il était également criblé de problèmes d’injection SQL.
Nous avons poliment indiqué ces problèmes et le propriétaire du site Web l'a renvoyé au développeur d'origine pour obtenir une explication.
Dans un login pour, il y avait un champ caché qui permettait au "webmaster" de choisir le fichier à inclure en cas de succès ou d’échec.
Oui,/etc/password a fonctionné.
Ou dans un répertoire "log", il y avait order-xxx.asc AND order-xxx.txt qui contient les numéros de carte, y compris le numéro du chèque et la date de validation.
Vous savez comment vous lisez tout le temps sur le vol d'une pièce d'identité personnelle d'une grande entreprise? (Et en fait, il m'est arrivé deux fois de le savoir - une fois de ma compagnie d'assurance-maladie, une fois de ma compagnie d'assurance-vie). Cela vient souvent du vol de bandes de sauvegarde de base de données non cryptées et de la lecture des informations personnelles non cryptées qui y sont stockées.
'Connexion unifiée' entre deux systèmes - qui a exposé le mot de passe sous forme de texte libre ......... DANS L'URL !!
C'était un projet gouvernemental qui avait été "délocalisé". Heureusement, cela a été remarqué très tôt. Ce qui est effrayant, c’est que les développeurs n’ont pas vu le même problème - cela vous rend vraiment étonnant.
Une fois, j'ai pris en charge le développement d'un système utilisé par 200 clients à travers le pays, doté de mots de passe codés en dur. Eh oui, le code dit:
if password = "a"
Et l’année dernière, j’ai quitté une entreprise automobile ERP dont les centaines de clients ont tous le même mot de passe administrateur sur leurs serveurs. Je suppose qu'ils ne les ont pas tous changés après mon départ.
J'ai entendu dire que Turbo Tax envoyait votre SSN dans un fichier texte lorsque vous transmettez votre déclaration par voie électronique. Cela ne semble pas être une bonne idée.
Je connais également une entreprise qui stocke des informations de carte de crédit dans des fichiers CSV en texte brut sur le bureau. Ils sont ensuite envoyés via FTP à la passerelle de paiement ....
Les écrans de connexion textuels UNIX sont SO FACILES à reproduire ... :)
Application Web sur IIS, il y avait non filtre de téléchargement de fichier. Donc, vous pouvez télécharger exe, et faire smf amusant;)
Quand j'étais au collège ou à peu près, le système scolaire du comté avait configuré son logiciel de "sécurité" pour empêcher les enfants d'accéder à Internet ou de modifier les paramètres de configuration et d'installer des indésirables. Outre le fait que le logiciel était plutôt marginal (certaines modifications de Shell pouvant être contournées par un clic droit astucieux dans une boîte Fichier> Enregistrer), ils ont défini le mot de passe des enseignants sur teach
.
Oui, c'était réel sécurisé.
J'ai vu beaucoup de projets clients qui ont été envoyés au support technique et qui contenaient des adresses IP, des noms d'utilisateur et des mots de passe pour les bases de données SQL Server actives.
En testant certains logiciels de guichet automatique bancaire, j’ai appelé le bureau technique pour organiser une session IP par modem. "À quel système voulez-vous vous connecter, en production ou en test?
Histoire vraie.
Une fois, j'ai oublié de supprimer la "page de connexion de l'administrateur". La page ne faisait que passer LDAP vous connecter et obtenir toutes les autorisations. Il pourrait faire n'importe quoi avec le compte bancaire du client. J'étais tellement tellement tellement inquiet. Heureusement, personne ne connaît l'URL.
Visité la page de contact d'une boutique en ligne très connue et défilé vers le bas, à la recherche d'un numéro de téléphone. Au lieu de cela, j'ai trouvé un formulaire de téléchargement acceptant tous les types de fichiers et plaçant les fichiers téléchargés dans le dossier racine du site Web, ce qui signifie que si vous importiez un fichier appelé test.php
, il pourrait être appelé par l'URL mydomain.com/test.php
:)
Puisqu'ils utilisaient osCommerce (open source), créer un script qui extrairait tous les détails de la connexion à la base de données, puis téléchargerait leur tableau de données client complet, constituerait un travail de moins de cinq minutes pour quiconque aurait suffisamment de QI pour Google.
Je les ai contactés et je me suis retrouvé avec un coupon de réduction pour mon prochain achat, et ils ont supprimé le formulaire de téléchargement en quelques minutes.
Une entreprise qui vendait des ordinateurs avait un site Web construit avec FrontPage, tout le monde ayant un accès complet.
News Headline qui est dans l'esprit de ce fil ... sur la première page de /.
Base de données d’emails de fournisseurs de services Internet par milliers
La plus grande faille de sécurité provient de ce que le développeur Web a créé un formulaire d’inscription sur le terrain avec mot de passe ouvert. Le champ de mot de passe montre ce que vous avez tapé et non vide. De cette façon, lorsque vous vous inscrivez, le formulaire sur un ordinateur public peut voir ce que vous avez saisi dans le champ Mot de passe. De nombreux sites Web ont un formulaire d'inscription comme celui-ci.
Je suis sûr qu'il y a peu de sites Web peu sécurisés qui permettent aux administrateurs d'accéder facilement au mot de passe et aux identifiants de connexion.
J'ai entendu parler d'un programmeur travaillant dans une banque, qui - pourquoi que ce soit - calculait ses internes (y compris les soldes des comptes) avec une précision de 16 positions après la virgule décimale.
Donc, ce gars a changé la procédure de virement bancaire pour transférer 0,00001 dollar de chaque transaction sur son propre compte, le reste à la destination initiale. Je pense qu'ils l'ont eu assez vite, mais je dois avouer que j'ai trouvé son idée plutôt bonne quand j'en ai entendu parler pour la première fois.
Le pire que j'ai jamais vu était des cartes de crédit, des NIP et des noms stockés en texte brut. J'ai eu une crise cardiaque.
Identifiants de connexion par défaut , surtout quand ils sont admin/root et mot de passe.
Je dirais que le pire trou en matière de sécurité est de ne pas connaître/comprendre votre environnement et les outils tiers si vous les incluez dans votre programme.
Un exemple concret pour expliquer pourquoi:
Dans deux écoles différentes où je suis allé, ils ont utilisé un réseau géré par un logiciel tiers installé sur Windows. Un de ces outils surveillait l’espace disque et si vous en aviez terminé, il vous alerterait et vous demanderait de supprimer des fichiers ou de les copier sur une disquette.
Mais ... Ils avaient une aide qui utilisait le visualiseur d’aide Windows standard !!!
Pour contourner la vérification de la déconnexion, il vous suffisait d'appuyer sur le bouton d'alimentation: un arrêt au lieu de se déconnecter suffit à fermer l'application!
Pour vous connecter, tout ce que vous aviez à faire pour contourner cela était d'ouvrir l'aide, cliquez File
> Open
, dans le nom du fichier, puis, il y avait un certain nombre de choses différentes ...
Vous pouvez taper C:\Windows
, une fois chargé, taper *.*
, vous pouvez ensuite cliquer avec le bouton droit de la souris sur Explorer.exe
et choisir open
, puis faire glisser la boîte à l'écart/coin inférieur .. et quand vous éteignez votre ordinateur, pas de problème!
Vous pouvez ouvrir le Gestionnaire des tâches et simplement fermer l'application.
Vous pouvez ouvrir un document Excel (ou n’importe quel programme Office), lancer une macro et faire ce que vous voulez!
Donc ... Je dirais que cette société était idiote, car ils avaient divers problèmes dans d’autres programmes qu’ils avaient conçus, mais c’était le plus gros problème et ils ont pu être contournés simplement parce qu’ils utilisaient l’aide de Windows sans en comprendre les implications.
"select * from LoginMaster where UserId='" + txtUserId.Text + "'
and Password='" + txtPassword.Text + "';"
J'ai vu cela dans un site Web de production qui exploite l'entreprise MLM. L'instruction Sql ci-dessus est TRÈS TRÈS vulnérable à l'injection SQL .
Je vais également énumérer ici HACME BANK. Selon le site Hacme Bank est:
Hacme Bank ™ est conçu pour apprendre aux développeurs d'applications, aux programmeurs, aux architectes et aux professionnels de la sécurité à créer des logiciels sécurisés. Hacme Bank simule une application de banque en ligne "réaliste" utilisant des services Web, construite avec un certain nombre de vulnérabilités connues et communes. Cela permet aux utilisateurs de tenter de véritables exploits contre une application Web et d'apprendre ainsi les spécificités du problème et la meilleure façon de le résoudre. Les services Web exposés par Hacme Bank sont utilisés par nos autres applications de test, notamment Hacme Books et Hacme Travel.
Le fait que vous pouvez souvent contourner complètement la sécurité ou la fonctionnalité prévue sur la plupart des applications ou des fichiers non chiffrés en utilisant simplement un éditeur hexadécimal de fichier/processus. Bien sûr, il est bon de se donner le mode doré ou infini sur la plupart des jeux - en ligne ou hors ligne, mais il est également intéressant de simplement saisir ou modifier les valeurs à votre guise, y compris les mots de passe. En fait, parfois, tout ce dont vous avez besoin est le Bloc-notes. Heureusement, Notepad ne figure pas encore dans la liste des applications informatiques contrôlées par le gouvernement fédéral dans le cadre du DMCA.
Modifier: Je parle d'exploiter le scénario scénario "Nouveaux habits de l'empereur" en reconnaissant les défauts de sécurité avec le plus simple des outils. Un scénario si répandu dans la programmation ou la communauté de consommateurs, quelle que soit la langue ou la plate-forme, qu’il pourrait aussi bien s'agir d’une norme universelle.
Un code de vérification comme celui-ci:
public bool charsEquals(char[] input, char[] txt)
{
for (int i = 0; i < Math.min(input.length; txt.length); ++i)
{
if (input[i] != txt[i]) return false;
}
return true;
}
Et utilisez-le comme ceci:
if (charsEquals(inputPassword, requestedPassword))
Que diriez-vous de publier votre journal des erreurs ELMAH sur Internet?
Opérateur logique non-contrôlé (OR) dans l'élément de saisie du mot de passe. En l'utilisant, chacun peut facilement passer l'autre où les conditions. Pour, la requête select sera comme celle-ci:
select *
from TheTable
where UserName=@id And Password=@pass OR 1=1
Un de mes amis s'est connecté via GET
. Inutile de dire qu'il a appris la leçon à la dure.
J'allais gagner mon crédit auprès du superviseur pour mon programme graphique assez avancé sur SunOS/Solaris avec la messagerie instantanée activée. Avec zephyr.vars ou tout autre nom, vous pouvez faire apparaître une image sur l'écran de votre ami répertorié, comme si vous le vouliez. moi je pourrais juste vous envoyer une image qui est apparue sur votre écran. Alors que je faisais la démonstration du programme que j'avais écrit pour que le superviseur m'en attribue le mérite, un de mes amis assis près ou dans la pièce voisine a fait apparaître la photo big-mama.xxx sur mon écran. Il n'y a jamais eu de discussion ou de pénalité à cause de l'incident et j'ai eu le crédit du projet qui, pendant une demi-seconde, semblait être programmé pour afficher big-mama.xxx au lieu de résoudre le problème.
(Plus tôt) J'ai mis à jour les scripts Perl et attendu que sysadmin reflète les modifications apportées à l'extérieur du micrologiciel. Ensuite, la base de données avait disparu et ce n'était pas un bug, c'était une fonctionnalité puisque les données étaient stockées avec la source et que, par conséquent, la mise à jour de la source masquait la persistance.
L'accès physique ou la simulation d'une invite de connexion ou d'un écran de connexion sont deux autres cas difficiles sans être trop techniques en algorithmes. Il est facile de comprendre qu'un accès physique offre de nombreuses possibilités. Simuler une invite de connexion est quelque chose que vous pouvez faire sur différents types d'ordinateurs. environnements.
L'année dernière, j'ai découvert que le site Web utilisé pour traiter nos chèques/déclarations de la société pour laquelle je travaillais était criblé de trous d'injection SQL .
Inutile de dire qu'ils ont réparé leurs trous assez rapidement.
Une application utilisant des faces et des beans gérés. Le bean utilisé pour modifier l'utilisateur déjà connecté était identique utilisé par le formulaire d'auto-enregistrement, où deux champs masqués constituaient la seule différence. Sens? Si vous obtenez le numéro de document de quelqu'un (équivalent à SSN aux États-Unis), vous pouvez en fait changer son mot de passe.
Dans PHP, c'était dans le premier fichier d'inclusion:
extract($_GET);
extract($_POST);
Cela permettait de remplacer des variables non appelées par _GET ou _POST.
Un de mes amis a déjà entendu parler d’un site qui transmettait des requêtes SQL sous forme d’arguments GET. Vous savez que certaines personnes se sont amusées avec ça.
Le pire trou de sécurité que j'ai vu venait d'une (très très mauvaise) société d'hébergement. Et pire encore, c'était il y a quelques mois seulement (été 2010)! Vous deviez d'abord vous connecter au panneau de contrôle de votre pack d'hébergement (vous aviez besoin d'informations d'identification valides). Une fois connecté, tout ce que vous deviez changer était le jeton id GET de l'URL et voilà, vous êtes dans le panneau de configuration d'un autre utilisateur! Vous avez accès (sauvegarder/éditer/supprimer) aux courriels, fichiers, bases de données. Les identifiants étant séquentiels, il vous suffit de faire +1 et vous vous trouvez dans le compte suivant. J'espère que quelqu'un a été viré pour cela!
C'était l'un des nombreux WTF que j'ai expérimenté avec eux! Heureusement je n'étais pas un de leurs clients!
Dans mon ancienne école, les mots de passe des étudiants étaient identiques à ceux de leur nom d'utilisateur. DE PLUS, il était facile d'obtenir leurs noms d'utilisateur (un numéro, ex 123233). Vous pouvez ensuite cliquer sur add column et trouver le nom et le prénom des étudiants, leurs noms d'utilisateur. Il était donc facile de mettre des ordures au hasard dans leurs comptes et de leur faire croire qu'il y avait un "fantôme dans la machine"
Qui peut oublier le trou de sécurité classique de Windows 98?
Copier le texte du mot de passe ********* et le coller dans un traitement de texte vous montrerait le mot de passe sur à peu près n'importe quoi.
J'ai déjà eu au moins un collègue de travail qui s'est probablement qualifié comme tel.