Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Enkele dagen geleden hebben we een van de meest emotioneel geladen evenementen afgerond dat we in het kader van onze blog hadden mogen organiseren - een online hackgame met het doel om een server te vernietigen.

De resultaten overtroffen al onze verwachtingen: de deelnemers organiseerden zich niet alleen snel tot een hechte community van 620 mensen op Discord, maar namen de quest ook letterlijk met een stormaanval binnen twee dagen, zonder pauzes om te slapen.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen
En zo eindigde het:

Video afspelen

Hoe het allemaal begon en waar het eigenlijk over ging?

De game begon op 12 augustus, toen we op de blog bericht een videocommercial plaatsten waarin een hacker in de gedaante van een schedel uitnodigt om te spelen, de server te vernietigen, kortsluiting in de kamer te veroorzaken (of een kleine brand) en het geld dat in de shredder zat op te halen.

Het was een online quest: we startten een livestream op YouTube vanuit een kamer gevuld met IoT-apparaten, met een onderliggende server (die vernietigd moest worden), en er was een aquarium boven de server met een gewicht eraan opgehangen. Om de game spannender te maken, besloten we een prijzenpot van 200.000 roebel in te stellen, die we in de shredder plaatsten en deze instelden om elke 60 minuten te activeren. Elk uur at de shredder 1000 roebel op - hoe eerder de spelers het zouden stoppen, hoe meer geld ze zouden winnen.

Video afspelen

Het bouwen van deze quest was op zichzelf al een avontuur - we moesten ons met alleen bezorgmaaltijden voeden en sliepen elke dag maar een paar uur in dezelfde kamer. Maar het meest verbazingwekkende was om de gedachtegang van de spelers te zien en hun emotionele betrokkenheid in het proces.

Eerlijk gezegd overtrof de vindingrijkheid van de spelers in het oplossen van de raadsels onze bescheiden plannen vele malen: elke vrije minuut lazen we de Discord-chat en in sommige gevallen konden we letterlijk niet stoppen met lachen van de dingen die de spelers deden en hoe ze in het proces grapjes maakten.

Aan het project werkten onvermoeibaar 7 mensen: een backend-ontwikkelaar, een hardwareexpert, een echte filmproducent, een CG-designer en twee ideƫle inspiratoren/producenten.

In toekomstige berichten zullen we vertellen hoe de quest technisch werd gerealiseerd, maar voor nu zal ik de oplossing uitleggen: hoe je deze kamer tijdens de livestream moet hacken. Laten we ook de chronologie van de gebeurtenissen opnieuw bekijken, evenals alle absurde Illuminati-theorieƫn uit de Discord-chat en meer.

Wat er aan de spelers gebeurde aan het begin van het spel

Alle items in de kamer werden in drie categorieƫn ingedeeld:

  • Eenvoudig te bedienen, niet-gaming IoT-apparaten
  • Gamingapparaten voor het voltooien van de quest
  • Sfeer

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

We hadden 8 zeer eenvoudig te bedienen elementen geplaatst: twee lampen, een verlichting, en vijf letters van SOCOL, waarvan elke kleur kon worden veranderd. Alles kon direct vanaf de website in- en uitgeschakeld worden, en je zag het resultaat onmiddellijk op de uitzending — we hebben ze speciaal toegankelijk gemaakt voor alle spelers, ongeacht hun technische bekwaamheid.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen
Alles wat eenvoudig vanaf de website kon worden ingeschakeld

Van de belangrijke speelelementen die nodig waren om de quest te voltooien, en waarbij toegang niet zo eenvoudig was te krijgen:

  1. Een server met een open deksel en een aquarium bovenop
  2. Een gewicht, opgehangen zodat het het aquarium kon breken
  3. Megatron 3000 — een krachtige laserpointer gericht op het touw dat het gewicht vasthield
  4. Een krachtige ventilator die werd ingeschakeld bij belasting op de server
  5. Een flipchart waarop de login en het wachtwoord voor Megatron waren geschreven
  6. Een telefoon waarop je kon bellen en je oproep live kon zien
  7. Een shredder die 1000 roebelbriefjes per uur opat

