- 19 Tem 2022
- 352
- 5
- 172
Herkese iyi akşamlar.
Bugün geliştirmekte olduğum bir projeyi sizlerle paylaşacağım.
Hem de açık kaynak kodlu olarak!
Protector Nedir?
Yazılım dünyasında, "protector" terimi genellikle bir yazılımın kopyalanması,
yaması, tersine mühendislik yapılması veya hileli değişiklikler yapılması gibi istenmeyen işlemlere karşı koruma sağlayan araçlar veya yöntemler için kullanılır.
Protector, yazılımın orijinal halinin korunmasına ve yetkisiz kullanım veya dağıtımını engellemeye yardımcı olur.
Yazılımın kaynak kodunu veya çalışma sürecini değiştirmek veya hile yapmak isteyen saldırganların bu işlemleri zorlaştırılır.
(chatgpt)
Kısaca protectorlar (packerlar olarak da bilinir) işletim sistemleri tarafından yürütülebilir dosyalarınızı tersine mühendislik saldırılarına karşı korumayı amaçlar.
Bu amaç doğrultusunda; yazılımınızı şifreler, sıkıştırır, ve yetkisiz erişimlere karşı ek korumalar sağlarlar.
Dönelim benim projeme..
M0rpress Packer
Öncelikle, geliştirmiş olduğum bu yazılım zararlı yazılımları anti-virüslerden korumayı amaçlamamaktadır.
Birincil hedefim, topluma yardımcı olmak ve kendimi geliştirmektir.
Programımın ismi M0rpress Packer. Bir hayli basit bir çalışma prensibi var.
Öncelikle korumak istediğiniz exe dosyasını seçiyorsunuz.
Ardından ise şifreleme için bir key girmeniz gerekmektedir.
Şifreleme yöntemi olarak tamamen bana ait olan m0rcrypt ismini verdiğim bir encode algoritması kullanıyorum.
Daha sonra ise program, seçmiş olduğunuz exe'yi baştan sona şifreler.
Ve yeni bir "base agent" ismini verdiğim bir exe oluşturarak, sizin keyinizi ve şifrelenmiş yazılımınızı agent'ın içerisine kopyalar.
Daha sonra ise bu yeni oluşturulan exe incelenmeye çalışıldığında, sizin gerçek programınızın içeriğine ulaşılamaz.
Ve %99 oranında statik analizden korunmuş olursunuz.
Ancak, bu yeni exe çalıştırıldığı zaman, sizin şifrelenmiş programınızın şifresini çözer ve belleğe kopyalayıp çalıştırır.
Bu sayede dinamik analiz ile programınız disassembly işlemine maruz kalabilir.
Ancak böylesi bir senaryoda bile, programınızın şifrelerken kullandığınız şifreye ulaşamadıkları müddetçe birisinin yazılımınızı patchleme (crackleme) olasılığı bir hayli düşer.
Ekran Görüntüleri
GUI konusunda biraz gelişmem lazım
Şifrelenmemiş EXE
Şifrelenmiş EXE
Eksiklikler
1- Şifreleme anahtarı plain text olarak exe içerisinde bulunuyor.
Aslında basit bir şekilde onu da şifreleyebilirim.
Ama key yinede ele geçirilebilir.
O yüzden biraz daha kalıcı bir çözüm arayışındayım.
En yakın zamanda güncelleyeceğim.
2- En büyük problem yüksek ihtimal açık kaynak kodlu olması
Açık kaynak bir packer'a unpacker yazmak hiç de zor olmayacaktır.
Ancak defalarca bahsettiğim gibi.
Amacım yalnızca açık kaynak dünyasına katkıda bulunmak ve kendimi geliştirmek.
Hatırlatmak isterim ki, bu yazılım hiçbir ticari amaç taşımamakta.
O yüzden bu program ile yazılımlarınızı şifreleyip dağıtmanızı asla önermiyorum.
Kaynak Kod
(github)
Bugün geliştirmekte olduğum bir projeyi sizlerle paylaşacağım.
Hem de açık kaynak kodlu olarak!
Protector Nedir?
Yazılım dünyasında, "protector" terimi genellikle bir yazılımın kopyalanması,
yaması, tersine mühendislik yapılması veya hileli değişiklikler yapılması gibi istenmeyen işlemlere karşı koruma sağlayan araçlar veya yöntemler için kullanılır.
Protector, yazılımın orijinal halinin korunmasına ve yetkisiz kullanım veya dağıtımını engellemeye yardımcı olur.
Yazılımın kaynak kodunu veya çalışma sürecini değiştirmek veya hile yapmak isteyen saldırganların bu işlemleri zorlaştırılır.
(chatgpt)
Kısaca protectorlar (packerlar olarak da bilinir) işletim sistemleri tarafından yürütülebilir dosyalarınızı tersine mühendislik saldırılarına karşı korumayı amaçlar.
Bu amaç doğrultusunda; yazılımınızı şifreler, sıkıştırır, ve yetkisiz erişimlere karşı ek korumalar sağlarlar.
Dönelim benim projeme..
M0rpress Packer
Öncelikle, geliştirmiş olduğum bu yazılım zararlı yazılımları anti-virüslerden korumayı amaçlamamaktadır.
Birincil hedefim, topluma yardımcı olmak ve kendimi geliştirmektir.
Programımın ismi M0rpress Packer. Bir hayli basit bir çalışma prensibi var.
Öncelikle korumak istediğiniz exe dosyasını seçiyorsunuz.
Ardından ise şifreleme için bir key girmeniz gerekmektedir.
Şifreleme yöntemi olarak tamamen bana ait olan m0rcrypt ismini verdiğim bir encode algoritması kullanıyorum.
Daha sonra ise program, seçmiş olduğunuz exe'yi baştan sona şifreler.
Ve yeni bir "base agent" ismini verdiğim bir exe oluşturarak, sizin keyinizi ve şifrelenmiş yazılımınızı agent'ın içerisine kopyalar.
Daha sonra ise bu yeni oluşturulan exe incelenmeye çalışıldığında, sizin gerçek programınızın içeriğine ulaşılamaz.
Ve %99 oranında statik analizden korunmuş olursunuz.
Ancak, bu yeni exe çalıştırıldığı zaman, sizin şifrelenmiş programınızın şifresini çözer ve belleğe kopyalayıp çalıştırır.
Bu sayede dinamik analiz ile programınız disassembly işlemine maruz kalabilir.
Ancak böylesi bir senaryoda bile, programınızın şifrelerken kullandığınız şifreye ulaşamadıkları müddetçe birisinin yazılımınızı patchleme (crackleme) olasılığı bir hayli düşer.
Ekran Görüntüleri
GUI konusunda biraz gelişmem lazım
Şifrelenmemiş EXE
Şifrelenmiş EXE
Eksiklikler
1- Şifreleme anahtarı plain text olarak exe içerisinde bulunuyor.
Aslında basit bir şekilde onu da şifreleyebilirim.
Ama key yinede ele geçirilebilir.
O yüzden biraz daha kalıcı bir çözüm arayışındayım.
En yakın zamanda güncelleyeceğim.
2- En büyük problem yüksek ihtimal açık kaynak kodlu olması
Açık kaynak bir packer'a unpacker yazmak hiç de zor olmayacaktır.
Ancak defalarca bahsettiğim gibi.
Amacım yalnızca açık kaynak dünyasına katkıda bulunmak ve kendimi geliştirmek.
Hatırlatmak isterim ki, bu yazılım hiçbir ticari amaç taşımamakta.
O yüzden bu program ile yazılımlarınızı şifreleyip dağıtmanızı asla önermiyorum.
Kaynak Kod
(github)