Category: it

Category was added automatically. Read all entries about "it".

awesomeness

Новогодние резолюции

Традиция несоставления новогодних резолюций продолжается, но зато у меня наметился список задач на новогодние каникулы. Их три и они очень приятные и не так, чтобы обязательные, но я жду-не дождусь, когда за них возьмусь:

1. Покодить что-то под Alexa, которую мне подарили на AWS Summit. Для начала нашла какой-то навык для Pager Duty, попробую сначала установить как есть, а потом под свою команду немного помодифицировать.

2. Сделать ленточки для причёсок акробатической тройки, в которой в этом году выступает Алиска. Нам прислали совершенно сказочные купальники в стразах и с ручной росписью, а украшения для причёсок они «не делают». Хорошо, что я вовремя вспомнила, что в прошлом году была такая же проблема с этой мастерской, и попросила их прислать три отреза под украшения. Буду томными предновогодними вечерами делать красиво :)

3. Написать playbooks для установки и конфигурирования StrongSwan VPN на FreeBSD. Это как минимум. Как максимум, «приделать» всю эту конструкцию к проекту Algo компании Trail of Bits, который обещает за включение в их playbooks системы FreeBSD баунти в размере $500. Мне не столько денег хочется, сколько славы сделать свой вклад в этот замечательный проект. Пользуюсь VPN, запущенным на AWS на основе этого проекта, уже несколько месяцев, как с телефона так и с компьютера.

Так что вот... получается резолюция :)

С наступающими праздниками!
awesomeness

DefCon, завершающий день

К воскресенью тренинги закончились, остались только выступления по основным трекам и по так называемым тематическим «сёлам». Одно из самых понравившихся мне выступлений было посвящено тому, как пробить себе дорогу в мир исследователей компьютерных уязвимостей. Это выступление, как и почти все на этом DefCon, было рассчитано на широкие массы, но при этом давало огромное количество инсайдерской информации, которую трудно получить где-то ещё. Больше всего мне понравился вот этот слайд. Тем, что очень сильно резонирует с моими собственными ощущениями:



Я запостила его в твиттер и получила неожиданно огромную реакцию. Оказывается, не только у меня резонирует. Дэн Камински прокомментировал этот слайд, сказав, что он содержит «столько правды, сколько в принципе можно впихнуть в слайд PowerPoint». Кстати о Камински. Сам он на DefCon не выступал, зато выступал на детской хакерской конференции r00tz, проводимой в те же дни в одном из центральных залов конференции. R00tz проходит уже не первый год и пользуется грандиозным успехом. О чём Дэн рассказывал детям 7-17 лет? О том «как всё это работает». После выступления написал восторженный твит: «с детьми всё в полном порядке». Есть идея взять на следующий год детей с собой, чтобы иметь возможность послушать выступления в мирной тихой обстановке детской конференции. Без детей на неё не пускают ¯\_(ツ)_/¯

Что ещё было интересного... Я прогулялась по залу, где проводился DefCon CTF, одно из самых престижных ctf соревнований в мире. Увидела своими глазами команду университета Карнеги-Меллон. Среди них была девушка. С розовым лаптопчиком. Они в этом году снова победили.

С ещё одной участницей DefCon CTF мне посчастливилось лететь рядом в самолёте. Австралийка, работает в Google в команде, занимающейся поиском. Мы весело провели время, пытаясь прочитать крипто-надпись на подаренной ей футболке.

Самое сильное впечатление от конференции? Заманчиво светящиеся супер-компьютеры на сцене одного из конференц-залов.



Эти компьютеры участвовали в конкурсе автоматизированных систем поиска уязвимостей. Компьютер-победитель получил два миллиона долларов и чёрный бейдж почётного участника всех последующих DefCon-ов, обнаружив уязвимость, которая не предполагалась авторами конкурса. Говорят, что его отправят в музей Smithsonian.

Самая большая неожиданность? Очень низкий технический уровень публики в среднем. Это диктует уровень отбираемых выступлений и, в особенности, тренингов.