Hoe de quest werd opgelost

Ik zal meteen zeggen: de kist opende vrij eenvoudig.

Het doel van het spel was om de shredder te stoppen door een kortsluiting in de kamer te veroorzaken. Hiervoor moest je het aquarium breken door er het gewicht in te lanceren en de server met water te overstromen. Het gewicht hing aan een touw waaraan Megatron was gericht. Door controle over Megatron te krijgen, kon het touw worden doorgesneden. Dit gebeurde in 5 eenvoudige stappen:

Stap 1. Belast de server die in de kamer staat

Bijvoorbeeld door het sturen van pakketten met het commando.

ab -r -n 10000 -c 100 -s 280 -l https://ws.ooosokol.ru/captcha

De hint was een zeer belastende captcha en een werkende opdracht krijgen. de pagina Prijslijst.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen
De captcha die we moesten aanvallen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Bij belasting van de server steeg de temperatuur en dit kon worden gevolgd op de monitoring die direct voor de camera was geopend. Vervolgens werd de ventilator ingeschakeld, die het lichte gordijn op de flipchart opende. Toen werd de login en het wachtwoord voor toegang tot de pagina van Megatron op het bord zichtbaar.

En de pagina voor het besturen van Megatron kon worden gevonden door alle certificaten te controleren die op het domein ooosokol.ru waren uitgegeven.

Op de subdomein megatron.ooosokol.ru De beheerderspagina van Megatron was geopend. Maar deze bleef gesloten totdat er primaire voeding naar Megatron werd gestuurd.

Al deze stappen werden door de spelers bijna meteen in de reacties van de uitzending op YouTube doorlopen. Daarna werden de taken lastiger en de spelers creƫerden een Discord-server genaamd RUVDS Hack Room om de discussie voort te zetten.

Stap 2. Stuur primaire voeding naar Megatron

Alle slimme apparaten die vanaf de website werden beheerd (dezelfde lampen die de spelers continu aan en uit schakelden) hadden hun eigen identificaties.

Om primaire voeding naar Megatron te sturen en het tegelijkertijd te verlichten, moest er een verborgen apparaat op de beheerderspagina worden gevonden en ingeschakeld.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Hiervoor moest er naar de identificaties van de apparaten worden gekeken en opgemerkt dat er in totaal 4 apparaten waren, terwijl er op de website slechts 3 beschikbaar waren.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

De pagina van Megatron werd toegankelijk bij het inschakelen van het 4e apparaat en de laser werd verlicht. Maar het was op dat moment onmogelijk om met de laser te schieten, en er hing een pagina bericht dat de laser momenteel niet beschikbaar was en een hint gaf: de stroom was uitgevallen op kantoor, men moest de beheersmaatschappij bellen en vragen om de voeding in te schakelen.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen
Hint over de beheersmaatschappij

3. Bel de beheersmaatschappij en vraag om de voeding van Megatron in te schakelen

Volgens het LOR kon Megatron niet schieten omdat de stroom was uitgevallen op kantoor. De voeding opnieuw inschakelen kon alleen door de beheersmaatschappij, die gebeld moest worden en waarbij identificatie als eigenaar van de LLC moest worden doorlopen.

Het telefoonnummer van de beheersmaatschappij was gemakkelijk te vinden - we hebben het direct in de footer geplaatst.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Maar het doorlopen van de identificatie was veel moeilijker.

Bij het bellen naar het nummer +74991130688 nam een meisje-operator de telefoon op en vroeg met een verveeld stem om het belastingnummer van het bedrijf en de volledige naam van de eigenaar. Zonder deze informatie weigerde ze de voeding in te schakelen en legde uit dat ze gewoon een extern callcenter was, met 2000 klanten en kantoren, en zonder deze informatie kon ze de juiste niet vinden.

