Denne vinteren, eller rettere sagt, på en av dagene mellom katolsk jul og nyttår, var Veeams tekniske støtteingeniører opptatt med uvanlige oppgaver: de jaktet på en gruppe hackere kalt «Veeamonymous».

Han fortalte hvordan gutta selv fant på og utførte et virkelig virkelighetsoppdrag på jobben deres, med oppgaver "nær kamp" Kirill Stetsko, Eskaleringsingeniør.
– Hvorfor startet du i det hele tatt dette?
— Примерно так же, как люди придумали в свое время Linux – just for fun, для собственного удовольствия.
Vi ville ha bevegelse, og samtidig ville vi gjøre noe nyttig, noe interessant. I tillegg var det nødvendig å gi litt følelsesmessig lettelse til ingeniørene fra deres daglige arbeid.
– Hvem foreslo dette? Hvem sin idé var det?
— Ideen var vår manager Katya Egorova, og så ble konseptet og alle videre ideer født gjennom felles innsats. I utgangspunktet tenkte vi å gjøre et hackathon. Men under utviklingen av konseptet vokste ideen til en søken; tross alt er en teknisk støtteingeniør en annen type aktivitet enn programmering.
Så vi ringte venner, kamerater, bekjente, forskjellige mennesker hjalp oss med konseptet - en person fra T2 (den andre støttelinjen er redaktørens notat), en person med T3, et par personer fra SWAT-teamet (hurtigreaksjonsteam for spesielt hastesaker - redaktørens notat). Vi kom alle sammen, satte oss ned og prøvde å finne på oppgaver for vår søken.
— Det var veldig uventet å lære om alt dette, for så vidt jeg vet, blir oppdragsmekanikk vanligvis utarbeidet av spesialiserte manusforfattere, det vil si at du ikke bare taklet en så kompleks ting, men også i forhold til arbeidet ditt. , til ditt faglige aktivitetsområde.
— Ja, vi ønsket å gjøre det til ikke bare underholdning, men å «pumpe opp» de tekniske ferdighetene til ingeniører. En av oppgavene i vår avdeling er utveksling av kunnskap og opplæring, men et slikt oppdrag er en utmerket mulighet til å la folk "røre" noen nye teknikker for dem live.
– Hvordan kom du på oppgaver?
— Vi hadde en idédugnad. Vi hadde forståelse for at vi måtte gjøre noen tekniske tester, og slik at de ville være interessante og samtidig bringe ny kunnskap.
Например, мы подумали, что людям надо дать попробовать поснифать траффик, попользоваться hex-редакторами, что-то поделать для Linux, какие-то чуть более глубокие вещи, связанные с нашими продуктами (Veeam Backup & Replication и другие).
Konseptet var også en viktig del. Vi bestemte oss for å bygge på temaet hackere, anonym tilgang og en atmosfære av hemmelighold. Guy Fawkes-masken ble gjort til et symbol, og navnet kom naturlig - Veeamonymous.
"I begynnelsen var ordet"
For å vekke interesse bestemte vi oss for å organisere en PR-kampanje med oppdragstema før arrangementet: vi hang opp plakater med kunngjøringen rundt kontoret vårt. Og noen dager senere, i hemmelighet fra alle, malte de dem med spraybokser og startet en "and", de sier at noen angripere ødela plakatene, de la til og med ved et bilde med et bevis ....
– Så du gjorde det selv, altså arrangørteamet?!
— Ja, på fredag, rundt klokken 9, da alle allerede hadde dratt, gikk vi og tegnet bokstaven «V» i grønt fra ballonger.) Mange deltakere i oppdraget gjettet aldri hvem som gjorde det - folk kom bort til oss og spurte hvem som ødela plakatene? Noen tok dette problemet veldig alvorlig og gjennomførte en hel undersøkelse om dette emnet.
For oppdraget skrev vi også lydfiler, "rippet ut" lyder: for eksempel når en ingeniør logger på vårt [produksjons-CRM]-system, er det en svarrobot som sier alle slags setninger, tall... Her er vi fra de ordene han har spilt inn, komponert mer eller mindre meningsfulle fraser, vel, kanskje litt skjeve - for eksempel fikk vi "Ingen venner som hjelper deg" i en lydfil.
For eksempel representerte vi IP-adressen i binær kode, og igjen, ved å bruke disse tallene [uttales av roboten], la vi til alle slags skremmende lyder. Vi filmet videoen selv: i videoen har vi en mann som sitter i en svart hette og en Guy Fawkes-maske, men i virkeligheten er det ikke én person, men tre, fordi to står bak ham og holder et "bakteppe" laget av et teppe :).
– Vel, du er forvirret, for å si det rett ut.
– Ja, vi tok fyr. Generelt kom vi først med våre tekniske spesifikasjoner, og komponerte deretter en litterær og leken oversikt over temaet hva som angivelig skjedde. I følge scenariet jaktet deltakerne på en gruppe hackere kalt "Veeamonymous". Tanken var også at vi så å si skulle "bryte den 4. veggen", det vil si at vi skulle overføre hendelser til virkelighet - vi malte for eksempel fra en sprayboks.
En av de engelsktalende fra avdelingen vår hjalp oss med den litterære behandlingen av teksten.
– Vent, hvorfor en morsmål? Gjorde du alt på engelsk også?!
— Ja, vi gjorde det for kontorene i St. Petersburg og Bucuresti, så alt var på engelsk.
For den første opplevelsen prøvde vi å få alt til å fungere, så manuset var lineært og ganske enkelt. Vi la til flere omgivelser: hemmelige tekster, koder, bilder.