Самое приятное? Ощущение, что ты находишься в среде, где любят и ценят то, что ценишь ты. Что в это можно погрузиться с головой «и пусть весь мир подождёт».

Самое неприятное? Для меня это были бессмысленные вечеринки. Больше не пойду, разве что с хорошей компанией. Но в то же время, с хорошей компанией и без вечеринки есть, чем заняться на хакерской конференции.

Мысли на будущее: хочу на следующий DefCon всей семьёй; распланировать программу немного заранее; не ходить на тренинги (разве что по теме, с которой вообще никогда не приходилось иметь дела); выбрать выступления не по принципу «вот это мне вроде в работе актуально», а по принципу «вот эта тема важная и тут знают, о чём говорят» — для расширения кругозора; взять с собой переходники, паяльник и серийный порт.

Если я о чём-то интересном вам не упомянула, спрашивайте — я расскажу с удовольствием.
awesomeness

DefCon, день третий

На третий день мне повезло даже больше: я снова хотела попасть на тренинг, на этот раз по криптографии в питоне. Но утром мой добрый приятель с восточного побережья, успевший получить браслеты [предварительной записи] почти на все тренинги сразу, сказал, что у него перебор и отдал мне свой браслет. Это означало, что в очередь можно было не сидеть, а сразу приходить к началу тренинга.

Впрочем, к этому моменту сидение в очередь меня уже не пугало :) Там можно было пообщаться об интересных вопросах. Оказалось, что огромное число людей приехали на конференцию из других стран. Я встретила там шведского исследователя, датского участника команды CTF, сисадмина из Индии и ещё одну участницу австралийской команды CTF, которая, правда, сама прилетела из района залива и поэтому не считается.

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

О гунах! Это очень важные персонажи на DefCon. Добровольцы из числа уважаемых представителей хакерского сообщества. Спорить с ними или пытаться одурачить считается верхом нахальства и уважающими себя людьми не практикуется. Выглядит большинство из них очень колоритно и ведут себя бесконечно обаятельно :) Это вам не унылые сотрудники какого-то там обслуживающего агентства, а полноправные хозяева творящегося действа.



Из курьёзов этого года: один из участников конференции вдвоём с гуном предотвратили кражу в ювелирном магазине Вегаса. Вот вам и хакеры-криминалы.

Да, так вот, возвращаясь к очереди: сидим ждём. Подходит гун: «у кого розовые браслеты — проходите на тренинг номер один. Только знаете что ребята... вы попали! Я дальтоник и ничерта в ваших браслетах рассмотреть не могу. Кто тут из вас не дальтоник?» Я поднимаю руку. Гун: «Так, если вы хотите попасть на тренинг, вы должны получить добро вот от неё». Короче, час в очереди прошёл совсем нескучно. Я даже лаптопа не открывала.

Но это всё было во второй день. А тренинг про крипто в питоне оказался совершенно ламерским. Я надеялась послушать о плюсах/минусах pycrypto, cryptography и каких-нибудь новинок и потренироваться в использовании новых библиотек. Но все задания были на уровне «давайте захешируем пароль, как это делает Windows» и после того, как я первой решила четыре из семи задач, я поняла, что нахожусь не в той комнате (if you are the smartest person in the room you are in the wrong room) и быстренько оттуда свалила.

Я уже было открыла несколько статей по интересующей меня тематике, чтобы не тратить зря время и заняться самообразованием. Но тут я открыла твиттер и увидела сообщение о том, что на первом этаже проходит OpenCTF и что в нём участвует мало-премало женщин. До окончания 25-часового конкурса оставалось чуть менее четырёх часов и я, подхватив рюкзак, рванула на первый этаж исправлять статистику :)

Для участия в OpenCTF нужно было подключаться к внутренней сети и сделать это можно было либо подобрав ethernet со стола (чёрт! я не взяла с собой переходник ethernet-thunderbolt!), либо подключившись к эакрытой WiFi-сети конференции. Я не смогла вспомнить пароль к account-у, который создала ещё дома, и мне пришлось создавать новый прямо там на месте. Но мою решимость было уже ничем не перешибить :) Вот так, наверное, опасные хакеры и ловятся, когда как клептоманы не могут отказать себе в удовольствии и теряют бдительность. Позже я сходила в зал, где была расположена доска овечек — экран, где высвечиваются взломанные account-ы. Ничего своего я там не обнаружила.

