Հարձակում առցանց կոմպիլացիոն համակարգերի վրա՝ վերնագրի ֆայլերի մանիպուլյացիայի միջոցով

Նախագծի հեղինակ Հաննո Բոք fuzzing-project.org, ուշադրություն հրավիրեց ինտերակտիվ կոմպիլյացիոն ինտերֆեյսների խոցելիության մասին, որոնք թույլ են տալիս C լեզվով արտաքին կոդի մշակումը։ «#include» հրահանգում կամայական ուղի նշելիս կոմպիլյացիայի սխալը ներառում է ֆայլի բովանդակությունը, որը չի կարող կազմվել:

Օրինակ՝ առցանց ծառայություններից մեկի կոդի մեջ փոխարինելով «#include »-ը, արդյունքը կարողացավ ստանալ /etc/shadow ֆայլից արմատային օգտվողի գաղտնաբառի հեշ, որը նաև ցույց է տալիս, որ վեբ ծառայությունը աշխատում է արմատային իրավունքներով և կատարում է կոմպիլյացիայի հրամանները որպես root (հնարավոր է, որ կոմպիլյացիայի ժամանակ օգտագործվել է մեկուսացված կոնտեյներ, բայց կոնտեյների մեջ որպես root գործարկելը նույնպես խնդիր է): Այն խնդրահարույց ծառայությունը, որում հնարավոր է եղել վերարտադրել խնդիրը, դեռ չի գովազդվում։ Կեղծ FS /proc ֆայլերը բացելու փորձերը անհաջող էին, քանի որ GCC-ն դրանք վերաբերվում է որպես դատարկ ֆայլեր, բայց /sys-ից ֆայլեր բացելը աշխատում է:

Source: opennet.ru

Добавить комментарий