Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Бірнеше күн бұрын біз блогтың бір бөлігі ретінде өткізу бақытына ие болған ең эмоционалды оқиғалардың бірін аяқтадық - сервер жойылатын онлайн хакер ойыны.

Нәтижелер біздің барлық күткенімізден асып түсті: қатысушылар қатысып қана қоймай, тез арада Discord-та 620 адамнан тұратын жақсы үйлестірілген қауымдастыққа ұйымдасты, олар екі күн ішінде ұйқыға үзіліссіз ізденістерге қол жеткізді.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды
Міне осылай аяқталды:

Мұның бәрі қалай басталды және бәрі не туралы?

Ойын 12 тамызда біз блогқа жариялаған кезде басталды пошта бас сүйек түріндегі хакер ойын ойнауды, серверді жоюды, бөлмеде қысқа тұйықталуды (құдық немесе шағын өрт) тудыруды және ұсақтағыштағы қалған ақшаны алуды ұсынатын бейнемен.

Бұл онлайн-квест болды: біз iot құрылғыларымен толтырылған бөлмеден, төсек астындағы серверден (оны қирату керек) және сервердің үстінде аквариум орнатылған және оған салмақ ілінген бөлмеден YouTube трансляциясын іске қостық. Ойынды көбірек әрекетке толы ету үшін біз 200 000 рубль көлемінде жүлде қорын жасауды ұйғардық, оны ұсақтағышқа жүктеп, оны әр 60 минут сайын қосуға орнаттық. Әр сағат сайын ұсақтағыш 1000 рубльді жеді - ойыншылар оны тезірек тоқтатса, соғұрлым көп ақша ұтады.

Бұл квест құру өз алдына бір ізденіс болды - бізге тек тамақ ішіп, бір бөлмеде күніне бірнеше сағат ұйықтауға тура келді. Бірақ ең таңғаларлық нәрсе ойыншылардың ойларының ұшуын және олардың процестегі эмоционалдық әсерін бақылау болды.

Шынымды айтсам, жұмбақтарды шешудегі ойыншылардың тапқырлығы біздің қарапайым ойымыздан бірнеше есе асып түсті: әр бос минут сайын біз келіспеушілік чатын оқып, кейбір жағдайларда ойыншылардың не істеп жатқанын және олардың қалай қалжыңдағанын біліп, күліп жылайтынбыз. процесс.

Жобада 7 адам тынымсыз еңбек етті: бэкендер, аппараттық маман, нағыз кинопродюсер, CG дизайнер және екі идеологиялық бірлескен продюсер.

Біз сізге келесі посттарда квест техникалық тұрғыдан қалай жүзеге асырылғанын айтып береміз, бірақ әзірге мен сізге шешімді айтамын: эфирде бұл бөлмені бұзу қаншалықты қажет болды. Сонымен қатар, оқиғалардың хронологиясын, сондай-ақ дискорд чатындағы барлық ақылсыз Иллюминати теорияларын еске түсірейік.

Ойынның басында ойыншыларда не болды?

Бөлмедегі барлық заттар үш санатқа бөлінді:

  • Пайдалануға оңай, ойынға жатпайтын iot құрылғылары
  • Квестті орындауға арналған ойын құрылғылары
  • Entourage

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Біз басқаруға өте оңай 8 элементті орналастырдық: екі шам, бір гирлянда, бес FALCON әріптері, олардың әрқайсысының түсін өзгертуге болады. Мұның барлығын тікелей веб-сайттан қосуға/өшіруге және нәтижені тікелей эфирде көруге болады - біз оларды техникалық сауаттылық деңгейіне қарамастан барлық ойыншыларға арнайы қол жетімді еттік.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды
Сайттан жай ғана енгізілгеннің бәрі