Vi brukte også memer: det var en haug med bilder om undersøkelser, UFOer, noen populære skrekkhistorier - noen lag ble distrahert av dette, prøvde å finne noen skjulte meldinger der, bruke kunnskapen deres om steganografi og andre ting ... men det var selvfølgelig ikke noe slikt.
Om torner
Men under forberedelsesprosessen møtte vi også uventede utfordringer.
Vi slet mye med dem og løste alle slags uventede problemer, og omtrent en uke før oppdraget trodde vi at alt var tapt.
Det er nok verdt å fortelle litt om det tekniske grunnlaget for oppdraget.
Alt ble gjort i vårt interne ESXi-laboratorium. Vi hadde 6 lag, noe som betyr at vi måtte tildele 6 ressurspuljer. Så for hvert lag distribuerte vi et eget basseng med de nødvendige virtuelle maskinene (samme IP). Men siden alt dette var plassert på servere som er på samme nettverk, tillot den nåværende konfigurasjonen av våre VLAN oss ikke å isolere maskiner i forskjellige bassenger. Og for eksempel under en testkjøring fikk vi situasjoner der en maskin fra ett basseng koblet til en maskin fra et annet.
– Hvordan klarte du å rette opp situasjonen?
— Først tenkte vi lenge, testet alle slags alternativer med tillatelser, separate vLAN-er for maskiner. Som et resultat gjorde de dette - hvert lag ser bare Veeam Backup-serveren, som alt videre arbeid foregår gjennom, men ser ikke den skjulte undergruppen, som inneholder:
- noen Windows maskiner
- Windows core сервер
- машина с Linux
- par VTL (Virtual Tape Library)
Alle bassenger er tildelt en egen gruppe med porter på vDS-svitsjen og sitt eget private VLAN. Denne doble isolasjonen er akkurat det som trengs for å fullstendig eliminere muligheten for nettverksinteraksjon.
Om de modige
— Kan noen ta del i oppdraget? Hvordan ble lagene dannet?
— Dette var vår første erfaring med å holde et slikt arrangement, og kapasiteten til laboratoriet vårt var begrenset til 6 team.
Først, som jeg allerede sa, gjennomførte vi en PR-kampanje: ved hjelp av plakater og utsendelser annonserte vi at et oppdrag ville bli holdt. Vi hadde til og med noen ledetråder - setninger ble kryptert i binær kode på selve plakatene. På denne måten fikk vi folk interessert, og folk kom allerede til avtaler seg imellom, med venner, med venner og samarbeidet. Det førte til at flere svarte enn vi hadde puljer, så vi måtte gjennomføre et utvalg: vi kom opp med en enkel testoppgave og sendte den til alle som svarte. Det var et logisk problem som måtte løses raskt.
В команде допускалось до 5 человек. Капитан там не требовался, идея была в кооперации, в общении между собой. Кто-то силён, допустим, в Linux, кто-то силен в тейпах (бэкапах на ленты), и каждый, видя задание, мог вложить свои усилия в общее решение. Все между собой общались, находили решение.

