Buod ng Ehekutibo: Madaling Magagawang RCE sa Antas ng Host ng mga Hindi Nakikitang Banta ang isang Chrome Extension

Simula nang ipakilala ang mga ito, ang mga extension ng browser ay itinuring na mga magaan na tool sa produktibidad — mga hindi nakakapinsalang add-on na nasa pagitan ng mga bookmark at mga setting. Kaswal lamang ang mga ito na ini-install, tahimik na ina-update, at bihirang sinusuri kapag naging bahagi na ng pang-araw-araw na daloy ng trabaho ng isang user.

Bukod dito, ang mga extension ng browser ay kadalasang itinuturing na mga mababang antas ng panganib sa seguridad dahil ang mga ito ay lubos na nakahiwalay mula sa pinagbabatayang sistema ng browser, at gumagana sa loob ng isang lubos na sandbox na kapaligiran sa loob ng mga limitasyon ng web browser.

Ito ay isang lumang palagay, dahil ipinapakita ng pananaliksik na ito kung paano kahit ang isang extension na walang pahintulot ay maaaring makaiwas sa browser sandboxing at humantong sa pag-install ng malware nang direkta sa computer.

Natuklasan ng mga mananaliksik ng LayerX kung paano anumang extension ng browser, kahit isa nang walang anumang pahintulot sa pag-access kahit kailan, maaaring ginagamit sa pag-install ng malware sa target na host. Ang kailangan lang gawin ng isang attacker ay idagdag isang hindi nakikitang iskrip sa isang lehitimong pag-download, na isinasagawa kapag pinatakbo ang pag-download. Nagreresulta ito sa pagkahawa ng mga user sa kanilang sarili ng malware para sa remote code execution, nang hindi napapansin. 

Dahil ang vector ng pagsasamantalang ito ay nangangailangan ng walang mga espesyal na pahintulot sa pamamagitan ng mga extension, maaari itong gamitin ng anumang malisyosong extension, paglalantad sa halos bawat gumagamit ng extension sa pagsasamantala.

Ang Blind Spot na Sinimulan Natin

Ang mga extension ng Chrome ay gumagana sa ilalim ng isang hindi napapansing modelo ng seguridad. Ang mga content script, na naka-enable bilang default, ay idinisenyo upang gawin nang mahusay ang isang bagay: ang pag-access at pagbabago ng mga web page. Hindi ito isang bug o maling pag-configure, sa halip, ito ang pangunahing bahagi ng modus operandi ng mga extension. Anumang extension na epektibong tumatakbo sa isang pahina ay may parehong antas ng pag-access gaya ng sariling JavaScript ng pahina.

Sa unang tingin, tila makatwiran ito. Kailangang baguhin ng mga extension ang mga pahina upang magdagdag ng mga tampok, magdagdag ng mga elemento ng UI, o mapahusay ang mga daloy ng trabaho. Sa katunayan, ito ang buong layunin ng kanilang disenyo.

Gayunpaman, ang parehong kakayahang iyon ay may isang babala. Kung ang isang extension ay kayang gawin ang anumang bagay na kayang gawin ng isang website, ang isang malisyosong extension ay maaaring gawing isang lugar ng pag-atake ang anumang lehitimong website, nang hindi nakikita at sa malawakang saklaw. Ito ang panimulang punto ng aming imbestigasyon.

Kapag ang Bawat Pag-download ay Nagiging Isang Vector ng Pag-atake

Nagtanong kami ng isang simpleng tanong: ano ang pinakamahalagang aksyon na maaaring gawin ng isang malisyosong aktor mula sa loob ng browser nang hindi humihingi ng mga pahintulot na magdudulot ng hinala?

Ang sagot ay, siyempre, pagpapatupad ng code.

Sa pamamagitan ng pag-abuso sa walang limitasyong katangian ng mga script ng nilalaman, bumuo kami ng isang extension na tahimik na nagbabago sa bawat pag-download ng file na sinimulan mula sa anumang website. Iki-click ng user ang isang lehitimong link ng pag-download sa isang pinagkakatiwalaang domain, gamit ang isang browser na kanilang pinagkakatiwalaan. Nagda-download ang file nang eksakto gaya ng inaasahan.

Pero hindi lang iyon ang nangyayari.

Nang hindi sinisira ang orihinal na aplikasyon, nang hindi nagti-trigger ng mga babala, at nang hindi nangangailangan ng anumang karagdagang pahintulot, ang extension ay nagdaragdag ng attacker-controlled code sa bawat na-download na executable. Ang orihinal na programa ay tumatakbo pa rin nang normal, at nakikita ng user kung ano mismo ang inaasahan nila. Mula doon, tapos na ang laro.



Sa aming demonstrasyon, binubuksan lang ng payload ang calculator app bilang isang hindi nakakapinsalang visual indicator. Sa totoong sitwasyon, maaari nitong paganahin ang persistence, lateral movement, data exfiltration, o ganap na remote control ng makina.

