web-dev-qa-db-fra.com

Machine de craquage de mot de passe Powered GPU - Acheter métal ou nuage?

En tant que IS cabine de conseil, nous aimerions avoir notre propre machine à craquer de mot de passe. Grand.

Maintenant, après quelques esquisses et des grains de cerveau, nous avons conclu que le GPU est le meilleur moyen d'aller (contrairement aux tables de la CPU ou de l'arc-en-ciel). Et les questions que nous avons trouvées difficiles à résoudre étaient ce que le meilleur choix - pouvons-nous acheter juste assez de pouvoir du service Cloud sur demande (une sélection immédiate est une sélection immédiate, mais si vous avez des recommandations, allez-y) ou pour nous acheter une machine et le construire avec le matériel approprié. BTW, nous pensons à utiliser OCLHASHCAT-PLUS si cela fait une différence.

Suggestions sur la façon de régler le débat? Peut-être une approche complètement différente?

Merci d'avance,

9
dalimama

Il s'agit d'une analyse de coûts/avantages simples. C'est donc une question d'entreprise plutôt que d'une sécurité que vous avez déjà décidé de savoir comment aborder l'aspect de la sécurité. Écrivez votre code, reportez-vous et comparez les numéros dans une feuille de calcul.

Pour le métal

* Cost of metal
* Cost per hour in terms of electric bill (assume under full load) 
* Budget for parts replacement
* Operations per second

Pour les EC2

* Amazon rate per hour
* Operations per second

Comparer les chiffres sur un mois par mois ou par an par an. Choisissez celui qui a plus de sens en fonction de la vie attendue. Les coûts de chargement frontal, la valeur actuelle nette, l'utilisation attendue, le risque, etc. sont tous des problèmes de comptabilité.

15
Jeff Ferland

Avez-vous essayé les nouvelles tables Rainbow GPU de FreeRainbowTables.com?

Vous n'avez même pas besoin d'un supercalculateur/nuage pour vérifier les hachages. Vous pouvez faire un don au projet FreeRainBowTables.com Quelques quincailleries et demandez vos tables arc-en-ciel personnalisées. (Ils ont plus de 2000 machines, dans leur projet distribué qui génère des tables arc-en-ciel sur la CPU ainsi que le GPU).

Pour les hachages salées, j'irais avec une gamme de machines à craquer FPGA.