Квестті орындау үшін қажет және қол жеткізу оңай болмаған маңызды ойын элементтері:

  1. Ашық қақпағы бар сервер және оның үстінде аквариум
  2. Аквариумды бұзу үшін тоқтатылған салмақ
  3. Megatron 3000 - салмақты ұстайтын арқанға бағытталған қуатты лазерлік көрсеткіш
  4. Сервер жүктелген кезде іске қосылған қуатты желдеткіш
  5. Megatron логин мен пароль жазылған флипчарт
  6. Сіз қоңырау шалып, қоңырауыңызды тікелей эфирде көре алатын телефон
  7. Сағатына 1000 рубльді жеген ұсақтағыш

Квест қалай шешілді?

Мен бірден айтамын: қорап өте оңай ашылды.

Ойынның мақсаты бөлмеде қысқа тұйықталу тудырып, ұсақтағышты тоқтату болды. Мұны істеу үшін аквариумды оған салмақ тастау арқылы сындырып, серверді сумен толтыру керек болды. Салмақ Megatron көздеген сымға ұсталды. Мегатронды басқару арқылы арқанды кесуге болады. Бұл 5 қарапайым қадаммен жасалды:

1-қадам. Бөлмеге серверді жүктеңіз

Мысалы, пакеттерді командамен жіберу.

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

Анықтама өте жүктелді captcha туралы Бағалар парағы.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды
Шабуыл қажет болатын дәл сол каптча

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Сервер жүктелген кезде оның температурасы көтерілді және оны тікелей камераның алдында ашылған бақылау жүйесінде бақылауға болады. Содан кейін желдеткіш қосылды, ол флипчарттағы жарық пердесін ашты. Содан кейін тақтада жазылған Megatron парақшасына кіруге арналған логин мен пароль ашылды.

Ал Megatron басқару бетін ooosokol.ru доменіне берілген барлық сертификаттарды тексеру арқылы табуға болады.

Ішкі доменде megatron.ooosokol.ru Megatron басқару беті болды. Бірақ ол Megatron негізгі қуатпен қамтамасыз етілмейінше ашылмады.

Ойыншылар YouTube-тегі трансляцияның түсініктемелерінде осы кезеңдердің барлығынан бірден өтті. Содан кейін тапсырмалар күрделене түсті және ойыншылар RUVDS Hack Room дискорд серверін жасап, талқылауды сол жерде жалғастырды.

2-қадам: Megatron-ға негізгі қуатты қолданыңыз

Сайттан басқарылатын барлық смарт құрылғылардың (ойыншылар тоқтаусыз қосатын және өшіретін шамдар) өздерінің идентификаторлары болды.

Megatron-ды бастапқы қуатпен қамтамасыз ету және сонымен бірге оны жарықтандыру үшін кеңсені басқару бетінде жасырын құрылғыны тауып, қосу керек болды.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ол үшін құрылғы идентификаторларына қарап, барлығы 4 құрылғы бар екенін, бірақ сайтта тек 3 құрылғы бар екенін байқау керек болды.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

4-ші құрылғы қосылған кезде, Megatron беті қолжетімді болды және лазердің өзі ерекшеленді. Бірақ сонымен бірге лазерді түсіру мүмкін болмады және ол бет Лазердің әлі қол жетімді емес екендігі туралы хабарлама және кеңес болды: кеңседе кептеліс болды, басқарушы компанияға қоңырау шалып, қуат сұраңыз.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды
Басқарушы компания туралы анықтама

3. Басқарушы компанияға қоңырау шалыңыз және Megatron қуатын қосуды сұраңыз

ЛОР мамандарының айтуынша, кеңседегі кептелістер қағып кеткендіктен, Мегатрон атуға шамасы келмеген. Тек басқарушы компания ғана электр қуатын қайта қоса алды, оған хабарласып, ЖШҚ иесі екенін анықтау керек болды.

Басқару компаниясының нөмірін табу оңай болды - біз оны тікелей төменгі деректемеге енгіздік.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Бірақ сәйкестендіру әлдеқайда қиын болды.

