Стилер паролей в антивирусном ПО Avira Free Antivirus

    Что если я Вам скажу, что единственной функцией одного из компонентов антивирусного ПО, имеющего доверенную цифровую подпись, является сбор всех Ваших учетных данных сохраненных в популярных Интернет-браузерах? А если я скажу что ему без разницы в чьих интересах их собирать? Наверное подумаете что я брежу. А давайте посмотрим как на самом деле?


    Разбираемся


    Живет себе и здравствует такая антивирусная компания как Avira GmbH & Co. KG. Выпускает различные продукты связанные с информационной безопасностью. В ассортименте даже есть бесплатные продукты для домашнего использования.


    Установим себе интереса ради бесплатную версию, посмотреть что умеет продукт немецких коллег. Пробегаем взглядом по интерфейсу – ничего необычного. Не находим никакого упоминания еще одного из продуктов компании – Avira Password Manager.


    А давайте заглянем в компонент с ничем не привлекающим внимание именем «Avira.PWM.NativeMessaging.exe»? Он скомпилирован для платформы .NET и никак не обфусцирован, поэтому загружаем его в dnSpy и свободно изучаем код программы.


    Программа консольная и она ожидает команд в стандартном потоке ввода. Главная функция при помощи «Read» считывает данные с потока, проверяет формат и передает команду в функцию «ProcessMessage». Та же, в свою очередь, проверяет что переданная команда является "fetchChromePasswords" или "fetchCredentials" (хотя какая разница если дальнейшее поведение одинаковое?) и тогда начинается самое интересное – вызов функции «RetrieveBrowserCredentials». Интересно даже… что может делать функция с таким именем?


    Листинг кода функции ProcessMessage


    Да ничего необычного, просто собирает в один список все учетные записи пользователя, сохраненные им при работе с Интернет-браузерами «Chrome», «Opera» (на базе Chromium), «Firefox» и «Edge» (на базе Chromium) и возвращает данные в виде JSON-объекта.


    Листинг кода функции RetrieveBrowserCredentials


    Ну а затем выводит собранные данные в консоль:


    Снимок экрана командной строки с полученными данными


    Суть проблемы


    • Компонент собирает пользовательские учетные данные;
    • Компонент не верифицирует вызывающую программу (например, по наличию у неё цифровой подписи самого производителя);
    • Компонент имеет «доверенную» цифровую подпись и не вызывает подозрение у других производителей антивирусного ПО;
    • Компонент работает как отдельное приложение.

    IoC


    SHA1: 13c95241e671b98342dba51741fd02621768ecd5.


    По данной проблеме был заведен CVE-2020-12680.


    Об этой проблеме мною 07.04.2020 было направлено письмо в адрес support@avira.com и info@avira.com с полным описанием. Ответных писем, включая от автоматических систем не поступало. Спустя месяц описываемый компонент всё так же распространяется в дистрибутиве Avira Free Antivirus.

    Similar posts

    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More
    Ads

    Comments 58

      +8

      А рядом нашелся компонент который читает консоль и передает все JSON куда не следует?

        0
        В данном случае нет. Но не редкость, когда подписанные приложения известных производителей распространяются вместе с вредоносным ПО. Примеров много: TeamViewer, PuntoSwitcher, некоторые компоненты McAfee. Или те же утилиты от NirSoft, но их почти все производители детектируют как PUA.
        Остается вопрос зачем его включать в поставку без самого менеджера паролей и нельзя ли это было реализовать например в виде DLL, которая при вызове её API проверяла бы цифровую подпись вызывающей программы?
          0
          Предположу, что банальная лень. Был нужный компонент/код. Его и взяли не думая
            +2
            нельзя ли это было реализовать например в виде DLL, которая при вызове её API проверяла бы цифровую подпись вызывающей программы

            Обычно такие проверки обходятся очень легко.
              +1

              ТимВьювер грузит вредоносные ПО?

                +1
                Наоборот: вредоносное ПО грузит ТимВьювер, чтобы управлять зараженной системой без подозрений антивирусов.
            +16
            Большинство антивирусов — самые настоящие вирусы в другом обличье. Это тоже самое что и гопота, одели полицейскую форму и легализовались.
            Ни разу не видел у толковых специалистов антивирусного шлака на рабочей машине, за исключением случаев когда это было навязано политикой компании.
            В самом лучшем случае — антивирус будет просто тормозить систему.
            Для здравомыслящих людей давно есть докер, песочницы, удаленные системы проверки (visrustotal).
              +3
              В самом лучшем случае — антивирус будет просто тормозить систему.

              Так и есть.
                +6
                Ну специалист и вправду может без антивируса. Но не домохозяйка, которая сидит без uBlock, кликает по каждому баннеру, не отличает в выдаче Яндекса рекламные ссылки от результатов поиска и вообще не знает, что такое «расширение», отличая exe-файлы от docx только по цвету иконки.
                  +1
                  Для домохозайки или рабочего с предприятия (которые не выключают ТВ) можно вкрутить в уши что угодно. В том числе и то, что антивирус нужен. Но он им и правда нужен в виде контрацепции.

                  Add: докер, песочница? Это просто смешно.
                    +4
                    VirusTotal Uploader решает 99% всех проблем.
                    Я достаточно редко скачиваю что-то незнакомое из неверифицированных источников.
                    Как правило это — какие-то тулы. Через 15 секунд я знаю сколько человек скачивали конкретно этот бинарник, какой уровень доверия к нему и сколько антивирусов считают, что он безопасен.
                      –1
                      Это доказывает что антивирус всё-таки Вам нужен но только не на вашем пк.
                        +2
                        Я отвечал на комментарий о компьютере разработчика.
                        Когда я хожу по удалёнке на компьютеры родителей или сестры — вопросов в необходимости антивируса у меня не возникает. Пытаюсь приучить их к VirusTotal, но зловреды (как правило рекламщики) периодически просачиваются.
                        На моих компах последний раз вирус был году в 2005-м, а антивирусы больше мешают, выкашивая вполне безобидные вещи, помечаемые многими антивирусами как !NotAVirus.
                      0
                      а ведь есть ещё сверхразумы, которые ставят антивирусы на андройды) по-сути антивирусы это маркетинг и они лет 10 уже неактуальны
                        0
                        Я не специалист в области ИБ, но подозреваю, что Вы правы. Но есть ли какое то подтверждение этому мнению, чтобы обоснованно можно было сказать, что антивирус — зло?
                          +1
                          Из неопровергаемого: антивирусы хотят сканировать веб-трафик на «опасность». С HTTP — понятно, а вот HTTPS — защищённое соединение между приложением (браузер) и сервером.
                          Что делают антивирусы? Устанавливают свой корневой сертификат и вклиниваются между браузером и интернетом. Это чистой воды MITM. Минусом идет то, что все страницы якобы защищены сертификатом %AV%, таким образом браузер своими механизмами подтвердить аутентичность уже не может.
                            0
                            Более того, в истории повального внедрения HTTPS были случаи, когда у пользователей браузер ругался якобы на сертификат сайта, а реально это была просрочка/отзыв сертификата антивируса. Лечилось либо сносом антивируса либо обновлением но позже.

                            PS Ходила такая байка, что касперский антивирус специально грузит систему, чтобы вирусам оставалось меньше ресурсов. :)
                        +14
                        КДПВ

                        image


                        Отсюда
                          +5
                          Известно же, что если вы получаете что-то бесплатно, то вы не клиент, вы – товар. Всё просто.
                          0
                          Этот компонент и в Avira Antivirus Pro есть.
                            +8
                            Ну чем всех людей не устраивает Microsoft Defender ATP?.. Как можно такое до сих пор ставить, если уж хочется антивирус?
                              0
                              ATP и расширенная аналитика с AI на корпоративных машинках немножко из другой сферы, сам занимаюсь этим, но домашнего Defender вполне хватает обычным пользователям. Жалко только что он не помогает от миллиардов рекламного софта и расширений.
                              0
                              По поводу CVE-2020-12680 пишет, что номер зарезервирован, но информации еще нет: cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-12680. Так и должно быть?
                                0

                                Теперь вот так:
                                DISPUTED Avira Free Antivirus through 15.0.2005.1866 allows local users to discover user credentials. The functions of the executable file Avira.PWM.NativeMessaging.exe are aimed at collecting credentials stored in Chrome, Firefox, Opera, and Edge. The executable does not verify the calling program and thus a request such as fetchChromePasswords or fetchCredentials will succeed. NOTE: some third parties have stated that this is "not a vulnerability."

                                +6

                                «Стилер» — это когда слово «вор» слишком длинное и труднопроизносимое?

                                  0

                                  Слово «вор» недостаточно стильное.

                                  +1

                                  Автор, Стилер подразумевает именно кражу разве нет? А доказательств именно кражи паролей нет.

                                    –1
                                    Очень жаль вам об этом говорить, но вы сделали совсем неправильные выводы из того, что нашли. Программа, которую вы обнаружили, обслуживает native messaging для браузерного расширения Avira Password Manager. Если взглянуть на код расширения (а я это недавно как раз делал), то ему эта программа нужна ровно для одной цели: для импорта паролей из браузеров. Так что ничего таинственного здесь нет, никакого сбора паролей или чего-либо подобного — просто импорт данных из одной программы в другую.

                                    Да и «суть проблемы» у вас какая-то странная. Эта программа ведь ничего особенного не делает. Да, любая программа может её вызвать. Но так ведь и любая программа может сделать то же самое. Собрать пароли из профилей браузера активного пользователя ей помешать может только одно: установленный master password.

                                    Так что никакой дыры безопасности здесь нет…
                                      +5
                                      Проблема не в том, что данная программа собирает учетные данные. Проблема в том, что эта программа подписана доверенным сертификатом (из-за этого другие антивирусные продукты будут пропускать ее) и программа не проверяет кому она отдает собранные данные.

                                      Эта программа ведь ничего особенного не делает. Да, любая программа может её вызвать. Но так ведь и любая программа может сделать то же самое.

                                      Давайте тогда сравним две программы:
                                      1) WebBrowserPassView от NirSoft
                                      www.virustotal.com/gui/file/c974d6d712fa92803f17ee749633ee76c6a80e2173e32bf6f9b645e402d20050/detection
                                      2) Утилита из статьи
                                      www.virustotal.com/gui/file/564cec65551eefb7371a8be059895c74b80553e4294d4fb661e340d575285417/detection

                                        0
                                        Так что никакой дыры безопасности здесь нет…

                                        А зачем антивирусу импортировать какие-то пароли?
                                          +2
                                          Я же написал — не сам антивирус, а его менеджер паролей, Avira Password Manager.
                                            +1
                                            Хорошо, где в описании к описываемому продукту есть упоминание модуля «Avira Password Manager»? Или где о нем есть упоминание в интерфейсе?
                                            www.avira.com/ru/free-antivirus
                                              0
                                              Вот здесь расписаны разные компоненты платного продукта, включая и менеджер паролей: www.avira.com/en/internet-security

                                              Не знаю, является ли менеджер паролей непосредственно частью продукта Avira Free Security тоже, но его точно можно установить дополнительно с www.avira.com/en/password-manager.
                                                0
                                                Про платные речи в статье нет. И про Avira Free Security тоже.
                                                Лично я вижу на сайте два отдельных продукта Avira Free Security (https://www.avira.com/en/free-security) и Avira Free Antivirus (https://www.avira.com/en/free-antivirus).
                                                  0
                                                  Да, я перепутал. Хорошо, Avira Free Antivirus. В любом случае — даже если менеджер паролей не является частью продукта, пользователь может его добавить (только само расширение, бинарный код там установить нельзя). Поэтому и есть поддержка для него.

                                                  Но ведь для вашей аргументации абсолютно неважно, есть ли эта компонента во всех продуктах или только в платных. Не так ли?
                                                    0
                                                    В смысле, бинарный код установить нельзя, а как тогда добавлять менеджер, не онлайн же?
                                                      0
                                                      Это расширение для браузера, устанавливается из Chrome Web Store или Mozilla Add-ons. Это только JavaScript-код, работающий в браузере, внешние программы таким образом установить нельзя.
                                              +1
                                              Зачем антивирусу менеджер паролей?
                                                0
                                                Ну, может потому что менеджер паролей нужен для безопасного их хранения, а антивирус — тоже нужен для безопасности? Потому что это проги из одной группы и логично предлагать с антивирусом еще и менеджер паролей?
                                                  +1
                                                  А менеджер паролей в браузере (во всех браузерах) небезопасен получается?
                                                  Собсно, у меня претензия ровно одна: если мне вздумалось установить программу менеджер паролей, я осознаю, что существующий менеджер меня чем-то не устраивает. Если же я получаю менеджер паролей в довесок к чему-то, это странно. Если он начинает работать вместо существующего — я удивлюсь очень. Если он будет работать вместе с существующим — при чем тут безопасность? Если он лежит и пока никак себя не проявляет — внутренний параноик начинает беспокоиться.
                                                    0
                                                    Да, менеджер паролей браузера не безопасен. Что собственно и демонстрирует парсинг паролей скриптом Авиры. У них конечно не красиво получилось и все внутренние параноики хором кричат «ну вот, мы же говорили!». Однако простого разгильдяйства исключать тож нельзя. И пока нет информации, что сам антивирь юзает скрипт именно для кражи, версии параноиков мне кажутся сущностями, которые расплодили без необходимости.
                                                      0
                                                      Он это не демонстрирует. Если установить master password (а это желательно для любого менеджера паролей), то никакого парсинга не будет.
                                                      0
                                                      Да, менеджер паролей в браузере — вещь абсолютно базовая. Существует, к примеру, вопрос локальной защиты паролей. Firefox позволяет установить master password, но пользователь должен думать об этом сам. Плюс, реализация не оптимальная (вроде недавно наконец исправили). В Chrome такой возможности, насколько я знаю, вообще нет.

                                                      К этому добавим синхронизацию паролей между несколькими приборами. Тут тоже были серьезные проблемы. Chrome их поправил, но установка пароля все еще не обязательная. У Firefox проблемы были менее серьезные, но здесь прогресса с тех пор не было.

                                                      Конечно, не у всех производителей антивирусов получается лучше. У Касперского, к примеру — вообще катастрофа. Но у Avira менеджер паролей вполне неплохой.
                                                        0
                                                        Да не так всё. Тут все так же как с закладками в браузерах. У вас есть встроенный менеджер паролей в браузере, так? Потом Вы устанавливайте какую-то секьюрную прогу, в которой реализован собственный менеджер паролей. И в этот момент эта утилита по идее должна вас спросить, импортировать ли ей пароли из браузера, потом из еще какой другой проги.
                                                        Так же с закладками в браузере, я синхро6изирую закладки браузеров, ибо приходится работать в нескольких.
                                                        Вот тут и есть проблема, что как я понимаю, авира не спрашивает, а тихо импортирует, да еще и может отдать их по запросу другой(третьей) програме, которая может оказаться вредной.
                                                      0
                                                      Антивирусом в наше время уже никого не удивишь, деньги за него никто платить не станет. Поэтому все производители тщательно стараются привлечь клиентов дополнительными функциями, в частности касающимися онлайн-защиты. Менеджер паролей — одна из таких функций, довольно распространенная. В принципе, хороший менеджер паролей действительно улучшает безопасность (позволяет использовать уникальный и сложный пароль для каждого сайта). Я посмотрел свои записки насчет Avira Password Manager (дело было в прошлом году) — дыр безопасности я в нем не обнаружил, он сделан в принципе хорошо, хотя и есть несколько сомнительных моментов.
                                                    0
                                                    Например, для того, чтобы проверить их по всяким базам утечек и рекомендовать сменить. Хотя с реализацией этой функции надо быть ну очень осторожным…
                                                  –2
                                                  Зачем переживать о каком-то антивирусе который может украсть персональные данные сидя на винде?
                                                    0
                                                    Чаще всего, неопытные пользователи не являются инициаторами установки таких ПО, точнее делают это не намеренно.
                                                      +4
                                                      В чем уязвимость? Прога по открытым АПИ берет пароли и собирает их в ДжиСон? Так я могу это и напрямую сделать… Больше напоминает попытку дешевого пиара. Автор — вы не нашли уязвимость. ^ _ ^
                                                        0
                                                        Как уже писал выше, уязвимость в том, что программа с доверенной подписью и возвращает собранные данные любому желающему. Данные можно было безопасно передавать в хост-процесс антивируса, а не кидать их чистым текстом в вывод.

                                                        Сделайте напрямую, вопросов нет. Чуть выше привел сравнительную ссылку на отчет VT по программе с аналогичным функционалом. Чем они хуже, что их метит половина вендоров?
                                                          +2
                                                          Это не уязвимость — эти данные и так доступны через апи. она их куда-то отсылает? нет.
                                                            0
                                                            Что тогда скажете про mimikatz?
                                                            Любые данные доступны через API, не так ли? Я с таким же успехом могу при помощи ReadProcessMemory считать память программы обслуживающей POS-терминал и взять оттуда номер карты. Через API же.
                                                              0
                                                              еще раз. Если я могу обычными вызовами / через простое по получить инфу — это не уязвимость. Вернее уязвимость. БРАУЗЕРОВ. Но никак не софта. Эдак вы договоритесь до того, что у вас блокнот уязвимость или консоль.
                                                                0
                                                                Думаю я понял Вашу точку зрения. Просто потенциально нежелательная программа (PUA)?
                                                                  +1
                                                                  Если вы ставите галочку «сохранять пароли» — то говорить о безопасности уже не приходится. Эти пароли уже скомпроментированы. вопрос знаний. Я много чего интересного могу например из регедита получить, а еще больше из powershell — это делает их вредоносами?
                                                                    0

                                                                    Вот этот вот "получающий" код для регедита и powershell тоже будет помечен всеми антивирусами как подозрительное ПО.


                                                                    А в примере автора, можно запаковать подписанный, не детектящийся .exe из комплекта авиры со своим вредоносом, который никаких подозрительных вызовов API не содержит. А пароли получает через эту тулзу.


                                                                    В этом автор и подразумевает разницу: потенциал по обходу антивирусов.
                                                                    Антивирусы, в данном случае, превентивно реагируют на подозрительные действия, а не ждут 100% доказательства вины: например, антивирусы будут ругаться на изменение файла hosts, хотя не факт, что программа его меняющая — вредонос. Так же антивирусы ругаются и на получение паролей из браузера. Хотя не факт, что пароли эти отправляются злоумышленникам.


                                                                    Но в случае с бинарником из статьи, антивирусы не ругаются просто потому что этот файл лежит в комплекте с одним из них и считается доверенным :)

                                                            0
                                                            А давайте зайдем с другой стороны: штатное получение паролей из браузера юзера при запуске из под этого юзера без повышения привилегий (UAC) требует какой-то авторизации?
                                                            Это можно было бы назвать уязвимостью, если бы запущенный под юзером процесс обращался например к службе, работающей с более высокими правами и получал от неё данные, которые без повышения привилегий недоступны. Такое как раз вполне себе случается, и это вполне себе дырка.
                                                            А так это всего лишь прокси-обертка, не более.
                                                          0
                                                          del. Промахнулся.

                                                          Only users with full accounts can post comments. Log in, please.