– På hvilket tidspunkt startet denne hendelsen? Hadde du en slags "time X"?
— Ja, vi hadde en strengt fastsatt dag, vi valgte den slik at det ble mindre arbeidsbelastning på avdelingen. Naturligvis ble teamlederne varslet på forhånd om at slike og slike lag ble invitert til å delta i oppdraget, og de måtte få litt lettelse [angående lasting] den dagen. Det så ut som det skulle være slutten av året, 28. desember, fredag. Vi forventet at det skulle ta rundt 5 timer, men alle lag fullførte det raskere.
— Var alle likestilt, hadde alle de samme oppgavene ut fra reelle saker?
— Vel, ja, hver av kompilatorene tok noen historier fra personlig erfaring. Vi visste om noe at dette kunne skje i virkeligheten, og det ville være interessant for en person å "føle" det, se og finne ut av det. De tok også noen mer spesifikke ting - for eksempel datagjenoppretting fra skadede bånd. Noen med hint, men de fleste av lagene klarte det på egenhånd.
Eller det var nødvendig å bruke magien til raske skript - for eksempel hadde vi en historie om at en "logisk bombe" "revet" et arkiv med flere volum i tilfeldige mapper langs treet, og det var nødvendig å samle inn dataene. Du kan gjøre dette manuelt - finn og kopier [filer] en etter en, eller du kan skrive et skript med en maske.
Generelt prøvde vi å holde oss til synspunktet om at ett problem kan løses på forskjellige måter. Hvis du for eksempel er litt mer erfaren eller ønsker å bli forvirret, så kan du løse det raskere, men det er en direkte måte å løse det på – men samtidig vil du bruke mer tid på problemet. Det vil si at nesten hver oppgave hadde flere løsninger, og det var interessant hvilke veier lagene ville velge. Så ulineariteten lå nettopp i valg av løsningsalternativ.
Кстати, самой трудной оказалась Linux-задача — только одна команда решила ее самостоятельно, без подсказок.
– Kan du ta hint? Som i en ekte søken??
— Ja, det var mulig å ta det, for vi skjønte at folk er forskjellige, og de som mangler litt kunnskap kunne komme inn i samme lag, så for ikke å forsinke passasjen og ikke miste konkurranseinteressen, bestemte vi oss for at vi ville tips. For å gjøre dette ble hvert lag observert av en person fra arrangørene. Vel, vi sørget for at ingen jukset.

Om stjernene
— Ble det premier til vinnerne?
— Ja, vi prøvde å lage de hyggeligste premiene for både alle deltakere og vinnerne: Vinnerne fikk designergensere med Veeam-logoen og en frase kryptert i heksadesimal kode, svart). Alle deltakerne fikk en Guy Fawkes maske og en merkeveske med logo og samme kode.
– Det vil si at alt var som i en skikkelig søken!
"Vel, vi ønsket å gjøre en kul, voksen ting, og jeg tror vi lyktes."
- Dette er sant! Hva var den endelige reaksjonen til de som deltok i dette oppdraget? Har du nådd målet ditt?
— Да, многие потом подходили, говорили, что они явно увидели свои слабые места и захотели их подтянуть. Кто-то перестал бояться определенных технологий – например, дампить блоки с тейпов и пытаться там что-то выцепить… Кто-то понял, что ему надо подтянуть Linux, и так далее. Мы же постарались дать достаточно широкий круг задач, но не совсем тривиальных.