+74991130688 нөміріне қоңырау шалған кезде телефонды оператор әйел алып, жалықтырған дауыспен компанияның ИНН-ін және иесінің толық аты-жөнін сұрады. Онсыз ол электр қуатын қосудан бас тартты және мұны оның кәдімгі аутсорсингтік басқару бөлмесі екенін, олардың 2000 клиенті мен кеңселері бар екенін және бұл ақпаратсыз оларға қажет нәрсені табу мүмкін емес екенін түсіндірді.

Бұл ойыншылар үшін ең қиын кезең болды. Дұрыс СТН мен иесінің толық аты-жөнін табу екі күнге жуық уақытты алды, мен (диспетчерлік бөлменің операторы атынан) осы уақыт ішінде 400-ден астам қоңырау қабылдадым. Телефон 2-3 минут сайын шырылдады.

Жігіттер қолдан келгенше қазды. Барлығы қолданылды: олар сайттың бастапқы кодын жойды, сайт иесі Соколовты Google арқылы іздеді және әлеуметтік желілер арқылы іздеді.

Олар әртүрлі компаниялардың салықтық сәйкестендіру нөмірлерін іздеген
Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды
Толық дерлік іздеу схемасы

Бір кездері олар тіпті жалған нөмірмен қоңырау шалды - олар төменгі деректемеде көрсетілген «Сокол» компаниясының кеңсесінен қоңырау шалғандай.

Содан кейін біз қанша компания Сокол деп аталатынын білдік. Осы компаниялардың әрқайсысы дерлік ойыншылардан қоңыраулар алды, бірақ бұл сайттың тәжірибесімен салыстырғанда ештеңе болмады lasermasters.ru, біз дәл сол Мегатронды бір ай бұрын сатып алдық.

Біріншіден, келіспеушілік Lasersmasters қолдауына шабуыл жасады.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Содан кейін біз ол жерден біреудің аккаунтын таба алдық! Лазермастерлердің қолдауы өрнектерді үнемдеуді тоқтатты.

Абайлаңыз, балаларды экраннан алыс ұстаңыз
Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды
Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ақырында, Lasermasters оларды жай ғана тітіркендіруді шешті және олардың сайты бұзылды. Сокол учаскесін тез көтеріп тастағанымызбен, сол сияқты.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Тергеу барысында келіспеушіліктер тіпті басты антагонист, ЖШС иесі Андрей Соколовтың рөлін ойнау үшін біз фотосуретін акциялардан сатып алған актерді тапты. Оның есімі Юрий екені белгілі болды және ол қандай тәртіпсіздікке душар болғанын мүлде білмейді.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды
Андрей Соколов, ойын кейіпкері

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды
Юрий, модель

600 адамды екі күн ұйықтамауға мәжбүрлегенін білсе ғой...)

Содан кейін олар квест ұйымдастырушысы ретінде мен үшін арнайы қазуды бастады (егер жігіттер менің жұмыс арналарымды бұзатын болса, бұл сәтті аяқталуы мүмкін еді).

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Олар менің әкемнің атын, тіпті салық төлеушінің сәйкестендіру нөмірін атағанда, мені біраз уайымдадым. Бірақ бүлінген телефон жұмыс істеп тұрғанда, кенеттен менің үлкен ағам пайда болды, ол кенеттен Хабрдың техникалық директоры болып шықты.

Менің де қиналған бауырым
Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Осы уақытта болжамдар барған сайын керемет болды
Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Және бұл Иллюминати теорияларына келді.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Спанч-Боб, Гарри Поттер және біз жүйелік блоктың ішіне орналастырған қытай диодының гирляндасының жыпылықтауы туралы ең шырынды қастандық теориялары болды.

Спанч Боб пен Гарри Поттер қайдан шыққан дейсіз бе? Біз олардың мекен-жайларын Соколдың байланыс бетіне енгіздік және бұл келіспеушілік қоғамдастығында көптеген болжамдарды тудырды. Біз жай ғана балалық шақтағы сүйікті туындыларымызға құрмет көрсеткіміз келді.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды
Беттегі бірдей сілтеме »Байланыстар"