Voor de spelers bleek dit het moeilijkste onderdeel te zijn. De juiste belastingnummers en namen van de eigenaar werden bijna twee dagen gezocht, terwijl ik (in de hoedanigheid van de callcenter-operator) in die tijd meer dan 400 telefoontjes heb aangenomen. De telefoon ging elke 2-3 minuten.

De jongens zochten op alle mogelijke manieren. Alles werd geprobeerd: ze doorzochten de broncode van de website, googleden de eigenaar van de site, Sokolov, en zochten op sociale netwerken.

Ze zochten naar de belastingnummers van verschillende bedrijven.
Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen
Bijna volledige zoekschema

Op een gegeven moment belden ze zelfs met een vervangend nummer - alsof ze vanuit het kantoor van het bedrijf Sokol belden, zoals vermeld in de footer.

Toen ontdekten we hoeveel bedrijven de naam Sokol dragen. Bijna elk van deze bedrijven werd gebeld door spelers, maar dat was niets vergeleken met wat de site heeft meegemaakt. lasermasters.ru, waar we ongeveer een maand geleden daadwerkelijk de Megatron kochten.

Eerst viel Discord de support van Lasermasters aan.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Toen konden ze daar iemands account vinden! Terwijl de support van Lasermasters al niet meer op de woorden lette.

Voorzichtig, houd de kinderen van het scherm!
Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen
Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Uiteindelijk besloten ze gewoon Lasermasters te DDoSen en hun site viel uit. Evenals de site van Sokol, hoewel we die snel weer online kregen.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Tijdens het onderzoek vonden de jongens van Discord zelfs de acteur wiens foto we van stock hebben gekocht om de hoofdantagonist, eigenaar van ŠžŠžŠž Andrey Sokolov, te spelen. Het bleek dat hij Yuri heet en totaal niet op de hoogte was van de rommel waarin hij terechtkwam.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen
Andrey Sokol, een personage uit het spel

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen
Yuri, het model

Als hij maar wist hoe hij 600 mensen twee nachten wakker heeft gehouden...)

Toen begonnen ze al specifiek naar mij te graven als de organisator van de quest (wat met succes had kunnen eindigen als de jongens hadden geraden mijn werkkanalen te hacken).

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Ik maakte me zelfs een beetje zorgen toen ze mijn achternaam en zelfs mijn belastingnummer noemden. Maar ik was gerustgesteld toen ik tijdens het proces van het doorgeven van de telefoon plotseling een oudere broer kreeg, die plotseling de technische directeur van Habr bleek te zijn.

Mijn dierbare broer, die ook zijn deel kreeg.
Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Ondertussen werden de vermoedens steeds onvoorspelbaarder.
Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

En het leidde tot Illuminati-theorieƫn.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

De meest sappige samenzweringstheorieƫn betroffen SpongeBob, Harry Potter en het knipperen van de Chinese LED-strips die we in de behuizing hebben gestopt.

Waarom SpongeBob en Harry Potter, vraagt u zich af? We hebben hun adressen in de contactpagina van Sokol gestopt en dat heeft een hoop speculaties in de Discord-gemeenschap gecreƫerd. Hoewel we gewoon een eerbetoon aan onze favoriete kinderwerken wilden brengen.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen
Die verwijzing op de pagina "Contacten"

En als gevolg daarvan

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen
Bleek er echt documentatie van SpongeBob in de serie te zijn. Ze werden als een belastingnummer genoemd.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Een van de moeilijkste theorieƫn was dat er een boodschap in morsecode verscholen zat in de knipperingen van de Chinese slinger.

Het knipperen werd vastgelegd en geprobeerd te ontcijferingen.
Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Van de eenvoudigere theorieƫn - de jongens probeerden te begrijpen of er een hint in de kaarten zat.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Op de weg werden we vergeleken met Cicada 3301 — een onterecht hoge beoordeling, maar desondanks aangenaam.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Spelers probeerden volop sociale engineering. Ik kreeg telefoontjes van mensen die zich voordeden als mensen van de FSB, brandweermannen, Sokolov zelf, zijn ex-vrouw en een bewaker die zogenaamd beneden bij ons zat. Ze zeiden dat er brand was uitgebroken, dat iemand in de lift vastzat en het meest aangrijpende verhaal was dat er zogenaamd een hondje van de beller in het brandende kantoor zat.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen
Er waren ook pogingen tot omkoping.

