Анастасия Важинская — инженер по информационной безопасности, а не фронтендер, но её доклад стал самым важным для главного зала конференции FrontendConf 2024. Почему так и как меняется фронтенд-разработка и программа конференции? Что драйвит докладчиков в этом году? И какие боли терзают? Поговорим с докладчицей и узнаем всё из первых рук.
— Расскажи немного о себе. Почему ты выбрала именно то, чем занимаешься?
— На 4 курсе МИФИ преподаватель рассказал нам, как искал жучки и скрытые камеры. Это было так прикольно, что меня зацепило. Я узнала про пентест, начала погружаться в сферу и мне безумно понравилось. Это был такой драйв: искать уязвимости в приложениях, пробовать разные способы эксплуатации до тех пор, пока не получится сделать «пробив», украсть персональные данные или совершить другое критичное для бизнеса действие.
Самое главное, что это не было просто — приходилось сталкиваться с противодействием или особенностями технологий, которые не позволяли просто так эксплуатировать уязвимость. Я вообще люблю решать сложные разнообразные задачи, так что всё сложилось.
— А какие задачи, из тех, что приходилось решать, были самыми интересными?
— Самые интересные кейсы в моей практике связаны с потерей денег и компрометацией удаленных серверов. Когда я ещё работала в Singleton Security, мы проверяли одного заказчика с серьезно выстроенными бизнес-процессами по ИБ и огромным объёмом функциональности. Мы пытались раскрутить XSS, cross-site scripting — уязвимость межсайтового скриптинга. Эта уязвимость позволяет красть персональные данные пользователей основного приложения через размещение вредоносной нагрузки в рекламных баннерах и обойти внедренный CSP (Content Security Policy). И когда докрутили эту уязвимость, и ко мне пришел отскук с данными пользователя — нагрузка отработала и от сервера отскочил ответ. Это были невероятные ощущения.
— И много таких дыр обычно бывает в защите?
— На самом деле таких кейсов, когда клиентские уязвимости приводят к критическим для бизнеса последствиям, в моей практике достаточно много. Зачастую ни разработчики, ни менеджеры не задумываются о том, что уязвимости клиентской стороны это тоже про высокие риски.
Пока я работала пентестером, мне удавалось выполнять действия от имени других пользователей, захватывать чужие аккаунты (в том числе администраторов), красть деньги и персональные данные. И хорошо, что Заказчик узнавал об этих уязвимостях на пентестах, а не после настоящей атаки. Конечно, последствия для каждого бизнеса могут быть свои, но все их лучше выявлять заранее, чем потом бороться с финансовым или репутационным ущербом.
Недостаточное знание или отсутствие информации про клиентские атаки среди разработчиков, убедили меня в том, что стоит поднять эту тему.
— Поэтому ты решила подать заявку именно на эту конференцию?
— Я хотела показать тем, кто не работает с безопасностью, как мыслит злоумышленник и какие уязвимости он ищет, на что нужно обращать внимание на всех этапах разработки и как предотвращать появление атак. А про FrontendConf мне рассказал мой бывший руководитель и предложил попробовать. Я подала заявку и на первом же созвоне с программным комитетом мы быстро поняли, что нас беспокоит одно и то же — пользователи. Просто я делаю акцент на безопасности, а разработчики — на UI и UX. А мне хотелось обратить внимание разработчиков на проблемы безопасности. Но, поскольку я не фронтэндер, то не до конца понимала как это сделать. Мне был нужен человек в теме, который посмотрел бы со стороны на мои объяснения проведения атак и резюмировал, понятны ли они для небезопасников.
В этом мне сильно помог мой куратор от конференции. Мы сделали несколько прогонов и постоянно вносили какие-то доработки. Мне очень понравилась организация подготовки и взаимодействие ПК с докладчиками. Всё четко выстроено, понятно и прозрачно. Очень круто, что были воркшопы: по подготовке, созданию хорошего доклада и непосредственно выступлению. Я ни разу не пожалела о том, что приняла решение выступить на этой конференции.
— Подготовка к выступлению уже закончилась?
— Конечно, нет. Она довольно интенсивная и продолжится вплоть до самой конференции. Я собрала много материала, подготовила стенды, чтобы вместе со зрителями искать уязвимости в приложениях. Хочу чтобы мой доклад запомнился, особенно его основная мысль, что безопасность — это важно.
При подготовке я ставила себя на место слушателя. Когда ты слушатель, ты очень привередливо смотришь доклады и расстраиваешься, если докладчик что-то недостаточно понятно объяснил. Поэтому я решила, что мой доклад должен быть понятен даже самому привередливому слушателю. Чтобы не было такого, что человек пришел на мой доклад и ушел с мыслью о потерянном времени.
Это безусловно давит и повышает ответственность, но я скрупулезно готовилась и старалась вложить в доклад как можно больше интересного и полезного материала.
Будет ещё очень много других докладов, посвященных фронтенд-разработке, которые тоже проходили жесткий отбор, чтобы стать частью интенсивной программы, но если смотреть на картину в целом, то все доклады взаимодополняют друг друга. Поскольку я считаю, что нельзя отделять безопасность от разработки. Они должны идти сообща.
— Да, сейчас многие вопросы легче решать сообща. Комньюти помогает решать такие проблемы?
Мы лишились поддержки многих инструментов, приходится искать аналоги или разрабатывать собственные инструменты. Это особенно существенно для безопасности. Ведь большинство атак проводится с помощью эксплойтов к zero-day уязвимостям. Когда в обновлении есть уязвимость, начинается игра на время между организациями и атакующими. И компания выигрывает лишь когда пропатчит уязвимость, то есть установит обновление безопасности от вендора, до того, как злоумышленники ее проэксплуатируют и нанесут серьезный ущерб. А когда с установкой обновления есть проблемы, то компания сильно рискует.
В этом плане, конечно, самое надежное решение — развивать собственное ПО. Да, зачастую это сложно, долго и дорого, но многие организации постепенно начинают этим заниматься, взяв за основу какой-то опенсорсный продукт. Более того, складывается впечатление, что сейчас в развитие таких продуктов начинает вкладываться не только сама компания, но и все коммьюнити. После изменения общемировой ситуации как будто появилась какая-то невероятная общность внутри IT. Это особенно заметно на митапах и конференциях. Когда ты приходишь на такое мероприятие, встречаешь кучу интересных, талантливых ребят, вы начинаете разговаривать и делитесь опытом, который каждому из вас полезен. Очень рада, что так получается, поскольку такое единство на самом деле сильно укрепляет и развивает сферу в целом.
— Разве проблемы с поддержкой и прочим не влияют негативно на развитие отрасли?
Как всегда, есть и положительные и отрицательные стороны. Проблемы есть, но с ростом числа атак на российские компании усиливается и внимание к вопросам безопасности. Безопасность всё чаще рассматриваться не как дополнительная статья расходов, а как одно из приоритетных направлений развития. Компании начали усиливать инвестиции в образование и переквалификацию сотрудников. На мой взгляд, это очень важно.
По настоящему профессиональных мероприятий не так много, как хотелось бы. Не хватает нетворкинга, коммуникаций и полезного опыта. Знаниями нужно делиться, поэтому я и решила участвовать во FrontendConf. У них уже есть комьюнити, каналы, чаты, и это помогает делиться. Такой обмен преодолеет трудности и сделает направление фронтэнд-разработки более устойчивым и по технологиям, и по безопасности. Безусловно, нас еще ждут вызовы, но их нужно рассматривать как точки роста, обучения и появления новых возможностей.
— Значит ты за любые активности?
— Я очень люблю сферу безопасности, особенно пентест. Во внерабочее время я регулярно участвую в соревнованиях в составе команды True0xA3, иногда играю в CTF. Также мы с ребятами из Singleton Security развиваем продукт EASM (External Assets Surface Management), который проводит инвентаризацию активов клиентов, делает базовое сканирование уязвимостей и отдает отчет.
Еще люблю путешествовать, ходить на выставки и проживать новые гастрономические впечатления.
Участвуйте в мероприятиях, развивайтесь сами и помогайте развиваться другим!