С конкурсом ctf у меня получилось не очень... Я прошла «sanity check» и на этом всё. Взялась за одну задачку из категории крипто и если бы у меня было немного больше времени (и я не была бы настолько уставшей), я бы её точно расковыряла. Позже выяснилось, что я была очень-очень близка к ответу. Но зато я поразмяла мозги и в качестве поощрительного приза получила приглашение на вечеринку для участников конкурса. Пригласила с собой коллегу, поскольку пропуск на вечеринку предполагал +1 человека. Коллега остался на вечеринке до утра. Мне самой после часа там стало скучно и я отправилась спать. В очередной раз убедилась, что вечеринки — не моё... Мне гораздо легче заговорить с человеком, просто стоящим/сидящим в зале рядом со мной, чем в полумраке под тымц-тымц-тымц.

Но может быть, в этом и прелесть? Ты ничего не потеряешь, не сходив на вечеринку. Ты ничего не потеряешь, уйдя с неинтересного тренинга. Выбирай что хочешь и делай то, к чему лежит душа. И не обращай внимания ни на кого, кто имеет своё мнение о том, чем тебе лучше заниматься.
awesomeness

DefCon, продолжение первого дня

Время выступлений первого дня подходило к концу. Тут выяснилось, что в принципе чтобы слушать выступления, можно вообще никуда не ходить, потому что выступления с четырёх главных треков транслируются по отельному TV. Мы собрались в номере одного из коллег, смотрели выступление активно артикулировавшего дядечки и... ничего не слышали :( Вот что бывает, когда хакеров в одном месте слишком много — как то дитя, что у семи нянек да без глазу. Пропустить выступление было тем более обидно, что дядечка этот — автор бейджа со всеми его безумными головоломками. А нам очень хотелось подсказок! :)

К слову, бейдж этого года — это крошечный x86-совместимый компьютер Intel Quark D2000. Головоломки на нём были как снаружи (в виде крипто-надписей), так и внутри (но как забраться внутрь, это надо было ещё сообразить). Посмотрев на первую же надпись и прикинув частоту появления различных букв, я подумала, что это простой подстановочный шифр, и пообещала к ужину его сломать. Позже выяснилось, что это, вероятно, OTP и попытки взломать его были пустой тратой времени... До сих пор не видела сообщений о том, что кто-то эту фразу прочитал. Но зато мы прочитали кучу других, а мне даже удалось посмотреть, что внутри, через терминал, благодаря моему старинному другу, с которым мы не виделись почти двенадцать лет и вот встретились на конференции.

Всё это время я героически боролась не только с безнадёжным шифром, но и с яростным желанием спать. Два часа сна ночью, да полтора рано утром в самолёте — вот и весь мой сон. Впрочем, 3.5 часа — это вполне в рамках DefCon-а. Я слышала про неписаное правило конференции под кодовым названием 3-2-1: минимум 3 часа сна, 2 приёма пищи и 1 душ в день. Вообще в infosec-е правило 3-2-1 означает совсем другое, но в режиме конференции, проводимой в пустыне, это правило куда актуальнее.


Да, возвращаясь к конференции и коммуникациям. Организаторы конференции предоставляют две сети WiFi. Одна требует предварительной регистрации и организована как-то нетривиально, с хитрой изоляцией сессии каждого подключившегося. Вторая открыта для всех и на ней хакеры как только не развлекались. Кто-то обнаружил на стене записку для сотрудников казино: «У нас тут DefCon — переключайте свои телефоны в авиа-режим». Я предпочла оставаться на LTE и пользоваться VPN-ом для шифрования интернет трафика. Как стало ясно на третий день, это была довольно бессмысленная затея.