Langzaam maar zeker begonnen er eigen memes in de chat te verschijnen.

Hier zijn er een paar.
Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

De fabrieken stonden ondertussen stil.
Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Hint

Het geld in de versnipperaar nam steeds meer af. Om ervoor te zorgen dat de winnaar toch iets zou ontvangen, besloten we een hint te geven. Daarbij, volgens de regels van game design, vlak voor de finale de spanning te verhogen.

Apart post publiceerden we een video op de blog. Aan het begin was er een fragment van Fight Club ingevoegd — als verwijzing naar Tyler Durden, die nadenkte over het inbrengen van de 25e afbeelding in films, terwijl hij in bioscopen werkte.

We besloten dezelfde techniek toe te passen en voegde 25e afbeelding een hint toe, zoals google: het juiste RSIN en de volledige naam van de eigenaar.

Video afspelen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen
Daarna begrepen de jongens het heel snel.

Stap 4. Schiet met de laser in niet-vuurmodus.

Bij het inschakelen van de voeding door het bedrijf en na het inschakelen van de zekeringen, kon Megatron worden ingeschakeld en in testmodus schieten. De invoervorm was al ingevuld met een token voor de testshot.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen
Elke 25 seconden werd er een nieuw token gegenereerd, dat kon worden gebruikt om de laser gedurende 10 seconden aan te zetten op een vermogen van 10/255.

Daarna koelde de laser 1 minuut af en was in deze minuut niet beschikbaar, accepteerde geen nieuwe schietverzoeken.

Dit vermogen was absoluut niet voldoende om het touw door te branden, maar elke speler kon een schot lossen uit Megatron en de laserstraal in actie zien.

De reactie van de gemeenschap was zeer overweldigend.
Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Maar iedereen kalmeerde snel en begreep dat dit nog niet het einde van het spel was.
Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Vervolgens begon de gemeenschap uit te zoeken hoe de vechtmodus kon worden ingeschakeld.

Brainstormen.
Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen
Er verschenen nepprofielen in Discord.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen
We wisten niet dat er iets op het pootje van de tafel geschreven stond tijdens de uitzending.

De gemeenschap is aangekomen bij stap 4. Begrijp hoe tokens gegenereerd worden: vind de gist en genereer een token dat de laser in de gevechtsmodus activeert.

De gevechtsmodus van Megatron betekent 100% laservermogen op 3 W. Dit is genoeg voor 2 minuten om het touw dat de kettlebell vasthield door te branden, het aquarium te breken en de server te overstromen.

We hebben een paar aanwijzingen achtergelaten op de GitHub van het project.: namelijk de token-generatiecode, waarmee je kon begrijpen dat de test- en gevechtstokens op basis van dezelfde tellerwaarde worden gegenereerd. In het geval van het gevechtstoken wordt naast de tellerwaarde ook een salt gebruikt, waarvan bijna de hele geschiedenis in de wijzigingen van deze gist staat, behalve de laatste twee symbolen.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen
Zoals iedereen snel begreep, was dit 42.

In de opmerkingen van de gist was er correspondentie tussen Andrei Sokolov en de ontwikkelaar (de 'wijze ontwikkelaar', zoals de jongens uit de Discord hem noemden).

In de correspondentie stuurde Andrei een van de gevechtstokens, en de ontwikkelaar antwoordde dat dit token was geĆÆnitialiseerd met een tellervalue van 42.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Met deze gegevens kon men de laatste 2 symbolen van de salt proberen en ontdekken dat hiervoor cijfers uit Lost waren gebruikt, omgezet naar het hexadecimale systeem.

Daarna bleef het voor de spelers alleen nog maar om de tellerwaarde te vangen (door de testtoken te analyseren) en een gevechtstoken te genereren met de volgende tellerwaarde en de salt die eerder was gevonden.

