Российская команда заняла первое место на соревнованиях CTFZone 2020

Российская команда заняла первое место на соревнованиях CTFZone 2020

Российская команда заняла первое место на соревнованиях CTFZone 2020

На прошедших выходных завершились международные соревнования по этичному хакингу CTFZone 2020, организатором которых выступила компания BI.ZONE. В финал прошли команды из России, Китая, Италии, США, Польши и Японии.

На соревнованиях CTF (Capture The Flag) команды специалистов пробуют свои силы в решении практических задач из области кибербезопасности. За это они получают уникальный набор символов, который как раз и называется «флагом».

Если команда побеждает на турнире CTFZone, она автоматически получает место в финале DEF CON CTF. Всего таких соревнований, открывающих путь в  финал DEF CON CTF, по всему миру шесть.

В этот раз из-за непростой эпидемиологической ситуации финал соревнования проходил онлайн (формат — Attack/Defense). Каждой команде дали по серверу или небольшой сети, функционирование и защиту которой необходимо было поддержать.

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

После напряжённой борьбы, которая длилась 24 часа, призовой фонд в размере $18 000 достался командам из России и Китая, занявшим первые три места. Первое место досталось российской команде, которая теперь имеет право выступить в финале DEF CON CTF.

Проводник Windows падал не из-за Microsoft, виноват оказался деинсталлятор

Инженер Microsoft Рэймонд Чен рассказал любопытную историю отладки загадочных падений Проводника. Сначала всё выглядело так, будто в Windows внезапно появился неприятный баг. Но виновником оказалась вовсе не Microsoft, а сторонний деинсталлятор.

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

Такая версия Проводника всё ещё есть в Windows ради совместимости со старыми приложениями. Обычно современные системы почти не используют этот путь. Но в данном случае сторонний деинсталлятор каким-то образом заставлял систему обращаться именно к этому устаревшему компоненту.

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

Поскольку процесс повторялся в цикле, повреждение памяти постепенно накапливалось. В какой-то момент указатель стека уезжал в область активного кода, и Проводник падал.

Со стороны всё выглядело как типичная системная ошибка: софт снова и снова аварийно завершал работу, создавая ощущение, что проблема в самой Windows. На деле операционная система лишь показывала последствия ошибки в стороннем ПО.

Чен напомнил важную вещь: в экосистеме Windows с миллиардами устройств и огромным количеством приложений далеко не каждый сбой компонента Microsoft означает баг в Windows. Сторонние программы тоже могут ломать системные процессы, особенно если неправильно используют низкоуровневые API.

RSS: Новости на портале Anti-Malware.ru