Шпиона Pegasus используют для слежки за жертвами в 45 странах

Шпиона Pegasus используют для слежки за жертвами в 45 странах

Шпиона Pegasus используют для слежки за жертвами в 45 странах

Исследователи в области безопасности нашли доказательства слежки государственных учреждений за целями, расположенными в 45 странах, в ходе которой используется шпионская программа Pegasus (или Trident). Поскольку эта цифра значительно превышает количество известных операторов, отдельные эпизоды слежки проводятся совершенно незаконно.

Программа Pegasus была разработана израильской ИБ-компанией NSO Group, она существует уже не менее трех лет. Впервые детальный разбор этой шпионской программы был опубликован летом 2016 года.

Pegasus может работать на устройствах под управлением мобильных операционных систем Android и iOS, но в основном аудитория использует ее для атак пользователей iPhone. Pegasus представляет собой достаточно мощный шпионский софт, который может записывать разговоры, красть личные сообщения, извлекать фотографии и много другое.

На протяжении последних трех лет специалисты Citizen Lab отслеживали использование Pegasus «в дикой природе» (in-the-wild). Во многих случаях эта программа использовалась правительствами стран, поддерживающими деспотический режим для слежки за журналистами, правозащитниками, оппозиционерами, юристами и сторонниками борьбы с коррупцией.

Однако новые данные, добытые Citizen Lab, показывают наличие 36 различных групп, которые используют Pegasus для слежки за объектами, расположенными в 45 странах. Эти список включает такие страны, как США, Франция, Канада, Швейцария и Великобритания.

Специалисты Citizen Lab пришли к выводу, что десять из этих 36 групп проводят операции слежки за пределами своих собственных стран. Эта деятельность может нарушать законы, действующие в других странах, где находятся цели для наблюдения.

Представители NSO Group заявили, что компания не нарушает законов об экспорте софта, а Pegasus должен использоваться только для борьбы с преступностью.

Критическую уязвимость в ядре Linux x86 не замечали с 2020 года

В ядре Linux обнаружили уязвимость, которая тихо жила в системе несколько лет — и притом в одном из самых чувствительных мест. Речь идёт о механизме обработки page fault на архитектуре x86, то есть о коде, который срабатывает каждый раз, когда процессор фиксирует некорректный доступ к памяти.

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

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

На уязвимость обратил внимание инженер Intel Седрик Син (Cedric Xing), внимательно изучавший код обработки исключений. Как выяснилось, логика в функции do_page_fault() опиралась на устаревшее и, по сути, ошибочное допущение.

В комментариях прямо говорилось, что отследить состояние прерываний на всех возможных ветках выполнения почти невозможно — и разработчики много лет балансировали между «комбинаторным кошмаром» из патчей и попытками аккуратно чинить отдельные случаи.

Но проблема оказалась глубже. Код смешивал два разных понятия — адрес (пользовательский или ядерный) и контекст выполнения. Обычно они совпадают, но не всегда.

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

Особенно показательной оказалась ветка __bad_area_nosemaphore(), где предпринимается попытка «восстановить правильное состояние», но на деле это происходило не всегда и не одинаково. В результате возникала асимметрия: в зависимости от пути выполнения система могла оказаться в неожиданном состоянии.

В итоге разработчики пришли к простому, но радикальному выводу: латать отдельные ветки бессмысленно. Вместо этого было принято решение гарантированно и безусловно отключать прерывания в одном конкретном месте — прямо перед возвратом управления в низкоуровневый обработчик page fault. Без условий, без проверок, без попыток «угадать» контекст.

Патчи уже вошли в ветку Linux 6.19, а также планируются к бэкпорту в поддерживаемые стабильные версии. Фактически оно устраняет дефект, появившийся ещё во времена Linux 5.8.

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