5 Ağustos 2020 Çarşamba

YARA Kuralları Nedir, Nasıl Yazılır.



YARA


Yara, malware tespitinde ve analizinde kullanılan bir tooldur. Yara genel anlamında kullanımında malware hakkında bilgi toplama ve analizi hızlandırmak amacıyla kullanılmaktadır. Yara virustotal tarafından geliştirilmiştir. Açık kaynak kodlu bir araçtır.

Yara kuralları malwareların sınıflandırılmasında ve malwareların kodların tanımlanmasında kullanılır. Tespit edilen bir malware hangi malware türünü olduğunu ya da kimin tarafından kullanılıp oluşturulduğunu yara kuralları ile elde edebiliriz. Aynı zamanda malwarelarin kullanmış olduğu exploitleri, malwareların hangi dilde yazıldığı, kullanmış olduğu anti analiz teknikleri hakkında bilgi sahibi olabiliriz.

Yara nın temelini kurallar oluşturur.

 

Yara kurallarını otomatikleştirmek için Python kullanılarak yazılan bir çok kütpühane mevcuttur.
yara kuralları GitHub üzerinde hazır yara kurallarını bulmamız mümkün. Örnek olarak virüs totoal tarafından paylaşılan yara kütüphanesi;
https://github.com/VirusTotal/yara-python

 

Yazdığımız yara kuralları ile kendi sistemimizin dışında onilen sanbox sağlayan sistemler üzerinde de yara kurallarına hit eden zararlı yazlımı analiz edebiliriz. örnek olarak https://www.hybrid-analysis.com/      https://malwr.com/   siteleri verilebilir.

 

 

 

 

 

Yara da kural yazılması;

Her bir yara kuralı rule ifadesi ile başlar ve kurala verilen isimle devam eder. Meta kısmında yazan ifadeler kural hakkında bilgileri içerir.

Sonra gelen strings ve condition kısmı yara nın temelini oluşturur ve aranacak ifadeler ile bu ifadelerin meydana gelmesi halinde ilgili yara kuralını tetikleyeceğini belirler.

Strings bölümğndeki değişkenler $ işareti ile başlar.

İlgili string değişkene atanacak değerhex ise {} arasına yazılır text formatında ise “” arasına yazılır.

/*   çoklu yorum satırı yazılabilir */

// tekli oyrum satırı

 

Yara parametreleri;

-t <tag(değişken)> -> “tag” olarak etiketlenen kuralları yazdırır, geri kalanları görmezden gelir.

-i <identifier> -> sadece kuralların ismini yazdırır 

-n -> boşa çıkan kuralları yazdırır 

-D –print-module-data -> modülün verisini yazdırır.

 -g –print-tags -> etiketlenenleri yazdırır. 

-m –pintt-meta -> metadata’yı yazdırır. 

-s –print-strings -> eşleşen kelime dizilerini yazdırır. 

-d <identifier> -> dışarıda değişken tanımlama 

-r –recursive -> dizinlerin alt dizinlerini de tarar. 

-f –fast-scan -> hızlı tarama yapar 

-w –disable-warnings -> hataları görmezden gelir 

-v –version -> kullandığınız yara sürümünün bilgilerini yazdırır 

-h –help -> yardım kısmını gösterir



Yara Örneği;

            rule kural_ismi

{

            meta:

            authour= “M Aygun”

            decription=”ilk_yara”

            strings:

            $a =”zararlı yazılım”

            $b=”yara kuralları”

            condition:

            $a or $b

}

 


 

 

Yarayı kullananlar;

           ActiveCanopy

           Adlice

           AlienVault

           BAE Systems

           Bayshore Networks, Inc.

           BinaryAlert

           Blue Coat

           Blueliv

           Cofense

           Conix

           CrowdStrike FMS

           Cuckoo Sandbox

           Cyber Triage

           Digita Security

           Dragos Platform

           Dtex Systems

           ESET

           ESTSecurity

           Fidelis XPS

           FireEye, Inc.

           Fox-IT

           FSF

           Guidance Software

           Heroku

           Hornetsecurity

           InQuest

           JASK

           Joe Security

           jsunpack-n

           Kaspersky Lab

           Koodous

           Laika BOSS

           Lastline, Inc.

           LimaCharlie

           McAfee Advanced Threat Defense

           Metaflows

           NBS System

           Nozomi Networks

           osquery

           Payload Security

           PhishMe

           Picus Security

           Radare2

           Raytheon Cyber Products, Inc.

           RedSocks Security

           ReversingLabs

           root9B

           Scanii

           RSA ECAT

           SpamStopsHere

           stoQ

           Symantec

           Tanium

           Tenable Network Security

           The DigiTrust Group

           ThreatConnect

           ThreatStream, Inc.

           Thug

           Trend Micro

           VirusTotal Intelligence

           VMRay

           We Watch Your Website

           Websense

           x64dbg

           YALIH

 

 

 

Kaynak :

https://github.com/InQuest/awesome-yara

https://support.virustotal.com/hc/en-us/articles/115002178945-YARA

http://virustotal.github.io/yara/

https://www.bgasecurity.com/makale/zararli-yazilim-analizi-ve-tespitinde-yara-kullanimi/

https://halilozturkci.com/adli-bilisim-incelemelerinde-yara-ile-zararli-kod-tespiti/

https://yara.readthedocs.io/en/stable/

 


4 Ağustos 2020 Salı

FLARE VM Kurulumu




FLARE VM 

 
Flare VM; FireEye firamsı tarafından Windows platformlarında tersine Mühendislik ve zararlı yazılım analizi sırasında yardımcı tooların bulunduğu bir dağıtımdır. 
Ücretsiz ve açık kaynaklı Windows tabanlı bir dağıtımdır.  

 

               

