Güvenli Ticaret

Hacktivizm içerisinde gerçekleştirmeyi düşündüğünüz tüm ticaretlerde, dikkat ve önlem sahibi olun.

Daha Fazlası

Sorunum Var

Forum içerisinde yaşadığınız tüm sorunlar için sohbet alanını ya da sayfanın altında belirtilen Telegram kanalımızı kullanın.

Daha Fazlası

Doğru Türkçe ve Kurallar

Türkçemizi her bakımdan doğru kullanın ve forum kurallarına uygun paylaşımlar yapmaya özen gösterin.

Daha Fazlası

Process Injection Ve Teknikleri

nightstalker

Bronz Üye
Katılım
11 Nisan 2021
Mesajlar
272
Tepkime puanı
182
İlgi Alanlarınız
elektronik
Cinsiyet
  1. Erkek
PROCESS INJECTION NEDİR ?

Process injection, zararlı kodların ya da yazılımların çeşitli tekniklerle processlere enjekte edilmesi ve enjekte edilen yazılımın veya kodun process içerisinde çalıştırılmaya zorlanmasıdır. Bu enjekte işleminin gerçekleşmesi için ilk olarak process tanınmalıdır. Çeşitli Windows API'ler kullanılarak yapılan process tanıma işlemine "Enumerate İşlemi" adını veriyoruz.

PROCESS INJECTION TEKNİKLERİ

REMOTE DLL INJECTION


Uygulamaların ortak bir şekilde bellek kullanımı ve performans tüketimini düşürmek amacıyla DLL'ler kullanılır. Bu başlığımızda da Remote DLL Injection tekniğini ele alacağız.

Zararlı yazılım, çalışan herhangi bir process'in sanal belleği içerisine zararlı olan DLL dosyasına ait yolu belirterek yüklenmesini sağlar. Burada DLL processe enjekte olabilmek için Process Walking işlemlerini gerçekleştirir. Process Walking işlemi Process32First() ve Process32Next() API'lerinin kullanılmasıyla yapılır. Process32First() API'si, CreateToolhelp32Snapshot() API’si tarafından alınan ilk baştaki sistem snapshotlarında bulunan bilgileri okur. Process32Next() API'si ise diğer snapshotlardaki bilgileri okuyarak processler hakkında bilgi toplanır. Ardından enjekte olunacak process belirlenir. Daha sonra işletim sisteminin, bir işleme ait bilgileri depoladığı yerden OpenProcess API'si kullanılarak handle alınır. Ardından bellekte VirtualAllocEx API’si kullanılarak bir yer ayrılır ve bu yere WriteProcessMemory API’si kullanılarak zararlı DLL'nin yolu yazılır. Bu işlemin ardından zararlı yazılım CreateRemoteThread API'sine zararlı DLL'nin yolunun belirtildiği LoadLibrary API'sini yerleştirir. Ardından LoadLibrary API'sine zararlı DLL'yi enjekte eder ve bu DLL'nin çalıştırılmasını sağlar.



APC (Asynchronous Procedure Call) DLL INJECTION

Bu enjekte tekniğinde DLL enjekte edilirken threadlerin uyarılabilir hale geçtiğinde eşzamansız olarak çalıştığı bir işlev olan APC kullanılır. Birden fazla thread kullanarak çalışan programlarda threadler arasında bekleme oluşmasına neden olacak herhangi bir durumda thread, bellekte daha az yer kaplayan nesneler oluşturur. Bu nesneler kullanıcı girişlerine ait hizmete aktarılır. Kullanıcının yanıtına göre nesne, execute birimine iletilir. Ve burada sırayla işleme konur. Buradaki threadler herhangi bir göreve dahil olmadığında bekleyerek belleğin gereksiz kullanılmamasını sağlar. Burada threadlerin uyarılabilir hale geçmesi için SleepEx(); , SignalObjectAndWait(); gibi çeşitli API'ler kullanılır. Bu injekte yönteminde zararlı yazılım, hedef process'in uyarılabilir durumda olan thread'ine enumerate işlemi uygular. Daha sonra QueueUserAPC() API’si kullanılarak zararlı kod APC sırasına gönderilir. Sırayla işlem yapan threadler, sırası geldiğinde zararlı kodu çalıştırır ve injekte işlemi gerçekleşmiş olur.