De teller werd gewoon geĆÆncrementieerd bij elke testaflevering en elke 25 seconden. Dit hebben we nergens genoteerd; dit zou een kleine spelverrassing moeten zijn. De jongens begrepen het snel en activeerden Megatron in de gevechtsmodus.

Stap 5. Brand het touw door met de laser.

Video afspelen

Hoe het ging.

Hier is het al vrij simpel. Het verzenden van het gevechtstoken activeerde de laser in de gevechtsmodus en de kamer veranderde naar de 'rampmodus', zoals we dat in het algemene script noemden:

  • Het licht in de kamer ging volledig uit.
  • De knoppen van de IoT-apparaten op de site werden onbereikbaar.
  • De flitser en het alarmgeluid gingen aan.
  • De rode kettlebell werd verlicht.
  • Op het televisiescherm begon de countdown naar het activeren van de laser in de gevechtsmodus.

We gave a countdown of an hour and a half for everyone who played to turn on the stream and see the finale. And it was worth it: while I anxiously awaited the sound of the impact and shattering glass from the neighboring room, the whole team that built the quest, without discussing it, started heading to the base to see the finale with their own eyes. They just rushed into the room and began hugging each other.

Meanwhile, in Discord
Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

After the countdown ended, the laser activated and burned through the rope in two minutes — the weight flew straight into the aquarium. Before the impact, a crazy capybara screamed on the screen, panicking and raising its little paws.

Since the whole team was gathered there, we filmed a brief message for everyone who had fought for the finale in Discord for two days, and then went to open the champagne:

Video afspelen

How did we time the launch of the advertising videos and the flight of the weight?

After a dozen tests of burning the rope with a laser, we realized that this was a very unreliable design — a partially burned rope becomes thinner, stretches under the weight of the weight, changes position, and the laser can no longer cut through it completely.

Therefore, we took a different approach: we duplicated the burning, wrapping the rope with nichrome thread. We sent current through the thread, it heated up to red and burned through the rope in about 2 seconds — this gave us precise timing on when to turn on the screaming capybara, stop the launch timer, and launch the advertisement:

Video afspelen

What didn’t work out for us?

In the finale, thick smoke was supposed to come out of the system unit, like in a fire — we prepared smoke bombs, ignited them in a similar way, but for some reason they didn’t work (probably due to the water).

Who is the winner?

The winner turned out to be Arkadiy Alekseev from St. Petersburg — he was the first to generate a test token and won the remaining money in the shredder amounting to 134,000 rubles.

A short interview with Arkadiy.

Tell us about yourself, what do you do for work?

I am trained as a security specialist, graduated from BIT at ITMO. I work as a full-stack web developer in outsourcing. I was a competitive student in school, including in programming and mathematics.

How did you find out about the game?

I visited Habr just to read, saw the article, and got interested.

How many hours did you play, when did you join?

Ik sloot die avond aan, de dag waarop het artikel werd gepubliceerd (d.w.z. een dag voor de deadline). Ik heb die avond en een groot deel van de volgende dag doorgebracht.

Wat vond je leuk, en wat niet?

Over het algemeen was ik tevreden (uiteraard, ik heb gewonnen)), maar het belmoment was een beetje vervelend. Het idee om elke versie te bellen voor controle was enigszins ongemakkelijk — ik besefte dat er nog tientallen anderen belden, waarvan de helft grapjes maakte en probeerde zich door sociale engineering een weg te banen.

Hoe heb je ontdekt hoe je de battle token voor de megatron kon vinden?

Toen ik binnenkwam, hadden ze de server al volgespamd, lampjes aangeklikt, het wachtwoord voor de admin interface van de laser gevonden, en allerlei subdomeinen en pagina's ontdekt.

Het was ook gemakkelijk om het profiel op GitHub te vinden en de gist met de opmerkingen. Daaruit was het proces van het genereren van de token en de secret duidelijk. In dergelijke quests hoeft men niet al te veel uit te vinden, omdat je gemakkelijk kunt verdrinken in de talloze mogelijkheden; men moet eigenlijk volgen waar de maker van de quest je naar toe duwt.