Және нәтижесінде

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды
Сериалда шынымен Спанч Боб құжаттары бар екені белгілі болды. Олар СТН деп аталды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ең күрделі теориялардың бірі - жыпылықтаған қытай гирляндында Морзе алфавитіндегі хабарлама бар.

Жыпылықтау жазылды және оны шешуге тырысты
Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Қарапайым теория - жігіттер бұл картада жасырылғанын анықтауға тырысты.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Жол бойы бізді салыстырды Цикада 3301 — өте жоғары рейтинг, бірақ бәрібір жағымды.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ойыншылар әлеуметтік инженерияға бар күштерін салып тырысты. Олар мені ФСБ, өрт сөндірушілерді, Соколовтың өзін, оның бұрынғы әйелін және төменгі қабатта отырады деген күзетшіні атын жамылып шақырды. Олар өрт шыққанын, лифтте біреу тұрып қалғанын айтты, ал ең қайғылы оқиға қоңырау шалушының иті кеңседе отқа оранып кеткені болды.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды
Пара алу әрекеттері де болды

Біртіндеп чатта менің жеке мемдерім пайда бола бастады.

Міне, жұп
Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Бұл кезде зауыттар тоқтап тұрды
Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Құралы

Шредердегі ақша азайып бара жатты. Жеңімпаз кем дегенде бірдеңе алуы үшін біз кеңес беруді шештік. Сонымен қатар, ойын дизайнының ережелерін сақтай отырып, финалға дейін шиеленісті көтеріңіз.

Бөлек аштық Біз блогқа бейнеролик жарияладық. Басында кинотеатрларда жұмыс істеп жүргенде фильмдерге 25-ші кадрды енгізуді ойластырған Тайлер Дюрденге сілтеме ретінде «Жекпе-жек клубының» бір бөлігі енгізілген.

Біз дәл сол механиканы қолдануды шештік және 25-ші кадрға қалай жасау керектігі туралы кеңес бердік Google-ге дұрыс СТН және иесінің толық аты-жөні.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды
Осыдан кейін жігіттер мұны тез түсінді

4-қадам. Жауынгерлік емес режимде лазерді түсіріңіз

Басқарушы компания қуат бергенде және штепсельдерді қосқаннан кейін, Megatron қосылып, сынақ режимінде жануы мүмкін. Сынақ түсіріліміне арналған белгі енгізу пішініне әлдеқашан енгізілген.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды
Әрбір 25 секунд сайын жаңа белгі жасалды, оны 10/10 қуатта лазерді 255 секундқа қосу үшін пайдалануға болады.

Содан кейін лазер 1 минутқа суыды және сол минутта қол жетімсіз болды және түсіруге жаңа сұраныстарды қабылдамады.

Бұл қуат арқан арқылы жану үшін мүлдем жеткіліксіз болды, бірақ кез келген ойыншы Мегатроннан оқ атып, лазер сәулесінің әрекетін көре алады.

Қоғамның реакциясы күштірек болды
Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Бірақ бәрі тез тынышталып, бұл ойынның соңы емес екенін түсінді.
Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Содан кейін қауымдастық жауынгерлік режимді қалай іске қосу керектігін анықтай бастады

ми шабуылы
Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды
Дискортта фейктер бар

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды
Эфирде үстелдің аяғында бірдеңе жазылғанын білмедік

Қауымдастық 4-қадамға келді. Токендердің қалай жасалатынын түсініңіз: оның мәнін табыңыз және жауынгерлік режимде лазерді қосатын таңбалауышты жасаңыз.

Мегатронның жауынгерлік режимі 100 ватт 3% лазерлік қуат. Бұл салмақты ұстап тұрған арқан арқылы жанып, аквариумды сындырып, серверді сумен толтыру үшін 2 минут жеткілікті.

Біз бірнеше кеңестер қалдырдық github жобасы: дәлірек айтқанда, сынақ және жауынгерлік таңбалауыштардың бірдей есептегіш индикатор негізінде жасалғанын түсінуге болатын таңбалауыш генерациялау коды. Жауынгерлік белгі жағдайында, есептегіш мәннен басқа, соңғы екі таңбаны қоспағанда, осы түйіннің өзгеру тарихында толығымен дерлік қалдырылған тұз да қолданылады.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды
Барлығы тез болжағандай, ол 42 болды

