Категория > Новости > Denonia. Как работает первый вредонос, нацеленный на AWS Lambda - «Новости»

Denonia. Как работает первый вредонос, нацеленный на AWS Lambda - «Новости»


22-06-2022, 00:01. Автор: Натан
об­наружи­ли вре­донос, ата­кующий акка­унты AWS Lambda. Он получил имя Denonia — по наз­ванию того домена, с которым обме­нива­ется информа­цией. Вре­донос исполь­зует новей­шие при­емы раз­решения адре­сов для вза­имо­дей­ствия с C2, что поз­воля­ет ему усколь­зать от типич­ных механиз­мов обна­руже­ния.

Denonia в целом безоби­ден — он все­го‑нав­сего гоня­ет прог­рамму для май­нин­га крип­товалю­ты. Рас­простра­нен он пока, по дан­ным Cado Labs, тоже не слиш­ком широко. Одна­ко Denonia демонс­три­рует потен­циал экс­плу­ата­ции окру­жений Lambda, резуль­тат которой может ока­зать­ся и более гнус­ным.


 

Технический анализ


Впер­вые обра­зец Denonia был най­ден на ресур­се с таким хешем SHA-256:


a31ae5b7968056d8d99b1b720a66a9a1aeee3637b97050d95d96ef3a265cbbca


Хо­тя в име­ни фай­ла при­сутс­тву­ет python, на самом деле этот вре­донос написан на Go и, по‑видимо­му, содер­жит кас­томизи­рован­ный вари­ант май­нин­гового соф­та XMRig, а так­же обла­дает дру­гими невы­ясненны­ми фун­кци­ями. Вот что показа­ло более тща­тель­ное иссле­дова­ние.


Во вре­мя динами­чес­кого ана­лиза вре­донос быс­тро прек­ратил выпол­нять­ся и выдал в лог сле­дующую ошиб­ку.


Та­кие перемен­ные окру­жений спе­цифич­ны для «лямбд» — поэто­му отчасти поз­воля­ют судить о показа­телях той сре­ды, для выпол­нения в которой пред­назна­чен этот вирус. Даль­нейший ана­лиз бинар­ника выявил, что это 64-раз­рядный исполня­емый файл ELF для архи­тек­туры x86-64. Вре­донос так­же исполь­зует ряд сто­рон­них биб­лиотек, сре­ди которых есть и AWS Lambda for Go. Она пред­назна­чена для выпол­нения в окру­жени­ях AWS Lambda.


 

Вредоносы на Go


Вре­донос­ное ПО, написан­ное на язы­ке Go, стре­митель­но на­бира­ет популяр­ность. Этот язык прив­лека­ет раз­работ­чиков вре­доно­сов сра­зу по нес­коль­ким при­чинам — в том чис­ле потому, что на нем чрез­вычай­но прос­то писать кросс‑плат­формен­ные исполня­емые фай­лы. К тому же прог­раммы на Go ста­тичес­ки слин­кованы, что облегча­ет деп­лой.


Ви­рус­ным ана­лити­кам, стол­кнув­шимся с мал­варью на Go, нуж­но знать о некото­рых осо­бен­ностях. Из‑за ста­тичес­кой свя­зан­ности бинар­ники получа­ются боль­шими, что зат­рудня­ет ста­тичес­кий ана­лиз. Кро­ме того, Go сво­еоб­разно обра­щает­ся со стро­ками. Они не завер­шают­ся нулем — в отли­чие от того, как при­нято в С‑образных язы­ках. Стро­ки здесь пред­став­ляют собой боль­шой блоб и струк­туру с ука­зате­лем на стро­ку в бло­бе и целым чис­лом, которое озна­чает дли­ну стро­ки. Это может запутать некото­рые инс­тру­мен­ты ста­тичес­кого ана­лиза.


 

Анализ лямбда-вредоносов


У ана­лиза бинар­ника, пред­назна­чен­ного для запус­ка на AWS Lambda, тоже есть ряд осо­бен­ностей.


Denonia явно спро­екти­рова­на для выпол­нения в лям­бда‑окру­жени­ях, но мы пока не зна­ем, как имен­но она раз­верты­вает­ся. Воз­можно, от нее все­го‑то и тре­бует­ся ском­про­мети­ровать дос­туп к AWS и сек­ретные клю­чи, пос­ле чего зло­умыш­ленник вруч­ную раз­вернет ее в ском­про­мети­рован­ном лям­бда‑окру­жении, как уже делали с более прос­тыми скрип­тами на Python.


Инс­тру­мент redress поз­волил выявить некото­рые инте­рес­ные сто­рон­ние биб­лиоте­ки Go, встра­иваемые этим вре­доно­сом. По ним мож­но час­тично вывес­ти, как имен­но он фун­кци­они­рует:




  • lambda — биб­лиоте­ки, образцы и инс­тру­мен­ты для написа­ния лям­бда‑фун­кций на Go;


  • lambdacontext — вспо­мога­тель­ные фун­кции для извле­чения кон­текс­тной информа­ции из зап­роса, акти­виру­юще­го лям­бда‑фун­кцию;


  • aws — общий инс­тру­мен­тарий AWS SDK для язы­ка Go;


  • doh-go — кли­ент DNS over HTTPS на Go, под­держи­вает такие про­вай­деры, как Quad9, Cloudflare и про­чие.



Перейти обратно к новости