Vinnerlaget
"Den som vil, vil oppnå det!"
— Krevde det mye innsats fra de som forberedte oppdraget?
– Faktisk ja. Men dette var mest sannsynlig på grunn av det faktum at vi ikke hadde noen erfaring med å forberede slike oppdrag, denne typen infrastruktur. (La oss ta forbehold om at dette ikke er vår virkelige infrastruktur – den skulle rett og slett utføre noen spillfunksjoner.)
Det var en veldig interessant opplevelse for oss. Først var jeg skeptisk, fordi ideen virket for kul for meg, jeg trodde den ville være veldig vanskelig å gjennomføre. Men vi begynte å gjøre det, vi begynte å pløye, alt begynte å ta fyr, og til slutt lyktes vi. Og det var til og med praktisk talt ingen overlegg.
Totalt brukte vi 3 måneder. For det meste kom vi opp med et konsept og diskuterte hva vi kunne implementere. I prosessen endret naturligvis enkelte ting seg, fordi vi innså at vi ikke hadde den tekniske evnen til å gjøre noe. Vi måtte gjøre om noe underveis, men på en slik måte at hele omrisset, historien og logikken ikke gikk i stykker. Vi prøvde ikke bare å gi en liste over tekniske oppgaver, men å få den til å passe inn i historien, slik at den ble sammenhengende og logisk. Hovedarbeidet pågikk den siste måneden, det vil si 3-4 uker før dag X.
— Så, i tillegg til hovedaktiviteten din, avsatte du tid til forberedelser?
— Vi gjorde dette parallelt med hovedarbeidet vårt, ja.
– Blir du bedt om å gjøre dette igjen?
– Ja, vi har mange forespørsler om å gjenta.
- Og du?
– Vi har nye ideer, nye konsepter, vi ønsker å tiltrekke oss flere og strekke det ut over tid – både utvelgelsesprosessen og selve spillprosessen. Generelt er vi inspirert av "Cicada"-prosjektet, du kan Google det - det er et veldig kult IT-emne, folk fra hele verden forenes der, de starter tråder på Reddit, på fora, de bruker kodeoversettelser, løser gåter , og alt det der.
— Ideen var flott, bare respekt for ideen og gjennomføringen, for den er virkelig verdt mye. Jeg ønsker inderlig at du ikke mister denne inspirasjonen og at alle dine nye prosjekter også blir vellykkede. Takk skal du ha!