ATOM BOMBING INJECTION

Adını Windowsun processler arasında stringler ve tanımlarını saklayan atom tablolarından almaktadır. Bu tablolarda her bir string, atom olarak ifade edilir. Bu teknikte zararlı yazılım, GlobalAddAtom API'si ile string yerine zararlı kodu bir atom olarak yükler. Ardından GlobalGetAtomName API'si ile atom tablosuna eklenen zararlı atomu hedef processin belleğine enjekte eder. Bunun ardından artık process çalıştığında belleğe enjekte edilen zararlı kodda çalışmış olur.

wol_error.gif
Bu resim yeniden boyutlandırıldı, tam halini görmek için tıklayınız.



PROCESS HOLLOWING

Bu injection tekniğinde çalışan bir process'ın belleğine zararlı exe yerleştirilir. Bu teknik ile yapılan enjekte işlemleri sistem güvenliği araçları tarafından farkedilmez. Bunun sebebi, process zararlı olmayan legal bir processin yolunu belirtir. Fakat yolu belirtilen process'in belleğinde zararlı exe olması sebebiyle hem zararlı çalışacak hemde process yolu güvenli olduğu için güvenlik araçları tarafından fark edilmeyecektir. Bu teknikte zararlı yazılım processi askıya alınmış bir şekilde başlatır. Ardından bu processin yürütülebilir bölümü belleğe aktarılır. Burada processin yolu, Process Environment Block olarak adlandırıldığımız PEB içerisinde bulunur. Aynı zamanda bu yapının ImageBaseAddress kısmında processin belleğe aktarılan bölümüne ait yol belirtilir. ImageBaseAddress kısmında processin base değeri de bulunur ve bu base değerine erişim sağlandıktan sonra processin yürütülebilir bölümü, process'ten NtUnmapViewOfSection API'si ile ayrılır ve zararlı için ortam hazır hale getirilir. Ardından VirtualAllocEx() API'si ile zararlı için bellekte yer ayrılır. Ardından WriteProcessMemory API'si ile zararlı belleğe yazdırılır. Ardından SetThreadContext API'si ile zararlı kod bloğu için giriş noktası oluşturulur. Bu adımın ardından geriye yalnızca askıya alınmış processin tekrar çalışmasını sağlamak kalıyor. Bu işlemi de ResumeThread API'si ile gerçekleştirerek zararlı kod içeren process çalışmaya başlatılır.



PROCESS DOPPELGÄNGING

Bu teknik TFS dosyasının yazma işlemleriyle ilgilenen kod enjekte tekniklerinden biridir. Transact, Load, Rollback, Animate olmak üzere 4 Aşamadan oluşur.

Transact Aşaması

Bu aşamada CreateTransaction API'si ile process üzerinde yeni bir işlem oluşturulur. Ardından bu işlemlerin kullanılacağı handle elde edilir ve WriteFile API'si ile zararlı kod yazılır.

Load Aşaması

Bu aşamada NtCreateSection API'si ile zararlının yerleşeceği section oluşturulur. Ve dosyamız oluşturulan sectiondan hafızaya yüklenir

RollBack Aşaması

RollBack ile oluşturulan yeni dosya işlemi kayıtlardan geri alınır. Bu sayede sistem, Transact aşamasında oluşturulan dosyanın hiç oluşturulmamış gibi davranabilmesini sağlar.

Animate Aşaması

Bu aşamada, NtCreateProcessEx API'si kullanılarak yeni bir process oluşturulur. Son olarak NtResumeThread API'si ile process başlatılır.
 

RootAkıncı

Kahraman
Elmas
Katılım
19 Mayıs 2021
Mesajlar
995
Tepkime puanı
12,430
Konum
Ankara
İlgi Alanlarınız
Web Deface.
Cinsiyet
  1. Erkek
PROCESS INJECTION NEDİR ?

Process injection, zararlı kodların ya da yazılımların çeşitli tekniklerle processlere enjekte edilmesi ve enjekte edilen yazılımın veya kodun process içerisinde çalıştırılmaya zorlanmasıdır. Bu enjekte işleminin gerçekleşmesi için ilk olarak process tanınmalıdır. Çeşitli Windows API'ler kullanılarak yapılan process tanıma işlemine "Enumerate İşlemi" adını veriyoruz.

