Падрабязнасці пра другі ўзлом Matrix. Скампраметаваныя GPG-ключы праекта

[:ru]

Апублікаваны новыя падрабязнасці пра ўзлом інфраструктуры дэцэнтралізаванай платформы абмену паведамленнямі Matrix, пра які паведамлялася раніцай. Праблемным звяном, праз якое праніклі атакавалыя была сістэма бесперапыннай інтэграцыі Jenkins, якая была ўзламана яшчэ 13 сакавіка. Затым на серверы c Jenkins быў перахоплены перанакіраваны SSH-агентам уваход аднаго з адміністратараў і 4 красавіка атакавалыя атрымалі доступ да іншых сервераў інфраструктуры.

Пры другім нападзе сайт matrix.org быў перанакіраваны на іншы сервер (matrixnotorg.github.io) праз змену параметраў DNS, выкарыстоўваючы перахоплены пры першай атацы ключ да API сістэмы дастаўкі кантэнту Сloudflare. Пры перазборцы змесціва сервераў пасля першага ўзлому адміністратары Matrix абнавілі толькі новыя персанальныя ключы і выпусцілі абнаўленне ключа да Сloudflare.

Падчас другой атакі серверы Matrix засталіся некранутымі, змены абмежаваліся толькі заменай адрасоў у DNS. У выпадку калі карыстач ужо змяніў пароль пасля першага нападу, другі раз яго змяняць не трэба. Але калі пароль да гэтага часу не зменены, яго трэба абнавіць як мага хутчэй, бо ўцечка базы з хэшамі пароляў пацверджана. Цяпер плануецца ініцыяваць працэс прымусовага скіду пароля пры наступным уваходзе.

Акрамя ўцечкі пароляў таксама пацверджана трапленне ў рукі атакавалых GPG-ключоў, выкарыстоўваных для фармавання лічбавых подпісаў пакетаў у Debian-рэпазітары Synapse і рэлізаў Riot/Web. Ключы былі абаронены паролем. У сапраўдны момант ключы ўжо адкліканы. Ключы былі перахопленыя 4 красавіка, з тых часоў абнаўленняў Synapse не выпускалася, але быў рэліз кліента Riot/Web 1.0.7 (папярэдняя праверка паказала, што ён не быў скампраметаваны).

Атакуючы размясціў на GitHub серыю справаздач з падрабязнасцямі атакі і парадамі па павелічэнні абароны, але яны былі выдаленыя. Тым не менш, у архіве справаздачы захаваліся.
Напрыклад, узломшчык паведаміў, што распрацоўнікам Matrix вынікала выкарыстоўваць двухфактарную аўтэнтыфікацыю ці хаця б не выкарыстоўваць перанакіраванне SSH-агентам ("ForwardAgent yes"), тады пранікненне ў інфраструктуру было б блакіравана. Эскалацыю атакі таксама можна было спыніць падаючы распрацоўшчыкам толькі неабходныя прывілеі, а не поўны root-доступ на ўсіх серверах.

Дадаткова раскрытыкаваная практыка захоўвання ключоў для стварэння лічбавых подпісаў на працоўных серверах, для падобных мэт варта было б вылучыць асобны ізаляваны хост. Яшчэ атакуючы паведаміў, Што калі б распрацоўшчыкі Matrix рэгулярна праводзілі аўдыт логаў і аналізавалі анамаліі, яны б заўважылі сляды ўзлому на раннім этапе (узлом CI заставаўся незаўважаным цэлы месяц). Яшчэ адной праблемай было захоўванне ўсіх файлаў канфігурацыі ў Git, што дазваляла ацаніць налады іншых хастоў пры ўзломе аднаго з іх. Доступ па SSH да сервераў інфраструктуры не быў абмежаваны абароненай унутранай сеткай, што дазваляла падключыцца да іх з любога знешняга адраса.

Крыніцаopennet.ru

[: be]

Апублікаваны новыя падрабязнасці пра ўзлом інфраструктуры дэцэнтралізаванай платформы абмену паведамленнямі Matrix, пра які паведамлялася раніцай. Праблемным звяном, праз якое праніклі атакавалыя была сістэма бесперапыннай інтэграцыі Jenkins, якая была ўзламана яшчэ 13 сакавіка. Затым на серверы c Jenkins быў перахоплены перанакіраваны SSH-агентам уваход аднаго з адміністратараў і 4 красавіка атакавалыя атрымалі доступ да іншых сервераў інфраструктуры.

Пры другім нападзе сайт matrix.org быў перанакіраваны на іншы сервер (matrixnotorg.github.io) праз змену параметраў DNS, выкарыстоўваючы перахоплены пры першай атацы ключ да API сістэмы дастаўкі кантэнту Сloudflare. Пры перазборцы змесціва сервераў пасля першага ўзлому адміністратары Matrix абнавілі толькі новыя персанальныя ключы і выпусцілі абнаўленне ключа да Сloudflare.

Падчас другой атакі серверы Matrix засталіся некранутымі, змены абмежаваліся толькі заменай адрасоў у DNS. У выпадку калі карыстач ужо змяніў пароль пасля першага нападу, другі раз яго змяняць не трэба. Але калі пароль да гэтага часу не зменены, яго трэба абнавіць як мага хутчэй, бо ўцечка базы з хэшамі пароляў пацверджана. Цяпер плануецца ініцыяваць працэс прымусовага скіду пароля пры наступным уваходзе.

Акрамя ўцечкі пароляў таксама пацверджана трапленне ў рукі атакавалых GPG-ключоў, выкарыстоўваных для фармавання лічбавых подпісаў пакетаў у Debian-рэпазітары Synapse і рэлізаў Riot/Web. Ключы былі абаронены паролем. У сапраўдны момант ключы ўжо адкліканы. Ключы былі перахопленыя 4 красавіка, з тых часоў абнаўленняў Synapse не выпускалася, але быў рэліз кліента Riot/Web 1.0.7 (папярэдняя праверка паказала, што ён не быў скампраметаваны).

Атакуючы размясціў на GitHub серыю справаздач з падрабязнасцямі атакі і парадамі па павелічэнні абароны, але яны былі выдаленыя. Тым не менш, у архіве справаздачы захаваліся.
Напрыклад, узломшчык паведаміў, што распрацоўнікам Matrix вынікала выкарыстоўваць двухфактарную аўтэнтыфікацыю ці хаця б не выкарыстоўваць перанакіраванне SSH-агентам ("ForwardAgent yes"), тады пранікненне ў інфраструктуру было б блакіравана. Эскалацыю атакі таксама можна было спыніць падаючы распрацоўшчыкам толькі неабходныя прывілеі, а не поўны root-доступ на ўсіх серверах.

Дадаткова раскрытыкаваная практыка захоўвання ключоў для стварэння лічбавых подпісаў на працоўных серверах, для падобных мэт варта было б вылучыць асобны ізаляваны хост. Яшчэ атакуючы паведаміў, Што калі б распрацоўшчыкі Matrix рэгулярна праводзілі аўдыт логаў і аналізавалі анамаліі, яны б заўважылі сляды ўзлому на раннім этапе (узлом CI заставаўся незаўважаным цэлы месяц). Яшчэ адной праблемай было захоўванне ўсіх файлаў канфігурацыі ў Git, што дазваляла ацаніць налады іншых хастоў пры ўзломе аднаго з іх. Доступ па SSH да сервераў інфраструктуры не быў абмежаваны абароненай унутранай сеткай, што дазваляла падключыцца да іх з любога знешняга адраса.

Крыніца: opennet.ru

[]

Дадаць каментар