Түпнұсқаның түсініктемелерінде Андрей Соколов пен әзірлеуші ​​арасындағы хат алмасу болды («дана әзірлеуші», оны келіспеушіліктер оны осылай атады).

Корреспонденцияда Андрей жауынгерлік токендердің бірін жіберді, ал әзірлеуші ​​бұл таңбалауыш 42 есептегіш мәнімен инициализацияланған деп жауап берді.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Бұл деректерді біле отырып, тұздың соңғы 2 таңбасын сұрыптауға және ол үшін он алтылық жүйеге түрлендірілген Lost сандары қолданылғанын білуге ​​болады.

Содан кейін ойыншылар санауыш мәнін (сынақ таңбалауышын талдау арқылы) ұстап алып, келесі есептегіш мәнді және алдыңғы қадамда таңдалған тұзды пайдаланып жауынгерлік таңбалауышты құруы керек болды.

Есептегіш әрбір сынақ түсірілімімен және әрбір 25 секунд сайын артады. Біз бұл туралы еш жерде жазған жоқпыз, бұл шағын ойын тосын сыйы болуы керек еді. Жігіттер мұны өте тез түсініп, мегатронды жауынгерлік режимде іске қосты.

Қадам 5. Арқанды лазермен жағу


Бұл қалай болды

Мұнда бәрі қарапайым. Жауынгерлік белгіні жіберу лазерді ұрыс режиміне айналдырады, ал бөлме өзгеріп, жалпы сценарийде атағанымыздай «апат режиміне» өтеді:

  • Бөлмедегі барлық шамдар сөнді
  • Веб-сайттағы IOT құрылғыларына арналған түймелер қолжетімсіз болды
  • Жыпылықтайтын шамдар және сирена дыбысы
  • Қызыл салмақ жарықтандырылды
  • Теледидар экранында лазер ұрыс режиміне өткенше кері санақ басталды.

Ойнағандардың барлығы эфирді қосып, финалды көру үшін кері санаққа бір жарым сағат бердік. Оның себебі: мен көрші бөлмеден соққының дыбысы мен әйнектің сынғанын тынысым тарылып күтіп тұрғанымда, квест құрастырған бүкіл команда бір сөз демей, аяқталуын көру үшін базаға бара бастады. өз көздері. Олар жай ғана бөлмеге жүгіріп кіріп, құшақтай бастады.

Бұл арада келіспеушілік
Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Кері санақ аяқталғаннан кейін лазер іске қосылды және екі минут ішінде арқан арқылы жанып кетті - салмақ тікелей аквариумға ұшып кетті. Соққыдан бұрын экранда есінен танып қалған капибара үреймен кішкентай табандарын көтеріп айқайлады.

Онда бүкіл команда жиналғандықтан, біз екі күн бойы келіспеушілікпен финал үшін күресіп, шампан ашуға барғандардың барлығына шағын хабарлама жібердік:

Жарнамалық бейнероликтердің іске қосылу уақытын және салмақтың ұшуын қалай есептедік?

Арқанды лазермен жағудың ондаған сынақтарынан кейін біз бұл өте сенімсіз дизайн екенін түсіндік - жартылай күйген арқан жұқа болады, салмақтың астында ол созылады, орнын өзгертеді және лазер енді кесіп кете алмайды. ол толығымен.

Сондықтан біз басқа жолмен жүрдік: арқанды нихромды жіппен орау арқылы жануды қайталадық. Жіп арқылы ток өтті, ол қызып кетті және шамамен 2 секундта арқан арқылы өртенді - бұл бізге айқайлап тұрған капибараны қашан қосу, старт таймерін тоқтату және жарнаманы бастау туралы нақты түсінік берді:

Бізге не істемеді?

Ақырында, өрт сияқты жүйелік блоктан қою түтін шығуы керек еді - біз түтін бомбаларын дайындадық, оларды бірдей жақты, бірақ қандай да бір себептермен олар жұмыс істемеді (судан болуы мүмкін).