Flare VM Kurulumu: 


1- Kurulumunu gerçekleştirmek için önceden MS Windows sanal makine oluşturmalıyız.  (Ben sanal makine oluşturmak için;  VMware 15.5 pro versiyonunu ve Windows 7 32 bit pro kurdum. ) 
 
2- https://github.com/fireeye/flare-vm adresinden flare-vm zip dosyasını sanal makineme indirdim. 
 
3- Sanal makinemde power shelli yönetici olarak çalıştırın.  
 
4- Set-ExecutionPolicy Unrestricted     Komutunu girerek komut dosya çalıştırmayı etkinleştirdim.  
 
5- Sanal makinama indirmiş olduğum flare-vm-master klasörüne gidiyorum.
(" cd C:\Users\HP\Desktop\flare-vm-master "  ) 
 
6- İçerisine dahil olduğum klasörde  .\install.ps1   komutunu çalıştırıyorum. Bize parolamızı soruyor parolamı girdikten sonra kurma işlemine geçiyor. 
 
7- Sanal makine kapanıp açıldıktan sonra masaüstüne Boxstrater Shell adlı uygulama geliyor bu uygulamayı çalıştırınca komut satırı çıkıyor komut satırına  InstallBoxstarterPackage PackageName https://raw.githubusercontent.com/fireeye/flarevm/master/install.ps1 yazıyoruz ve bekliyoruz. 
 
8- Daha sonra sanal makinemiz internet hızına bağlı olarak 40- 50 dk içerisinde kurulacaktır. Birkaç kere açılıp kapandıktan sonra makinemiz hazır olacaktır.  
 

Kurarken hata alınıyorsa;  
 
  • .NET 4.5 https://www.microsoft.com/en-us/download/details.aspx?id=30653           
  • WMF 5.1 https://www.microsoft.com/en-us/download/details.aspx?id=54616 
    Uygulamaların güncelliğini kontrol edin.

  •  işletim sisteminin güncelliğini kontrol edin 

                                               
 
  
 

İçerisinde Bulundurduğu Toolar ; 

Android 
 dex2jar 
 apktool 

Debuggers 
 flare-qdb 
 scdbg 
 OllyDbg + OllyDump + OllyDumpEx 
 OllyDbg2 + OllyDumpEx 
 x64dbg 
 WinDbg + OllyDumpex + pykd 

Decompilers 
 RetDec 

Delphi
 
 Interactive Delphi Reconstructor (IDR)
 
Developer Tools 
 VC Build Tools 
 NASM 

Disassemblers 
 Ghidra 
 IDA Free (5.0 & 7.0) 
 Binary Ninja Demo 
 radare2 
 Cutter 

.NET
 de4dot 
 Dot Net String Decoder (DNSD) 
 dnSpy 
 DotPeek 
 ILSpy 
 RunDotNetDll 

AutoIt 
 AutoItExtractor 

Flash 
 FFDec 

Forensic 
 Volatility 
 Autopsy 

Hex Editors 
 FileInsight 
 HxD 
 010 Editor 

Java 
 JD-GUI 
 Bytecode-Viewer 
 Java-Deobfuscator 

JavaScript 
 malware-jail 

Networking 
 FakeNet-NG 
 ncat 
 nmap 
 Wireshark
 
Office 
 Offvis 
 OfficeMalScanner 
 oledump.py 
 rtfdump.py 
 msoffcrypto-crack.py 

PDF 
 PDFiD 
 PDFParser 
 PDFStreamDumper
 
PE 
 PEiD 
 ExplorerSuite (CFF Explorer) 
 PEview 
 DIE 
 PeStudio 
 PEBear 
 ResourceHacker 
 LordPE 
 PPEE(puppy)
 
Pentest 
 Windows binaries from Kali Linux 

Powershell 
 PSDecode
 
Text Editors 
 SublimeText3 
 Notepad++ 
 Vim
 
Visual Basic 
 VBDecompiler 
Web Application 
 BurpSuite Free Edition 
 HTTrack 

Utilities 
 FLOSS 
 HashCalc 
 HashMyFiles 
 Checksum 
 7-Zip 
 Far Manager 
 Putty 
 Wget 
 RawCap 
 UPX 
 RegShot 
 Process Hacker 
 Sysinternals Suite 
 API Monitor 
 SpyStudio 
 Shellcode Launcher 
 Cygwin 
 Unxutils 
 Malcode Analyst Pack (MAP) 
 XORSearch 
 XORStrings 
 Yara 
 CyberChef 
 KernelModeDriverLoader 
 Process Dump 
 Exe2Aut 
 Innounp 
 InnoExtract 
 UniExtract2 
 Hollows-Hunter 
 PE-sieve 
 ImpRec 
 ProcDot 

Python, Modules, Tools 
 Py2ExeDecompiler 
 pyinstxtractor 
 Python 2.7 
    o hexdump 
    o pefile 
    o winappdbg 
    o pycryptodome 
    o vivisect o binwalk 
    o capstone-windows 
    o unicorn 
    o oletools 
    o olefile 
    o unpy2exe 
    o uncompyle6 
    o pycrypto 
    o pyftpdlib 
    o pyasn1 
    o pyOpenSSL 
    o ldapdomaindump 
    o pyreadline 
    o flask 
    o networkx 
    o requests 
    o msoffcrypto-tool 
    o yara-python 
    o mkyara 
 
Other 
 VC Redistributable Modules (2005, 2008, 2010, 2012, 2013, 2015, 2017) 
 .NET Framework versions 4.8 
 Practical Malware Analysis Labs 
 Google Chrome 
 Cmder 
 






 
 
 
 
 

Kaynaklar: 

https://github.com/fireeye/flare-vm 
https://www.fireeye.com/blog/threat-research/2018/11/flare-vm-update.html