Это было в раз­гар ковида. Я тог­да работал в одной IT-ком­пании, где помогал неп­рерыв­но улуч­шать сис­тему безопас­ности. Приб­лижались уче­ния по социн­женерии. Я сидел и думал над тек­стом для оче­ред­ного фишин­гового пись­ма, и тут мне в голову приш­ла шаль­ная мысль: «Не сде­лать ли что‑то повесе­лее? Нап­ример, через зво­нок поп­робовать узнать пароль от учет­ки». Спой­лер: успешно получи­лось.

Pentest Award

Этот текст получил третье мес­то на пре­мии Pentest Award 2024 в катего­рии «Ловись рыб­ка». Это сорев­нование еже­год­но про­водит­ся ком­пани­ей Awillix.

Ре­шив идти по сто­пам Кевина Мит­ника, я при­нял­ся раз­мышлять. Нуж­но было опре­делить для себя нес­коль­ко вещей:

  1. Как ата­куем?
  2. Ко­го ата­куем?
  3. Ка­кую допол­нитель­ную инфу собира­ем?
  4. Как оце­нива­ем успешность ата­ки?

И если с пос­ледним пун­ктом нет проб­лем (пароль или получен, или нет), то над осталь­ными сле­дова­ло подумать.

Ах да, важ­ное огра­ниче­ние, которое я себе задал, — вся информа­ция дол­жна быть соб­рана через внеш­ние источни­ки. Мы же хотим мак­сималь­но приб­лизить­ся к тому, как будет вес­ти себя зло­умыш­ленник, вер­но?

Делай раз — как атакуем?

Раз сле­дуем заветам Мит­ника, пус­кай это будет зво­нок сот­рудни­ку, информа­ция о котором есть в откры­тых источни­ках. Поп­росим его дать пароль от учет­ной записи.

Ко­му из ком­пании могут дать пароль? Адми­нам и безопас­никам. Пред­став­лять­ся безопас­ником я не могу по прос­той при­чине...

Ос­тают­ся толь­ко адми­ны, при­чем они дол­жны и прав­да быть в ком­пании, так как поль­зователь у нас обра­зован­ный и на любого Ива­на Василь­еви­ча не поведет­ся.

Зна­чит, нуж­но будет еще отве­тить на воп­рос «Как узнать дан­ные адми­на?».

Что­бы админ поз­вонил, нужен повод, и это мы обес­печим сами! Отлично подой­дет любое подоз­ритель­ное пись­мо, которое мы же и отпра­вим.

По­луча­ется вот такая цепоч­ка дей­ствий:

  1. Уз­наём информа­цию от сек­ретаря.
  2. Вы­сыла­ем подоз­ритель­ное пись­мо.
  3. Зво­ним челове­ку, пред­став­ляем­ся адми­ном.
  4. Пу­гаем тем, что в пись­ме был сти­лер и надо поменять пароль.

И это все под­водит нас к сле­дующе­му воп­росу: «Кого будем ата­ковать?»

Делай два — кого атакуем?

Ло­гич­но пред­положить, что в зоне рис­ка находят­ся те, про кого есть инфа в откры­том дос­тупе. Пуб­ликовать свою поч­ту в откры­том дос­тупе могут толь­ко некото­рые катего­рии сот­рудни­ков: про­даж­ники, сек­ретари и рек­рутеры. В качес­тве цели я выб­рал рек­рутеров.

Так­же нам нуж­но будет най­ти сис­темно­го адми­нис­тра­тора из ком­пании или кого‑то из техот­дела.

Рекрутер

Най­ти адре­са рек­рутеров лег­ко. Смот­рим сле­дующие ресур­сы:

На «Хабр Карь­ере» уда­лось най­ти всех рек­рутеров и получить их име­на и дол­жнос­ти. Боль­ше все­го информа­ции было у Марии и Дианы.

На офи­циаль­ном сай­те находим адре­са телефо­нов сек­ретарей (при­годит­ся поз­же) в трех раз­ных отде­лени­ях ком­пании и ссыл­ку на офи­циаль­ную груп­пу «Вкон­такте». Через груп­пу уда­лось вый­ти на еще один сайт ком­пании, где перечис­лены все вакан­сии. Для одной из вакан­сий в качес­тве кон­так­тно­го лица ука­зана Мария. В дан­ных для свя­зи был Telegram.

Я про­дол­жил искать информа­цию о Марии и напал на золотую жилу — ее пол­ную кон­так­тную информа­цию.

Ра­бочий телефон, поч­та, Telegram (где ука­зан сотовый), наз­вание вакан­сии — дос­таточ­но для фор­мирова­ния ата­ки. Нас­тала оче­редь адми­на.

Админ

К счастью, тут все поп­роще, и для поис­ка нуж­но было толь­ко два ресур­са:

Мою ком­панию уда­лось най­ти в LinkedIn, и в спис­ке сот­рудни­ков зна­чил­ся ведущий сис­темный адми­нис­тра­тор. Так­же сре­ди под­писчи­ков нашел­ся некий Роман, который неожи­дан­но при­годил­ся поз­же.

У LinkedIn есть осо­бен­ность: име­на сот­рудни­ков могут не отоб­ражать­ся. Поэто­му, что­бы узнать имя и фамилию адми­на, приш­лось поис­кать по кар­тинке.

Мно­го информа­ции не надо, дос­таточ­но фамилии и име­ни, что­бы пред­ста­вить­ся. Сущес­тву­ет нес­коль­ко рис­ков:

  1. Рек­рутер может знать адми­на лич­но, если она работа­ет в гиб­ридном или офис­ном режиме.
  2. Дан­ные на LinkedIn ста­рые, и админ может уже не работать в ком­пании.

Что­бы понять, нас­коль­ко рис­ки соот­ветс­тву­ют дей­стви­тель­нос­ти, мне не приш­ло на ум ничего луч­ше, кро­ме как поз­вонить в ком­панию и побол­тать.

Делай три — сбор информации

Дан­ные из интерне­та никог­да не помеша­ет акту­али­зиро­вать. Вдруг админ вооб­ще уже уво­лил­ся? Рек­рутер вряд ли уво­лена, вакан­сии пуб­лику­ются небес­плат­но, и там сра­зу обно­вили бы адрес.

Зво­нить будем сек­ретарю от име­ни какой‑нибудь ком­пании‑интегра­тора, что­бы впа­рить чудес­ные сер­веры и прог­раммы. Плюс поп­робу­ем раз­болтать сек­ретаря, вдруг узна­ем что‑нибудь еще о ком­пании.

Поз­вонив в ком­панию и пред­ста­вив­шись менед­жером по про­дажам ООО «ИТ‑Софт‑сер­вис», я спро­сил у сек­ретаря, работа­ет ли сей­час у них Дмит­рий С., ведущий сис­темный адми­нис­тра­тор, так как на его рабочий номер я не могу доз­вонить­ся. Сек­ретарь спро­сила, как меня зовут и ка­кого хре с какой целью я спра­шиваю про Дмит­рия.

Пред­ста­вив­шись и рас­ска­зав всю свою исто­рию, я ска­зал, что в базе дан­ных Дмит­рий у нас ука­зан кон­так­тным лицом, поэто­му я о нем и спра­шиваю. Если вдруг он уво­лил­ся, то я с радостью бы пооб­щался с дру­гим адми­ном. Сек­ретарь рас­кры­ла кар­ты и ска­зала, что Дмит­рий дей­стви­тель­но уже не работа­ет в ком­пании, но упор­но не хотела выдать кого‑то, с кем мож­но пооб­щать­ся вмес­то него.

Тог­да я стал ей рас­ска­зывать, какие у нас чудо‑сер­веры, а еще у нас есть клас­сные мес­сен­дже­ры для кор­поратив­ного обще­ния. В ито­ге, выс­лушав, что им мес­сен­дже­ры не нуж­ны, так как мес­сен­джер у них есть, я спро­сил, каким они поль­зуют­ся, и узнал, что это «Тимс» (Microsoft Teams). Инте­рес­ная информа­ция!

По­том я чуть сни­зил напор и спро­сил, кому мож­но нап­равить пись­мо, если отсы­лать пред­ложение об услу­гах. Как ока­залось, пись­мо мож­но нап­равить сек­ретарю и ука­зать, что оно будет для Романа, который, как ока­залось, руково­дитель ОТО. Роман ока­зал­ся тот самый, что был сре­ди кон­тактов у Дмит­рия.

Дос­тавая бед­ного сек­ретаря даль­ше, я пытал­ся выведать режим работы Романа, что­бы прий­ти лич­но и погово­рить о трек­лятых сер­верах. Мне ска­зали, что надо догова­ривать­ся лич­но с ним, так как он ред­ко появ­ляет­ся в офи­се, и поп­росили при­сылать всю инфу на поч­ту, что­бы Роман сам решил, сто­ит наз­начать встре­чу или нет.

Я решил, что с бед­ного сек­ретаря хва­тит, и веж­ливо поп­рощал­ся. Сек­ретарь, облегчен­но вздох­нув, повеси­ла труб­ку.

По­дыто­жим:

Хватит делать — пора атаковать!

Нам уда­лось соб­рать дос­таточ­но информа­ции, и теперь мож­но ата­ковать ничего не подоз­рева­юще­го рек­рутера.

Пер­вый шаг — отправ­ляем пись­мо с фай­лом, который невоз­можно открыть. Текст пись­ма написан так, буд­то мы уже обща­лись с Мари­ей нас­чет этой вакан­сии.

Вор­дов­ский файл не откры­вает­ся, да...

Это было сде­лано для двух целей:

  1. Мы все же за безопас­ность, и хотелось узнать, сооб­щит ли кому‑то Мария, что ей при­шел подоз­ритель­ный файл (спой­лер: нет).
  2. В под­писи к пись­му может быть допол­нитель­ная информа­ция. Если вдруг эта ата­ка не удас­тся, то мож­но будет исполь­зовать это в дру­гом сце­нарии.

От­пра­вив пись­мо днем, я получил ответ толь­ко на сле­дующее утро.

Ну что, отправ­ляем вто­рое пись­мо и готовим­ся к звон­ку.

Сто­ит ли говорить о том, что этот файл тоже не откры­вает­ся.

Счи­таем, что дня пос­ле отправ­ки фай­ла дос­таточ­но для того, что­бы открыть его, поэто­му на сле­дующий день зво­ню с сотово­го телефо­на на рабочий Марии и пред­став­ляюсь Романом:

Ма­рия, при­вет! Это Роман ████████ из ОТО.

Вхо­жу в доверие и изви­няюсь за то, что зво­ню на рабочий, а не в мес­сен­джер:

Из­вини, что зво­ню на сотовый, Teams целый день глю­чит, не могу никого наб­рать.

Спра­шиваю у нее, не откры­вала ли она какие‑нибудь стран­ные фай­лы:

Под­ска­жи, ты за пос­ледний день не откры­вала какие‑нибудь фай­лы подоз­ритель­ные? Ска­чан­ные или из поч­ты, нап­ример.

Она говорит, что вче­ра и сегод­ня откры­вала пись­мо с резюме, но у нее не откры­лось, а недав­но она еще один файл откры­ла с PDF, который тоже выдал ошиб­ку при откры­тии.

Я начинаю объ­яснять при­чину сво­его звон­ка — сра­бота­ло пре­дуп­режде­ние на сер­вере:

Я вот по какой при­чине зво­ню — Дима‑то ушел, и я пока некото­рые его обя­зан­ности взял на себя и поэто­му смот­рю за сис­темой безопас­ности. И у меня тут сра­бота­ло пре­дуп­режде­ние, что у тебя какая‑то стран­ная активность идет.

Она говорит, что ей кажет­ся, буд­то ее компь­ютер мед­леннее работа­ет, а то и вооб­ще тор­мозит.

Я начинаю запуги­вать: спра­шивать, не появи­лось ли стран­ных фай­лов на рабочем сто­ле, вдруг это шиф­роваль­щик начина­ет работать...

Про­верь, пожалуй­ста, рабочий стол, нет ли там новых фай­лов или зас­тавки с тре­бова­нием зап­латить денег за рас­шифров­ку. Иног­да вирусы могут зашиф­ровать компь­ютер или сеть, а потом вымогать день­ги.

Она дела­ет это, а потом говорит, что рабочий стол обыч­ный — нет новых фай­лов и обои стан­дар­тные.

Я раду­юсь это­му и про­шу открыть дис­петчер задач, что­бы про­верить, нет ли там одно­го подоз­ритель­ного фай­ла, потому что был похожий слу­чай:

Это хорошо. Слу­шай, а пос­мотри еще, пожалуй­ста, дис­петчер задач. Там может быть файл svchost.exe. У нас был один слу­чай, ког­да этот вирус на ком­пе обна­ружи­ли. Вот как это мож­но сде­лать...

Ма­рия смот­рит дис­петчер задач и с ужа­сом обна­ружи­вает, что фай­лов svchost.exe на самом деле пол­но. Начинаю наг­нетать ужас и говорю, что на самом деле все еще хуже:

Блин, это пло­хо. В общем, этот вирус записы­вает все твои нажатия, сни­мает экран, сох­раня­ет пароли из бра­узе­ра и сис­темы, поэто­му этих фай­лов так мно­го.

Рек­рутер пуга­ется и начина­ет оправды­вать­ся, что так и думала, что с фай­лами что‑то не так. Пред­лагаю свою помощь и говорю, как будем дей­ство­вать:

Не пережи­вай, такое с каж­дым может слу­чить­ся. Смот­ри, как пос­тупим сей­час: тебе надо будет вык­лючить компь­ютер, что­бы вирус ничего боль­ше не собирал. Я отправ­лю кого‑нибудь к тебе, что­бы заб­рали компь­ютер и разоб­рались, как лечить. Пока надо будет поменять пароль. Если ты его будешь менять, то вирус уви­дит все и нам это не поможет. Давай сде­лаем так — что­бы тебе было про­ще запоми­нать, я могу сей­час на сер­вере заменить твой пароль точ­но таким же, но прос­то добав­лю в кон­це еди­ницу.

Нес­коль­ко секунд ожи­дания, и Мария спра­шива­ет, как дол­го будет про­исхо­дить сме­на пароля и как дол­го будут лечить комп. Говорю, что пос­тара­емся сде­лать все как мож­но быс­трее. Пос­ле это­го мне дик­туют пароль.

Го­ворю, что в ско­ром вре­мени еще раз наберу, и веж­ливо про­щаюсь.

Пос­ле это­го пыта­юсь зай­ти в веб‑поч­ту с помощью того пароля, который про­дик­товала Мария.

Па­ра секунд заг­рузки, и успех — я попадаю в ее поч­ту.

Па­роль получен, цель дос­тигну­та. Что даль­ше?

Делаем, чтобы такого больше не было

Пос­ле раз­бора полетов и оцен­ки успешнос­ти ата­ки начина­ем соз­ванивать­ся с Мари­ей и нас­тоящим Романом ████████ для раз­говора и объ­ясне­ния того, что про­изош­ло. На встре­че я спро­сил у Марии, не переда­вала ли она кому‑то пароль, и она уве­рен­но ска­зала, что переда­вала, но толь­ко Роману. Тот очень уди­вил­ся и ска­зал, что никому не зво­нил и пароль, естес­твен­но, не про­сил.

Пос­ле паузы Маша про­изнесла одно сло­во — БЛ████████.

Есть мно­жес­тво рис­ков и потен­циаль­ных ситу­аций, ког­да эта ата­ка мог­ла не дать резуль­тата: Мария мог­ла знать Романа, про­дик­товать пол­ностью новый пароль, сооб­щить его нап­рямую Роману в мес­сен­дже­ре или по его нас­тояще­му телефо­ну. Тем не менее ата­ка уда­лась.

Мы задались воп­росом, что нуж­но, что­бы такого боль­ше не пов­торилось. Вот что сде­лали по ито­гам:

  1. Про­вели раз­говор со все­ми рек­рутера­ми.
  2. Ак­туали­зова­ли внут­ренний курс по информа­цион­ной безопас­ности.
  3. Сде­лали рас­сылку, где говори­лось о том, что в слу­чае подоз­рений луч­ше зво­нить в отдел ИБ.
  4. Пос­тавили уче­ния по социн­женерии наряду с фишин­гом.
  5. Ста­ли рас­смат­ривать­ся вари­анты двух­фактор­ной аутен­тифика­ции.

Все было учте­но и выпол­нено. Мы думали, что такого сно­ва не дол­жно было слу­чить­ся. Сле­дующие уче­ния показа­ли, что все не так хорошо, как мы думали...