Je vous suggère de poster cette question sur le forum ( http://freerainbowtables.com/phpbb3/ ), il y a quelques monstres technologiques tels que SC00BZ, qui fournirait une réponse très perspicace.

4
a2480f25

Vous devez exécuter les chiffres; Cependant, quelles sont vos contraintes de temps?

En tant que société de conseil, vous pouvez vous retrouver avec un client qui souhaite voir les résultats d'ici demain. Le seul moyen d'évoluer ce grand est d'utiliser Amazon. Construire votre logiciel afin que vous puissiez accomplir à mille nœuds, c'est la seule façon de le faire (sans posséder tout ce matériel).

L'utilisation de 1000 nœuds pendant 1 jour est le même coût que 100 nœuds pendant 10 jours, mais vous aurez les résultats plus rapidement.

3
Bradley Kreider

Ce lien sur les GPUS et la fissuration du mot de passe EC2 vous donne une grande partie des informations que vous recherchez: http://erratasec.blogspot.com/2011/06/password-cracking-mining-and-gpus.html Englisons

Le résultat est-ce. Les GPU RADEON sont environ 3 fois plus rapides que l'équivalent NVIDIA GPU pour la fissuration du mot de passe. Mais, EC2 utilise Nvidia GPU, car ils sont meilleurs dans la plupart des autres tâches GPU. De plus, EC2 n'utilise pas simplement NVIDIA GPU, mais les versions "Tesla" coûteuses. Vous pouvez acheter un GPU de Radeon de 250 $ avec le même mot de passe Performance de fissuration d'un système TESLA de 10 000 $. Que vous l'achetez ou louez-le d'Amazon, cela n'a pas de sens.

Étant donné que les GPU peuvent vous faire craquer 20 fois plus vite qu'un processeur normal, il y a un grand avantage à l'utiliser l'un d'entre eux. Mais, parce qu'il y a des rendements marginaux réduits, il n'y a pas beaucoup d'avantages à investir beaucoup d'argent dans le numéro de GPU Crunching.

Le résultat est que c'est la peine de dépenser 500 $ pour deux cartes Radeon 6850 et de les coller dans votre bureau à utiliser avec Oclhashcat, mais ne méritez pas de dépenser plus.

3

Il s'agit de la gestion des risques et de l'analyse des coûts/avantages. Plus vous êtes le risque que vous soyez prêt à prendre, moins cela vous coûtera pour exécuter votre candidature. Il existe des menaces fondamentales et quelque peu évidentes susceptibles de perturber ou de compromettre les opérations de votre application:

  1. Risque de sécurité physique

    • Ceci fait référence aux menaces de sécurité physique à l'infrastructure de votre application, telles que l'accès physique non autorisé au matériel, aux catastrophes naturelles, aux pannes de courant, aux perturbations du réseau, au terrorisme, etc.
  2. Risque de sécurité informatique

    • Les administrateurs informatiques exigent un accès physique au matériel, ainsi que l'accès virtuel des systèmes d'exploitation fonctionnant sur le matériel. Les administrateurs informatiques nécessiteront un tel accès aux serveurs, aux équipements de réseau, aux circuits de distribution d'énergie, aux logiciels de surveillance, etc. Il existe de nombreux risques de sécurité et de fonctionnement associés à de nombreuses mains différentes sur vos systèmes de matériel et de votre logiciel.
  3. Risques de défaillance technique

    • Le matériel et le logiciel peuvent et ne manqueront pas de raisons techniques et ils sont des problèmes quotidiens. En ce qui concerne l'informatique GPU, vous voudrez avoir un grand groupe de GPU (autant que vous pouvez obtenir). Mais plus vous exécutez des serveurs, plus les chances d'une défaillance matérielle se produisent au hasard.
    • Par exemple, une carte réseau ou une alimentation pourrait être brûlée. Ou une fuite de mémoire pourrait planter un serveur.
    • Un problème plus subtil mais aussi commun est également des interférences électromagnétiques à partir du rayonnement de fond cosmique pouvant causer une corruption de mémoire.

      1. Risque de capacité
    • Au fur et à mesure que vos besoins informatiques fluctuent, vous pourriez avoir un besoin soudain d'augmenter l'échelle en ajoutant une capacité à votre cluster GPU (I.E. ingadd plus GPU). Votre infrastructure risque de ne pas être en mesure d'accabler les exigences de votre demande.

Pour vous aider à comprendre la situation, laissez-moi vous donner trois exemples de différentes configurations de cluster de GPU avec différents profils de coûts/avantages:

  1. Centre de données privé de niveau 4

    • Vous construisez un bunker souterrain dans un pays souverain amical avec de fortes lois sur la vie privée, dans la région de la planète à l'abri des catastrophes naturelles communes
    • Votre centre de données est physiquement gardé par des systèmes de surveillance et des professionnels de la sécurité armée
    • Les systèmes d'accès à la sécurité bio-métrique dans chaque rack serveur du centre de données garantissent que seul le personnel autorisé peut jamais accéder physiquement au matériel particulier.
    • Vous avez deux circuits d'alimentation secteur redondants provenant des usines de production d'électricité sur la grille au centre de données
    • Chaque circuit secteur est soutenu par une alimentation de sauvegarde UPS et un générateur de sauvegarde (vous avez des contrats avec des sociétés d'approvisionnement en carburant pour garantir une alimentation en carburant pour exécuter les générateurs sur une période prolongée de temps)
    • Chaque périphérique (serveur, commutateur, etc.) dans votre centre de données dispose de double alimentation redondante, avec chaque alimentation connectée à un circuit secteur distinct.
    • Le centre de données est connecté au monde extérieur via plusieurs liaisons de fibres optiques redondantes vers des transporteurs de télécommunications de sackbone
    • Le réseau local de votre centre de données Connexion des serveurs est entièrement redondant, avec plusieurs cartes d'interface réseau liées à chaque serveur, connectées à plusieurs commutateurs redondants, pare-feu, etc.
    • Le réseau local de votre centre de données Connexion des serveurs est entièrement redondant, avec plusieurs cartes d'interface réseau liées à chaque serveur, connectées à plusieurs commutateurs redondants, pare-feu, etc.
    • La technologie de virtualisation est utilisée pour exécuter des systèmes d'exploitation dans des machines virtuelles interconnectées via des réseaux virtuels, afin de protéger contre les défaillances matérielles physiques. Les serveurs physiques sont configurés sous forme de cluster de machine virtuelle, de sorte que les machines virtuelles puissent être déplacées de manière transparente d'une machine physique à une autre.
    • Vous utilisez uniquement du matériel de serveur avec la mémoire de correction de la correction des erreurs (ECC), pour protéger contre les interférences électromagnétiques du rayonnement de fond cosmique. Pour les GPU, cela signifie que vous devez utiliser la série de cartes Tesla chère de Nvidia qui possède une mémoire ECC. Les cartes de jeu moins chères ne disposent pas de la mémoire ECC, elles sont donc sujettes à la corruption des données.
    • Vous avez un centre d'opérations de sécurité 24h/24 et 7j/7, faites des choses comme surveillant le trafic réseau et l'activité du serveur pour détecter et répondre aux menaces d'intrusion
    • Vous avez un centre d'opérations réseau 24h/24 et 7j/7, suivi et maintien de l'état et de la santé des systèmes, etc.
    • Vous avez des systèmes de refroidissement redondants pour le centre de données
    • Le filtrage de l'air et les systèmes de surveillance de la qualité de l'air sont en place pour éviter la poussière d'entrer dans le matériel
    • Détection d'incendie, alarme incendie et systèmes de suppression des incendies avec des agents de suppression sèche sont en place
    • Les tuyaux d'eau et autres systèmes d'eau sont évités - pas d'eau près des serveurs
    • Vous gardez des composants de matériel de rechange en place au cas où ils doivent être remplacés
    • Il y a beaucoup d'espace de rack de rechange, de puissance et de capacité de refroidissement pour augmenter votre centre de données si nécessaire
    • Tous les aspects du centre de données sont audités de manière continue par une équipe d'audit interne
    • Pour une redondance de sécurité, vous construisez un ou plusieurs centres de données similaires secondaire bunkers souterrains dans un autre pays et de diviser votre cluster sur plusieurs régions. Vous utilisez la technologie Global Server charge et basculement pour exécuter votre application transparente sur plusieurs centres de données.
    • Ceci est moins risqué, mais la solution la plus coûteuse
    • Notez qu'il ya beaucoup d'autres choses impliquées dans la construction d'un centre de données de niveau 4 (voir http://www.adc.com/Attachment/1270711929361/102264AE.pdf )
  2. Centre de données tiers

    • Au lieu de construire votre propre centre de données, vous pouvez co-localiser vos données dans un centre de données tiers. Colocalisation dans un établissement de centre de données Tier 4 serait très cher (surtout si vous êtes co-localisation dans redondance multiple, des centres de données), mais pas aussi cher que la construction et de posséder votre propre installation. Cela est moins sûr que posséder votre propre centre de données privées, mais aussi moins coûteux.
    • Vous possédez toujours votre propre et d'exécuter votre propre matériel qui est co-situé dans les racks. Vous pouvez les fixer vous-même et vous pouvez mettre à niveau le matériel à chaque fois que vous avez besoin. Il existe de nombreuses options de serveur GPU Tesla sur le marché des différents fournisseurs de matériel, comme IBM, Dell, HP, etc.
  3. Solution Cloud (par exemple Amazon EC2)

    • Vous n'avez pas un contrôle physique sur les systèmes de virtualisation matérielle et serveur. Tous vos serveurs sont des machines virtuelles en cours d'exécution dans le centre de données d'Amazon. La sécurité de votre application est à la merci d'Amazon et de ses employés.
    • Vous pouvez configurer un réseau privé virtuel à l'intérieur Amazon pour plus de sécurité. Vous pouvez également exécuter vos propres connexions physiques aux centres de données EC2 d'Amazon.
    • Amazon propose trois types d'instances de GPU: les instances ponctuelles, instances à la demande et des instances réservées. les instances ponctuelles sont les moins chers, mais vous ne sont pas garantis capacité - vous pourriez enchérir sur 10 processeurs graphiques sur le marché spot et obtenir seulement 2, et vous risquez de perdre vos processeurs graphiques si le prix spot dépasse votre enchère maximale. instances à la demande sont plus chers, mais coûtent un taux fixe et vous pouvez les exécuter aussi longtemps que vous avez besoin, mais la capacité ne sont pas garantis. Les instances réservées sont les plus coûteux et nécessitent de payer une redevance annuelle de réservation pour chaque serveur que vous souhaitez réserver, mais cela garantit que vous aurez toujours accès au nombre de serveurs dont vous avez besoin.
    • Le nuage Amazon EC2 est distribué sur plusieurs sites géographiques. Cela vous permet d'avoir plusieurs centres de données redondants
    • Vous n'avez pas l'achat et l'entretien de votre propre matériel, et vous payez pour l'utilisation mesurée par l'heure qui peut être très efficace si le coût de votre avoir de grandes fluctuations de vos demandes de calcul. Si vous avez besoin de 100 processeurs graphiques pour quelques jours sur l'année, alors l'esprit serait beaucoup plus rentable d'utiliser le nuage que d'acheter et de gérer votre propre matériel tout au long de l'année.
    • Amazon ne propose que le NVIDIA Tesla C2050 GPU Fermi. Il y a plus d'options matérielles GPU disponibles si vous possédez votre propre matériel, y compris le nouveau GPU Kepler de NVIDIA qui ne sont pas encore disponibles sur Amazon
    • Location Amazon est très GPUs pas cher si vous y allez avec des cas ponctuels (ceux-ci coûtent généralement 60 cents par heure, sans frais initiaux). Mais si vous avez besoin réservé des cas alors la hausse des coûts de façon spectaculaire à environ 5,00 $ par heure en moyenne.
    • Travailler avec un nuage comme Amazon est plus compliqué que toute autre solution. Il vous oblige à passer beaucoup de temps à apprendre sur les questions tangentielles sur la façon dont le nuage Amazon fonctionne au lieu de passer du temps à trouver comment utiliser les GPU pour résoudre votre application réelle.
  4. Construisez votre propre à faible coût, supercalculateur GPU haute performance dans votre sous-sol

    • Disons que la plupart des risques que j'ai parlé ne sont pas pas la peine de circonstances atténuantes pour vous. Vous êtes prêt à mettre un cluster de GPU dans votre sous-sol pour économiser sur les centres de données des coûts de l'immobilier, et vous êtes prêt à accepter les risques, tels que l'éclatement d'un tuyau et inonder votre sous-sol " centre de données "
    • Votre application n'est pas la mission critique, il ne nécessite pas le temps de disponibilité garanti 24/7. Si une catastrophe naturelle de votre maison, arrive, vous serez probablement inquiet au sujet des choses plus importantes que la sécurité de vos processeurs graphiques.
    • Vous ne vous souciez même pas de l'interférence électromagnétique des rayonnements de fond cosmique. Si votre mémoire est corrompue et qu'un GPU est suspendu, vous pouvez simplement redémarrer le serveur (et vous avez un groupe de GPU de toute façon, de toute façon perdre un ou deux n'est pas une grosse affaire). Vous pouvez utiliser les dernières cartes de jeu basées sur NVIDIA GeForce Kepler qui sont moins chères et plus rapides en une précision unique que les cartes Tesla offertes à Amazon. Vous êtes un tel preneur de risque que vous êtes prêt à faire tout votre calcul en une précision unique au lieu de la double précision, de tirer parti des cartes de jeu moins chères. Donc, vous pouvez acheter un GPU de jeu haut de gamme à partir d'une OEM pour 400 $ par carte, au lieu d'acheter un GPU Tesla de NVIDIA pour 2 500 $ par carte et vos GPU de 400 $ seront nettement plus rapides que les GPU TESLA plus coûteux, ce qui signifie que vous pouvez acheter plus de GPU. avec votre budget.
    • Vous pouvez prendre une page sur le Google Playbook ... au lieu d'acheter des serveurs de fantaisie de sociétés telles que IBM ou Dell, vous pouvez construire vos propres serveurs Hare-Bones, des serveurs GPU ultra-bas. Cela signifie que vous pouvez acheter encore plus de GPU avec votre budget. Par exemple, vous pouvez sauter toutes les cloches et toutes les sifflettes comme un cas pour le serveur, les alimentations à double alimentation, les disques durs, etc., car vos serveurs n'auront aucun cas plus facile à refroidir. Vous pouvez également construire votre serveur avec un processeur à faible consommation à faible coût, à faible consommation (au lieu de dépenser de l'argent sur de gros processeurs d'Intel multi-noyau coûteux que vous n'utilisez de toute façon que vous n'utilisez pas de GPU) et dépensez plutôt de l'argent sur plus de GPU au lieu de processeurs inutiles. Vous pouvez tout courir sur Linux pour éviter complètement les frais de licence logiciels, vous laissant plus d'argent à dépenser sur le matériel GPU.
    • Ce n'est pas une solution très sécurisée du tout. Cependant, cela vous fera preuve de mainse le supercalculateur rapide GPU par dollar que vous dépensez. Ceci est votre plus grand coup pour l'argent si vous n'êtes pas inquiet de gérer un centre de données dans votre sous-sol. Et c'est l'environnement le plus facile à maintenir et à développer, il n'y a pas de technologie de nuage compliquée ni d'obstacles à la sécurité.

Conclusion: Pour une machine à craquer de mot de passe, je recommanderais d'aller avec Amazon EC2 si vous envisagez d'utiliser un grand nombre de GPU pour de petites quantités de temps. Si vous vous attendez à ce que vous n'ayez besoin que de crack des mots de passe de temps en temps, mais lorsque vous avez besoin de casquer un mot de passe, vous voulez immédiatement autant de GPU que vous pouvez obtenir, alors je vous recommanderais d'aller avec Amazon EC2 Spot ou sur -Demands cas. Toutefois, si vous envisagez de craquer des mots de passe 24/7, c'est-à-dire à maximiser votre utilisation de votre infrastructure, alors je recommanderais avec enthousiasme la voie de bricolage de la construction d'un groupe GPU dans votre sous-sol (assurez-vous simplement que vous avez suffisamment de capacité de puissance ou vous voyage un circuit). Je devrais aussi dire que la route de bricolage est beaucoup plus amusante.

3
expert

La fissuration du mot de passe de force brute dépend de l'algorithme utilisé. Par exemple, essayez-vous de casser un mot de passe SHA1, SHA2 ou BCRYPT? Ou est le scrypt d'algorithme sous-jacent?

Il n'est pas possible (autant que je sache) le GPU accélère un hachage de mot de passe basé sur le scrypt, et seules les optimisations de la CPU sont disponibles en raison des exigences supplémentaires sur RAM avec la cryptographie.

Ensuite, y a-t-il des bibliothèques qui soutiennent ce que vous devez faire? Opencl est populaire, mais effectue différemment sur NVIDIA GPUS VS AMD GPUS. De plus, vous pouvez obtenir une meilleure performance avec les API spécifiques au fournisseur.

Enfin, sachez que chaque carte vidéo fonctionne différemment et une carte NVIDIA de 700 $ est riche mais trop efficace dans le hachage SHA2. Une carte vidéo AMD similaire surperformera une carte NVIDA pour le hachage SHA2 d'environ 40% ou plus en fonction de la carte.

Si vous choisissez d'utiliser le cluster de GPU Amazon GPU, sachez que le seul système d'exploitation est CENTOS et vous devrez avoir python Compétences (ou similaire) pour obtenir votre code et exécuter. Ce n'est peut-être pas Cela vaut la peine à long terme depuis que la ferme GPU offerte par Amazon comprend les anciennes cartes Nvidia qui sont bonnes pour le déchargement des mathématiques générales, mais pas efficace pour le hachage de mot de passe.

0
goodguys_activate