Дефект в кода на Microsoft Visual Studio позволява на разширенията да крадат пароли

Редакторът на код и средата за разработка Visual Studio Code (VS Code) на Microsoft съдържа недостатък, който позволява на злонамерени разширения да извличат токени за удостоверяване, съхранявани в мениджъри на удостоверения за Windows, Linux и macOS.

Тези токени се използват за интегриране с различни услуги и API на трети страни, като Git, GitHub и други платформи за кодиране, така че кражбата им може да има значителни последици за сигурността на данните на компрометираната организация, като може да доведе до неоторизиран достъп до системата, нарушаване на сигурността на данните и др.

Недостатъкът е открит от изследователи на Cycode, които са го докладвали на Microsoft заедно с разработената от тях работеща концепция за доказване на съществуването (PoC). Въпреки това технологичният гигант реши да не отстранява проблема, тъй като не се очаква разширенията да бъдат изолирани от останалата част от средата.

Кражба на тайни с разширения

Проблемът със сигурността, открит от Cycode, се дължи на липсата на изолация на удостоверителните знаци в „Secret Storage“ на VS Code – API, който позволява на разширенията да съхраняват удостоверителни знаци в операционната система.

Това се прави с помощта на Keytar, обвивката на VS Code за комуникация с мениджъра на удостоверенията на Windows (в Windows), ключодържателя (в macOS) или ключодържателя (за Linux).

Това означава, че всяко разширение, работещо във VS Code, дори злонамерено, може да получи достъп до тайното хранилище и да злоупотреби с Keytar, за да извлече всички съхранени токени.

Изследователят на Cycode Алекс Илгаев заяви, че освен вградената автентикация на GitHub и Microsoft, всички запазени удостоверения от използването на разширения на трети страни.

„Освен вградената автентикация на Github/Microsoft, всички запазени токени във VSCode идват от разширения“, каза Илгаев . „Те са дефинирани или от официални разширения (от Microsoft), като Git, Azure, Docker/Kubernetes и т.н., или от разширения на трети страни, като CircleCI, GitLab, AWS.“

 

След като откриват проблема, изследователите на Cycode започват да експериментират, като създават злонамерено разширение за кражба на токени за CircleCI – популярна платформа за кодиране с разширения VS Code. Те са направили това, като са модифицирали разширението на CircleCI, за да изпълни команда, която да разкрие защитения му токен и дори да го изпрати направо на сървъра на изследователя.

Постепенно те разработили по-универсален метод за атака, за да извлекат тези тайни, без да се намесват в кода на целевото разширение.

Ключът към този процес беше откриването на факта, че всяко разширение на VS Code е оторизирано за достъп до ключодържателя, тъй като се изпълнява от приложение, на което операционната система вече е предоставила достъп до ключодържателя.

„Разработихме доказателство за концепцията за злонамерено разширение, което успешно извличаше токени не само от други разширения, но и от вградената във VS Code функционалност за влизане и синхронизиране на акаунти в GitHub и Microsoft, представяйки атака „кражба на токени“.“ – заявиха от Cycode.
След това изтеглените токени трябваше да бъдат декриптирани и Cycode установи, че алгоритъмът, използван за криптиране на токените, е AES-256-GCM, който обикновено е безопасен. Въпреки това ключът, използван за криптиране на токените, е получен от пътя на текущия изпълним файл и идентификатора на машината, което улеснява пресъздаването на ключа.

Извлечените токени бяха декриптирани от персонализиран JS скрипт, стартиран в изпълнимия файл Electron на VS Code, който дешифрира и отпечатва всички пароли на локално инсталираните разширения.

Вторият недостатък, открит от изследователите на Cycode, се състои в това, че функцията „getFullKey“ извлича тайни по зададен „extensionId“, който се получава от името и издателя на разширението.

Този проблем позволява на всеки да модифицира тези полета и да измами VS Code да му предостави достъп до защитените токени на друго разширение.

Cycode тества това с помощта на PoC разширение, което отново имитира CircleCI; те обаче отбелязват, че възпроизвеждането на всяко друго разширение и получаването на достъп до тайните му би било тривиално.

Разкриване и (не)поправяне

От Cycode заявяват, че са разкрили проблема пред Microsoft преди два месеца, като дори са демонстрирали своето PoC разширение и способността му да краде съхранени токени за разширения.

Независимо от това инженерите на Microsoft не са сметнали това за проблем на сигурността и са решили да запазят съществуващия дизайн на рамката за управление на съхранението на тайните на VS Code.

Инфографики и базова информация: Cycode

 

 

e-security.bg

Подобни

Рансъмуер атаките нараснаха с 50% през 2025 г.
10.03.2026
ransomware3
Израелски потребители стават жертви на фалшива версия на Red Alert
9.03.2026
thedigitalartist-dont-panic-1067044_640
900 000 потребители са инсталирали зловредни ИИ разширения за браузър
8.03.2026
adrozek-malware-firefox-chrome-yandex-edge-browser-1
Китайска хакерска група атакува телекоми
8.03.2026
china
Фалшиви инсталатори на OpenClaw в GitHub
8.03.2026
GitHub___headpic (1)
JavaScript „червей“ предизвика инцидент със сигурността в Wikimedia
8.03.2026
Wikipedia

Споделете

Facebook
LinkedIn

Бюлетин

С нашия бюлетин ще бъдеш сред първите, които научават за нови заплахи, практични решения и добри практики. Напълно безплатно и с грижа за твоята сигурност.

Популярни

Изземване на Zamunda, Arena и други торент сайтове
30.01.2026
seizure
Българските торент сайтове продължават да изчезват
27.02.2026
pirate-flag-7541041_640
Измамническите сайтове в България: как да ги разпознаем, проверим и защитим себе си
6.10.2025
bulgaria3
Социалните мрежи и младите - между канализиране на общественото мнение и манипулация
7.12.2025
spasov

Бъди в крак с киберсигурността

Абонирай се за нашия бюлетин и получавай директно в пощата си най-важните новини, експертни съвети и практически насоки за киберхигиена и защита онлайн. Кратко, полезно и без спам.