Կոդերի խմբագրիչների վրա հարձակման ցուցադրում, որը հանգեցնում է ֆայլերի արտահոսքի սկզբնական կոդերը բացելիս

Ցուցադրվել է VSCode կոդի խմբագրիչի վրա հարձակվելու մեթոդ, որը թույլ է տալիս կամայական ֆայլեր փոխանցել ընթացիկ օգտատիրոջ իրավունքների շրջանակում՝ խմբագրում հատուկ մշակված սկզբնական կոդը բացելիս: Այս ցուցադրությունում Rust կոդը բացելիս, որն օգտագործում է ընթացակարգային մակրո, այն կապ է հաստատում 127.0.0.1:8080 հոսթի հետ և ուղարկում է «~/.ssh/id_rsa» ֆայլի բովանդակությունը օգտվողի SSH ստեղներով:

Փոխզիջման համար բավական է պարզապես բացել ֆայլը կոդով՝ առանց նախագծի հետ որևէ այլ գործողություն կատարելու։ Որպեսզի օրինակն աշխատի, VSCode-ը պահանջում է Rust-analyzer plugin (պարտադիր rustc-ի ստանդարտ կոմպիլյատորի վերևում) և համակարգում գործիքների առկայությունը Rust լեզվով կոդի հետ աշխատելու համար: Խնդիրը կապված է նախնական ծածկագրի վերլուծության ընթացքում ընթացակարգային մակրոների ընդլայնման հետ։ Նմանատիպ էֆեկտ կարելի է ձեռք բերել նաև կոմպիլյացիայի ժամանակ՝ օգտագործելով «cargo build» հրամանը։

Նշվում է, որ խնդիրը կարող է ազդել այլ կոդերի խմբագրիչների և ծրագրավորման լեզուների վրա։ VSCode-ը և Rust-analyze-ն օգտագործվում են միայն հարձակման վեկտորը ցուցադրելու համար: Տեսականորեն, ցանկացած կոդի խմբագիր, որը բացահայտում է ընթացակարգային մակրոները, որոնք թույլ են տալիս ստեղծել շարահյուսական ընդարձակումներ և կատարել կոդը կոմպիլյացիայի ժամանակ, ենթակա է խնդրին: Հետազոտողն ի սկզբանե ուսումնասիրել է կոդերի կազմման ժամանակ վնասակար գործողությունների հավանականությունը, սակայն պարզել է, որ ընթացակարգային մակրոները ընդլայնվել են, երբ սկզբնական կոդը մշակվել է կոդերի խմբագրիչներում: Հարձակումը, հավանաբար, կարող է ազդել ծրագրավորման այլ լեզուների վրա, օրինակ, Java-ում ծանոթագրությունների մշակումը կարող է կիրառվել նույն կերպ.

Խաղալ տեսանյութ


Source: opennet.ru
Գնեք հուսալի հոստինգ DDoS պաշտպանությամբ կայքերի, VPS VDS սերվերների համար 🔥 Գնեք հուսալի կայքերի հոսթինգ՝ DDoS պաշտպանությամբ, VPS VDS սերվերներով | ProHoster