Комментарии 434
Мда... кто-то забыл что нельзя выпускать обновление в пятницу...
картинка с бегемотом c расширенным "сознанием".jpg :)
Там по цепочке уже начался хаос - в авиакомпаниях и так далее....
Да, пишут что Azure лег. Значит это еще больше компаний затронет
Представители CrowdStrike открыли ветку на Reddit:
BSOD error in latest crowdstrike update
https://www.reddit.com/r/crowdstrike/comments/1e6vmkf/bsod_error_in_latest_crowdstrike_update/
открыли ветку на Reddit
Блог о том как похоронить свой бизнес за один день. От такого осадка отмыться не получится уже
А как они могут отвечать за тысячи дебичей, накатывающих обновления без предварительного тестирования?
Так за них отвечать они и не должны. Единственное за что они должны отвечать это за качество своего кода. Например добавить банальных проверок там где потенциально что то может упасть. И не городить шаманских костылей вокруг недокументированных функций которые с этими обновлениями отваливаются.
Прилично написанный драйвер если что то пошло не так просто выгружается или ничего не делает и все. А не тащит за собой всю систему.
Прилично написанный драйвер если что то пошло не так просто выгружается
или ничего не делает и все. А не тащит за собой всю систему.
Это уже тот уровень где такое реализовать довольно проблематично
сам по себе BSOD на этом уровне это и есть защита от дураков (также как kernel panic). если вы застали время Win9x там синий экран был только алертом (нажмите любую кнопку чтобы продолжить работу) и падение какихто системных вещей не всегда вынуждало перезагружаться...но приводило систему в особое нестабильное состояние когда даже резкое движение мышки вызывало повторное падение в синий экран
Это уже тот уровень где такое реализовать довольно проблематично
Что там проблематичного?
Если раньше не писали драйвера - то сложно объяснить. Если писали - должны и сами знать.
Писал, причем как раз анализирующий дисковый ввод-вывод, потому и спрашиваю. Единственная причина по которой данная ошибка возникает в модуле драйвера - рукожопие его разработчиков. Вот когда валится в системных, там да, могут быть нюансы.
Писал, причем как раз анализирующий дисковый ввод-вывод, потому и спрашиваю.
отлично, вы просто читаете ввод-вывод, а представьте что вы начинаете чтото менять в этом потоке данных, а там попадаются данные которые передают системные либы...а вы накосячили и у вас каждый четвертый байт со значением F2 меняется на 4B, как предлагаете отследить такое и непущать?
а антивирус в этом контуре имеет право отключать доступ любому потоку информации в любую сторону
а вы накосячили
так а я про что
а антивирус в этом контуре имеет право отключать доступ любому потоку информации в любую сторону
так он тут не доступ отключает, а валится, обращаясь к памяти по невалидному адресу
так он тут не доступ отключает, а валится, обращаясь к памяти по невалидному адресу
по какому признаку вы решаете что софт в 0 кольце защиты обращается по невалидному адреcу? на то это и 0 кольцо что там нет контроля доступа...просто потому что ваш код сам может быть таким контролёром, он в принципе имеет право ходить куда хочет...а то что там программная ошибка..ну тут уж извините...полномочия ОС на этом всё
Тогда советую попробовать разобрать как работают драйвера антивирусов и античитов. Они значительно отличаются от драйверов, которые обеспечивают доступ к какому-то устройству, т.к. содержат какую-то постоянно выполняемую логику в потоке и очень часто обращаются к памяти вне процесса System (kestackattachprocess и прочие). Даже на скриншотах видно - PAGE_FAULT_IN_NONPAGED_AREA - ошибка доступа к памяти.
Мое предположение - microsoft что-то обновили в ядре, сдвинули/изменили какие-то незадокументированные переменные/функции и не изменили версию ядра, на которую очень часто полагаются в случае, когда нужно обратиться к чему-то вне публичного апи, а антивирус в свою очередь, не распознав, что работает на неподдерживаемом ядре начал со всей силы рушить IT сектор везде где смог.
Мое предположение - microsoft что-то обновили в ядре
Не было никакого обновления ядра Windows, было обновление драйвера антивируса.
Даже на скриншотах видно - PAGE_FAULT_IN_NONPAGED_AREA - ошибка доступа к памяти.
скриншоты там вперемешку, я виде critical process died
сдвинули/изменили какие-то незадокументированные переменные/функции и не
изменили версию ядра, на которую очень часто полагаются в случае, когда
нужно обратиться к чему-то вне публичного апи, а антивирус в свою
очередь, не распознав, что работает на неподдерживаемом ядре
Собственно об этом я и говорю - если и лезть во всякие незадокументированные вещи то все это дело обкладывать проверками надо в три слоя, именно для того чтобы не валиться с PAGE_FAULT_IN_NONPAGED_AREA. А просто делать это на авось что вот раз сейчас костыль работает то и завтра будет работать это рукожопие, как еще назвать то?
У вас нет других вариантов, если делаете антивирус. Вот вообще никак. Сама майкрософт подкидывает НЕ задокументированные возможности для своего защитника windows.
У вас нет других вариантов, если делаете антивирус. Вот вообще никак.
Ну как нет, обложить проверками я же говорю. Никогда не доверять недокументированной информации очевидно же. У остальных то не падает. А тут вообще как выше сказали даже не в обновлении системы дело, а банальный баг драйвере антивируса, следовательно на 100% их косяк, с чем тут спорить?
Обложить проверками - как? Хукать функции в ntoskrnl - нельзя - система вылетит в синий экран - PatchGuard защищает. Использовать сравнительно недавно добавленные коллбеки (PsSetLoadImageNotifyRoutine и другие) - давно легко обходятся.
То, что ошибка в драйвере антивируса - не спорю. Но есть гораздо более глубокая проблема в архитектуре Windows - в ней нет места антивирусам, нет понятного апи и документации, как выполнить контроль за необходимыми функциями.
В пользу своих слов про защитник windows
https://github.com/0xcpu/WinAltSyscallHandler
Так за них отвечать они и не должны.
В том самом обсуждении на reddit есть ветка, где народ гадает, получится ли в этом убедить толпу юристов, что на них набросятся.
Прилично написаная система не запускает драйвера на 0 кольце. И не падает в BSOD от каждого криво написаного драйвера.
А если внимательнее посмотреть, то эта компания имеет теперь бесценный опыт, да ещё готова работать с хорошей скидкой.
Так они в четверг...
В пятницу просто до многих дошло обновление.
Проблема не в том, что именно в пятницу. Проблема в том, что одновременно на глобальную инфраструктуру. Если бы канареечно, то в худшем случае пострадало бы несколько клиентов в одном регионе Австралии. А весь остальной мир обновился бы на день-другой позже. И никто бы ничего не заметил.
Вот не надо было Касперкого выгонять!
Ничего себе, кажется кому то надо собирать вещи в Аргентину.
Hidden text
Одна из самых редких ситуаций, но зато по масштабу перекрывающая все косяки с Линуксом.
Так если под линукс кривой софт написать тоже самое будет
линукс юзеры зато повдумчивей к обновлению своего по относятся и не шибко увлекаются автоматическими обновлениями
Зайдите на хотя бы ЛОР и прочитайте кучу тем а-ля "я что-то обновил, и все упало и не грузится"
И почти всегда "всё упало" означает, что не стартует графический интерфейс. Единственный способ труднопочинимо повесить линукс - это не иметь доступа к загрузчику.
Никто не говорит о "труднопочинимо" вообще - текущий "сбой Windows" решается удалением одного файла:
1. Boot Windows into Safe Mode or WRE.
2. Go to C:\Windows\System32\drivers\CrowdStrike
3. Locate and delete file matching "C-00000291*.sys"
4. Boot normally.
Двух, попрошу.
Проблема в том что это корпоративный сегмент. Где нельзя загрузится в Safe Mode без ключа Битлокера, которого у обычных работяг нет.
Двух, попрошу.
Виноват.
Проблема в том что это корпоративный сегмент. Где нельзя загрузится в Safe Mode без ключа Битлокера, которого у обычных работяг нет.
А переставить графический интерфейс на Linux у обычных работяг есть права и возможность?
Я признаюсь: у меня 3 дедика и пара VPS, но на домашнем подкроватном сервере я так и не разобрался, как мне починить иксы на Ubuntu. А гугл по этому вопросу вообще отдает ворох тем с начала нулевых. Проще оказалось переустановить.
А переставить графический интерфейс на Linux у обычных работяг есть права и возможность?
Нет конечно. Даже если биос и загрузка с внешних устройств почему-то не заблокированы, все IDM идут через AD и корпоративные сертификаты. Которые работягам безопасники не выдадут для линуксов. Тем более что какой работодатель захочет работника за которым нельзя следить?.. Так что если линукс где-то и одобрен, то корпоративный, обрезанный и огороженный линукс.
Проблема в том, что устройств очень много и большинство это всякое спец оборудование типа касс, информационных табло, вендингов и прочего. И везде надо отправить специально обученного человека с клавиатурой для входа в safe mode.
И в контексте упавшего графического интерфейса на Linux точно также едет специально обученный человек, причем с сильно такой большей зарплатой.
Линукс будет доступен по сети даже без граф. интерфейса, а виндоуз вошел в бесконечный bootloop.
Если он не упадет до старта сетевой подсистемы или до инициализации какогонить ИБшного IDS мониторинга который запрещает сетевой доступ без него
и да, не факт что ssh везде доступен наружу
Ну так и на Линуксе потребовался бы специально обученный человек, в чем разница?
Один "C-00000291-00000000-00000026.sys" был проблемный, "C-00000291-00000000-00000027.sys" уже исправленный.
Я так понял, информация о том ,что нужно сделать, стала очевидна далеко не сразу. То есть, если закосячит другой софт, то нужно будет удалить другой файл, и на БСОДе не факт, что написано - какой.
Да, это проблема новых BSOD-ов - там не всегда пишут непосредственно упавший драйвер. Ну то есть сторонними утилитами или в журнале системы об этом написано, но в самом BSOD - нет.
В любом случае, дорвавшийся до исправления сисадмин найдет виновника очень быстро.
Ну так и на Линуксе такая информация часто становится очевидна далеко не сразу - вам что, никогда не приходилось долго копаться в journalctl и логах, чтобы проблему найти?
Вот я и пытаюсь донести: если с ядром проблемы, то можно сначала перезагрузиться на предыдущее ядро и драйверы, а уже потом, на работающей системе, спокойно разбираться, что это было. Не нужно знать, что именно сломалось, чтобы просто починить кривое обновление.
Даже более - это может быть автоматизировано, если дать возможность другой машине как-то нажать на этой Reset. Например, если речь о виртуалках.
можно сначала перезагрузиться на предыдущее ядро и драйверы, а уже потом, на работающей системе, спокойно разбираться, что это было. Не нужно знать, что именно сломалось, чтобы просто починить кривое обновление.
У Windows существует механизм отката к снапшотам системы ("точки восстановления") и различные опции безопасной загрузки - в том числе, с возможностью контролировать загружаемые драйверы. Не вижу особой разницы.
Помню не столь давно тему, где при каком-то обновлении или установке чего-то снесло /efivars
с соответствующим окирпичиванием ноутбука.
если линукс перестанет загружаться в гуи, то эффект будет точно такойже, но фотки в сми будут не с синим экраном, а с черным
вопрос, как тут ниже правильно упомянули, не в сложности восстановления (она минимальна), а в том что оно вообще умеет так падать
Так с точки зрения пользователя разницы-то никакой нет: что синий экран с ошибкой, что зависшая загрузка графического интерфейса (привет, Manjaro) — невозможно работать.
Ну неправда это. Вы просто неофит/мимокрокодил/энтузиаст и мало все ломали шаловливыми ручками. А еще помните мало.
Я к идее проприетарной ОС отношусь резко отрицательно, т.е. на порядок хуже, чем к проприетарной пользовательской программе.
Но причина, по которой в линупсах так не будет, только в том, что их много и они обновляются по-разному. Т.е. та же, которую латентные виндузятники считают недостатком и хотят, чтобы был на всех один дистрибутив.
Потому что все прочие причины уже сбоили и не раз.
Были и обновления дистрибутивов, удаляющие домашнюю директорию или того паче - все от корня. Были и обновления, ломающие загрузчик. Была и куча выпусков BTRFS, теряющих файлы. Вообще чего только не было.
Зайдите на хотя бы ЛОР и прочитайте кучу тем а-ля "я что-то обновил, и все упало и не грузится"
Вы бы ещё двач в пример привели. На лоре в основном мамкины админы локалхостов с гентой.
В случае Линукса проблема нежданных обновлений обычно не возникает, т.к. там принято обновления накатывать вручную когда надо.
Бывает конечно всякий проприетарный софт, при устаановке прописывающий свой автообновлятор в крон под рутом, но более менее опытный администратор об этом обычно в курсе и подчищает эту дичь.
Ага, только там админы самостоятельно смогли определить источник проблемы и восстановить работоспособность системы, а не ждали чуда от разработчика ОС, который скажет что надо просто подождать когда система сама 15 раз перезагрузится. Видимо действительно как сказал комментатор ниже, умных в той среде подчищают.
Так и винду админу несложно починить, проблема исключительно в количестве компьютеров, ожидающих ремонта.
Мда, видимо сертифицировванные windows инженеры тоже как обычные эникейщики просто вручную переустанавливают систему.
Переустановить систему это не вариант, вам надо добиться загрузки существующей. Как вы это на линуксе с kernel panic будете делать "не вручную"?
Если это нормальный индустриальный ПК, а не максимально дешёвое нечто, то там должен быть watchdog. И линукс с kernel panic на его запросы отвечать не должен, что приведёт к перезагрузке ПК. После некоторого количестве перезагрузок линукс (или Винда) должны перестать пытаться загружаться нормально и должны попытаться загрузиться в безопасном режиме (или с предыдущим ядром) Если такое обеспечить -- вот и будет вам удалённый доступ. Но да, это надо поработать.
должны перестать пытаться загружаться нормально и должны попытаться загрузиться в безопасном режиме (или с предыдущим ядром)
а линукс, любой обычный дистриб, "изкоробки" так разве умеет?
Не встречал. Так что если есть острая необходимость иметь тысячи коробок под управлением Пингвина -- нужно один раз допилить. Опенсорс, в конце концов. Один раз допилишь, и не нужно будет всё чинить в полях.
А сетевые интерфейсы и демон ssh вы в своем безопастном режиме будете грузить? А чего вы решили что они загрузяться когда у вас ядро падает? Если нет, как вы автоматизированный удаленный доступ собираетесь делать? Так то открыть консоль машины с remote kvm проблем нет, так и делали, только дальше всеравно руками надо действовать.
А сетевые интерфейсы и демон ssh вы в своем безопастном режиме будете грузить?
Винда же грузит. Есть безопасный режим с сетью и без неё. Если есть необходимость всегда иметь удалённый доступ, придётся грузить демон ssh, ясное дело. Если не повезёт и всё равно не будет грузиться -- печаль. Если падает из-за кривого ядра, загрузчику по идее нужно быть достаточно умным чтобы старое ядро загрузить. Если всё это сделать -- будет хорошо и удобно.
Если не повезёт
Ну вот тут как раз не повезло.
Если падает из-за кривого ядра, загрузчику по идее нужно быть достаточно умным чтобы старое ядро загрузить.
Ну вот вы реально такое у себя настраивали или на ходу сейчас придумываете? На винде тоже ничего не мешает хоть снепшот системных файлов делать и откатываться на него, но никто не ожидал, что бэкап версию надо делать на каждое обновление антивируса делать.
В случае Линукса проблема нежданных обновлений обычно не возникает, т.к. там принято обновления накатывать вручную когда надо.
Бывает конечно всякий проприетарный софт, при устаановке прописывающий свой автообновлятор в крон под рутом, но более менее опытный администратор об этом обычно в курсе и подчищает эту дичь.
Вы рассуждаете на уровне домашнего пользователя или админа небольшой конторы, где что хочу - то и делаю. В крупных конторах, например, может быть нужно соответствие PCI DSS , в которых английским по белому написано, что обязательно использовать актуальное антивирусное ПО и EDR. Актуальное. Именно поэтому это ПО ходь под виндой, хоть под линем должно регулярно обновляться (не тогда, когда админ вспомнит, что надо бы обновить, а регулярно). И если админ подчищает эту дичь, то когда аудиторы/безопасники обнаружат, что требуемое ПО не обновляется, то подчистят самого слишком умного админа.
то подчистят самого слишком умного админа.
Видимо туда умные просто не идут ))
Ну ок, после случившегося зато никого не подчистят.
В крупных конторах, например, может быть нужно соответствие PCI DSS , в
которых английским по белому написано, что обязательно использовать
актуальное антивирусное ПО и EDR.
только слово "актуальное" в рамках PCIDSS подразумевает не "прямщас ставим новый апдейт как он вышел", а наличие плана-графика раскатывания обновлений и механизмов отслеживания что вы этого плана придерживаетесь
т.е. вы должны иметь план примеро такого рода
Сервер А - выкатывание апдейтов - Critical - 1-2 суток, Medium - 4 суток - Minimal - 5-7 суток
Сервер Б .... ну и т.п.
Но в целом ваш посыл верный
Да-да, именно поэтому куча моих знакомых линуксоидов даже не пытаются настраивать btrfs snapshot'ы и плюются от immutable дистрибутивов.
Контекст решает. Ваши знакомые линуксоиды наверняка говорят о своём уютном домашнем десктопе. Если прямо спросить о том, что поставить на условный сервер или на рабочую машину какому-нибудь среднему юзеру, то immutable-дистры, внезапно, окажутся на первом месте. Потому что себе хочется всех свежих обнов и поскорее, а для работы важна стабильность.
Вы зря думаете что у CrowdStrike нет софта под линукс который точно также не сможет его уронить
У меня элементарные драйвера nvidia клали комп в черный экран (даже не в консоль, а просто в черный экран где в бесконечном цикле пытались стартовать иксы)
Разница в том, что для работы Линукса скажем в банковском автомате, драйвера нвидиа нафиг не нужны.
зато CrowdStrike агент (или аналог) там будет стоять с 99% вероятностью
p.s. у нас на банкоматах SEP стоял например на виндовых, линуксовых у нас еще не было, но на линуксе всёравно стоял софт для мониторинга, уже запамятовал какой
Но факт в том, что в том или ином виде в корпоративной среде свой ITIL фен-шуй. И согласен, что если есть практика ставить «антивирус», его будут ставить на любую поддерживаемую платформу.
На Линуксе можно довольно-таки легко заварганить более надежную систему, если уж нужна надежность, без гуй вообще и с минимумом установленного софта и драйверов. На виндовс такой фокус ИМХО так легко не пройдет.
Так Windows здесь вообще не при чем, виноват сторонний софт.
QA? Если он у них есть конечно. Бывают нетривиальные, сложновоспроизводимые сценарии. Но как можно пропустить BSOD, которым подвержены «все продукты Microsoft»?!?!?
Не "все продукты Microsoft", а "все продукты Crowdstrike"
Но как можно пропустить BSOD, которым подвержены «все продукты Microsoft»?!?!?
Как обычно:
Сроки поджимают. Обещали же, что вчера выпустим. Давайте в продакшен быстрее. Потом пофиксим, если что не так.
Именно для данного случая ситуация странная. Даже совершенно поверхностная автоматическая проверка должна была выявить проблему - тестовые стенды в BSOD. Не представляю как такое можно пропустить, если только не выкатывать в прод вообще без тестирования.
Да чо норм же! 21 век, "мы пишем код без ошибок"
блин я в реальности такое видел, у меня в одной конторе прям серьёзно в регламенте разрешили переместить препрод тесты в постпрод, потому что "очень долго релизы выкатываются пока тесты проходят, клиенты жалуются"
You fix bugs on prod because you don't know what you are doing.
I fix bugs on prod because I know what I'm doing.
We are not the same.
Последние слова сеньёра, выпускавшего обновление. Наверное.
Запустили тесты на N виртуальных машин. Все упали в BSOD. Результат тестирования: ни одного красного теста. Норм же
Да всё будет как обычно. Тестировщиков уволят, топы выпишут себе ещё пару миллионных бонусов "за успешную ликвидацию проблемы"
Не все обновления (йогурты) одинаково полезны)
Вспоминается реклама и пародия в телепередаче городок))
Второй закон Вейнберга: если бы строители строили здания так же, как программисты пишут программы, первый залетевший дятел разрушил бы цивилизацию.
Анекдот про дятла и цивилизацию заиграл новыми красками.
Ну вот как там тестируют... Если на тысячах разных конфигурациях оно не работает. А работает только на сборочном компе Джона-разработчика на аутсорсе... И это выпускают в продакшен... Черт, не укладывается в голове.
Мир деградирует.
Да даже обидно немного. Тут долбишься как мартышка, тестишь сервис в пару сотен строк на разных виртуалках, конфигах, организовываешь тестовые группы юзеров и так далее. Перед выпуском морочишься со совместимостью обновлений со старыми базами и так далее. Планируешь откат, если что. Логи многокилобайтные собираешь... Базы бакапишь...
А тут херак-херак! Пол мира сервисов положили... Ну извините. Не подумали мы!
И не говорите, сейчас повышаю квалификацию в одной известной on-line школе. Как раз проходили тестирование. Так вот, они там обновили ПО и курс ихний лёг на 3 дня. Как я понял, они не проверили работоспособность нового сайта на продакшн базе, а только на тестовой. И назад откатить не могут, т.к. прошел процесс смены структуры БД. И курс лёг не сразу, многие студенты успели что-то пройти.
На мой взгляд, это проблема больших организаций. И самая большая проблема сейчас у человечества - всем на все начхать.
курс по базам данных, наверное?
нет, fullstack-developer.
Сам лично регулярно поднимаю клон продакшн базы чтобы не ней проверить новые задачи. Хотя понимаю, лишний час времени тратится.
ну это сарказм был, но было бы прикольно если бы зафакапили БД на курсах по БД. :)
Мне видится плохой практикой тестировать на клоне продакшн базы, вот пара минусов (на мой взгляд):
- возрастает риск утечки персональных данных клиентов (если они там есть, конечно)
- если база тяжелая, то это может занять очень много времени, а всем хотелось бы иметь быстрый ci/cd/cd процесс
А на чем еще оттестировать лучше всего функционал новых задач?
Можно, конечно, портить данные, но у нас коллектив маленький, никто не уворует. По времени новая БД пересоздается за пол-часа.
звучит как будто стоит держать prod-like дамп, урезанный по объему и без ПДн и прочих коммтайн
Ну, да. Условно: код - даже не prod-like, а полностью совпадающий, данные - искусственные.
При этом актуальность кода обеспечивается тем, что именно через этот контур проходит обновление перед тем, как идти на прод. Ну то есть расхождение будет, но только в те самые моменты обновления.
А данные получаются из боевых, пропущенных через деперсонализацию и при необходимости уменьшение объёма (просто в штуках записей). Процедура нудная, но нерегулярная, можно делать раз в несколько месяцев/лет.
они не проверили работоспособность нового сайта на продакшн базе, а только на тестовой
<зануда>
Но ведь это физически не возможно. Это как ответить "да" на вопрос "ты спишь?"
</зануда
Вообще-то для этого существуют реплики прода, к которым не подключены реальные пользователи.
а как по вашему называется такой контур? тестовым или продакшеном?
Вам знакомо понятие blue–green deployment?
staging
организация реплики денег стоит. Можно просто делать клон продакшна для тестирования.
Ну, вообще, можно тестирование миграции совершать.
Разработчик, Которому Не Насрать - это существо воистину сказочное. Его сложно найти, легко потерять, и невозможно нанять.
Во всяких B2B такие единороги практически не водятся.
Ну и бред с этим Хабром. Отредактировать коммент могу, а удалить -- нет.
а вот когда-то кто-то примет решение поставить винду на управление АЭС...
Не думаю, что на том компьютере будет доступ в сеть и автообновления. Вон, есть куча систем крутящихся на ХР в офлайне, управляя промышленными станками и ничего.
и пока ничего. Пока эффективные менеджеры не дошли до мысли что прямо сейчас выгоднее что пусть будет обновляться в онлайне. Впрочем эффективные менеджеры не сами по себе до таких мыслей доходят.
Плюсую проблема в доступе в онлайн и массовых обновлениях извне, "удаленка" - привет. На подобных объектах обычно закрытые сети и обновления вручную с резервированием серверов. У нас есть опыт с такими объектами - обычно делается так: обновляем один - смотрим тестируем если все работает, только тогда обновляем второй, и всегда оставляем возможность отката местному персоналу. И да, часть систем еще на XP работает и ничего.
В посте МРТ аппарат БСОДнулся, я думал у таких устройств вообще выхода в инет не должно быть.
Сеть для управления и передачи данных сканирования. Политики регулярного обновления внутри сети и все.
ввод-вывод это вроде да, но я всё равно плохо представляю, зачем нужен антивирус (и винда впринципе) на томографе/фрезере/чайнике/прочем промышленном оборудовании
Защита от шифровальщиков-вымогателей?
Вот печка для кофе на MacOS.
Часто видел как на станке стоит Автокад и запускается всё прямо из него.
Антивирус-не антивирус, но вот следить за подключаемыми USB устройствами, чтобы флешка не оказалась клавиатурой, кому-то нужно. В принципе, такие вещи можно и на ОС "повесить", но сейчас этим занимаются антивирусы.
Их удаленно настраивают.
Там постоянно практикуются удалённые пляски с бубном.
Конечно есть Сеть, врач получает с МРТ результат на свой ПК, вносит в CRM условную клиники, все в сети. Да и думаю многие станки современные так же онлайн и это как преимущество подается.
Уже были сообщения об атаках на медицинское оборудование для искажения результатов обследования.
Проблема-то не в винде оказалась...
проблема в винде, на которую можно легко установить энтерпрайзную малварь, которая в один прекрасный день может скачать из интернета свой кривой компонент, работающий в режиме ядра...
Можно подумать, что под linux такое невозможно-невозможно. Да, оно себя не будет скачивать себя само (почему нет, кстати), но в комплексе с прочими системными компонентами может дать забавных спецэффектов.
Если в Linux сделав apt upgrade вам прилетит новый пакет из-за которого dkms криво пересоберет модуль ядра для определенного функционала, то вы точно так же можете словить kernel panic при загрузке и бутлуп. Тут особо больших различий нет.
Тут вопрос не в том, что под linux нет кривого софта, а в различиях политики безопасности linux и windows. apt ugrade, да даже apt update сам по умочанию не делается, поэтому сбой в linux такого масштаба невозможен. Кто-то бы накатил update, одна компания бы сбойнула и всех предупредила. Это только одна из политик, а еще там софт ставится из репозитория, а не сам по себе, а еще рут используется только в крайних случаях и т.п. и т.п. Все эти предохранители в сумме и не дают произойту взрыву такого масштаба.
apt ugrade, да даже apt update сам по умочанию не делается
Что мешает софту обновляться самостоятельно и без apt? Это антивирус, у него полные права в системе.
Вы можете себе представить софт под Linux такого масштаба, который сам обновляется, минуя репозитории, да еще и требует рут права? Именно из-за политики Linux, такой софт и не делается. А еще потом покажите мне того сумасшедшего админа, который этот софт поставит. А для винды такая ситуация, увы, норма.
Антивирусы как раз так и работают. И не только с рутовыми правами, но и вообще в нулевом кольце.
Вы можете себе представить софт под Linux такого масштаба, который сам обновляется, минуя репозитории, да еще и требует рут права?
Простите конечно, а как вы себе представляете антивирус без рут прав? Что он должен делать? Писать слезливые сообщения на почту "у вас тут вирус, удалите?"
Молдавский антивирус для молдавских вирусов
Я не говорил, что антивирусу не нужны рут права. Перефразирую: "... да еще обновляется под рут правами". Просто я видел приложения, которые обновляются не из репозитория, возможно даже(не помню просто) которые запрашивают рут пароль для обновления, но чтобы сами работали под рутом и при этом обновлялись из стороннего источника - такого не знаю. Ну хорошо, давайте так, приложение, которое не обновляется из репозитория - 1 штрафной бал, приложение, которое обновляется еще из под рута - 5 штрафных баллов. И возьмите посчитайте штрафные баллы под Линукс и Винду на более менее популярные приложения. Где их будет больше?
Смысл антивируса в частности и всех security апдейтов в целом в том, чтобы накатить их как можно скорее, остановив распространение вредоносов (например, в локальной сети, WannaCry) или закрыв свежую дыру, пока через нее не полезли script kiddies (regreSSHion). Мешать, замедлять, откладывать эти обновления - контрпродуктивно, противоречит вообще смыслу установки таких решений.
Вы легко можете отключить автообновления антивируса под Windows. Никто в здравом уме этого делать не будет.
Смысл антивируса в частности и всех security апдейтов в целом в том, чтобы накатить их как можно скорее,
Только это не должно существенно влиять на доступность системы где эти апдейты устанавливаются
если у вас апдейт завалит кластер из 20 серверов одновременно который вы будете поднимать две недели, а через него у вас биржевая торговля шла, отмазка что "мы ставили security патч" в суде вам не поможет
по этому в нормальной корпоративной среде не должно существовать диких автоматических апдейтов, всегда расписание и деление на тестовые группы. а кластер всегда должен обновляться ступенчато
у меня уже были приключения когда апдейт 2003 винды убивал систему..благо там было 5 машин и оно работало и на 4х пока я чинил пятую после попытки ее обновить
по этому в нормальной корпоративной среде не должно существовать диких автоматических апдейтов, всегда расписание и деление на тестовые группы. а кластер всегда должен обновляться ступенчато
Вопрос в таком случае исключительно к разработчикам антивируса, которые щедро отсыпали обновление всем и сразу. Впрочем, не исключено, что они как раз спешили закрыть какую-нибудь дыру - не зря же аж драйвер обновили.
в энтерпрайзе такого софта полно, и мнение админов тут не учитывается
я с краудстрайком не сталкивался, но вообще у антивирусов есть собственный сервис управления и обновлений где можно отдельно настраивать политику обновлений его частей
вангую в данном случае все админы тупо поставили все "по умолчанию"...грубо говоря все пострадавшие - это перепись идиотов от ИТ и ИБ и "умельцы" в планировании рисков
например, outline proxy обновляется автоматически
А что есть "полные права в системе" в случае линукса?
запуск от рута? на большинстве современных дистрибутивах получите по рукам от SELinux если контекст неправильный
свой модуль ядра? Таскать с собой модули под все существующие ядра - нельзя, часто надо собирать на месте - привет dkms
А бывают еще и дистрибутивы вроде NixOS где файловая система с ОС - read-only в принципе, хотите обновится - новый образ
Ну и традиция что обновляется через репозитории/ansible и прочее - а не специфичным образом.
Ну и если мы андроид считаем линуксом то там:
системный раздел трогать нельзя, совсем нельзя(рут - отдельная редкая тема), даже если Device Admin сказал что надо. Обновления ОС даже на Pixel'ах не сразу после выхода накатываются.
если обновление ОС кривое - загрузится прошлая рабочая (A/B-разделы)
Но в Дебиане и Убунту есть unattended upgrades...
Кхм, unattended upgrades - слыхали?
Вот что вам мешало чуть дольше задержаться на моем посте, полностью прочитать его, вникнуть в суть? :) Ну написано же, по умолчанию. Отстрелить себе ногу при желании можно и в Винде и в Линукс, никто не спорит. Но если по умолчанию у вас отстрел ноги запрещен, то количество переключивших рубильник, будет априори меньше, чем количество всех пользователей Линукса.
Скажите пожалуйста, как в загрузчике винды выбрать загружаться с предыдущей версии ядра? Ну так, как можно почти в любом дистрибутиве?
То есть линукс нельзя положить плохим обновлением ПО? Или что?
Запросто. В Канаде дважды, с интервалом месяцев 8, пол-страны на сутки оставалось вообще без какой-либо связи, хоть голосовой, хоть через интернет (потому что интернета тоже не было) по причине кривых апдейтов CISCO у одного из крупнейших провайдеров. Соответственно становилась вся телеметрия\управление\наблюдение и так далее. Самое хреновое - нельзя вызвать скорую\пожарных.
У меня в прошлом году, замечательно убунта обновилась в кернелпаник (из-за драйверов нвидии, причем это не драйвера обновились, а ядро линуха)
На одном из серверов буквально только что апгрейд ядра Debian 12 (эталон стабильности, казалось бы) с 6.1.0-18 до 6.1.0-21 привёл к невозможности загрузки (не взлетел драйвер aacraid), обновление до 6.1.0-22 магическим образом решило проблему... так что да, и на старуху бывает проруха.
Как по мне, Debian никогда не был эталоном стабильности
Apt отлетал с "broken dependencies" примерно все разы, что появлялся на моем десктопе
установка nvidia драйверов превращается в русскую рулетку с возможностью выстрелить себе в ногу
половины софта нет в репозиториях (типичный пример это blender) и надо постоянно идти на сайт разработчика и искать там этот deb пакет и молится, что бы он установился....
отсуствие пользователя в sudoers после установки, это так, мелочи
Сколько минут у вас ушло на решение проблемы?
В линуксе в целом тоже самое, если упрощенно
Проблема в винде, которая позволяет себе уходить в цикл перезагрузки из-за кривого юзерспейс приложения. Почему раньше после сбоев винда загружалась в безопасном режиме с максимальным отключением всего? Все драйвера отваливались, разрешение 800*600, но работает, а сейчас на любой пук сразу уход в бсод и "что-то пошло не так("
Это ведь не юзерспейс, это драйвер. Мониторить вообще всё происходящее в системе из юзерспейса не получится, а антивирусу надо
Но то что не загружается в safe mode автоматически это конечно недоработка
из-за кривого юзерспейс приложения
Как и у других антивирусов, юзерспейс там только морда с настройками и интерфейсом, а основной функционал в модуле ядра ("драйвере"). Это связано с системой привилегий и колец защиты, чтобы антивирусный код мог нормально выполнять свои функции, особенно при активном заражении, он должен выполняться в Ring 0 (на уровне ядра).
Это же был антивирус, какое "юзерспейс приложение"?
Кроме того, нет такото "все драйвера отваливались". При инсталяции драйвера можно его прописать как обязательный при работе в Safe Mode - что и делают антивирусы.
сейчас после 3х ребутов подряд, винда грузит рекавери, если он есть. Оттуда как раз можно вывалиться в меню выбора режима загрузки
Не знаю, как сейчас, раньше Windows NT вроде как вполне себе использовалась на объектах КИ
Вы не поверите 😃
Откуда-то вспомнилось (видимо, где-то читал), что на объектах критической инфраструктуры АСУ дублируются (или должны дублироваться) и выполняются (или должны выполняться) одновременно на различных аппаратных платформах с постоянным взаимным контролем, чтобы исключить даже ошибки в аппаратной реализации инструкций процессоров.
на объектах критической инфраструктуры АСУ дублируются (или должны дублироваться) и выполняются (или должны выполняться) одновременно на различных аппаратных платформах
Что в вашем понимании "объект критической инфраструктуры"? Там где оно действительно "критическое" - там троирование с мажоритаркой. Для понимания уровня "критичности" - это даже не авиадиспетрчер (хотя там уже применяется), это еще круче. Потому что каждый авиадиспетчер через определенные промежутки времени сдаёт тест на "слепую" разводку. Из оборудования - переговорное устройство, лист бумаги и карандаш. Слушает борта и разводит на листике бумаги. Они свою зарплату не зря получают.
Что в вашем понимании "объект критической инфраструктуры"
Допустим, предприятие, функционирование которого жизненно важно для людей или нарушение нормального функционирования которого может привести к экологической катастрофе.
там троирование с мажоритаркой
Даже (2n+1)-ирование не решит проблему в случае, если компоненты содержат одинаковую архитектурную ошибку.
Есть такая федеральная служба - ФСТЭК. Они дрючат за ПО на критически-важных объектах.
По последним изменения в ФЗ (уж не помню номер) компании обязали иметь площадку для тестирования обновлений. И нельзя накатывать обновления сразу на "боевую" систему.
Понятно что от "самодеятельности" админа эти правила мало помогают, но сам механизм заложен.
Да, да. Старые песни про то, что трава была зеленее.
так там не тестируют, они давно уже отделы тестирования расформировали под лозунгом "юзер - лучший тестировщик"
Проблема не в Windows.
а то что windows отвалилась в синий экран от стороннего софта это тоже проблема не windows?
А то, что, скажем, что-то из семейства Linux может упасть в Kernel Panic от кривого стороннего модуля ядра, это чья проблема?
ну вы сравниваете конструктор из опенсорсовых кусков непонятно чего, собирая который юзер берет на себя ответственность, с коммерческим продуктом который что-то гарантирует беря деньги, но тем не менее принудительно накатывает ломающие всё апдейты. Если это оба такие популярные продукты за много денег и висящие в таких критических местах на тысячах машин, то должна как то совместимость отслеживаться с обеих сторон, или нет?
конструктор из опенсорсовых кусков непонятно чего, собирая который юзер берет на себя ответственность
Я говорю не только о Gentoo, LFS и прочем подобном
коммерческим продуктом который что-то гарантирует беря деньги, но тем не менее принудительно накатывает ломающие всё апдейты
RHEL? Astra? На ядре Linux не только "конструкторы"
то должна как то совместимость отслеживаться с обеих сторон
Как вы себе представляете? В MS будут сидеть и устанавливать все игры ставить все существующие драйверы? Вообще-то, тестирование драйвера - сугубо задача того, кто его разработал.
И вообще, не совсем понял связи того, что ОС может быть сломана кривым модулем ядра, с ее коммерциализацией.
Astra?
на прошлой работе как раз проходил тесты под астру присланные самой астрой, потому что астра гарантировала юзакам нормальную работу на ней определенных версий нашего ПО
Как вы себе представляете? В MS будут сидеть и
устанавливать все игрыставить все существующие драйверы?
распространенные и критичные как crowdstrike - да
Ну вообще говоря, драйвер должен пройти Hardware Compatibility в Microsoft, и получить подпись, иначе в системе он не загрузится. Но, похоже, в этой схеме что-то пошло не так.
конечно нет, для продукта такого уровня (от которого сейчас все упало)
линукс точно также падает от стороннего софта, но там "почемуто" аргумент - линукс тут не причем - уже срабатывает
может не срабатывает потому что линкус падает, когда сисадмин сам дурак и сам накатил не проверив, а виндовс падает когда накатывает обновы хотя ее никто особо и не просил?
Потому что в Линуксе это чинится одной перезагрузкой и выбором другой строчки меню в загрузчике.
Пока ещё "девелопер - лучший тестировщик" там, где компании не совсем плевать, но тренд идёт явно к этому.
Так вроде пишут что после обновления винды оно упало, которого на момент тестирования еще не было.
ссыль будет? я пока видел новость, что упало именно при обновлении служб антивируса.
Возможно имеет место несовместимость обновления винды с обновлением антивируса, но в таком случае получается что обновление винды вышло раньше, и это обязанность разработчиков антивируса тестировать с самыми свежими обновлениями системы перед релизом своих обновлений в прод. К тому же у них сто процентов был доступ к insider-каналу обновлений.
Хех. "Джона-разработчика" это еще в лучшем в случае. А в худшем - инциец из Бангалора, который понаписал себе в резюме всякого..
. А работает только на сборочном компе Джона-разработчика на аутсорсе...
старый мем на скамейке в парке. "но ведь оно работало на моей машине..." — "ладно, будем поставлять всем твою машину в докере"...
Ну вот как там тестируют...
Тесты на стороне разработчика еще ладно. Меня во всей этой истории удивляет другое - как много крупных компаний в мире накатывают обновления сразу на рабочую среду. Без песочницы, без разбивки на несколько "волн" в зависимости от критичности сервисом. Даже без банального разделения на клиентскую и серверную инфраструктуру.
Анекдот про дятла и цивилизацию заиграл новыми красками.
Зато мы узнали, где у них гнездо!
P.S. Тот случай, когда антивирус причинил гораздо больше вреда, чем все вирусы вместе взятые. Oh, the irony...
И самое забавное что отпали местами даже "супер безопасные сервисы" так как хостились или использовали в архитектуре вещи которые затронул баг
Я правильно понимаю, что проблема не в винде, а в кривом безопасниковом софте? Из заголовка это совершенно не ясно.
Да, но там именно в их связке проблема возникла - затронуло много сервисов, а не просто Винду.
Если винда работает нормально а с этим софтом работает плохо то виновник софт а не винда. Ну или за все ошибки в новостях можно винить сам хабр ведь на нем новость вышла, хотя ошибки внес автор новости.
Да, "сбой в работе Windows" уже начинает корёжить. Сбой в работе антивирусного ПО. От кого авторы статей и новостей защищают CrowdStrike? Или просто на "сбой в работе Windows" лучше кликается?
Не совсем так. Винда все еще не предоставляет документированных возможностей для работы антивирусов в систему. Из-за это используются недокументированные. Иначе невозможно реализовать функционал. По уму, разработчики винды должны:
1. Реализовать нормальный API для разработчиков подобного ПО.
2. Предоставлять раньше до массового раската версии обновлений, для тестирования обновлений Windows разработчиками подобного ПО.
3. Возможно разработчики действительно не проверяли версии сборок ядра Windows. Бинарники все подписаны, достаточно их сверять с белым списком.
Так что тут можно многое чего улучшить во взаимодействии.
Корпоративным пользователям независимо от платформы надо реализовать практики раскатки обновления сначала на тестовую среду, и только затем на боевую. Любой вендор можно выкатить обновление, в котором могут возникнуть фатальные проблемы для конкретных инстансов конкретного предприятия.
либо уже заголовок поправили уже после вашего коммента, либо...
В заголовке есть "после обновления CrowdStrike"
инцидент произошёл глобально после некорректного обновления ИБ-приложения CrowdStrike
Яркий пример того, как приложения для безопасности сами являются источником опасности. Корявый драйвер C-00000291*.sys после обновления кладет систему.
Походу эта проблема задела ещё и Azure... который лёг и положил кучу сервисов.
Неужели настало то, что предсказывалит древние — Вендекапец?
Ладно изготовитель софта его не тестирует... это понятно, это модные хипстеры со смузи сарказм. А как же строгое ИБ на местах? Неужели тоже нет тестового стенда для проверки того, что прилетает? сарказм
PS такие конторы, где обновления сначала тестируют, а потом пускают в интрасеть - есть, но похоже их очччень мало...
А разве нормально, что обновления нужно "не пускать в интрасеть" вместо того, чтобы включать и выключать обновления на компьютере?
Доменными политиками можно настроить получение обновлений с локального сервера (WSUS), а в локальный репозиторий запускать только проверенные обновления. А пользователь будет точно так же видеть "установить обновления и перегрузить компьютер"
Вот самый главный вопрос: неужели стоял автоапдейт версий самого антивируса? Тогда ой. Баги были есть и будут где угодно, поэтому обновления только вручную и только после предварительного тестирования. Это же аксиома.
Помню, лет 10 назад, nod32 выкатил апдейт, превращающий машины с виндой в "живых мертвецов" - вроде, оно загрузилось и работает, но даже мышь двигается рывками... проблемный апдейт выкатили где-то в 18:20МСК, а фикс выкатили где-то в 20:30МСК, в итоге, кто ушёл домой в 18:00, даже ничего не заметили, а вот кто задержался или работал "по вечернему графику", встряли по полной... ничто не ново в этом Мире.
А в этом прикол EDR, там по сути ничего нельзя проконтролировать как в обычном антивирусе, поскольку оно в обход системы следит и сливает в облако данные.
Здесь в Японии все лежит, офисы встали, в магазинах терминалы висят. Из этого плюс - гигачады на винде пошли сначала пить пиво а потом официально домой, а любители маков работают за двоих 🤣
/s как вы яхту назовёте.... Crowd Strike [забастовка толпы] ))
Не успели еще выкатить новые санкции по отношению к Kasprersky Lab, как начались проблемы. Совпадение? ¯\_(ツ)_/¯
Тут мне лично вот что интересно, не складывается у меня в голове Авиакомпания, полёты и винда.
Тут дело скорее в открытости системы и обновлениях извне, а не винде, винда вполне нормальная система если ее не трогать, у нас часть старых объектов еще на ХР сохранилась.
полёты и винда
То что летает - может и упасть! ;)
А что не так? Не автопилот же под виндой крутится, а остальное не настолько критичное.
Ну всякие табло в аэропортах и софт для регистрации пассажиров и багажа на стойках и в билетных кассах довольно часто на Винде крутятся, что не так?
Так проблема не в самолётах, проблема в логистике - билеты, багаж.
Зашел почитать про сбой Windows, увидел только про кривой антивирус.
>про кривой антивирус
самое таинственное - как этот васян-антивирус, про который никто не слышал, оказался установлен на каждом втором утюге? может это филиальчик АНБ?
Ну, вообще, не такой уж это и васян-антивирус. Для сравнения: доход за 2023 год у Касперского $721 млн, а у этих ребят $2,241 млрд.
И ещё они помогали в расследовании самых нашумевших кибератак:
The company has been involved in several high-profile cyberattacks, including the 2014 Sony Pictures hack, the 2015–16 cyber attacks on the Democratic National Committee (DNC), and the 2016 email leak involving the DNC.
Это довольно популярный антивирус в корпоративной сфере. Просто они B2B, а не B2C.
Отец знакомого работает в Microsoft. Сегодня срочно вызвали на совещание. Вернулся поздно и ничего не объяснил. Сказал лишь собирать всю технику и бежать в магазин за драйверами на две недели. Сейчас едем куда-то далеко за город. Не знаю что происходит, но мне кажется началось
Вспоминается отчего то...
Hidden text
Второй инфоцид (англ. The Second Infocide) - уничтожение всей информации на серверах MAGMA 14 марта 2074 года (т. наз. день Пи, 3.14). Ключевое событие НАКОНЦА, главная непосредственная причина краха цивилизации.
Гигакорпорация MAGMA, став глобальным цифровым монополистом после захвата китайской IT-индустрии по итогам Последней мировой войны, много лет целенаправленно добивалась сосредоточения всей цифровой информации в мире на своих серверах. Так, MAGMA проводила политику т.наз. "тотальной клаудизации", когда все пользовательские данные хранились и обрабатывались только на её серверах, а конечное устройство пользователя (например, мобильный телефон или лэптоп) осуществляло лишь связь и графический интерфейс. Она добивалась этого, лоббируя правительственные запреты на автономные устройства и хранилища или навязывая такую ценовую политику, при которой они становились неподъёмно дорогими. Кроме того, перенос данных на магмовские облачные серверы рекламировался как "безопасный", потому что "уж Магма-то слишком велика, чтобы рухнуть, и уж эти-то данные точно не пострадают ни при каких обстоятельствах". В итоге к началу 2070-х гг. практически вся информация на планете хранилась и обрабатывалась на северах MAGMA, за исключением немногих "пиратских" (нелегальных или полулегальных) автономных устройств, а также военных и прочих правительственных систем США и их главных союзников - но и они работали на программном обеспечении от MAGMA.
Непосредственно Второму инфоциду предшествовал глобальный финансовый крах, докатившийся ко второй декаде марта до США: банкротство крупнейших банков и компаний, в том числе самой MAGMA, государственный дефолт США и банкротство Федерального резерва. Неизвестно, кто и с какой целью отдал приказ на тотальное уничтожение информации. На этот счёт существует множество равно неподтверждённых версий и теорий заговора:
Диверсия тайной организации бывших офицеров Евразийской империи или другой бывшей державы - НМП-2 - мстителей за поражение в Последней мировой войне (см. Главное интервью)
Диверсия амманитов или иных религиозных террористов
Диверсия экотеррористов-радгринов
Случайный программный или аппаратный сбой
Заговор внутри MAGMA: попытка впавшего в панику элитариата обнулить все долги и стереть все следы своих махинаций, при том что заложенная в магмовский софт "информационная бомба судного дня" не была рассчитана на выборочное применение, она могла уничтожить только всё или ничего.
С точки простого пользователя Второй инфоцид выглядел так, что вся связь пропала, все его электронные устройства превратились в кирпичи, деньги на банковских счетах и прочие цифровые активы перестали существовать (наличных денег давно нигде не было), машины-автопилоты встали (других тоже давно не было), а вся инфраструктура жизнеобеспечения "умных домов" и "умных городов" отключилась. Городская индустриальная цивилизация в той форме, к какой она пришла ко второй половине XXI века, прекратила существование.
Перевыполнение сроков? Или просто репетиция?
А не бот ли ты часом, товарищ @afterpreparty? Заслан с целью вызвать панику?
Сбой в Windows на ПК и серверах после обновления CrowdStrike затронул IT-инфраструктуру компаний, банков и аэропортов