Жеңімпаз кім?

Жеңімпаз шықты Аркадий Алексеев Санкт-Петербургтен - ол бірінші болып сынақ белгісін генерациялады және 134 000 рубль мөлшерінде ұсақтағышта қалған ақшаны жеңіп алды.

Аркадиймен шағын сұхбат.

Өзіңіз туралы айтып беріңізші, жұмыста не істейсіз?

Мен қауіпсіздік бойынша маманмын, ITMO-да BIT бітірдім. Мен аутсорсингтік толық стек веб-әзірлеушісі ретінде жұмыс істеймін. Мектепте мен жарыстарға, соның ішінде бағдарламалау мен математикаға қатыстым.

Ойын туралы қалай білдіңіз?

Мен Хабрға оқу үшін ғана бардым, мақаланы көрдім және қызығушылық таныттым.

Сіз қосылған кезде қанша сағат ойнадыңыз?

Мен мақала жарияланған күннің кешінде (яғни аяқталуға бір күн қалғанда) қосылдым. Мен кешті және келесі күннің жақсы бөлігін өткіздім.

Сізге не ұнады, не ұнамады?

Жалпы, маған бәрі ұнады (әрине, мен жеңдім)), бірақ қоңырауларға аздап қобалжыдым. Қоңырау шалып, әрбір нұсқаны тексеру әйтеуір онша жақсы емес еді, тым болмаса ыңғайсыз болды – мен түсіндім, олардың әлі де бірнеше ондағандары қоңырау шалып жатыр, жартысы қалжыңдап, әлеуметтік инженериямен айналысуға тырысады.

Megatron үшін шайқас белгісін қалай табуға болатынын қалай анықтадыңыз?

Мен кіргенімде, олар серверге спам жіберіп, шамдарды қағып, лазерлік басқару панелінің құпия сөзін, барлық ішкі домендер мен беттерді тапты.

Сондай-ақ Github-та профильді және түсініктемелері бар түйінді табу оңай болды. Осыдан барып ол үшін таңбалауыш пен құпияны қалыптастыру процесі анық. Мұндай квесттерде көп нәрсені ойлап табудың қажеті жоқ, IMHO, өйткені сіз оқиғаларды дамытудың көптеген нұсқаларына батып кете аласыз; және сәйкесінше, квест жасаушы сізді қайда итермелейтінін қадағалауыңыз керек.

Қалған қосалқы домендерді және тильдадағы сынақ алаңын ескере отырып, лазерді қуаттандырғаннан кейін таңбалауышты таңдау қажет болатыны анық болды. Тиісінше, сол күні кешке мен лазерді қосудың шамамен сұрауын жасадым (қол жетімді 4 пішінге негізделген: 1 жұмыс орнында және 3 сынақта/ескі) және 42-ден (жақсы, ақымақ үшін - кенеттен бәрі қосылды, ал таңбалауыш жіберілетін бет жай ғана СТН мен толық аты-жөнінен кейін ашылады).

Мен сұраудың дұрыс екеніне сенімді емеспін, өйткені тексеруге уақыт болмады (яғни, лазердің қосылғанын тексеру ғана мүмкін болды), бірақ мен маркерді іздеуге алдын ала дайындалдым.

Сондай-ақ app.js файлында веб-розеткалар мен құрылғыны басқарудың айқын логикасы болды. Қуатты жіберу кезінде a9 құрылғысының батыл нұсқауы болды: розетка істен шыққаны рас. Мен оған бәрін жіберуге тырыстым - сіз ешқашан білмейсіз, СТН шешуге арналған қосымша құрылғы болуы мүмкін, бірақ сәтсіз.