Но пока ещё не закончился первый день. После ужина у меня в планах оставался один пунктик — посещение вечеринки в честь женщин-хакеров, проводимой в рамках микро-конференции TiaraCon в том же месте. Я поднялась на 26-й этаж, заглянула на вечеринку, выпила жестянку колы и как-то больше ничего. Сказывались недосып и отсутствие хотя бы одного условно знакомого лица. Какие-то странные люди, мужчины и женщины и как-то всё неловко, неуместно и вообще уныло. К сожалению, это ощущение неуместности подобных сборищ не прошло у меня до сих пор...

[следующее продолжение следует с опозданием...]
awesomeness

Я еду на DefCon!

DefCon — это ключевая конференция в мировом хакерского сообществе. Я целый год мечтала на неё попасть, но в последний момент чуть не сдалась. Вроде бы решила уже, что компьютерная безопасность и хакерство — это совсем не моя тема. А разбрасываться по разным темам только тратить время на несущественное. Да и всякие нелицеприятные истории с конференции, всплывавшие в течение года, тоже не добавляли энтузиазма.

Но вот две недели назад подскочил восторженный коллега «Ольга, ну ты на DefCon уже собралась?» — и вся моя решимость никуда не ехать тут же улетучилась. Я ответила, что пока не уверена, но назавтра буду знать наверняка. Назавтра у меня уже были билеты в Вегас ¯\_(ツ)_/¯.

Что в этой конференции такого особенного? Пока не знаю. Конференция проводится четыре дня, по нескольким трэкам, где рассказывают о разных хакерских новинках, о внутренней кухне взломов и т.п. Там же проводится CTF, есть «деревня» вскрывателей замков и проходит куча всяких сторонних мероприятий. Там собираются не только «белые» специалисты по безопасности, но и всякие тёмные личности и спец. службы всех стран и народов. Сеть wifi, предоставляемая организаторами, традиционно служит площадкой для взлома всего, что хотя бы на секунду случайно пролетит мимо. При малейшей возможности ломают всё, что окажется в пределах досягаемости, не гнушаясь и приёмами социальной инженерии. Вообще самый популярный совет: не берите с собой ни телефонов, ни компьютеров — взломают ВСЁ.

Кстати о советах: все выходные я читала разные статьи для салаг, впервые прибывающих на конференции infosec. Совершенно уморительные вредные советы сыпались как из рога изобилия в твиттере по хэштегу #BadDefconAdvice.

Вот говорят: «Бесспорно, в жизни надо попробовать всё. Но под "всё" обычно имеется в виду наркотики, гомосексуализм, и съемки в порно. Гораздо реже — ядерная физика, альпинизм и шахматы.» Ну так вот DefCon — это такие ядерные гомосексуальные шахматы на альпийских наркотиках. Я по-прежнему не очень представляю, зачем я туда еду :) Но я точно туда хочу: моя жизнь будет прожита зря, если я на нём не побываю!

ps: Начальство отпускает на DefCon за счёт рабочего времени компании, но без командировочных. И при условии, что мы не берём с собой рабочие ноутбуки и не подключаемся к офисной сети во время пребывания в Вегасе.
dragon

Performance review

На работе настал период новогодних резолюций. С каждого сотрудника потребовали отписаться по трём пунктам:
* что они хотели бы начать делать на работе в этом году,
* что бы они хотели прекратить делать, и
* что хотели бы продолжить.

А у вас тоже такие дурацкие performance reviews?

Думала-думала, но как ни старалась, по первым двум пунктам так и не получилось ничего придумать. Как ни крути, оба пункта о том, что человек либо делает что-то плохое, либо не делает чего-то хорошего... и что ты там ни напиши, получится донос на себя.

Поэтому я написала честно: “ничего я тут не могу придумать, зато смотрите, какой у меня богатый третий пункт!” И в третьем пункте действительно список:
* изучить Django и best practices в работе с ним в CI и production,
* подтянуть python,
* принимать более активное участие в выборе/оценке нового инструментария,
* пройти запланированные online-курсы по анализу алгоритмов, облачным делам и криптографии.

