Comments 58
А вы слов на ветер не бросаете) Я про комментарий "Challenge Accepted"
+64
Да я думаю многих бы задели заявление в тоне:
Мне не интересны домыслы, ни выше, ни ниже. Презентацию я читал, хотя и по диагонали… но это компенсируется тем, что я знаю как работает наше обновление и что там можно и что опасно, и что нет. Я — знаю, вы — нет.
+27
UFO just landed and posted this here
оу. Пожалуй, тот мой комментарий можно считать резким, хотя цели такой не было. Если Так задело — извиняюсь, но смотрите зато сколько пользы! :)
Однако не отказываясь от смысловой нагрузки моих слов и видя вашу заинтересованность, я попробую пояснить. Хотя кроме вас вряд ли будут вчитываться, ведь так приятно потоптать :)
Итак, если таки получилось перенаправить трафик жертвы на свои сервера, то отсутсвие https с валидацией сертификата действительно позволит скачать левые файлы. Этого я не отрицал. Весь вопрос что дальше будет со слитыми файлами. Старые версии апдейтера dr.web, использующие lst файлы, на этапе получения файла проверяют только целостность передачи, для чего и служит crc.
Ваша правда в том, что неподписанный компонент не должен пройти через самозащиту. Тут мне вам нечем возразить. Подмена битым компонентом это баг. В таких случаях, правда, принято сначала сообщать вендору, чтобы можно было закрыть уязвимость, если она есть. Но понятно ваше желание осадить зарвавшегося вендора :) Ваш выбор.
В новых версиях продукта даже с этим багом шутка не пройдет, по ряду причин.
Итого, не занижая ваших заслуг, отсутствие https не является недоработкой. Выявленная вами проблема хотя и была бы трудновыполнимой с ssl и валидацией, но причина её не в этом. От сути своего стилистически дерзкого комментария не отказываюсь.
Спасибо.
Однако не отказываясь от смысловой нагрузки моих слов и видя вашу заинтересованность, я попробую пояснить. Хотя кроме вас вряд ли будут вчитываться, ведь так приятно потоптать :)
Итак, если таки получилось перенаправить трафик жертвы на свои сервера, то отсутсвие https с валидацией сертификата действительно позволит скачать левые файлы. Этого я не отрицал. Весь вопрос что дальше будет со слитыми файлами. Старые версии апдейтера dr.web, использующие lst файлы, на этапе получения файла проверяют только целостность передачи, для чего и служит crc.
Ваша правда в том, что неподписанный компонент не должен пройти через самозащиту. Тут мне вам нечем возразить. Подмена битым компонентом это баг. В таких случаях, правда, принято сначала сообщать вендору, чтобы можно было закрыть уязвимость, если она есть. Но понятно ваше желание осадить зарвавшегося вендора :) Ваш выбор.
В новых версиях продукта даже с этим багом шутка не пройдет, по ряду причин.
Итого, не занижая ваших заслуг, отсутствие https не является недоработкой. Выявленная вами проблема хотя и была бы трудновыполнимой с ssl и валидацией, но причина её не в этом. От сути своего стилистически дерзкого комментария не отказываюсь.
Спасибо.
-51
UFO just landed and posted this here
В комментарии по сути ссылка на pdf-ку с анализом процесса обновления, плюс на linux-платформе. Сегодняшнаяя статья по шагам описывает практику выполнения атаки, и уже на другой платформе.
Еще раз: конкретно в этом случае SSL поможет, но баг (баг есть, я не отрицию) — в другом.
Еще раз: конкретно в этом случае SSL поможет, но баг (баг есть, я не отрицию) — в другом.
-14
Сегодняшнаяя статья по шагам описывает практику выполнения атаки, и уже на другой платформе.
Сегодняшняя статья описывает атаку, шаблоннее которой сложно что-то придумать. Любой человек, хоть немного понимающий в этой области, сразу после прочтения PDF прокрутил в голове все описанные в этой статье очевидные шаги. Т.е. статья — просто PoC эксплуатации описанной кем-то другим уязвимости. Никаких ноу-хау, никаких хитростей.
Если сотрудник DrWeb прочитал PDF, увидел слово «Linux» и не догадался применить написанное к Windows и хотя бы запросить старших товарищей, а потом ругается на «не покормили с ложечки», то как его назвать?
Очень смахивает на описанное в habrahabr.ru/post/219691/#comment_7501755
+21
Вы и многие упорно не хотите услашать меня, что проблема не в отсутствие SSL в канале передачи. Ну сделайте одолжение, внимательнее:
Валидация приехавших компонент выполняется _после_ приема файлов.
И это правильно, потому что скомпрометировано может быть не обязательно подключение к серверам, файлы могут образоваться на машине юзера и мимо апдейтера.
В данном случае проверка не срабатывает, это БАГ. Я Не отрицаю. НО он не имеет отношение к (отсутствию) SSL в протоколе!
Поскольку мне отчаянно сливают карму, я не имею возможности отвечать на все комментарии, прошу извинить, отвечу тут, хотя понимаю, что слушать уже не будут :(
1) небольшое замечание по поводу статьи, всё-таки в тестировании учавствует скорее всего не сертифицированная версия, т.к. зона обновлений куда шел апдейтер — общепользовательская.
2) не древние ( моложе 7, в релизе сейчас — 9 ) версии продукта защищают список компонент, подложить им левый бинарник, даже подписанный, не получится.
Валидация приехавших компонент выполняется _после_ приема файлов.
И это правильно, потому что скомпрометировано может быть не обязательно подключение к серверам, файлы могут образоваться на машине юзера и мимо апдейтера.
В данном случае проверка не срабатывает, это БАГ. Я Не отрицаю. НО он не имеет отношение к (отсутствию) SSL в протоколе!
Поскольку мне отчаянно сливают карму, я не имею возможности отвечать на все комментарии, прошу извинить, отвечу тут, хотя понимаю, что слушать уже не будут :(
1) небольшое замечание по поводу статьи, всё-таки в тестировании учавствует скорее всего не сертифицированная версия, т.к. зона обновлений куда шел апдейтер — общепользовательская.
2) не древние ( моложе 7, в релизе сейчас — 9 ) версии продукта защищают список компонент, подложить им левый бинарник, даже подписанный, не получится.
-5
В данном случае проверка не срабатывает, это БАГ.
Вы утверждаете, что это именно дефект конкретной версии, и что вообще-то проверка должна быть? Но как? Судя по статье, подсунуть можно любые данные, и даже у легитимных данных нет цифровой подписи. Нечего проверять.
он не имеет отношение к (отсутствию) SSL в протоколе!
Имеет, но опосредованное, это да.
небольшое замечание по поводу статьи, всё-таки в тестировании учавствует скорее всего не сертифицированная версия, т.к. зона обновлений куда шел апдейтер — общепользовательская.
С точки зрения протокола есть различия?
не древние ( моложе 7, в релизе сейчас — 9 ) версии продукта защищают список компонент, подложить им левый бинарник, даже подписанный, не получится.
Даже подписанные? А можно чуть больше деталей? Вы ведь, помнится, говорили, что и в этой версии защита транспорта не принципиальна, ведь данные проверяются. Ведь если даже подписанные компоненты не принимаются, то получается, у программы нет функционала обновления, что тоже не очень хорошо.
+3
1) небольшое замечание по поводу статьи, всё-таки в тестировании учавствует скорее всего не сертифицированная версия, т.к. зона обновлений куда шел апдейтер — общепользовательская.
Расскажите, пожалуйста, уважаемый, в чем же технические отличия сертифицированной версии от несертифицированной?
+2
Я полагаю, что, во имя неукоснительного соблюдения взаимоисключающих параграфов, обновления на сертифицированной версии должны быть отключены и включаться вручную, когда выходит специальный сертифицированный набор обновлений.
Ну или должен использоваться специальный сервер который содержит только сертифицированные обновления.
Только это не имеет значения, ибо не мешает провести-таки эту атаку.
Ну или должен использоваться специальный сервер который содержит только сертифицированные обновления.
Только это не имеет значения, ибо не мешает провести-таки эту атаку.
+2
Закроете-то баг когда?
+7
Весь вопрос что дальше будет со слитыми файлами.
Доступ к системе с привилегиями system, делов-то, подумаешь, мелочь какая…
Подмена битым компонентом это баг
Баг был в OpenSSL, а это — грубейший архитектурный косяк.
В новых версиях продукта даже с этим багом шутка не пройдет, по ряду причин.
А конкретнее?
+16
pansa
В теме, в который Вы начали спор насчёт обновлений DrWeb, мало кто придавал этому значение. Но Ваша настойчивость и умение вести дискуссии не пропали даром, теперь весь Хабр знает чего стоит стоит Ваш антивирус. И даже если это не так — имидж уже сформирован и Вашей компании будет очень непросто вернуть себе статус-кво
Должно быть, Ваш работадатель Вами очень доволен. Да и у Вас есть повод гордиться собой
В теме, в который Вы начали спор насчёт обновлений DrWeb, мало кто придавал этому значение. Но Ваша настойчивость и умение вести дискуссии не пропали даром, теперь весь Хабр знает чего стоит стоит Ваш антивирус. И даже если это не так — имидж уже сформирован и Вашей компании будет очень непросто вернуть себе статус-кво
Должно быть, Ваш работадатель Вами очень доволен. Да и у Вас есть повод гордиться собой
+16
Спасибо :) После одного из комментариев, для меня этот вопрос стал принципиальным.
+52
Очень странно почему не https.
0
Это еще не странно. Странно, что подаваемые файлы не проверяются по цифровой подписи. Кажется, у кого-то в DrWeb не заладились отношения с криптографией, и он решил обойтись без нее.
+27
А ещё пакеты в Debian передаются не по https. Потому что он там не нужен.
-2
На самом деле нет смысла тратить ресурсы сервера на шифрование каждого соединения через https, если контент для всех пользователей одинаковый. В этом случае целесообразнее один раз подписать сами файлы (правда в данном случае это не сделано), а отдавать уже обычным http.
+8
UFO just landed and posted this here
После этой статьи отношение к drweb упало ниже чем до нуля — не проверять собственные базы на целостность выглядит столько нелепо, что про прочие качества антивируса даже думать не хочется. Тем более что подозрения и ранее бывали…
Есть народное мнение, что KAV существенно «тяжелее» drweb, что всегда звучало как похвала — теперь, я кажется, знаю, чем добывалась «легкость».
Впечатление, как от танка, у которого сбоку в броне сделана фанерная дверка, закрытая на простой шпингалет, а конструктор скромно отмалчивается, отвечая только, что «Броня есть? Есть! А дверка сделана для удобства обслуживания, из-за того, что через люк ремонтировать неудобно, но вы не парьтесь, враги-то о ней не знают! Я — знаю, враги — нет!»
Есть народное мнение, что KAV существенно «тяжелее» drweb, что всегда звучало как похвала — теперь, я кажется, знаю, чем добывалась «легкость».
Впечатление, как от танка, у которого сбоку в броне сделана фанерная дверка, закрытая на простой шпингалет, а конструктор скромно отмалчивается, отвечая только, что «Броня есть? Есть! А дверка сделана для удобства обслуживания, из-за того, что через люк ремонтировать неудобно, но вы не парьтесь, враги-то о ней не знают! Я — знаю, враги — нет!»
+55
Интересно было бы услышать комментарии от сертифицирующих органов. Кстати не только вы обратили внимание на эти сертификаты, полтора года назад еще один человек писал забавные вещи про dr.web:
http://sporaw.livejournal.com/135169.html
http://sporaw.livejournal.com/135169.html
+9
Каждый раз, когда я читаю похожие статьи я думаю, как это может быть в наше время особенно для продукта, который разрабатывается уже больше десяти лет. Ведь это какие-то детские проблемы, как то, хранить пароли в чистом тексте в БД.
Кроме того, ведь еще есть версия ДрВеб для провайдеров и локальных сетей (такие себе он-сайт апдейт сервера), где осуществить подобную атаку много легче, и, я так понимаю, можно заражать целые сегменты сети.
Кроме того, ведь еще есть версия ДрВеб для провайдеров и локальных сетей (такие себе он-сайт апдейт сервера), где осуществить подобную атаку много легче, и, я так понимаю, можно заражать целые сегменты сети.
+4
Месяца два как снес этот убогий антивирус и видимо не зря, его заточенность на тупоюзеров меня просто достала, последней каплей была проблема с установкой вебкамеры, драйвера на камеру не устанавливались, но drWeb хранил молчание и никак не обозначал себя в этой истории, только после того как я удалил его, камера нормально установилась, причем я купил уже другую, полагая, что проблема в драйверах. А такой эпикфейл окончательно убеждает в их уровне безопасности.
+2
Получается, что возможна и банальная атака с подменой hosts или через DNS-спуфинг и т.п. Короче, миллион и один способ заставить DrWeb получить свои файлы вместо обновлений — какой ужас.
+12
интересно, как такая новость отразится на продажах Dr.Web. А ведь скорее всего почти никак, до простых потребителей оно и не дойдет(
-1
«Нахрена нам враги, когда у нас есть такие друзья!» (с) Б.Г.
P.S. Неприятно, что «некая госструктура» никак не отвечает (в т.ч. и перед гос-вом) за качество «экспертизы», сделанной по заказу того же гос-ва для проверки ПО, которое в госструктурах же и будет работать.
P.S. Неприятно, что «некая госструктура» никак не отвечает (в т.ч. и перед гос-вом) за качество «экспертизы», сделанной по заказу того же гос-ва для проверки ПО, которое в госструктурах же и будет работать.
+14
Честно говоря когда читал ту ветвь комментариев, был склонен верить скорее вашему оппоненту. Потому что вы в первом комментарии написали что он обновляется по http (что само по себе не страшно — Windows и Debian делают так же), но не написали что он не проверяет цифровую подпись скачиваемых файлов. Ну и пока не было доказано обратное, сложно было представить себе что взрослые люди — тем более в ПО, связанном с обеспечением безопасности — допустят такую лажу.
Вспоминая свой давний комментарий «Обновления от Microsoft идут по plain-http, но там, наверняка, каждый файл обновления имеет цифровую подпись, которая проверяется перед запуском, всё-таки в MS не школьники работают», я уже чувствую что может быть и в том случае стоило проверить, ибо нет предела человеческой глупости.
Вспоминая свой давний комментарий «Обновления от Microsoft идут по plain-http, но там, наверняка, каждый файл обновления имеет цифровую подпись, которая проверяется перед запуском, всё-таки в MS не школьники работают», я уже чувствую что может быть и в том случае стоило проверить, ибо нет предела человеческой глупости.
+5
Читая обсуждение у меня возник вопрос. Обсуждается версия 6, которой уже не один год вроде как. Сейчас актуальна версия 9. найти предыдущую версию обычному пользователю еще надо постараться, да и смысл?
Сертифицированные версии, которые все еще используются, как я понял, обновляются не через общедоступные сети, так? Следовательно, найденный баг не опасен на практике. ну разве что обычный пользователь до сих пор сидит на 6-й версии, принципиально не обновляясь.
Так вот, версия 9, опять же из из комментариев, этому багу не подвержена. И обычный пользователь, владеющий свежей (или не очень свежей 8 версией) находится в безопасности при обновлении
Итог: для чего весь этот спор и срыв покровов?
Наааамного актуальнее, на мой взгляд, было бы провести такое исследование для новой версии. Тогда да, это было бы здорово, круто и полезно. А так — самореклама. И если есть желание не показать себя и дать дырку для создания пакостей простым пользователям, а помочь делу безопасности, писать надо в первую очередь не на хабр, а в компанию «Доктор Веб».
Вот и вопрос — тест версии 9 будет?
Сертифицированные версии, которые все еще используются, как я понял, обновляются не через общедоступные сети, так? Следовательно, найденный баг не опасен на практике. ну разве что обычный пользователь до сих пор сидит на 6-й версии, принципиально не обновляясь.
Так вот, версия 9, опять же из из комментариев, этому багу не подвержена. И обычный пользователь, владеющий свежей (или не очень свежей 8 версией) находится в безопасности при обновлении
Итог: для чего весь этот спор и срыв покровов?
Наааамного актуальнее, на мой взгляд, было бы провести такое исследование для новой версии. Тогда да, это было бы здорово, круто и полезно. А так — самореклама. И если есть желание не показать себя и дать дырку для создания пакостей простым пользователям, а помочь делу безопасности, писать надо в первую очередь не на хабр, а в компанию «Доктор Веб».
Вот и вопрос — тест версии 9 будет?
+6
Речь в дискуссии, которая побудила автора на исследование, шла о «сертифицированной» версии DoctorWeb для государственных организаций. Сертифицированный вариант, как я понял, существует только для 6 версии продукта. Из того же диалога можно понять, что апгрейд на более свежую версию для таких пользователей пока не предусмотрен.
+9
А у корпоративной версии, которая «Enterprise Suite», она же «Dr.Web Desktop + Центр Управления», до сих пор последняя версия — 6.
Скрытый текст

Что-то я как-то раздумал продлять наши лицензии на следующие два года. А ведь собирался ещё 4 подразделения на тот же «Центр Управления» подключать.

+9
Сертифицированные версии, которые все еще используются, как я понял, обновляются не через общедоступные сети, так?Судя по комментарию pansa:
1) небольшое замечание по поводу статьи, всё-таки в тестировании учавствует скорее всего не сертифицированная версия, т.к. зона обновлений куда шел апдейтер — общепользовательская.можно сделать вывод, что сертифицированная версия использует другие сервера для обновлений, но обновляется точно так же, через инет. Возможно в некоторых организациях обновления действительно таскают флешками, но, скорее всего, даже там используют локальный сервер обновлений, чтобы не бегать с этой флешкой по сотням компов — так что и там можно устроить такую атаку в локалке.
+3
Между тем, у статьи 148 плюсов и ни одного минуса. Давно такого не видел.
+1
Когда был ребёнком и знал о компутерах, что там только игрушки, да вирусы интернетные, всегда думал, а почему нельзя сделать вид, что твой компьютер — сервер обновления антивируса, и загрузить под видом обновлений всё что угодно. И вот, спустя почти 10 лет, узнал, что это всё-таки возможно)
+2
У вас в do_GET не хватает отступа:
if 'timestamp' in self.path:
self.send_response(200)
0
В апреле 2011 я находил потенциальную уязвимость у Касперского, которая заключалась в том, что на авторитативных DNS серверах в зоне geo.kaspersky.com была ошибка:
Обратите внимание на последнюю запись. Домен kaspersky-kabs.com был свободен для регистрации. Его можно было зарегистрировать и поднять DNS сервер с именем geons5.kaspersky-kabs.com.
Все авторитативные DNS сервера домена geo.kaspersky-labs.com находились за пределами РФ. Если фэйковый DNS сервер был бы размещен в РФ, поближе по сетевой задержке к кеширующим серверам основных ISP, то, довольно быстро, большая часть клиентов запрашивала бы информацию именно на нем.
Написал им — откликнулись очень быстро, чуть больше часа и оперативно исправили.
К чему я это пишу? Наверное к тому, что нет идеальных поставщиков ПО, которые не допускают совсем никаких ошибок.
Более чем уверен, что если бы того копнул их поглубже — нашел бы еще что-нибудь. Но не стал этого делать, так как времени тогда (да и сейчас) на это было не найти, а они в свою очередь позабавили тем, что прислали в качестве благодарности футболку, стилизованную под Че Гевару, но с Евгением Касперским в главной роли =)
$dig ns geo.kaspersky.com @ns1.kasperskylabs.net.
;; QUESTION SECTION:
;geo.kaspersky.com. IN NS
;; AUTHORITY SECTION:
geo.kaspersky.com. 3600 IN NS geons6.kaspersky-labs.com.
geo.kaspersky.com. 3600 IN NS geons3.kaspersky-labs.com.
geo.kaspersky.com. 3600 IN NS geons4.kaspersky-labs.com.
geo.kaspersky.com. 3600 IN NS geons2.kaspersky-labs.com.
geo.kaspersky.com. 3600 IN NS geons1.kaspersky-labs.com.
geo.kaspersky.com. 3600 IN NS geons5.kaspersky-kabs.com.
Обратите внимание на последнюю запись. Домен kaspersky-kabs.com был свободен для регистрации. Его можно было зарегистрировать и поднять DNS сервер с именем geons5.kaspersky-kabs.com.
Все авторитативные DNS сервера домена geo.kaspersky-labs.com находились за пределами РФ. Если фэйковый DNS сервер был бы размещен в РФ, поближе по сетевой задержке к кеширующим серверам основных ISP, то, довольно быстро, большая часть клиентов запрашивала бы информацию именно на нем.
Написал им — откликнулись очень быстро, чуть больше часа и оперативно исправили.
К чему я это пишу? Наверное к тому, что нет идеальных поставщиков ПО, которые не допускают совсем никаких ошибок.
Более чем уверен, что если бы того копнул их поглубже — нашел бы еще что-нибудь. Но не стал этого делать, так как времени тогда (да и сейчас) на это было не найти, а они в свою очередь позабавили тем, что прислали в качестве благодарности футболку, стилизованную под Че Гевару, но с Евгением Касперским в главной роли =)
+12
По мотивам той, старой ошибки в DNS у Касперского:
1) Домен kaspersky.com делегирован на авторитативных DNS серверах так и самой Лаборатории Касперского, так и на авторитативных DNS серверах ЗАО «Макомнет». Другими словами, чтобы глобально навредить Касперскому необходимо и достаточно скомпрометировать стороннюю вообщем то организацию. Вроде бы мелочь и даже не ошибка в чистом виде, но выглядит на мой взгляд странно, так как в явном виде оставлен вектор атаки, который можно было закрыть;
2) Домен geo.kaspersky.com делегирован на авторитативных DNS серверах, физически расположенных исключительно за пределами РФ с круговой сетевой задержкой из Москвы от 60 до 140+ миллисекунд. Вроде бы тоже не страшно, но «долго» отвечающие авторитативные DNS сервера повышают вероятность удачной DNS Cache Poisoning атаки против кеширующих DNS серверов российских ISP.
Перечисленное не является ошибками в явном виде, они в некотором виде спорные, больше похожи на паранойю. Но Лаборатория Каперского работает на поле информационной безопасности и учитывая это, мне все же кажется что это ляпы, которых быть не должно. Особенно первый пункт.
1) Домен kaspersky.com делегирован на авторитативных DNS серверах так и самой Лаборатории Касперского, так и на авторитативных DNS серверах ЗАО «Макомнет». Другими словами, чтобы глобально навредить Касперскому необходимо и достаточно скомпрометировать стороннюю вообщем то организацию. Вроде бы мелочь и даже не ошибка в чистом виде, но выглядит на мой взгляд странно, так как в явном виде оставлен вектор атаки, который можно было закрыть;
2) Домен geo.kaspersky.com делегирован на авторитативных DNS серверах, физически расположенных исключительно за пределами РФ с круговой сетевой задержкой из Москвы от 60 до 140+ миллисекунд. Вроде бы тоже не страшно, но «долго» отвечающие авторитативные DNS сервера повышают вероятность удачной DNS Cache Poisoning атаки против кеширующих DNS серверов российских ISP.
Перечисленное не является ошибками в явном виде, они в некотором виде спорные, больше похожи на паранойю. Но Лаборатория Каперского работает на поле информационной безопасности и учитывая это, мне все же кажется что это ляпы, которых быть не должно. Особенно первый пункт.
+4
А все же интересно было бы почитать официальный комментарий о том, как такую банальную ошибку вообще могли допустить. Я просто не представляю, почему никто из десятка или более человек, участвующих в разработке, реализации и тестировании механизма обновлений, в один прекрасный момент не воскликнул «блин, ребята, мы забыли про верификацию!»
0
Мы в своей программе подписали файл аналог drweb32.lst.lzma и принимаем его для обработки только в случае истинности его подписи. Все дальнейшие передачи файлов идёт по http и после распаковки проверяется их хеш на соответствие с подписанным файлом описания, если всё в порядке, то они принимаются для обновления.
0
Выпущено обновление для версии 6.0 — добавлена проверка подписи файлов.
+3
Only those users with full accounts are able to leave comments. Log in, please.
Эксплуатация уязвимости в процедуре обновления DrWeb