PROCESS INJECTION TEKNİKLERİ

REMOTE DLL INJECTION


Uygulamaların ortak bir şekilde bellek kullanımı ve performans tüketimini düşürmek amacıyla DLL'ler kullanılır. Bu başlığımızda da Remote DLL Injection tekniğini ele alacağız.

Zararlı yazılım, çalışan herhangi bir process'in sanal belleği içerisine zararlı olan DLL dosyasına ait yolu belirterek yüklenmesini sağlar. Burada DLL processe enjekte olabilmek için Process Walking işlemlerini gerçekleştirir. Process Walking işlemi Process32First() ve Process32Next() API'lerinin kullanılmasıyla yapılır. Process32First() API'si, CreateToolhelp32Snapshot() API’si tarafından alınan ilk baştaki sistem snapshotlarında bulunan bilgileri okur. Process32Next() API'si ise diğer snapshotlardaki bilgileri okuyarak processler hakkında bilgi toplanır. Ardından enjekte olunacak process belirlenir. Daha sonra işletim sisteminin, bir işleme ait bilgileri depoladığı yerden OpenProcess API'si kullanılarak handle alınır. Ardından bellekte VirtualAllocEx API’si kullanılarak bir yer ayrılır ve bu yere WriteProcessMemory API’si kullanılarak zararlı DLL'nin yolu yazılır. Bu işlemin ardından zararlı yazılım CreateRemoteThread API'sine zararlı DLL'nin yolunun belirtildiği LoadLibrary API'sini yerleştirir. Ardından LoadLibrary API'sine zararlı DLL'yi enjekte eder ve bu DLL'nin çalıştırılmasını sağlar.



APC (Asynchronous Procedure Call) DLL INJECTION

Bu enjekte tekniğinde DLL enjekte edilirken threadlerin uyarılabilir hale geçtiğinde eşzamansız olarak çalıştığı bir işlev olan APC kullanılır. Birden fazla thread kullanarak çalışan programlarda threadler arasında bekleme oluşmasına neden olacak herhangi bir durumda thread, bellekte daha az yer kaplayan nesneler oluşturur. Bu nesneler kullanıcı girişlerine ait hizmete aktarılır. Kullanıcının yanıtına göre nesne, execute birimine iletilir. Ve burada sırayla işleme konur. Buradaki threadler herhangi bir göreve dahil olmadığında bekleyerek belleğin gereksiz kullanılmamasını sağlar. Burada threadlerin uyarılabilir hale geçmesi için SleepEx(); , SignalObjectAndWait(); gibi çeşitli API'ler kullanılır. Bu injekte yönteminde zararlı yazılım, hedef process'in uyarılabilir durumda olan thread'ine enumerate işlemi uygular. Daha sonra QueueUserAPC() API’si kullanılarak zararlı kod APC sırasına gönderilir. Sırayla işlem yapan threadler, sırası geldiğinde zararlı kodu çalıştırır ve injekte işlemi gerçekleşmiş olur.



ATOM BOMBING INJECTION

Adını Windowsun processler arasında stringler ve tanımlarını saklayan atom tablolarından almaktadır. Bu tablolarda her bir string, atom olarak ifade edilir. Bu teknikte zararlı yazılım, GlobalAddAtom API'si ile string yerine zararlı kodu bir atom olarak yükler. Ardından GlobalGetAtomName API'si ile atom tablosuna eklenen zararlı atomu hedef processin belleğine enjekte eder. Bunun ardından artık process çalıştığında belleğe enjekte edilen zararlı kodda çalışmış olur.

wol_error.gif
Bu resim yeniden boyutlandırıldı, tam halini görmek için tıklayınız.



PROCESS HOLLOWING