Получилась и правда своего рода новогодняя резолюция. Если добавить к ней пару пунктов, то это, в принципе, все мои индивидуально-профессиональные планы на этот год:
* довести до общественно-полезного состояния проект по поиску животных в чрезвычайных ситуациях,
* выбрать и пройти курсы по big data, придумать и реализовать проект, который будет использовать полученные знания.

Как-то это... мало?
dragon

Новинка в мире SSL

Попробовала сегодня баловства ради новинку в SSL-мире — бесплатные краткосрочные (90 дней) SSL сертификаты от Let's Encrypt. Они три дня назад вышли в публичную бету. Тут как раз и к чему прикрутить нашлось.

Как это работает: на своём сервере ставим клиента letsencrypt. Он уже есть в виде пакетов для разнообразных линуксов и во FreeBSD latest. Можно, конечно, и из репозитория на GitHub.

Дальше одной командой генерируется полный набор (ключ, цепочки, сертификат) и ставится куда надо. Например, вписывается в конфигурацию Apache. Можно самим сгенерировать csr и отдать letsencrypt-клиенту на подпись. Можно полностью поручить ему всё:

letsencrypt certonly --standalone -d mydomain.com -m admin-mydomain@gmail.com \
    --server https://acme-v01.api.letsencrypt.org/directory

Он создаёт rsa:2048 ключ, делает csr-запрос, изображает из себя веб-сервер (нужно временно освободить 80-й и/или 443-й порты), сам связывается с CA, получает сертификат и складывает всё в папочку, включая цепочки, признаваемые Apache и nginx.

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

letsencrypt certonly --standalone \
    -d mydomain.com -m admin-mydomain@gmail.com \
    -t --agree-dev-preview --agree-tos \
    --server https://acme-v01.api.letsencrypt.org/directory

Последняя строчка важна. Без неё клиент идёт на тестовый сервер и получает сертификат, подписанный "Happy hacker fake CA". Выглядит прикольно, но браузерам не нравится.

Вот так это выглядит, если всё правильно сгенерировано:


Браузеры их root CA признают. Тулза SSL Labs, которая проверяет SSL конфигурацию веб-серверов, тоже никаких претензий к ним не имеет.

С появлением Let's Encrypt причин не использовать правильно подписанные SSL-сертификаты в браузерах даже на этапе разработки не остаётся.

PS: Документация есть.
dragon

Выдох

Я прошла специализацию кибер-секьюрити на Курсере. Всю! Четыре предмета плюс курсовой проект. Это заняло у меня суммарно 7.5 месяцев (6 месяцев, если если не считать промежутки между курсами). Даже не знаю, много это или мало, но за это время параллельно ещё произошло очень многое, что так или иначе связано с этой учёбой.

Начать хотя бы с того, что когда я проходила интервью на нынешнюю работу, то я уже училась на курсах. Конечно, я об этом упоминала на интервью и думаю, что это послужило дополнительным "плюсиком" для моих интервьюверов и нынешних коллег. Участие в финальной, курсовой работе, которую я сдала вчера, мне спонсировал работодатель. Мелочь, конечно, но почему бы и нет.

В работе знания, полученные на курсах, тоже оказались актуальны в неожиданных местах. Например, перебирая ворох тикетов в JIRA, я заметила, что 5 штук вертятся вокруг одного и того же, и никто за них браться не хочет. Это SSL сертификаты, обеспечение проброски SSL через балансировщик нагрузки, надёжная конфигурация https и т.п. Забрала все эти задачки себе :)

Что интересно, я сейчас работаю именно в той области, которую мне когда-то настоятельно рекомендовал Лев как интересное, актуальное направление (автоматизация). Изначальный план был такой: найти работу тестировщиком, потом плавно перейти к автоматизации тестирования, а потом к более общим задачам. Я на этот "план" смотрела почти с ужасом и думала "нет, мне бы какую-то цель попроще".