— Ja, kan du se på et eksempel på en oppgave som du definitivt ikke vil gjenbruke?
"Jeg mistenker at vi ikke vil gjenbruke noen av dem." Derfor kan jeg fortelle deg om fremdriften til hele oppdraget.
BonussporHelt i begynnelsen har spillere navnet på den virtuelle maskinen og legitimasjon fra vCenter. Etter å ha logget på den ser de denne maskinen, men den starter ikke. Her må du gjette at noe er galt med .vmx-filen. Når de har lastet det ned, ser de forespørselen som trengs for det andre trinnet. I hovedsak står det at databasen som brukes av Veeam Backup & Replication er kryptert.
Etter å ha fjernet ledeteksten, lastet ned .vmx-filen tilbake og slått på maskinen, ser de at en av diskene faktisk inneholder en base64-kryptert database. Følgelig er oppgaven å dekryptere den og få en fullt funksjonell Veeam-server.
Немного о виртуалке, на которой это всё происходит. Как мы помним, по сюжету главный герой квеста — личность довольно тёмная и занимается чем-то явно не слишком законным. Поэтому его рабочий компьютер должен иметь вполне себе хакерский вид, который предстояло создать нам, несмотря на то, что это Windows. Первым делом была добавлена масса бутафории вроде информации по крупным взломам, DDoS атакам и подобному. Затем установили всякого типичного софта и разложили везде разных дампов, файлов с хэшами и т.д. Всё как в кино. Среди прочего там были папки, именованные по принципу closed-case*** и open-case***
For å komme videre, må spillere gjenopprette hint fra sikkerhetskopifiler.
Тут нужно сказать, что в начале игрокам давалось довольно мало информации, и большинство данных (вроде IP, логинов и паролей) они получают по ходу квеста, находя подсказки в бекапах или файлах, раскиданных на машинах. Изначально файлы бекапов лежат на Linux-репозитории, но сама папка на server montert med et flagg noexec, så agenten som er ansvarlig for filgjenoppretting kan ikke starte.
Ved å fikse depotet får deltakerne tilgang til alt innhold og kan til slutt gjenopprette all informasjon. Det gjenstår å forstå hvilken det er. Og for å gjøre dette trenger de bare å studere filene som er lagret på denne maskinen, finne ut hvilke av dem som er "ødelagt" og hva som skal gjenopprettes.
På dette tidspunktet skifter scenariet fra generell IT-kunnskap til Veeam-spesifikke funksjoner.
В данном конкретном примере (когда ты знаешь имя файла, но не знаешь где его искать) надо воспользоваться функцией поиска в Enterprise Manager, и так далее. В итоге после восстановления всей логической цепочки у игроков на руках оказывается ещё один логин/пароль и вывод nmap’a. Это приводит их на Windows Core сервер, причём по RDP (чтобы жизнь мёдом не казалась).
Hovedtrekket til denne serveren: ved hjelp av et enkelt skript og flere ordbøker ble en absolutt meningsløs struktur av mapper og filer dannet. Og når du logger på, mottar du en velkomstmelding som "En logisk bombe har eksplodert her, så du må sette sammen ledetrådene for videre trinn."
Følgende ledetråd ble delt inn i et arkiv med flere bind (40-50 stykker) og tilfeldig fordelt mellom disse mappene. Tanken vår var at spillere skulle vise sine talenter i å skrive enkle PowerShell-skript for å sette sammen et arkiv med flere volum ved å bruke en velkjent maske og få de nødvendige dataene. (Men det ble som i den spøken - noen av fagene viste seg å være uvanlig fysisk utviklet.)
Arkivet inneholdt et bilde av en kassett (med inskripsjonen "Last Supper - Best Moments"), som ga et hint om bruken av et tilkoblet båndbibliotek, som inneholdt en kassett med lignende navn. Det var bare ett problem - det viste seg å være så ubrukelig at det ikke en gang ble katalogisert. Det var her sannsynligvis den mest hardcore delen av oppdraget begynte. Vi slettet overskriften fra kassetten, så for å gjenopprette data fra den, trenger du bare å dumpe de "rå" blokkene og se gjennom dem i en hex-editor for å finne filstartmarkører.
Vi finner markøren, ser på forskyvningen, multipliserer blokken med størrelsen, legger til forskyvningen og prøver å gjenopprette filen fra en bestemt blokk ved hjelp av det interne verktøyet. Hvis alt er gjort riktig og matematikken stemmer, vil spillerne ha en .wav-fil i hendene.
I den, ved hjelp av en stemmegenerator, dikteres blant annet en binær kode, som utvides til en annen IP.
Dette, viser det seg, er en ny Windows-server, der alt tyder på behovet for å bruke Wireshark, men det er ikke der. Hovedtrikset er at det er to systemer installert på denne maskinen - bare disken fra den andre kobles fra via enhetsbehandlingen offline, og den logiske kjeden fører til behovet for å starte på nytt. Så viser det seg at som standard bør et helt annet system, der Wireshark er installert, starte opp. Og hele denne tiden var vi på det sekundære OS.
Det er ikke nødvendig å gjøre noe spesielt her, bare aktiver fangst på ett enkelt grensesnitt. En relativt nøye undersøkelse av dumpen avslører en tydelig venstrehendt pakke sendt fra hjelpemaskinen med jevne mellomrom, som inneholder en lenke til en YouTube-video hvor spillere blir bedt om å ringe et bestemt nummer. Den første som ringer vil høre gratulasjoner med førsteplassen, resten vil motta en invitasjon til HR (spøk)).
Vi har forresten åpent for teknisk støtteingeniører og traineer. Velkommen til laget!
Kilde: www.habr.com