Содан кейін мен сол ондықтың қасындағы қалған ID файлдарын іздедім, бірақ барлық жерде белгісіз құрылғы болды. Мен де google-дің барлық түрлерін іздеуге тырыстым, жоғары көтерілдім [электрондық пошта қорғалған], барлығын прайс-парақша бетіндегі пішінде жіберді, лазерлік шеберлермен біраз қазу жасады, бірақ бәрі сәтті болмады. Келесі күні мен чатта отырып, әр түрлі нәрселерді қарап шықтым, содан кейін стего тақырыбы пайда болды, мен суреттер мен gif үшін стегосолв адамымен кеңестім (бірақ мен 99% уақытта ештеңе болмайтынын ойша түсіндім, өйткені бұл тым көп болар еді + негізгі квест желісімен қайшылық).

Бірақ соңында мен бірнеше сағат бойы барлық суреттер мен гифтерді қарап шықтым. Мен әртүрлі СТН опцияларымен тағы бірнеше рет қоңырау шалдым, бірақ ол жұмыс істемеді. Содан кейін мен одан бас тартуды шештім, бірақ олар сол жерде түсініктеме берді - және Салық төлеушінің сәйкестендіру нөмірі (СТН) жақын арада табылатыны белгілі болды, солай болды. Содан кейін мен немесе басқа біреу (бұл анық емес) қуат жіберді: a9 құрылғысына сәйкес және лазер жұмыс істей бастады, дегенмен байланыс жоқ және ол СТН-дан кейін ғана жұмыс істей бастады. Жалпы, мен лазердің басқару панеліне кіріп, таң қалдым, себебі сервердің өзі таңбалауышты жіберді (және мен дөрекі әрекетке дайындалып жатырмын). Төкеннің сынақ екені белгілі болды, өйткені эфир + парасаттылық + мен оны тексердім.

Кодта хабарландыру ретінде бір жерге жұмыс белгісін жіберу логикасы бар, бірақ бұл қате код немесе жүйенің басқа бөліктері үшін қажет болған сияқты. Мен ағымдағы сынақтан ағымдағы жұмыс белгісін алу үшін сценарий әзірледім және оларды жіберуге тырысып, f5-ге отыра бастадым - бұл мәселеде проблемалар туындады, өйткені барлығы жіберу түймесін үнемі басып отырды, осылайша мүмкін болса таңбалауышты өзгертті. Содан кейін сайт бұзылды, есептегіш қалпына келтірілді, бірақ бұл мәселе емес - біраз уақыттан кейін мен жұмыс белгісін жібердім. Теориялық тұрғыдан есептегіш 58 және болды токен был 449a776938f7ce4cf19f8603045dca0f қосу кезінде, қателеспесем. Бар болғаны.

Содан кейін мен «иә, мұның бәрі ұсақ-түйек, бірақ менің жолым болды» деген сияқты пікірлерден біраз күйіп қалдым. Егер сіз параққа кірсеңіз, бір минут ойланыңыз, бірнеше минут ішінде сценарий жазыңыз, оны тексеріңіз - иә, бұл тривиальды. Бірақ мен мұны 10-20 секундта жасадым, содан кейін бірнеше минут бойы токенді жібере алмадым.

Әрине, оны алып, автоматты түрде жіберу үшін логиканы жазуға тырысуға болады, бірақ бұл ұзағырақ уақыт алады және үлкен тәуекел болады, сонымен қатар бұлт ант ете бастауы мүмкін. Менің жолым болғаны ең соңғы кезең болды - жылдамдық + реакция жылдамдығына арналған бірнеше алгоритм, бұл тек менікі. Егер тікелей пентесттен тапсырма болса, мен бірінші болмас едім.

Бірақ әлі біткен жоқ

Мен сізге осы қашу бөлмесін салған таңғажайып команда және олар ойлап тапқан барлық инженерлік шешімдер туралы айтуды күте алмаймын. Бірақ бұл пост тым үлкен болып шықты - сондықтан бұл туралы бөлек мақалалар болады, сондықтан хабардар болыңыз және Habré блогындағы блогымызға жазылыңыз.

Ұсақтағышты кім тоқтатты немесе серверді жою арқылы квестті қалай аяқтау қажет болды

Ақпарат көзі: www.habr.com

пікір қалдыру