Всё, конечно, вышло совершенно наоборот: тестировщиком меня не взяли, а взяли поддерживать веб сайт и писать документацию. Потом были какие-то скачкообразные изменения курса, включая и вот эту учёбу, которая не очень-то вписывалась в мой профиль... И вот что из этого вышло — я инженер в команде автоматизации и управления облачными ресурсами.

Как всё-таки здорово, что я не поставила на себе крест "в твоём возрасте входить в эту область уже бесперспективняк", а покусилась на этот гранитный монолит. Чувствую себя в самой что ни на есть своей тарелке :) Ура!
dragon

Отчёт о VolgaCTF 2015

Я так долго и громко готовилась к этому CTF, что не написать о том, как он прошёл, было бы странно.

Очень понравилась организация. Разнообразные, оригинальные, невысосанные из пальца задачи. Видно, что авторы не только очень старались, но и получали удовольствие в процессе их составления. Collapse )

В общем, в результате у нас 110-е место из 600+ зарегистрировавшихся и из 251-й команды, решившей хотя бы одну задачку. Crypto Knights на 84-м месте. Несколько часов подряд мы их даже обгоняли. Две другие команды, зарегистрированные от УлГУ, либо вообще пропустили мероприятие, либо так ничего и не решили. В любом случае, считаю, что CTF удался, участвовали мы в нём не зря и надо играть ещё!

ps: а в результате у команды Nuff Fluff 386-е место во всемирном CTF-рейтинге ;) Мелочь, а приятно.

PS: А ещё благодаря организаторам я узнала о Джессике Фридрих: http://en.wikipedia.org/wiki/Jessica_Fridrich
dragon

PlaidCTF, разбор полётов

Только что закончился 48-часовой PlaidCFT. У меня неплохой score (194-е место из 898 участников). Что должно быть радостно, потому что это одно из самых котируемых соревнований в мире CTF. А мне досадно, что сделала так мало, много времени было потрачено почти впустую из-за плохой подготовки. Поэтому пишу здесь на будущее, что надо иметь наготове для соревнований. Для себя в первую очередь, но может кому-то ещё пригодится.

На хостовой машине и в сети:
* много места, достаточно, чтобы иметь возможность при необходимости развернуть несколько дополнительных полновесных виртуалок со статическими дисками;
* свежие VirtualBox и Vagrant;
* удобный hex-editor;
* привычный графический редактор;
* IRC-клиент;
* доступ к серверу, куда можно лёгким движением руки положить любой файл в открытый доступ (ftp, http — не важно).

Гостевые машины:
* они должны быть предустановлены (не LiveCD) и обновлены (в Ubuntu 9.04, например, для этого в /etc/apt/sources.conf надо заменить xx.archive.ubuntu.com на old-releases.ubuntu.com):
+ пара базовых линуксов (apt-based и yum-based, один из них с X сервером),
+ какой-то старый линукс с устаревшим, но рабочим инструментарием, и X-ами,
+ Kali linux,
+ tails linux,
+ DOS image для VB.
* на них должны быть (где возможно):
+ компиляторы,
+ hexedit,
+ wireshark,
+ ключи для доступа куда надо (в частности, обратно на хост),
+ смонтированные с хоста каталоги,
+ другое (по мере набора опыта)...
* хотя бы один из линуксов должен запускаться из vagrant-а для удобства работы.

Остальное можно доставить по ходу. Но важно иметь наготове основной набор тяжеловесных ISOs и важно, чтобы всё со всем работало.

И ещё пара важных моментов:
* за пару дней до соревнований полезно вспомнить интерфейсы к основным инструментам (если они не используются в повседневной работе),
* обязательно просмотреть writeups с прошедших соревнований для задач хотя бы того уровня, на который претендуешь,
* последнее может привести к серьёзному комплексу неполноценности... я поняла, что многое из того, что делала вручную, натасканные команды сразу кодировали. Поэтому кодить, кодить и кодить... Хорошая тренировка: закодировать пару чужих writeup-ов.
* самой писать writeups (а в идеале, играть так, чтобы в ходе игры writeups возникали сами собой и требовали минимума дополнений).