Demonstro de atako kontraŭ kodredaktiloj, kiu kondukas al dosiero likoj dum malfermado de fontkodoj

Metodo ataki la VSCode-kodredaktilon estis pruvita, permesante la translokigon de arbitraj dosieroj ene de la rajtoj de la nuna uzanto dum malfermado de speciale dizajnita fontkodo en la redaktilo. En ĉi tiu demo, malfermante Rust-kodon kiu uzas proceduran makroon, ĝi establas konekton por gastigi 127.0.0.1:8080 kaj sendas la enhavon de la dosiero "~/.ssh/id_rsa" kun la SSH-ŝlosiloj de la uzanto.

Por kompromiti, sufiĉas simple malfermi la dosieron kun la kodo, sen fari aliajn agojn kun la projekto. Por ke la ekzemplo funkciu, VSCode postulas la rust-analizilan kromprogramon (ligado aldone al la norma rustc-kompililo) kaj la ĉeeston de iloj en la sistemo por labori kun kodo en la Rust-lingvo. La problemo estas rilatita al la vastiĝo de proceduraj makrooj dum komenca kodanalizo. Simila efiko ankaŭ povas esti atingita je kompilo tempo uzante la "kargo konstruo" komando.

Oni rimarkas, ke la problemo povas influi aliajn kodredaktistojn kaj programlingvojn. VSCode kaj rust-analizi estas uzataj nur por montri la atakvektoron. En teorio, ĉiu kodredaktilo, kiu elmontras procedurajn makroojn, kiuj ebligas al vi krei sintaksajn etendaĵojn kaj ekzekuti kodon je kompilo, estas sentema al la problemo. La esploristo komence esploris la eblecon de malicaj agoj okazantaj dum kodkompilo, sed malkovris ke proceduraj makrooj estis vastigitaj kiam fontkodo estis prilaborita en kodredaktiloj. La atako verŝajne povas influi aliajn programlingvojn; ekzemple, en Java, komentada pretigo povas esti manipulita en simila maniero.



fonto: opennet.ru

Aldoni komenton