mirror of
				https://github.com/HackTricks-wiki/hacktricks.git
				synced 2025-10-10 18:36:50 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			155 lines
		
	
	
		
			7.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			155 lines
		
	
	
		
			7.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # Kötü Amaçlı Yazılım Analizi
 | ||
| 
 | ||
| {{#include ../../banners/hacktricks-training.md}}
 | ||
| 
 | ||
| ## Adli Bilişim Hile Sayfaları
 | ||
| 
 | ||
| [https://www.jaiminton.com/cheatsheet/DFIR/#](https://www.jaiminton.com/cheatsheet/DFIR/)
 | ||
| 
 | ||
| ## Çevrimiçi Hizmetler
 | ||
| 
 | ||
| - [VirusTotal](https://www.virustotal.com/gui/home/upload)
 | ||
| - [HybridAnalysis](https://www.hybrid-analysis.com)
 | ||
| - [Koodous](https://koodous.com)
 | ||
| - [Intezer](https://analyze.intezer.com)
 | ||
| - [Any.Run](https://any.run/)
 | ||
| 
 | ||
| ## Çevrimdışı Antivirüs ve Tespit Araçları
 | ||
| 
 | ||
| ### Yara
 | ||
| 
 | ||
| #### Kurulum
 | ||
| ```bash
 | ||
| sudo apt-get install -y yara
 | ||
| ```
 | ||
| #### Kuralları Hazırlayın
 | ||
| 
 | ||
| Bu script'i kullanarak github'dan tüm yara kötü amaçlı yazılım kurallarını indirin ve birleştirin: [https://gist.github.com/andreafortuna/29c6ea48adf3d45a979a78763cdc7ce9](https://gist.github.com/andreafortuna/29c6ea48adf3d45a979a78763cdc7ce9)\
 | ||
| _**rules**_ dizinini oluşturun ve çalıştırın. Bu, tüm kötü amaçlı yazılım için yara kurallarını içeren _**malware_rules.yar**_ adlı bir dosya oluşturacaktır.
 | ||
| ```bash
 | ||
| wget https://gist.githubusercontent.com/andreafortuna/29c6ea48adf3d45a979a78763cdc7ce9/raw/4ec711d37f1b428b63bed1f786b26a0654aa2f31/malware_yara_rules.py
 | ||
| mkdir rules
 | ||
| python malware_yara_rules.py
 | ||
| ```
 | ||
| #### Tarama
 | ||
| ```bash
 | ||
| yara -w malware_rules.yar image  #Scan 1 file
 | ||
| yara -w malware_rules.yar folder #Scan the whole folder
 | ||
| ```
 | ||
| #### YaraGen: Kötü amaçlı yazılımı kontrol et ve kurallar oluştur
 | ||
| 
 | ||
| Binary'den yara kuralları oluşturmak için [**YaraGen**](https://github.com/Neo23x0/yarGen) aracını kullanabilirsiniz. Bu eğitimlere göz atın: [**Bölüm 1**](https://www.nextron-systems.com/2015/02/16/write-simple-sound-yara-rules/), [**Bölüm 2**](https://www.nextron-systems.com/2015/10/17/how-to-write-simple-but-sound-yara-rules-part-2/), [**Bölüm 3**](https://www.nextron-systems.com/2016/04/15/how-to-write-simple-but-sound-yara-rules-part-3/)
 | ||
| ```bash
 | ||
| python3 yarGen.py --update
 | ||
| python3.exe yarGen.py --excludegood -m  ../../mals/
 | ||
| ```
 | ||
| ### ClamAV
 | ||
| 
 | ||
| #### Kurulum
 | ||
| ```
 | ||
| sudo apt-get install -y clamav
 | ||
| ```
 | ||
| #### Tarama
 | ||
| ```bash
 | ||
| sudo freshclam      #Update rules
 | ||
| clamscan filepath   #Scan 1 file
 | ||
| clamscan folderpath #Scan the whole folder
 | ||
| ```
 | ||
| ### [Capa](https://github.com/mandiant/capa)
 | ||
| 
 | ||
| **Capa**, potansiyel olarak zararlı **yetenekleri** yürütülebilir dosyalarda tespit eder: PE, ELF, .NET. Bu nedenle, Att\&ck taktikleri veya şüpheli yetenekler gibi şeyleri bulacaktır:
 | ||
| 
 | ||
| - OutputDebugString hatasını kontrol et
 | ||
| - bir hizmet olarak çalış
 | ||
| - işlem oluştur
 | ||
| 
 | ||
| Bunu [**Github repo**](https://github.com/mandiant/capa) üzerinden edinebilirsiniz.
 | ||
| 
 | ||
| ### IOCs
 | ||
| 
 | ||
| IOC, Kompromi İndikatörü anlamına gelir. Bir IOC, bazı potansiyel olarak istenmeyen yazılımları veya onaylanmış **kötü amaçlı yazılımları** tanımlayan **koşulların** bir setidir. Mavi Takımlar, bu tür tanımları **sistemlerinde** ve **ağlarında** bu tür kötü amaçlı dosyaları **arama** amacıyla kullanır.\
 | ||
| Bu tanımları paylaşmak çok faydalıdır çünkü bir bilgisayarda kötü amaçlı yazılım tespit edildiğinde ve o kötü amaçlı yazılım için bir IOC oluşturulduğunda, diğer Mavi Takımlar bunu kötü amaçlı yazılımı daha hızlı tanımlamak için kullanabilir.
 | ||
| 
 | ||
| IOC'leri oluşturmak veya değiştirmek için bir araç [**IOC Editor**](https://www.fireeye.com/services/freeware/ioc-editor.html)**.**\
 | ||
| Tanımlı IOCs'leri bir cihazda **arama** yapmak için [**Redline**](https://www.fireeye.com/services/freeware/redline.html) gibi araçları kullanabilirsiniz.
 | ||
| 
 | ||
| ### Loki
 | ||
| 
 | ||
| [**Loki**](https://github.com/Neo23x0/Loki), Basit Kompromi İndikatörleri için bir tarayıcıdır.\
 | ||
| Tespit, dört tespit yöntemine dayanmaktadır:
 | ||
| ```
 | ||
| 1. File Name IOC
 | ||
| Regex match on full file path/name
 | ||
| 
 | ||
| 2. Yara Rule Check
 | ||
| Yara signature matches on file data and process memory
 | ||
| 
 | ||
| 3. Hash Check
 | ||
| Compares known malicious hashes (MD5, SHA1, SHA256) with scanned files
 | ||
| 
 | ||
| 4. C2 Back Connect Check
 | ||
| Compares process connection endpoints with C2 IOCs (new since version v.10)
 | ||
| ```
 | ||
| ### Linux Malware Detect
 | ||
| 
 | ||
| [**Linux Malware Detect (LMD)**](https://www.rfxn.com/projects/linux-malware-detect/) , paylaşımlı barındırma ortamlarında karşılaşılan tehditler etrafında tasarlanmış, GNU GPLv2 lisansı altında yayımlanan bir Linux kötü amaçlı yazılım tarayıcısıdır. Saldırılarda aktif olarak kullanılan kötü amaçlı yazılımları çıkarmak ve tespit için imzalar oluşturmak amacıyla ağ kenarı saldırı tespit sistemlerinden tehdit verilerini kullanır. Ayrıca, tehdit verileri LMD ödeme özelliği ile kullanıcı gönderimlerinden ve kötü amaçlı yazılım topluluğu kaynaklarından da elde edilmektedir.
 | ||
| 
 | ||
| ### rkhunter
 | ||
| 
 | ||
| [**rkhunter**](http://rkhunter.sourceforge.net) gibi araçlar, dosya sistemini olası **rootkit** ve kötü amaçlı yazılımlar için kontrol etmek amacıyla kullanılabilir.
 | ||
| ```bash
 | ||
| sudo ./rkhunter --check -r / -l /tmp/rkhunter.log [--report-warnings-only] [--skip-keypress]
 | ||
| ```
 | ||
| ### FLOSS
 | ||
| 
 | ||
| [**FLOSS**](https://github.com/mandiant/flare-floss) bir dizi farklı teknik kullanarak yürütülebilir dosyalar içinde obfuscate edilmiş dizeleri bulmaya çalışan bir araçtır.
 | ||
| 
 | ||
| ### PEpper
 | ||
| 
 | ||
| [PEpper ](https://github.com/Th3Hurrican3/PEpper) yürütülebilir dosya içinde bazı temel şeyleri (ikili veriler, entropi, URL'ler ve IP'ler, bazı yara kuralları) kontrol eder.
 | ||
| 
 | ||
| ### PEstudio
 | ||
| 
 | ||
| [PEstudio](https://www.winitor.com/download) Windows yürütülebilir dosyaları hakkında bilgi almayı sağlayan bir araçtır; örneğin, ithalatlar, ihracatlar, başlıklar gibi bilgileri alır, ayrıca virüs toplamını kontrol eder ve potansiyel Att\&ck tekniklerini bulur.
 | ||
| 
 | ||
| ### Detect It Easy(DiE)
 | ||
| 
 | ||
| [**DiE**](https://github.com/horsicq/Detect-It-Easy/) bir dosyanın **şifreli** olup olmadığını tespit etmek ve ayrıca **paketleyicileri** bulmak için bir araçtır.
 | ||
| 
 | ||
| ### NeoPI
 | ||
| 
 | ||
| [**NeoPI** ](https://github.com/CiscoCXSecurity/NeoPI) metin/script dosyaları içinde **obfuscate** edilmiş ve **şifreli** içeriği tespit etmek için çeşitli **istatistiksel yöntemler** kullanan bir Python betiğidir. NeoPI'nin amacı, **gizli web shell kodunun tespitine** yardımcı olmaktır.
 | ||
| 
 | ||
| ### **php-malware-finder**
 | ||
| 
 | ||
| [**PHP-malware-finder**](https://github.com/nbs-system/php-malware-finder) **obfuscate** edilmiş/**şüpheli kodu** ve ayrıca **malware**/webshell'lerde sıkça kullanılan **PHP** fonksiyonlarını içeren dosyaları tespit etmek için elinden gelenin en iyisini yapar.
 | ||
| 
 | ||
| ### Apple Binary Signatures
 | ||
| 
 | ||
| Bazı **malware örneklerini** kontrol ederken, imzayı her zaman **kontrol etmelisiniz** çünkü imzayı atan **geliştirici** zaten **malware** ile **ilişkili** olabilir.
 | ||
| ```bash
 | ||
| #Get signer
 | ||
| codesign -vv -d /bin/ls 2>&1 | grep -E "Authority|TeamIdentifier"
 | ||
| 
 | ||
| #Check if the app’s contents have been modified
 | ||
| codesign --verify --verbose /Applications/Safari.app
 | ||
| 
 | ||
| #Check if the signature is valid
 | ||
| spctl --assess --verbose /Applications/Safari.app
 | ||
| ```
 | ||
| ## Tespit Teknikleri
 | ||
| 
 | ||
| ### Dosya Yığma
 | ||
| 
 | ||
| Eğer bir web sunucusunun **dosyalarını** içeren bir klasörün **son güncellenme tarihini** biliyorsanız, **web sunucusundaki tüm dosyaların oluşturulma ve değiştirilme tarihlerini kontrol edin** ve eğer herhangi bir tarih **şüpheli** ise, o dosyayı kontrol edin.
 | ||
| 
 | ||
| ### Temel Değerler
 | ||
| 
 | ||
| Eğer bir klasörün dosyaları **değiştirilmemiş olmalıysa**, klasörün **orijinal dosyalarının** **hash'ini** hesaplayabilir ve bunları **mevcut** olanlarla **karşılaştırabilirsiniz**. Değiştirilen her şey **şüpheli** olacaktır.
 | ||
| 
 | ||
| ### İstatistiksel Analiz
 | ||
| 
 | ||
| Bilgiler loglarda saklandığında, her bir web sunucusu dosyasının ne kadar kez erişildiği gibi **istatistikleri kontrol edebilirsiniz; çünkü bir web shell en çok erişilenlerden biri olabilir**.
 | ||
| 
 | ||
| {{#include ../../banners/hacktricks-training.md}}
 |