BLOG YAZILARIMIZ

April 12, 2020 / blog yazısı

Alternate Data Streams (ADS) Yeteneğini Kullanan Zararlı Javascript Koduyla Bir Oltalama Saldırısı Senaryosu

Siber dünyanın vahşi cangıllarında çok ilginç oltalama saldırılarına tanık oluyoruz. Bunların bir tanesi, karmaşıklaştırılmış (obfuscated) Javascript kodu ile uzaktaki bir Komuta&Kontrol bilgisayarına bağlanıp oradan çok daha etkili bir zararlı yazılımı indirmeyi amaçlıyordu.

Benzer bir mantıkla, bu çalışmamızda biz de bir zararlı yazılımı uzaktaki bir KK bilgisayarına bağlanamaya gerek olmadan, doğrudan bir text dosyasının içinden çekerek çalıştıracağız. Anket konulu oltalama senaryomuzda, karşı tarafa içinde dört (ikisi tercihen gizli/hidden hale getirilmiş) dosya bulunan ziplenmiş bir klasör göndereceğiz. Amacımız karşı tarafın bir anket araştırması yapıyormuş edasıyla istediğimiz dosyayı açmasını sağlamak.

Dosyalara gelince;

1) Birinci dosya Anket.txt dosyası, içinde çoktan seçmeli sorular bulunmakta (aslında daha gerçekçi bir senaryoda Excel gibi bir doküman daha iyi olabilirdi ama tekniğin etkinliğini gösterme açısından txt uzantılı bir dosyayı tercih etmek istedim).

Burada amacımız zararli.exe (burada calc.exe bunu temsil edecek) programını Anket.txt dosyasının içine gömmek ve saklamak olacak. Aşağıdaki komut, calc.exe dosyasını Anket.txt dosyasınının Alternate Data Streams (ADS) alanına saklamamızı sağlıyor:

type calc.exe > Anket.txt:calc.exe

Evet, şu anda Anket.txt dosyamızın içinde calc.exe de yer almakta. Bunu “dir /r” komutuyla da teyit edebilirsiniz.

2) Eskiden bir dosyanın ADS alanındaki başka bir dosyayı doğrudan çağırmak mümkündü ancak artık güvenlik kısıtlamaları nedeniyle bu mümkün değil. Yine de elimizde bunu atlatacak bir yöntem mevcut. Öncelikle gömülü dosyaya bağlanan bir symbolik link yaratalım:

mklink config.txt Anket.txt:calc.exe

Şimdi komut satırında ‘config.txt’ yazarsanız, garip bir şekilde calc.exe’nin yani hesap makinesinin çalıştığına tanık olacaksınız (ancak linkin üstüne çift tıklamak aynı etkiyi yaratmayacaktır). config.txt dosyasını, özellikler bölümünden “Gizli” hale getirebilirsiniz.

3) Sonra Talimatlar.txt isimli başka bir dosya yaratın ve içine ankete ilişkin bilgiler yazın. Bu dosyayı da “Gizli” hale getirin.

4) Artık Javascript dosyamızı hazırlayabiliriz: Talimatlar.js. Bu dosya tıklandığın, hem Talimatlar.txt (görünür şekilde) hem de calc.exe uygulamasını (komut satırı gizlenmiş şekilde) çalıştıracaktır.

var objShell = new ActiveXObject(“shell.application”);
objShell.ShellExecute(“cmd.exe”, “/c config.txt”, “”, “open”, 0);
objShell.ShellExecute(“Talimatlar.txt”, “”, “”, “open”, 1);            

` `

Bu kodu karmaşıklaştırmak mümkün tabi ki, bunu da size bırakıyorum. Burada bir şeyi belirtmek isteriz ki, bu Javascript dosyasını tarayıcıdan çağırdığınızda güvenlik kısıtlamaları nedeniyle herhangi bir etkisi olmayacaktır. Bu konuda yaratıcı fikirlere ayrıca açığız.

YORUMLAR

  • YORUM