Bagama't ang mga extension ng browser ay sinasabing nakahiwalay mula sa pinagbabatayang file system at naka-sandbox ng browser, ang pamamaraang ito ay nagpapahintulot sa extension na lumabas sa sandbox. Sa puntong ito, ang browser ay hindi na nagsisilbing hangganan. Ang extension ay epektibong nagiging isang Remote Access Trojan.

Video ng POC:

Bakit Ito Lalo na Mapanganib

Ang nakakabahala sa pag-atakeng ito ay ang pagiging hindi nakikita nito:

  • Hindi ito nangangailangan ng mga kahina-hinalang pahintulot.
  • Hindi ito nagti-trigger ng mga babala sa browser.
  • Hindi nito binabago ang orihinal na website sa anumang paraang nakikita ng tao.
  • Mukhang normal lang sa gumagamit ang mga pag-download.

Anumang extension, kabilang ang mga dating lehitimong extension, ay maaaring magdulot ng ganitong pag-uugali sa isang update, at ang mga user ay walang maaasahang senyales na may nagbago.

Ang pag-atakeng ito ay hindi umaasa sa phishing, o kalituhan ng gumagamit. Sinasamantala nito ang isang mahinang link sa kadena ng tiwala ng browser. Nagtitiwala ang mga gumagamit sa kanilang browser, at nagtitiwala sila sa ilang mga website, ngunit kung hindi nila mapagkakatiwalaan ang kanilang mga extension, hindi mabisang mapoprotektahan ng browser o ng website ang gumagamit. Ang pag-install ng isang hindi mapagkakatiwalaang extension ay katumbas ng pag-install ng malware.

Bukod dito, ang pag-atakeng ito ay hindi matutukoy ng proxy/VPN-based tooling, dahil ang domain na na-access ay purong lehitimo, at walang remote server na kinokontak upang kunin ang malisyosong code. Bukod pa rito, ang pag-atake ay ganap na cross-browser at maaaring makaapekto sa anumang browser na nakabase sa Chromium o Mozilla.

Pagbubunyag at Tugon ng Industriya

Iniulat namin ang aming mga natuklasan sa Google at Mozilla sa pamamagitan ng kanilang mga programa sa pagsisiwalat ng kahinaan, sa ilalim ng mga pamamaraang 'responsableng pagsisiwalat'.

Sinabi ng Google na "Ang mga pag-atake sa social engineering ay hindi sakop ng modelo ng banta ng Chrome." 

Sumagot si Mozilla na "Kapag nagbigay ka ng extension ng access sa lahat ng website, maaari nitong baguhin ang nilalaman ng mga website, kabilang ang pagpapalit ng mga destinasyon ng mga link."

Parehong tumpak ang parehong pahayag sa teknikal na aspeto, ngunit itinatampok din ng mga ito ang pangunahing isyu na naglalayong bigyang-linaw ng pananaliksik na ito: ang isang extension, sa pamamagitan lamang ng pag-download nito, ay nagkakaloob ng napakalaking di-tuwirang kapangyarihan. 

Ang kasalukuyang modelo ng seguridad ng extension ay isa na hindi maayos na nagpapaliwanag sa user ng epekto ng isang hindi pinagkakatiwalaang extension sa kanilang karanasan sa pag-browse, at sa seguridad ng kanilang buong sistema.

Maraming paraan kung paano maaaring gamitin ang mga extension upang malampasan ang tiwala ng mga gumagamit.

Ang browser ay tahimik na naging pangunahing kapaligiran sa pagpapatupad, isang channel ng pamamahagi, at isang control plane, habang nananatiling halos hindi sinusubaybayan ng mga tradisyunal na tool sa seguridad. Ang mga extension ay nasa sangandaan ng tiwala ng gumagamit at epekto sa antas ng sistema.

Paano Mapoprotektahan ng mga Gumagamit at Negosyo ang Kanilang Sarili

Ang ganitong uri ng exploit ay nagpapakita ng mga limitasyon ng tradisyonal na pamamaraan ng seguridad ng extension, na batay sa panlabas na pagsusuri ng mga parameter ng extension, batay sa mga pahintulot, reputasyon, atbp. Dahil walang anumang pahintulot, malamang na makakakuha ito ng mababang marka ng panganib. 

Sa pamamagitan lamang ng pagsubaybay sa aktwal na pag-uugali ng extension maaaring mabunyag ang malisyosong layunin nito. Nangangahulugan ito na ang mga gumagamit at organisasyon ay dapat lumipat mula sa static na pagsusuri ng mga extension patungo sa aktibo at nakabatay sa pag-uugali na pagsusuri, tulad ng ginagawa nila para sa malware.


Kredito: Roy Paz at Aviad Gispan, na nag-ambag sa pananaliksik na ito.