Gezien de andere subdomeinen en de testwebsite op Tilda was het duidelijk dat ik na het inschakelen van de laser de token moest bijhouden. Daarom had ik diezelfde avond een voorlopige aanvraag voor het inschakelen van de laser opgesteld (op basis van 4 beschikbare formulieren: 1 op de live site en 3 op de test-/oude site) en probeerde ik te bruteforcen met werkende tokens, te beginnen met 42 (gewoon om te proberen — misschien was alles al ingeschakeld, en zou de pagina voor het verzenden van de token alleen openen na het invoeren van het belastingnummer en de volledige naam).

Ik ben er niet zeker van of de aanvraag correct was, omdat ik geen tijd had om te controleren (want ik kon alleen de inschakeling van de laser controleren), maar ik was van tevoren voorbereid om de token te kraken.

Er was ook een duidelijke logica met WebSockets en het beheren van apparaten in het app.js-bestand. Daar was een duidelijke aanwijzing voor het a9-apparaat; toen ik power: true verzond, crashte de socket. Ik heb van alles geprobeerd om het te bedienen — wie weet, misschien was er een extra apparaat om het belastingnummer te ontcijferen, maar zonder succes.

Later, I also checked the other IDs next to those ten, but everywhere there was an unknown device. I tried to Google various things, accessed chsokolow@gmail.com, sent different messages through the form on the price list page, fiddled around with lasermasters, but all without success. The next day, I sat in the chat, Googled various things, then the stego topic popped up, and I consulted with a stegsoul person regarding pictures and GIFs (but I understood that 99% of the time there was nothing, as it would be too much + contradictory to the main quest line).

But in the end, I spent a couple of hours digging through all the pictures and GIFs too. I called a couple of times with various INN options, but to no avail. Then I decided to let it go, but a hint was posted — and it became clear that the INN would be found soon, which happened. Then either I or someone else (it's not obvious) sent power: true to the a9 device, and the laser worked, though there might be no relation, and it just worked after the INN. In general, I entered the admin panel of the laser and was quite surprised, as the server sent a token by itself (I was already preparing to brute-force). It became clear that the token was a test one, as streaming + common sense + I checked it.

The code had logic for sending a working token somewhere via notification, but apparently, either it was the wrong code, or it was needed for other parts of the system. I sketched a script to get the current working token from the current test one and started refreshing, trying to send them — there were problems with this, as everyone kept pressing the send button, thus changing the token. Then the site went down, the counter reset, but it was no longer relevant — after a while, I sent the working token. Ideally, the counter was 58 and the token was 449a776938f7ce4cf19f8603045dca0f at the time of activation, if I'm not mistaken. That's basically it.

Then I got a bit frustrated by comments like "it's all trivial, just lucky". Well, if you go to the page, think for a minute, write a script in a couple of minutes, check it — then sure, it's trivial. But I did it in about 10-20 seconds, and then I just couldn't send the token for several minutes.

Natuurlijk, ik had ook kunnen proberen om de logica voor het automatisch ophalen en verzenden te schrijven, maar dat zou langer duren en een groot risico met zich meebrengen, plus de cloud zou waarschijnlijk beginnen te klagen. Waar ik echt geluk mee heb gehad, is de laatste fase - een beetje algoritmes op snelheid + reactietijd, dat is echt mijn ding. Als er een opdracht geweest was die rechtstreeks uit de pentest voortkwam, zou ik waarschijnlijk niet als eerste eindigen.

Maar dit is nog niet het einde.

Ik kan niet wachten om jullie te vertellen over het geweldige team dat dit avontuur heeft opgebouwd en over alle technische oplossingen die zij hebben gevonden. Maar deze post is al veel te lang geworden - daarom komen er aparte artikelen over, dus stay tuned en volg onze blog op Habra.

Wie de shredder heeft gestopt of hoe je de missie voor het vernietigen van de server moest doorlopen

Bron: habr.com

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster