НовостиСобытияКонференцииФорумыIT@Work
Open Source:

Блог

Яндекс.Диск поломал Windows

Сергей Голубев
04.12.2013 12:04:57

Вчера на Хабре появилось сообщение о том, что обновлении Яндекс.Диска установщик попытался удалить не только старую версию программы, но и весь системный раздел. Хабр — сайт популярный, на нём есть блог компании Яндекс, тег "Яндекс" у заметки проставлены… Поэтому разработчики наверняка её читали. Поскольку опровержения нет, то истинность заявления сомнений не вызывает.

Разумеется, проблема была у пользователей только одной ОС. Той самой, которая самая безопасная, поскольку Security Development Lifecycle и всё такое прочее. Как же так?

Хочу обратить внимание читателя на то, что в данном случае нет никаких оснований говорить о злом умысле. Обычная техническая ошибка в обычной прикладной программе. Здравый смысл подсказывает, что максимально возможный ущерб от этого — сама программа будет неработоспособной. Ан нет — почему-то удаляется системный раздел.

Могло ли быть такое при установке приложения из пакета RPM или DEB? Теоретически, конечно, да. Установка пакета требует административных прав и можно сделать так, чтобы системные файлы заменялись на какие-то другие. Однако, это очень легко проверить — достаточно распаковать архив и посмотреть какие именно файлы будут изменяться (что обязательно должно делаться при установке программы не из официального репозитория).

Но самое главное — "вредный" пакет практически невозможно получить в результате обычной технической ошибки. Только с умыслом.

По-моему, хорошая иллюстрация сравнительной безопасности ОС без апелляций к "высоким материям". Устанавливая программу, разработанную даже солидной компанией, пользователь Windows не может быть уверен в том, что она не "поломает систему".

Теория — теорией, а факты — фактами. Я предпочитаю верить именно фактам. Так всё-таки — где уязвимостей меньше?

Комментариев: 10

Только зарегистрированные и авторизованные пользователи могут добавлять комментарии

04.12.2013 22:29:37

Побольше бы таких ошибок.
Сегодня получил письмо:

Добрый день.

Вы получили это письмо, так как пользуетесь нашей программой
Яндекс.Диск для Windows и недавно получали её обновление.

К сожалению, в одной из последних версий программы была допущена ошибка,
которая в редких случаях может привести к сбою в работе операционной системы.
Поэтому просим Вас убедиться, что на Вашем компьютере стоит стабильная
версия программы — от 1.1.8 и выше. Чтобы сделать это, кликните по значку Яндекс.Диска
в области уведомлений (в правом нижнем углу экрана), выберите пункт меню «Справка» и
затем — «О программе». Если текущая версия приложения имеет номер меньше, чем 1.1.8.,
нажмите на кнопку «Проверить обновления». Версия программы автоматически обновится.
Если у Вас появятся вопросы, напишите нам, пожалуйста, в службу поддержки.

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

Чтобы сгладить неприятное впечатление от допущенной ошибки, мы увеличили
доступное для Вас пространство на Яндекс.Диске на 200 ГБ. Оставайтесь с нами.


Команда Яндекс.Диска

P.S.
Если я правильно понял, счастье досталось только тем, кто регулярно обновляется и "не прозевал" установить версию с ошибкой.

04.12.2013 22:54:00

Какого все-таки числа это было? Упоминают 30 ноября.
Дело в том, что при включении утром в субботу мои меню, ярлыки и весь интерфейс XP вылетели в режим дефолтного юзера. Были уничтожены настройки Documents and Settings, но сами программы и документы не пострадали. Вопрос решился откатом на 3 дня назад. CureIt вирусов не обнаружил. Если это не совпадение, то 200 Гб мною заработаны честно.

04.12.2013 23:00:28

Цитата
Побольше бы таких ошибок
Цитата
мы увеличили
доступное для Вас пространство на Яндекс.Диске на 200 ГБ

smile:o Безобразие - а кто по web-интерфейсу - тому ничего? smile:D
...
Все!
Я обиделся!
Сильно обиделся!! smile:D

Donat Lipkovsky
05.12.2013 03:56:43

Цитата
Однако, это очень легко проверить


Сегрей, как часто перед установкой очередного пакета или обновлением имеемых, вы распаковываете пакет и внимательно изучаете его содержимое?
Интересно было бы со стороны посмотреть на этот процесс, особенно после того, как распаковав и изучив основный устанавливаемый пакет, вы принялись бы изучать пакеты по зависимостям. Про команду типа apt-get upgrade вообще молчу.
Так же интересно было бы узнать какое количество пользователей Линукс следуют вашему совету вообще.

Теперь о проблеме.
Microsoft не несёт ответственности за установку стороннего программного обеспечения на ваш компьютер и тем более за его качество.
Ответственность лежит полностью на пользователе.
Как бы это не показалось странным, но ответственность за последствия установки и использования программы, не лежит и на разработчике программы. Достаточно почитать лицензионное соглашение http://legal.yandex.ru/desktop_software_agreement/ п.6,7.
Проверть код и расспаковывать программу вы так же по условиям лицензии не имеете право.
Кроме всего прочего программное обеспечение Яндекс.Диск не сертифицированно Microsoft.

Ну и наконец, Яндекс.Диск при установке требует привилегий администратора, даже если вы работаете под обычным пользователем.
Так что вариантов у пользователя нет, а тем более нет вариантов у системы, когда пользователь соглашается дать права.

Цитата
Обычная техническая ошибка в обычной прикладной программе. Здравый смысл подсказывает, что максимально возможный ущерб от этого — сама программа будет неработоспособной.


Как говаривал один известный товарищ:
"Здравый смысл хорош в четырёх стенах собственного дома". Там нет "ошибки в обычной прикладной программе" в смысле алгоритма работы самой программы,там ошибка в работе инсталлятора, в котором ошибочно указан для команды удаления путь до системных каталогов.
И понятно, что с административными правами она нормально удалит почти всё, за исключением тех системных файлов, которые непосредственно работают.

Но при чём тут качество безопасности конкретной системы?!

Вы заказали, купили и поставили у себя дома или на даче толстенную банковскую дверь с самым навороченным замком, а потом попросили соседа присмотреть за квартирой пока вы будете в отпуске дав ему ключ, или сказав код - не важно. Приехали, а квартирку-то обнесли. Сосед оказывается её закрыть забыл. Не думаю, что вы будете роптать на производителей двери.


05.12.2013 12:06:51

Цитата
Сегрей, как часто перед установкой очередного пакета или обновлением имеемых, вы распаковываете пакет и внимательно изучаете его содержимое?


Всегда при установке пакета не из официального репозитория.

Donat Lipkovsky
05.12.2013 15:46:58

Сиё выше всяческих похвал.
И делаете вы это прекрасно понимая, что если в пакете есть проблема и вы запустите его установку, которая так же требует прав Администратора, root'a в данном случае, то последствия у вас будут теми же, что и в Windows.
После того, как ВЫ (ПОЛЬЗОВАТЕЛЬ) разрешили произвести действия с максимальными правами в системе - ни что систему ни под Линукс, ни под Виндоус не спасёт от деструктивных действий.

05.12.2013 15:55:58

Разумеется. Только разница в том, что пакет я распаковал и посмотрел, а с екзешником так просто не получится. Надо Microsoft как-то менять "пакетный менеджер" smile:).

Donat Lipkovsky
05.12.2013 16:07:25

С пакетным менеджером от Microsoft всё ок, ибо для MSI пакета (а это основной официальный установочным пакет Microsoft) есть возможность распаковать пакет и т.с. заценить его, хотя на самом деле это не метод. Но, как видите, не все пользуют именно этот официальный инсталлятор - в том числе товарищи от Yandexa. С остальными "левыми" инсталляторами, типа Inno, NSIS и др. проблем гораздо больше. Но в любом случае обычный пользователь заниматься распаковкой и анализом не будет, во-первых из-за лени, во-вторых - из-за отсутствия необходимых для этого знаний, о чём вы абсолютно правильно сказали в Продолжении. Я сейчас добавлю по этому поводу маленький постик в Продолжение.

05.12.2013 13:33:19

Цитата
Могло ли быть такое при установке приложения из пакета RPM или DEB? Теоретически, конечно, да

Не знаю, как на счет "пакета RPM или DEB", но сам линукс защищен от подобных вещей не лучше винды. Да и в принципе защиты от ошибок в тех программах, которые должны работать с максимально возможными правами, не существует.
В комментариях на хабре, кстати, упоминался аналогичный случай с какой-то программой под линуксом. Подробностей, уж извините, не помню, не заинтересовало. А уж сколько встречалось в форумах сообщений, когда линуксоид сам убивает себе ОС, поставив лишний пробел в команде rm! Даже фак есть на тему, как легко ошибиться и что делать http://www.opennet.ru/docs/HOWTO-RU/mini/Ext2fs-Undeletion.html

05.12.2013 16:12:24

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

Только зарегистрированные и авторизованные пользователи могут добавлять комментарии