Table des matières:

Piratage de commutateur générique : 3 étapes
Piratage de commutateur générique : 3 étapes

Vidéo: Piratage de commutateur générique : 3 étapes

Vidéo: Piratage de commutateur générique : 3 étapes
Vidéo: J'ai traqué ce pirate informatique sur 3 continents ! - Christophe Casalegno 2024, Juillet
Anonim
Pirate de commutateur générique
Pirate de commutateur générique

Cet article décrit comment créer un microcontrôleur à semi-conducteurs qui contrôle les commutateurs physiques. C'est très peu coûteux à faire (4$ environ), en supposant que vous ayez un programmeur de microcontrôleur. Le circuit lui-même est d'une complexité triviale.

Ce projet est très simple et n'implique aucune nouvelle technique étonnante. Ce serait un bon premier projet de microcontrôleur. Le code source de l'assembly vous sera fourni dans cet article. J'ai un patron vraiment cool au travail. Parfois, nous aimons nous faire des farces. Malheureusement pour lui, je suis un scientifique. Mon but ici est de faire en sorte que divers appareils sur le lieu de travail s'allument mystérieusement pendant de courtes périodes. Des radios, des imprimantes bruyantes, même ces cartes d'anniversaire musicales ennuyeuses cachées dans un objet banal. En plus de cela, le projet est un exemple de la façon dont vous contrôlez des charges plus lourdes avec un AVR que les broches de sortie ne peuvent gérer elles-mêmes. Il s'agit d'une grande variété de choses, car les broches de sortie ne vous donnent qu'une petite tension et un courant très limité. Ce circuit pourrait être étendu avec un relais pour contrôler certaines charges très lourdes en effet.

Étape 1: Conception et circuit

Conception et circuits
Conception et circuits

Pour ce projet, vous pouvez utiliser presque n'importe quel microcontrôleur, régulateur de tension 5v et transistor NPN. J'ai utilisé:

1x ATtiny26L-8PU (~2$) 1x TL780 5v régulateur de tension (~0.7$) 1x transistor N2222 (~0.07$) 1x pile 9v, ou pile télécommande 12v pour gagner de la place … et bien sûr mon fidèle STK500, maintenant avec ZIF prises ajoutées ! La conception de base est la suivante: le microcontrôleur passe par deux boucles de synchronisation. Une boucle longue pour déterminer quand allumer l'appareil et une boucle courte pour déterminer combien de temps garder l'appareil allumé. Lorsqu'il est temps de causer des problèmes, le microcontrôleur envoie une sortie logique élevée sur la broche 14 (bit le moins significatif de PORTA). Cela déclenche le transistor. Si vous avez connecté les pinces aux fils d'un interrupteur, la résistance à travers l'interrupteur chute soudainement de très élevée à moins de 1 ohm, ce qui est suffisant pour que la plupart des appareils considèrent l'interrupteur sous tension. Gardez à l'esprit que les transistors sont aussi des diodes, donc si cela ne fonctionne pas… la polarité des pinces est probablement fausse, changez-les ! De plus, cet appareil nécessite une pile 9v décente, disons avec un potentiel de plus de 8v… à part cela, il ne consomme pas beaucoup d'énergie. Il y a beaucoup de broches inutilisées, donc bien sûr, vous pouvez les utiliser pour contrôler plus de commutateurs pour plus de chaos, mais cela était suffisant pour mes besoins. La prochaine étape est le code source que j'ai écrit pour faire avancer cette chose. Les durées par défaut pour les états "on" et "off" sont respectivement d'environ 10 secondes et 13 minutes. Il y a des commentaires dans le code sur la façon de modifier ces valeurs. Enfin, veuillez excuser l'utilisation intensive de la fonction "nop" (elle passe un cycle CPU à ne rien faire) pour ajuster les temporisateurs. C'est inélégant car cela peut casser la fonction rjmp si vous ne faites pas attention au nombre que vous en utilisez !

Étape 2: Code source

DÉBUT:

. INCLUDE "tn26def.inc"; Fichier de définition. Google pour cela si vous avez besoin d'une copie. clr r30 clr r29 clr r28 clr r27 ldi r28, 0b00000000 ldi r27, 0b11111111 ldi r26, 0b00000000 clr r25 out DDRA, r27 out PORTA, r28 TIMER: inc r30 nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop cpi r30, 0b11111111 breq TIMER2 rjmp TIMER TIMER2: nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop inc TIMER r29 cpi1113 r1129, breq3: 0 nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop inc r25 cpi r25, 0b11111111; Baisser ce nombre pour diminuer le temps de « off » breq FUNC rjmp TIMER FUNC: nop nop cpi r, 0x00 breq FUNC2 déc r28 clr r30 clr r29 clr r25 out PORTA, r28 rjmp TIMER FUNC2: nop nop inc r28 out PORTA, r28 clr r25 clr r30 clr r29 rjmp TIMER4 TIMER nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop cpi r30, 0b11111111 breq TIMER5 rjmp TIMER4 TIMER5: nop nop nop nop nop nop nop nop nop nop nop nop inc r29 cpi r29, 0b11111 111 breq TIMER6 rjmp TIMER4 TIMER6: inc r25 cpi r25, 0b00000011; Augmentez ce nombre pour augmenter le temps d'activation breq FUNC rjmp TIMER4

Étape 3: Remarque finale

Amusez-vous, mais rappelez-vous que le transistor a des limites en termes de puissance que vous pouvez pomper à travers lui. Cela signifie qu'il n'y a pas de tension secteur ! Outre le fait qu'il surchargerait le transistor très rapidement, cet appareil ne contrôlera pas bien les signaux alternatifs… sauf si vous appliquez la modification décrite ci-dessous *et* ajoutez un relais: la plaque de base connectée à la même source que le premier transistor, mais avec le collecteur et l'émetteur dans la configuration opposée. De cette façon, quelle que soit la manière dont vous attachez les pinces, un niveau logique élevé sortant du microcontrôleur "allumera" toujours l'interrupteur. Gardez à l'esprit que le courant de fuite dans ce système peut être suffisant pour activer certains commutateurs sensibles comme les matrices de clavier, vous devrez peut-être ajouter une résistance en série pour cette application. N'oubliez pas que vous pouvez puiser l'énergie de l'appareil cible au lieu d'utiliser une batterie. Enfin… J'ai installé l'appareil à l'intérieur d'une ancienne calculatrice comptable, du type qui a des fonctions d'impression. J'ai procédé à l'ingénierie inverse de la matrice du clavier à l'aide d'un trombone pour déterminer quelles broches IC, lorsqu'elles sont connectées, provoqueraient une alimentation en papier, et j'ai connecté les broches correctes avec l'appareil. Ensuite, j'ai désactivé l'interrupteur qui permet de désactiver la fonction d'impression. Je considère la machine correctement subvertie. Il active l'alimentation papier assez bruyante toutes les 10 minutes, pendant 10 secondes, chaque fois que l'appareil est allumé. Cela a également bien fonctionné avec le circuit d'une de ces cartes d'anniversaire musicales hyper odieuses. Mon lieu de travail est maintenant plus bizarre !

Conseillé: