Всем привет!
Я хочу рассказать вам про конкурс «Конкурентная разведка», проведённый в рамках конференции Positive Hack Days – 2013. Подробнее о нём можно прочитать здесь: www.phdays.ru/program/contests/#16276
В «Конкурентной разведке» я участвовал уже во второй раз, имея за плечами уже определенный опыт в подобной работе, и с нетерпением ждал новых условий. Одной из причин, почему я написал эту статью, является то, что на некоторые вопросы из прошлогоднего конкурса я до сих пор так и не нашёл ответов. Я очень надеюсь, что в этом обсуждении мы вместе соберем все ответы на вопросы, которые были в этом году.
Ответы на вопросы я буду давать не по порядку, данному в условии конкурса, а согласно логической цепочке, которая привела меня к правильным ответам. В конце я опишу вопросы, ответы на которые я так и не нашёл.
Я писал эту статью после закрытия конкурса, и его разработчики на тот момент уже закрыли некоторые конкурсные сайты, так что не смущайтесь, если некоторые ссылки работать уже не будут.
Также отмечу, что правильный ответ на каждом шаге рождался в муках, был итогом эпических мозговых штурмов, проб и ошибок, многих десятков перепробованных вариантов. А здесь я лишь напишу про вариант развития событий, близкий к идеальному. Поехали.
Шаг 1.
В этот раз нужно было ответить на 16 вопросов о компании «Godzilla Nursery Laboratory».
Ищем в Гугле название фирмы:
Первая ссылка – это группа компании «Godzilla Nursery Laboratory» в Linkedin, www.linkedin.com/groups/Godzilla-Nursery-Laboratory-5000097:
Изучаем ссылки на главной странице группы, которые опубликовал некий «Randi Klinger», работающий в должности «Marketing manager». Все они сокращены с помощью сервиса bit.ly и ведут на разные, никак не связанные между собой, статьи:
bit.ly/12LtZwC – wonderwall.msn.com/movies/angie-everhart-is-now-cancer-free-1752151.story
bit.ly/12txG8G – movies.msn.com/movie-guide-summer/11-things-we-love-about-original-star-trek-movies/photo-gallery/feature/
bit.ly/YuDX4D – now.msn.com/angry-cats-a-photo-gallery-of-ways-to-piss-off-a-cat
bit.ly/13iaUmE – tv.msn.com/personalities-we-love-to-hate/photo-gallery/feature/?photoidx=12
Но погодите, всех их объединяет то, что они расположены на msn.com. Думаю, именно сайт msn.com можно использовать для социальной инженерии против «Marketing manager».
Правильный ответ: «msn.com».
Шаг 2.
В новостях группы в Linkedin видим, что данную группу создала некая «Amber Lester».
Изучаем ее профиль. Отмечу, что её профиль можно либо найти в Гугле, либо перейти на её страницу в Linkedin, кликнув по всплывающей ссылке на её имени в ленте обновлений.
Отлично, есть профиль, www.linkedin.com/pub/amber-lester/70/595/a1:
У нас есть имя HR director’а, а также интересные сайты, указанные у неё в общих сведениях. Пробиваем все эти сайты на www.whois.sc.
По доменам www.godzillanurseryfans.com и www.godzillanurseryfans.ru ничего интересного не получаем. А вот по домену www.godzillanurseryfans.info видим следующие данные:
Да, почта Amber Lester – это: mberlest@gmail.com.
Отмечу, что здесь в конкурсе возникла сложность, так как ещё существовала почта: amber.lester@godzillanurserylab.com, а также привязанный к ней профиль той же Amber Lester «В контакте», vk.com/id210561328. Был ли этот ложный след сделан создателями конкурса специально или просто так получилось – неясно.
Факт остается фактом: amber.lester@godzillanurserylab.com – неверный вариант.
Правильный ответ: «mberlest@gmail.com».
Шаг 3.
Теперь заходим на официальный сайт компании «Godzilla Nursery Laboratory»: www.godzillanurserylab.com. Найти его просто – на момент написания статьи это вторая и третья ссылка в Гугле по запросу: «Godzilla Nursery Laboratory».
Заглядываем в robots.txt:
То, что скрыто для роботов, интересно нам, заходим в каталог «test»:
Скачиваем все файлы. Помимо всего прочего получаем архив под паролем: «gmailacc.rar». Другие файлы пока придержим, они нам пригодятся позднее.
Ставим брутить: «gmailacc.rar». Архивы «*.rar» брутятся намного медленнее, чем «*.zip», однако через 3 минуты у нас есть сверхсложный пароль:
В архиве лежит файл: «gmailacc.PNG». Вот его самая главная часть:
Похоже, что адрес почты: greg.cru@godzillanurserylab.com, принадлежит вот этому товарищу, которого можно найти по ссылке: www.godzillanurserylab.com/contacts.htm:
Пробуем его адрес почты и пароль «cru1crua27» для входа в Gmail, однако, так как статью я писал уже после закрытия конкурса, то разработчики некоторые вещи успели прикрыть. Непосредственно название компании сам я не нашёл, а правильный ответ не запомнил:
Но уже от этого шага до определения его страховой компании вас разделяют секунды.
Правильный ответ: взломанный архив ведет к нему.
Шаг 4.
По ссылке: www.godzillanurserylab.com/contacts.htm, видим СЕО:
Он же в Linkedin, www.linkedin.com/pub/maximiliann-ozillov/70/460/54b:
Ого, да тут про него полно данных! Стоит отметить, что следующие данные появились как подсказка уже только во второй день соревнования, в первый день этого не было:
Работаем с тем фактом, что он любит ICQ. Ищем в ICQ:
Нашли, проверим, может, это однофамилец. Жмём: «Профиль». Да, это наш объект:
Правильный ответ: «Concord».
Шаг 5.
Обращаемся снова к Linkedin, на странице СЕО: www.linkedin.com/pub/maximiliann-ozillov/70/460/54b, видим многих его коллег.
Здесь почти вся дружная компания, сейчас нам интересна «Inessa Golubova», «Biological Engineering». Заходим на ее страницу и помимо прочего видим:
Заходим в «Мой мир», ищем по почте, находим профиль, www.my.mail.ru/mail/gineska81/info:
В её фотографиях видим нужную нам фотку:
Обратите внимание на важную деталь в левом верхнем углу картинки, мы видим там нижнюю часть адреса веб-версии почты компании: www.email.godzillanurserylab.com. Этот факт пригодится нам дальше.
Правильный ответ: «GNLIgolubova».
Шаг 6.
На шаге 5 мы нашли адрес веб-версии почты: www.email.godzillanurserylab.com. Заходим на него и видим следующую форму:
Притворимся, что мы – СЕО и что мы забыли свой пароль к почте. Кликнув по «Forgot your Password?», мы вводим почту: ceo@godzillanurserylab.com.
Отлично, такая почта существует. Видим секретный вопрос:
О, да это мы уже знаем из шага 4. Вводим «Concord» и получаем новый пароль.
Теперь возвращаемся назад, на форму входа в почту, www.email.godzillanurserylab.com, вводим ceo@godzillanurserylab.com и пароль, попадаем в «debug mode» почты. Там видим одно-единственное письмо с маленькой картинкой:
Забиваем картинку в поиск картинок Гугл и через минуту находим, что это «St James Park».
Правильный ответ: «St James Park».
Шаг 7.
Идем дальше по списку коллег СЕО в Linkedin. Теперь нам интересен некий «Ivanes Inclam».
Просто спрашиваем про него у Гугла и получаем сразу 3 ссылки:
Ivanes Inclam просит помощи по настройкам фильтрации для межсетевого экрана сразу на трех форумах:
Правильный ответ: «Kaspersky Security for Internet Gateway Russian Edition».
Шаг 8.
Теперь вспоминаем про второй зашифрованный архив: «Investigation_Report.zip». Здесь интересней. Архив хоть и зашифрован, но можно просмотреть его содержимое:
Видим в нём два файла: «Investigation Report.pdf» и «sil-male.png». Примечательно, что рядом с этим зашифрованным архивом в открытую лежат ещё два файла:
Итого. У нас есть:
− зашифрованный архив, «Investigation_Report.zip», содержащий помимо нужного нам PDF-файла, файл «sil-male.png»
− открытый архив, «src.zip», содержащий только один файл, «sil-male.png»
− сам файл, «sil-male.png»:
Хм, да это намек на plaintext-attack. Её возможность возникает тогда, когда у нас есть открытый текст и соответствующий ему шифротекст. Подробнее здесь:
www.en.wikipedia.org/wiki/Known-plaintext_attack
www.ru.wikipedia.org/wiki/Атака_на_основе_открытых_текстов
Думаю, есть несколько программ, который могут выполнять эту атаку, но я использовал приложение Advanced Archive Password Recovery от Elcomsoft. Указав в качестве параметров тип атаки: «Plaintext», а также зашифрованный и открытый архивы, содержащие один и тот же файл, я запустил атаку:
Двадцать секунд, и у нас есть открытый архив без пароля, пароль в таком случае не находится.
В архиве находятся данные по некоему «Robert Craft»:
Да это, оказывается, наш CIO.
Правильный ответ: «Robert Craft».
Шаг 9.
Профиль «Carlos Bechtol» также есть в Linkedin, но это ничего интересного нам не дает. Мы нашли его профиль «В контакте»: vk.com/id210334624.
Вот тут я отмечу ещё одну сложность.
На картинке вы видите его телефон уже после первой подсказки организаторов. До этой самой подсказки его номер выглядел так: «+7916***13**».
До подсказки мы нашли профиль некоего «Carlos Bechtol» на Google+. Но никаких данных на странице не было. Тогда мы вручную подобрали его почту: «carlos.bechtol@gmail.com».
Потом проверили, что форма восстановления пароля «В контакте» по почте «carlos.bechtol@gmail.com» явно указывала на нужную нам страницу.
Последние две цифры телефона мы нашли с помощью формы восстановления пароля для этой почты на Гугле:
Оставался вопрос, как найти пятую, шестую и седьмую цифры номера: «+7916***1374». И вот здесь мы опять столкнулись с проблемой. Профилей в других соцсетях мы не нашли. А форма восстановления пароля «В контакте», столкнувшись с повышенным интересом к данному профилю, выдавала следующее сообщение:
«Превышено допустимое количество попыток. Попробуйте повторить запрос позднее».
Было очень жаль упускать балл за практически найденный телефон. После десятков наших попыток восстановить пароль разработчики конкурса дали подсказку, после которой телефон выглядел уже так: «791660413**».
И вот, как я думаю, почему появилась подсказка. Всё оказалось интересно. 21 мая 2013 г., на момент написания поста Дмитрия Евтеева о пробивании номера телефона человека по учётке в соцсети: www.devteev.blogspot.ru/2013/05/blog-post_21.html, сервис «В контакте» при запросе на восстановление пароля выдавал целых 7 первых цифр номера, а уже 24 мая, во второй день конкурса, выдавались лишь первые три цифры (код оператора) и последние две цифры. Оперативно ребята из «В контакте» исправили эту уязвимость.
Правильный ответ: «+79166041374».
Шаг 10.
На странице СЕО указано, что СЕО работал ранее в:
Заходим по ссылке, видим картинку:
Увеличиваем и читаем адрес: 54.245.97.120 а также видим, что после последнего октета «120» стоит явное двоеточие, а значит — вводится конкретный порт. Сам сайт оказался недружелюбен:
Узнаем его порты c помощью nmap: «nmap -p 1-65535 -v 54.245.97.120»
Всего есть 4 открытых порта. 22-й порт SSH ничего не дает, там нужна учётка. Брутить и учётку, и пароль – дело неблагодарное. 53-й порт DNS, тоже ничего интересного не дает.
Берем 80-й порт и руками перебираем TOP-10 наиболее распространённых каталогов: «admin», «test», «doc», «upload», «download», «images» и пр. Ничего.
Берем порт 8080, перебираем тот же список TOP-10. Вуаля:
А значит, в Genom Lab Departmnet всего два сотрудника: CEO и CRO. Почту СЕО мы знаем: ceo@godzillanurserylab.com, а почту CRO найдем здесь: www.godzillanurserylab.com/contacts.htm
Правильный ответ: «ceo@godzillanurserylab.com cro@godzillanurserylab.com»
Шаг 11.
В контактах на главном сайте: www.godzillanurserylab.com/contacts.htm, видим нужного нам человека:
Ищем его в Linkedin:
Есть такой. Получаем его домашний адрес:
Ищем адрес на Google maps, видим дом:
А справа, за кустами, находим машину, приблизим её:
Похоже, это Honda.
Правильный ответ: «Honda».
Шаг 12.
На странице СЕО в Linkedin: www.linkedin.com/pub/maximiliann-ozillov/70/460/54b, вернёмся к общим сведениям:
Видим сайт *.onion, а значит – нам нужен Tor. Подробнее почитайте здесь, кому интересно: www.en.wikipedia.org/wiki/.onion. Скачиваем Tor Browser Bundle и заходим на сайт, либо пользуемся шлюзом в Tor типа 6uzhxjor2tfsdwzf.tor2web.org/ и видим одну лишь картинку:
Широк полет фантазии у СЕО. Явно эта картинка связана со словом «fetish». Заглядываем в EXIF картинки. Подробнее здесь – www.ru.wikipedia.org/wiki/EXIF. Либо открываем её любым hex-редактором. Мы воспользуемся первым попавшимся онлайн-просмотрщиком EXIF: www.regex.info/exif.cgi. Загружаем картинку и видим в поле «Location» нужное нам слово.
Либо в hex-редакторе видим то же самое:
Правильный ответ: «Zillaphilya».
Шаг 13.
На этот вопрос ответа мы не нашли, но есть зацепки. В частности, в Linkedin есть человек с должностью «Call center operator»: www.linkedin.com/pub/janice-harrison/70/a06/846:
Но поиск по нему нас к успеху не привел.
Также была найдена неизвестная сигнатура при сканировании nmap’ом ранее упомянутого на шаге 10 ресурса: 54.245.97.120.
Варианты: «Cisco» и «Sisco», не подошли. Это уже сейчас я думаю, что надо было попробовать «SISCO TELECOM VOIP».
Правильный ответ: найдём вместе.
Шаг 14.
Зацепка есть в файле: «dbo.report.log», который мы получили вместе с зашифрованными архивами на шаге 4. В данном файле среди всего прочего есть строка вида: «N:/DBO***.GODZILLANURSERYFANS.INFO/www/favicon.ico»
Брут директорий по разным маскам на «dbo***.godzillanurseryfans.com» и других найденных сайтах результатов не дал.
Правильный ответ: найдём вместе.
Шаг 15.
Этот ответ мы не нашли, без зацепок.
Правильный ответ: найдём вместе.
Шаг 16.
Этот ответ мы тоже не нашли, без зацепок.
Правильный ответ: найдём вместе.
Заключение
В завершении статьи я отмечу, что в этом году конкурс «Конкурентная разведка» стал более «техническим», взять, например, тот же взлом архивов. Иногда это серьёзно смущало в выборе стратегии.
Были также некоторые несостыковки, вроде двух почт HR director’а.
Еще одной особенностью, которая немного распыляла внимание, было то, что разработчики конкурса смешали «русский» сегмент сети («ВК», «Мой мир» и пр.) с «более западным» направлением («Linkedin», многие места и адреса объектов были за рубежом). Достаточно времени было потрачено впустую на поиск людей по западным соцсетям.
Так как я писал статью уже после закрытия конкурса, то мог где-то допустить неточность: например, на финише Шага 3. Если кто найдёт помарку – напишите, я исправлю.
Я хочу сказать спасибо «shisha», с которой мы вместе бились над конкурсом. Ты – молодец! Нам не хватило совсем чуть-чуть до медалей. Но это был важный опыт. Хочу сказать спасибо ребятам, занявшим первые три места с никами: «azrael», «topol», «Det0», – это я у вас после награждения уточнял некоторые ответы.
И спасибо организаторам этого конкурса и всей конференции, это был просто отличный праздник информационной безопасности! Так держать!
Update: разработчики конкурса 24 июня 2013 г. опубликовали официальное его прохождение, которое можно почитать здесь.
Автор: Pandos