Bu injection tekniğinde çalışan bir process'ın belleğine zararlı exe yerleştirilir. Bu teknik ile yapılan enjekte işlemleri sistem güvenliği araçları tarafından farkedilmez. Bunun sebebi, process zararlı olmayan legal bir processin yolunu belirtir. Fakat yolu belirtilen process'in belleğinde zararlı exe olması sebebiyle hem zararlı çalışacak hemde process yolu güvenli olduğu için güvenlik araçları tarafından fark edilmeyecektir. Bu teknikte zararlı yazılım processi askıya alınmış bir şekilde başlatır. Ardından bu processin yürütülebilir bölümü belleğe aktarılır. Burada processin yolu, Process Environment Block olarak adlandırıldığımız PEB içerisinde bulunur. Aynı zamanda bu yapının ImageBaseAddress kısmında processin belleğe aktarılan bölümüne ait yol belirtilir. ImageBaseAddress kısmında processin base değeri de bulunur ve bu base değerine erişim sağlandıktan sonra processin yürütülebilir bölümü, process'ten NtUnmapViewOfSection API'si ile ayrılır ve zararlı için ortam hazır hale getirilir. Ardından VirtualAllocEx() API'si ile zararlı için bellekte yer ayrılır. Ardından WriteProcessMemory API'si ile zararlı belleğe yazdırılır. Ardından SetThreadContext API'si ile zararlı kod bloğu için giriş noktası oluşturulur. Bu adımın ardından geriye yalnızca askıya alınmış processin tekrar çalışmasını sağlamak kalıyor. Bu işlemi de ResumeThread API'si ile gerçekleştirerek zararlı kod içeren process çalışmaya başlatılır.



PROCESS DOPPELGÄNGING

Bu teknik TFS dosyasının yazma işlemleriyle ilgilenen kod enjekte tekniklerinden biridir. Transact, Load, Rollback, Animate olmak üzere 4 Aşamadan oluşur.

Transact Aşaması

Bu aşamada CreateTransaction API'si ile process üzerinde yeni bir işlem oluşturulur. Ardından bu işlemlerin kullanılacağı handle elde edilir ve WriteFile API'si ile zararlı kod yazılır.

Load Aşaması

Bu aşamada NtCreateSection API'si ile zararlının yerleşeceği section oluşturulur. Ve dosyamız oluşturulan sectiondan hafızaya yüklenir

RollBack Aşaması

RollBack ile oluşturulan yeni dosya işlemi kayıtlardan geri alınır. Bu sayede sistem, Transact aşamasında oluşturulan dosyanın hiç oluşturulmamış gibi davranabilmesini sağlar.

Animate Aşaması

Bu aşamada, NtCreateProcessEx API'si kullanılarak yeni bir process oluşturulur. Son olarak NtResumeThread API'si ile process başlatılır.
eline sağlık kardeşim :)
 

KocaReis

Developer
Katılım
26 Ağustos 1971
Mesajlar
845
Tepkime puanı
2,719
Eline sağlık kardeşim
 

Konuyu görüntüleyen kullanıcılar:

Hukuksal Sorunlar İçin[email protected]
For Legal Problems[email protected]
Hacktivizm.Org
Hacktivizm.Org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Hacktivizm.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Hacktivizm saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Hacktivizm üyelerinin yaptığı bireysel hack faaliyetlerinden Hacktivizm sorumlu değildir. Sitelerinize Hacktivizm ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz. Sitemizde yer alan içerikler hakkındaki şikayetlerinizi Buradan iletişime geçerek bildirebilirsiniz. Please Report Abuse, DMCA, Scamming, Harassment, Crack or any Illegal Activities to [email protected]
Hack Forum
Hacktivizm, 2020 yılında kurulmuş bir siber güvenlik forum sitesidir aynı zamanda hack forumu,hack sitesi,hack forum ve Türk hack forumudur. Hack forum aramalarında ilk sayfada olan bu hack forum sitesi gün geçtikçe gelişmektedir. Hack Forum kelimesinin anlamı ise, hacker kültürü ve bilgisayar güvenliği ile ilgili tartışmalara adanmış bir İnternet forumudur. Web sitesi, analiz şirketi Alexa Internet tarafından web trafiği açısından "Hacking" kategorisinde bir numaralı web sitesi olarak yer almaktadır.

Telefon Takip - İphone Hackleme - PDF Şifre Kırma - Telefon Hackleme - İnstagram Hesap Çalma - Twitter Hesap Çalma - Facebook Hesap Çalma - Wifi Şifre Kırma - Telefon Şifresi Kırma

Hacktivizm Twitter Hacktivizm Youtube Hacktivizm İnstagram Hacktivizm Telegram

Üst