3 Mayıs 2014 Cumartesi

zaman : Yorum bırak

[GELİŞMİŞ] Dosya Şifreleme Sistemi


Bütün Klasörleri kitleyebilirsiniz bu yolla.Xp de denenmiştir Vista ve Win 7 çalışabilirliği denenmemiştir.

1.Yöntem

Bu Aşağıda Yazan Kodu Bir Metin Belgesine Kaydedin..
programsız dosya şifreleme;

    cls 
@ECHO OFF 
title Folder Kilitli 
if EXIST "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309D}" goto UNLOCK 
if NOT EXIST Kilitli goto MDKilitli 
:CONFIRM 
echo Klasor kilitlensin mi?(e/h) 
set/p "cho=>" 
if %cho%==e goto LOCK 
if %cho%==E goto LOCK 
if %cho%==h goto END 
if %cho%==H goto END 
echo Invalid choice. 
goto CONFIRM 
:LOCK 
ren Kilitli "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309D}" 
attrib +h +s "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309D}" 
echo Folder locked 
goto End 
:UNLOCK 
echo Sifreyi giriniz: 
set/p "pass=>" 
if NOT %pass%== BURAYA ŞİFRE YAZILACAK goto FAIL 
attrib -h -s "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309D}" 
ren "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309D}" Kilitli 
echo Folder Unlocked successaaaay 
goto End 
:FAIL 
echo Invalid password 
goto end 
:MDKilitli 
md Kilitli 
echo Locker created successaaaay 
goto End 
:End

Masa üstünde bir yeni metin belgesi açıp bu kodu aynen içine kopyalıyoruz(kırmızı yere istediğimiz şifreyi yazarak)



Daha sonra bunu dosya>farklı aaadet diyerek şifreli klasör oluşturmak istediğimiz yere kaydediyoruz istediğimiz ismi verip sonuna .bat ekliyoruz.. ( örnek : dosyaismi.bat gibi )



Bu klasöre iki kere tıkladığımızda orda "Kilitli" isimli bir klasörün oluştuğunu göreceksiniz. bu sizin şifreli klasörünüz... şifrelemek istediğiniz dosyaları bu klasör içine taşıyıp daha önce yaptığınız bat uzantılı dosyaya tekrar girip e yazıp enter yaptığınızda klasörün gizlendiğini göreceksiniz. artık bu klasör gizli dosyaları gösterden de gösterilemez. Sadece bu bat uzantılı dosyaya girip şifreyi girdiğinizde dosya görünür hale gelir..



Kilitli Adındaki Dosyanın İçine Saklamak İstediginiz Dosyayı ATın Tekrar Bat Tıklayınca Alttaki Resim Gelcek Siz '' E '' Yazıp Enterleyin Kilitli Yazan Dosya Kaybolcak



Tekrar Bat Dosyasına TIklayınca Şifre İstiycek Şifrenizi Girdiginizde Kilitli ADındaki Dosya AKtif Olcak



İşte artık klasörünüz şifreli.
zaman : Yorum bırak

Kriptoloji Bilimi

Matematiğin hem şifre dilini hemde şifre analizini kapsayan (kriptanaliz) bilimdalıdır.
Şifreleme bir düz metnin içeriğini uygun bir anahtar kullanarak okunamaz hale getirmektir.

Anahtar; kriptografi algoritmasının şifreleme ve çözme işleminde kullanılan sayı dizisidir.
Dizi ne kadar uzun olursa şifreyi kırmak o kadar güçleşir.
32bit-256 bit-2048 bit şifreleme gibi
Hash;Anahtar kullanılarak elde edilen metindir.
düz metin ;parola
anahtar:MD5 (110110)
hash:68f45a47b
-----------------------------------------------------------------------------------------
Sayısal İmza ; imzalanacak metin ile imzalayacak kişinin gizli anahtarı kullanarak elde edilen bir dizi karekteridir.
Dijital Sertifika; kullanıcının gizli anahtarını taşıyan dosyadır.

Kriptografi sayesinde;
**kimlik denetimi sağlanır
**veri şifrelendiği için üçüncü kullanıcılar veriyi açamaz
**e-ticaret ve e-posta işlemleri gizlilik içerisinde yapılabilir.


Kriptografi türleri...

Gizli Anahtarlı(simetrik)kriptografi:
Tek bir anahtar kullanılarak hem şifreleme hem de şifre çözme işlemi yapılabilir.Aynı zamanda kimlik denetimi ile de ilgilenir.
MAC(Message Authentication Code):sayısal imza ile beraber kullanılan tek anahtarlı kimlik mekanizması.
Açık Anahtarlı (asimetrik) kriptografi:
RSA gibi hem şifreleme hemde sayısal imza olanağı sağlayan çok anahtarlı bir şifreleme tekniğidir.
------------------------------------------------------------------------------------------

sistem saati:
işlemci seri nosu
MAC adresi gibi kullanıcıya özel ifadeler eklenir.


Yöntemleri:

DES (data encription standart)
IBM tarafından geliştirilmiş kullanıma açık veri şifreleme yöntemidir.
Mantığı... düz metin 64 bitlik bloklara ayrılır.Her bir blok kendi arasında
permutasyon ve yedeklem işlemlerine tabi tutulur.
sonra güvenli bir yazı bloğu elde edebilmek için Zor kullanılarak orjinal düz yazı ile birleştirilir.
Bu kriptolama 16 kez tekrar edilir.şifrelenmiş metin ortaya çıkar

RSA;açık anahtar kullanır.anahtarları minimum 128 bitten oluştuğu için güvenli
bir şifreleme sunar.
Formulu:(p-1)*(q-1)

DSA:(digital Signature Algorithma):sadece sayısal imzada kullanılır.

windows şifrelerinin kırılması:

Windows şifrelerinin kırılması içi SAM veritabanına ihtiyaç vardır.SAM
veritabanı c:\\\\\\\\\\\\\\\\\\windows\\\\\\\\\\\\\\\\\\syste m32\\\\\\\\\\\\\\\\\\config dizinin de yer alır.
SAM ve System dosyaları bir diskete kopyalanır.

Kopyalanan dosyalar yazılımla DUMP işlemi yapılarak kırılır.
Dosyaların yedekleri c:\\\\\\\\\\\\\\\\\\windows\\\\\\\\\\\\\\\\\\repai r klasöründe yer alır.o anda olan dosyalar repair klasöründedir.

Proactive Windows security:
Bu yazılım local ve uzak bilgisayarların kullanıcı adı ve parolalarını dump
işlemi yaparak elde eder ve saniyede 2 milyon şifre deneyerek kırmaya çalışır.
www.elcomsoft.com internette dictionary tr yani sözlük indir dic. bölümüne ekle

www.crackspider.net Yazılımı local makina üzerinde denemek için Registry of local machine seçilir dump işlemi yapılır.Brute force bölümünden karakterler tanımlanır."recovery"
sekmesinden "start recovery"ile parolalar kırılır.Uzaktaki sistem için iki bölüm kullanabilir.
Birincisi daha önceden uzak bilgisayardan elde edilen SAM ve SYSTEM dosyalarının yeri gösterilir.
"registry files SAM SYSTEM "bölümünden...
uzaktaki kullanıcıya bağlanılarak da parolalar kırılabilir.Eğüer administrator
parolası yok ise "memory of remote computer" bölümünden ip adresi yazılır dump işlemi yapılır.
SAM veritabanı elde edilir.admin parolası var ise bu parolaların uzaktan kırılıp
daha sonra dump edilmesi gerekir.

-------------------------------------------------------------------------------------------------
FSO nesnesi file system object: asp dilinde uzak sunucuya dosya yükleme
,silme,değiştirme gibi işlemlerden sorumludur.
indexi değiştirmek için zehir.asp gibi FSO nesnesi kullanan bir dosyaya ihtiyaç vardır.

Ancak fso nesnesi tek başına çalışmaz bir bileşene ihtiyaç duyar.
Eğer web sunucuda bu bileşen yüklü ise kolay bir şekilde index değiştirilebilir.(upload bileşenleri)
------------------------------------------------------------------------------------------------
lc5setup.exe bu yazılımın ek özelliği windows parolalarını kırıp aynı zamanda networkde paketleri winpcap dosyası yardımıyla dinleyip logon şifrelerini elde eder. 
zaman : Yorum bırak

Enigma Sifresi hakkinda hersey.

Enigma Şifresi , Almanların tarafında 1nci Dünya savaşına olan katkılarından dolayı iyi bilinir.

Almanlar şimdiye kadar bilinegelen Enigma Makinesini geliştirdiler. Makine, düz yazı harflerini şifreli yazı harflerine çeviren 3 ROTORlu bşir sistem üzerine kurulmuştur.

Rotorlar diğer dotorlar ile kendi eksenleri etrafında dönerler,
böylece Sezar Şifresindeki(Caesar Cipher) gibi yer değiştirme işlemini tamamlarlar.

Makinenin klavyesine bir harf basıldığı zaman, önce ilk rotora gönderilir ve makinenin o andaki ayarına göre o harf değiştirilir(başka bir harf ile). Yeni harf, o andaki ayarına göre dönüştürülecek harf ile yer değiştireceği ikinci rotora geçer.

Bu yeni harf üçüncü rotora dönüşerek geçecek, yine uygun olarak yer değiştirecek. Sonra, bu yeni harf bir yansıtıcıdan yansıyacak ve 3 rotordan da ters sırayla geçecek.enigmayı zamanında bu kadar güçlü yapan rotorlarının kendi eksen ler etrafında dönmeleriydi. Düz metin harfi ilk rotordan geçtiğinde ilk rotor bir kere dönecekti.

Diğer, ikinci rotor ilk rotor 26 kez(alman alfabesi için) dönene kadar sabit ve hareketsiz(fonksiyonsuz) kalacaktı. Sonra ikinci rotor harekete başlıyacaktı. İkinci rotor 26 kere döndüğünde(26x26 harf, ilk rotor 26 kez dönmüştü sonra ilk rotor ikinci 26'yı tamamladığında ikinci rotorda bir kez 26yı tamamlamış oldu ), üçüncü rotorda 1 yönde hareket edecekti. Döngü bütün mesajın uzunluğu kadar bunun gibi devam edecekti.Sonuç değişririlen dönüşüm. Diğer bir deyişle, bir "s" ilk bölümde "b" olarak kodlanabilir, ama mesajın ilerleyen bölümlerinde "m" olarak da kodlanabilir. Rotorların dönmesi prensibi 26x26x26 = 17576 mümkün pozisyona izin verir.

Aşağıdaki diyagram "Alan Turing: The Enigma; Simon and Schuster; 1983" 'den alınmıştır. Şekil enigmada bir harfe basıldığında neler olduğuna grafiksel bir açıklama getiriyor.Sadelik için alfabenin ilk 8 harfi aşağıdaki şekilde kullanılmış, oysaki gerçek makinede 26 harf vardır. Aşağıdaki örnekte kullanıcı "b" girdiğinde "d" çıktı alıyor:



Alıcının mesajı dekode edebilmesi için rotorların ilk ayarlarını bilmesi ve şifrelenmiş metni makineye koyması gerekiyor.

Almanlar bütün alıcıların tarihe göre rotorlarını ayarlayabilecwk bir sistem tasarladılar.
Her yazıcının tarihlere göre detaylandırılmış ayarlar kitabı vardı. Bu sistemin en büyük açığı ise işte bu tarih kitabi idi. Açıkçası, biri rotorların ayarlarının belirli günlere göre olduğunu anlasaydı, kendilerinde enigma olduğunu düşünürsek, o günlerin mesajlarını dekode edebilirlerdi.

Enigma şifresi sonunda Alan Turing ve bir grup bilim adamı tarafından savaşın sonlarına doğru kırıldı. Savaşın sonucuna harikulade etkisi olan bu kodun kırılışı , ittifak güçlerinin Alman mesajlarını çözme ve engelleme yeteneğinin önünü açtı. Bazı insanlar, enigma şifresi kırılmamış olsaydı savaşın sonucu çok farklı olurudu diye düşünmüşlerdir..
zaman : Yorum bırak

Internet Üzerinde Kriptografi

Internet milyonlarca bilgisayarın birbirleriyle bağlanmasıyla oluşmuştur; dünya üzerinde anlık iletişim ve bilgi aktarımına olanak tanır. İnsanlar birbirleriyle mektuplaşmak için e-posta kullanırlar. “World Wide Web”, çevrimiçi iş yapmak, veri yaymak, pazarlama, araştırma, öğrenme ve daha pek çok etkinlik için kullanılır. Kriptografi, güvenli web sayfaları ve güvenli elektronik iletim sağlar. Bir web sayfasının güvenli olması için, bilginin tutulduğu ve bilgiyi isteyen makineler arasındaki iletimin şifreli olması gerekir. Bu, insanların, herhangi bir kaygı duymadan çevrimiçi bankacılık ve ticaret yapmasına veya kredi kartıyla alışveriş yapabilmesine olanak tanır. Kriptografi, internet ve elektronik ticaretin büyüyüp gelişmesinde büyük rol oynar. E-ticaret, hızla yayılmaktadır. Internet üzerindeki ticari işlemler, yılda milyar dolarları aşmaktadır. Bu kadar yüksek miktarlar söz konusu olunca kriptografik güvenlik yöntemlerinin kullanımı zorunlu hale gelmektedir.

E-posta, günlük kişisel veya iş yazışmalarında vazgeçilmez bir yere sahiptir. Ancak herhangi bir önlem alınmadığında istenen kişilerce ele geçirilebilir ve değiştirilebilir. Şifreleme, mektupların istenmeyen kişilerce okunabilmesini veya değiştirilmesini engeller. Ayrıca, gönderilen mesajın kaynağının doğrulanması veya mesaj içeriğinin değişmediğinin güvencesinin verilebilmesi amacıyla sayısal imza kullanılabilir.


Internet milyonlarca bilgisayarın birbirleriyle bağlanmasıyla oluşmuştur; dünya üzerinde anlık iletişim ve bilgi aktarımına olanak tanır. İnsanlar birbirleriyle mektuplaşmak için e-posta kullanırlar. “World Wide Web”, çevrimiçi iş yapmak, veri yaymak, pazarlama, araştırma, öğrenme ve daha pek çok etkinlik için kullanılır. Kriptografi, güvenli web sayfaları ve güvenli elektronik iletim sağlar. Bir web sayfasının güvenli olması için, bilginin tutulduğu ve bilgiyi isteyen makineler arasındaki iletimin şifreli olması gerekir. Bu, insanların, herhangi bir kaygı duymadan çevrimiçi bankacılık ve ticaret yapmasına veya kredi kartıyla alışveriş yapabilmesine olanak tanır. Kriptografi, internet ve elektronik ticaretin büyüyüp gelişmesinde büyük rol oynar. E-ticaret, hızla yayılmaktadır. Internet üzerindeki ticari işlemler, yılda milyar dolarları aşmaktadır. Bu kadar yüksek miktarlar söz konusu olunca kriptografik güvenlik yöntemlerinin kullanımı zorunlu hale gelmektedir.

E-posta, günlük kişisel veya iş yazışmalarında vazgeçilmez bir yere sahiptir. Ancak herhangi bir önlem alınmadığında istenen kişilerce ele geçirilebilir ve değiştirilebilir. Şifreleme, mektupların istenmeyen kişilerce okunabilmesini veya değiştirilmesini engeller. Ayrıca, gönderilen mesajın kaynağının doğrulanması veya mesaj içeriğinin değişmediğinin güvencesinin verilebilmesi amacıyla sayısal imza kullanılabilir.
 
zaman : Yorum bırak

BLAKE 2 ile Şifreleme


Kriptografi ile ilgilenenler için , Blake 2 ; MD5 ve SHA 2/3 algoritmalarına yeni bir alternatif olarak geçtiğimiz ay duyuruldu . Blake 2’nin bahsedebileceğimiz en yararlı yanı ; yazılımda yüksek performans ile birlikte MD5’ten daha üst düzey güvenlik sağlaması olarak kayıtlara geçiyor .

Blake 2 , SHA 3 final versiyon Blake’den geliştirilerek yapılmış bir şifreleme olarak karşımıza çıkıyor . Önceki versiyonları gibi yüksek seviye güvenlik sunarken , 64-bit platformlarda MD5 kadar hızlı durumda . Ayrıca düşük sistemlerde , Sha 2/3’den %33 daha az RAM kullanımı gerektiriyor .

Blake 2 , Sha 2/3 ve MD5’e oranla son çıkan Intel işlemcilerde daha üst düzey bir performans gösteriyor . Bunun grafiğini de inceleyelim ;

BLAKE2 iki çeşit ile geldi ;

- BLAKE2b ( ya da sadece BLAKE 2 ) 64 bit platformlara optimize edilmiş olarak — NEON tabanlı ARM’ler de dahil .
- BLAKE2s ise ; 8-32 bit platformlara optimize edilmiş olarak .


MD5 kadar hızlı olan ve geçerli bir alternatif olarak sunuluyor . BLAKE2’nin geliştiricileri de , BLAKE2’nin MD5 kadar hızlı ve performans olarak başabaş bir mücadelede olduğunu belirtiyor . Çoğu insanlar geleneksel olarak MD5’i performans yararlarından dolayı kullanmaktadır fakat görünen o kadar hem performans hem de güvenlik açısından aynı seviyede olduğu belirtilen BLAKE2 , MD5’in tabutuna çivi çakacak gibi görünüyor .
zaman : Yorum bırak

Kripto Termonolojisi


Termonoloji; bir sanat, bir bilim ya da bir teknik dalında özel olarak kullanılan terimlerin tümüne denir. Bu makalemizde Kriptoloji & Kriptografi de sürekli karşılayaşacağımız terimleri anlaşılabilir bir dille anlatmaya çalışacağım.
Şifreleme (encryption): Verinin kriptolanması. Şifreleme süreci mesajı gönderen tarafından gerçekleştirlir burda amaç içeriğin gizli kalması. Şifre çözme işlemei şifreleme sürecinden geçmiş mesajı alan kişinin deşifrelemesiyle ortaya çıkmaktadır. Anahtar (ip ucuda diyebiliriz.) eğer varsa deşifreleme süreci daha kolay olmaktadır.
Deşifre (eecrypting): Verinin kripto özelleiğini yitirmesi.
Şifreli metin (ciphertext): Verinin standart yada özel algoritmalar ile kriptolanması.
Düzmetin (plaintext): Verinin ilk kriptolanmış ilk hali diyebiliriz.
Anahtar: Verinin çözümü için lazım olabilecek ip ucu.
Genel Anahtar (Puplic key): Herkesin görebileceği anahtar.
Gizli anahtar (Secret key): Verinin kriptolanmış halini görmek için iş yarayan anahtardır.
 
zaman : 2 comments

Undetect egitimi



İçindekiler:


1-Temel Kavramlar Nelerdir? 
2-Bu işe nereden başlamalıyım? 
3-Undetect yöntemleri kaç çeşittir? 
4-Runtime UD ve Scantime UD nedir?
5-Anti virüsler bir programı nasıl tarar? 
6-Scantime UD yönteminin mantığı nedir?
7-Runtime UD yönteminin mantığı nedir?
8-Runtime UD yöntemleri için birkaç ipucu? 
9-Runtime UD ve Scantime UD yöntemleri nelerdir? 
10-Klasik yöntemlerin üzerine nasıl çıkılır?
11-Orijinal UD yöntemlerini geliştirmek için dikkat edilecekler? 
12-Anti virüsler temel haliyle nasıl çalışır? 
13-Offsetleri ve algoritmaları anti virüs nasıl tespit ediyor? 
14-Temel UD yöntemleri nelerdir? 
15-Hangi editörleri kullanmalıyım? 



Detected: Anti virüs yazılımları tarafından offsetleri deşifre edilmiş demektir.


Peki, bu “offset” dediğimiz kavram nedir?

Aşağıdaki resimde gördüğünüz kırmızı kare içerisindeki kodlar programın ofsetleridir. Anti virüs yazılımları bu kodları okuyarak programı taramaktadır.





Undetected: Detect kavramının başına “Un” eki getirilerek, birçok anti virüs yazılımı tarafından keşfedilmemiş anlamına gelmektedir.


Undetect kavramının kısaltması Un ve Detect kelimelerinin baş harflerini kullanarak yapılmaktadır. (UD)



Eğer tüm anti virüsler tarafından offsetleri yakalanmıyorsa, Undetect kavramının başına “Full (Tam)” anlamına gelen FullUntedect getirilir. Full, Un ve Detect kelimelerinin baş harfleri kullanılarak kısaltma yapılmaktadır. (FUD) 



Çoğu arkadaşımız bu kavramları karıştırmaktadır. UD en az bir tane anti virüse yakalanmış demektir, FUD ise hiçbir anti virüs tarafından deşifre edilmemiş demektir.



Bu işe nereden başlamalıyım?
1-Programlamanın mantığını öğrenmelisiniz. Bana göre en az bir tane programlama dili öğrenmelisiniz. Çünkü işiniz, yazılımları anti virüslerden kaçırmaktır. Programlar ile içli dışlı olmalısınız.

2-Temel UD yöntemlerini araştırmalısınız ve bunlara vakıf olmalısınız. Eskidi diye önem vermemezlik yapmayın. Çünkü yapacağınız UD işlemleri bunun üzerine kurulacaktır. Bir nevi hayal gücünüzü geliştirecektir.

3-Hex Workshop, OlyDbg, Res Hacker gibi programları öğrenmelisiniz. Merak etmeyin yazının sonunda bu tür programların hepsini tanıtacağım.

Undetect yöntemleri kaç çeşittir?
Undetect yöntemlerini 2 ana gruba ayırabiliriz:

1-Kaynak koddan yaptığımız UD işlemleri 
2-Editörler yardımı ile yaptığımız UD işlemleri




Runtime UD ve Scantime UD nedir?
Scantime(Kod) : Program çalıştırılmadığında anti virüsler tarafından tespit edilemez iken, çalıştırıldığında anti virüsler tarafından yakalanmasıdır.

Runtime(Algortima) : Program hem çalıştırıldığında hem de çalıştırılmadığında anti virüsler tarafından tespit edilememesidir.

Anti virüsler bir programı nasıl tarar?
Anti virüslerin nasıl tarama yaptığını bilmek çok önemlidir. İki ana şekilde tarama yapmaktadır. Şimdi bu tarama şekillerini inceleyelim.

1-Yukarıda bahsettiğim gibi programın offsetlerini tarayarak yapmaktadır. Yani kaynak kodları tarayarak yapmaktadır.

2-Program çalıştığında klasör ve dosya işlemleri, kayıt defteri değişiklikleri ve ağ hareketlenmelerini izlemektedir. Şüpheli bir hareket tespit ettiğinde anti virüs program deşifre olacaktır.

İşte bu iki ana tarama yöntemleri “Scantime UD” ve “Runtime UD” yöntemlerinin ortaya çıkmasını sağlamıştır.

Eğer offsetleri gizlersek programımız Scantime UD olacaktır. Çünkü anti virüs offsetleri taradığında zararlı offsetleri gözden kaçıracaktır ve deşifre edemeyecektir.

Eğer programın görevini yani yaptığı işlemleri değiştirmeden ve yaptığı işlemlere engel olmadan, algoritmasını(programın çalışma mantığı) değiştirirsek Runtime UD yapmış oluruz. Çünkü programın algoritması değiştiğinde veya gizlendiğinde kodları da değişecektir dolaylı olarak da offsetleri değişecektir. Aynı zamanda kayıt defteri, ağ hareketlenmeleri gibi yaptığı işlemler değişecek veya gizlenecektir. Bu durumda anti virüsün tespit edebileceği şüpheli hareketleri gizlemiş olacağız ve program deşifre olmayacaktır.

Kısacası programın kaynak kodlarını gizlemek Scantime UD, programın algoritmasını gizlemek Runtime UD yapar.


Scantime UD yönteminin mantığı nedir?
Hemen yukarıda bahsettiğim gibi, Scantime UD yönteminin mantığı kaynak kodları dolayısıyla offsetleri gizlemektir.
Zararlı Kod
Zararlı Kod
Zararlı Kod
Zararlı Kod
Zararlı Kod
Yukarıdaki tablo bizim programımızın kodları olsun. Yani programımız tüm kodları zararlı kodlardan oluşmaktadır. Bu programın yakalanması sizce de çok basit değil mi?
Gereksiz Kod
Zararlı Kod
Zararlı Kod
Zararlı Kod
Gereksiz Kod
Peki, programımızın kodları bu şekilde olsa ne olurdu? Bence hala yakalanırdı.

Gereksiz Kod
Gereksiz Kod
Zararlı Kod
Gereksiz Kod
Gereksiz Kod
Ya böyle olsaydı ne olurdu? Baya bir gelişme var, baya bir kendisini saklardı bence.


Gereksiz Kod
Zararlı
Gereksiz Kod
Kod
Gereksiz Kod
İşte bu en güzeli değil mi? Zararlı kodlar bir anlam bile taşımıyor ama programın bütününde zararlı kodların işlevi büyük.

Yukarıda anlatmaya çalıştığım şudur. Programın kodları ne kadar alışılmışın dışında olursa, anti virüsler zararlı kodları o kadar gözden kaçıracaktır. 

Ve zararlı kodlarımız ne kadar az olursa program o kadar az saldırgan görünecektir ve deşifre olmayacaktır. Burada bizim yapmamız gereken görev, olabildiğince az miktarda zararlı kodlarla işlem yaptırmak olacaktır.

Runtime UD yönteminin mantığı nedir?
Runtime UD yöntemlerinin algoritmayı gizleyerek yapılacağından yukarıda bahsetmiştim. Anti virüslerin ağ hareketlenmeleri, dosya ve klasör işlemleri ve kayıt defterinde yapılan değişiklikleri kontrol ettiğinde de bahsetmiştim. Bizim görevimiz programın yaptığı işlemleri değiştirmeyerek, yaptığı görevlerin aynısını fakat bunu farklı yollarla yapmasını sağlamak olacaktır.



Yukarıda şekilde kırmızı okun zararlı algoritma, yeşil okun ise deşifre edilmemiş algoritma olduğunu hayal ediniz.
Yukarıdaki şeklin anlatmak istediği şudur. Programa yaptırdığınız işlemler alışılmışın dışında, daha farklı yollar olmalıdır. Programın yaptığı işlemlerin değişmesiyle, programın çalışma mantığı dolayısıyla algoritması değişmektedir. Bu sayede anti virüsler programın çalışma mantığını deşifre edemeyecektir.

Runtime UD yöntemleri için birkaç ipucu?

1-Programınıza çok fazla zararlı kod eklemeyin. Yapması gereken işlem ne ise o kadar zararlı kod ekleyin. Hatta yapacağı görevi en az zararlı kodlarla yapmasını sağlayın.

2-Klasik saldırı yöntemlerini iyi bilin ki onlardan farklı yöntemlerle işlemlerinizi programa yaptırabilesiniz.
3-Program açıldığı anda saldırıya geçmesin. Belli bir süre sonra saldırıya geçsin. Zararlı kodları adım adım işlesin. Tüm zararlı kodları aynı anda çalıştırmasın.

Runtime UD ve Scantime UD yöntemleri nelerdir?
İşte buradan sonrasında yalnızsınız. Benim anlattıklarım işin mantığına yönelikti. Temel yöntemlerden yine bahsedeceğim fakat etkili yöntemler uygulamak istiyorsanız, bu yöntemlerin üzerine çıkmalısınız.

Klasik yöntemlerin üzerine nasıl çıkılır?
Hayal gücünüzü geliştirmelisiniz. İster Runtime UD olsun ister Scantime UD olsun programın çalışmasını bozmadan yaptığınız her işlem UD yöntemini kapsamaktadır. İşte bu durum Undetect dünyasının ne kadar geniş olduğunu ortaya sermektedir.

Orijinal UD yöntemlerini geliştirmek için dikkat edilecekler?

1-Çok iyi bir şekilde programlama öğrenmelisiniz, algoritmada ve kodlarda programı bozmadan kolayca değişiklik yapabilmelisiniz.
2-Anti virüslerin programları nasıl taradığını çok iyi bilmelisiniz.

3-Her UD yöntemi merdivenin birer basamağıdır. Bu yüzden var olan yöntemlerin mantığını kavrayamazsanız, en üst basamaklara çıkamazsınız.
İlk madde olan çok iyi programlama bilmeyi size bu dokümanda anlatmam imkânsız. Programlama apayrı bir dünyadır ve aniden, birkaç bilgi ile öğrenmek imkânsızdır. Uzun emekler sonucu programlamanın mantığını kavrayarak öğrenebilirsiniz. Ama ikinci ve üçüncü maddeye kısaca değineceğim.

Anti virüsler temel haliyle nasıl çalışır?
Daha önceden bahsettiğim gibi, programın offsetlerini ve algortimasını tarayarak çalışmaktadır. Bu ikisinin üzerinde değişiklik yaptığımızda UD işlemini gerçekleştirmiş oluyorduk. Programın çalışmasını bozmadan yaptığımız her işlemde UD yöntemini kapsamaktaydı.

Offsetleri ve algoritmaları anti virüs nasıl tespit ediyor?
Program çalıştığında, anti virüs programın yaptığı işlemleri kontrol ediyor. Programın sadece başlangıca bulaşması anti virüs tarafından tehlike oluşturmazken, bununla birlikte görev yöneticisini devre dışı bırakmak, port açmak gibi işlemler bir arada yapıldığında anti virüs programımızı deşifre edecektir.
Bu yüzden yapılan işlemler olabildiğince az ve klasik yöntemlerden farklı olmadır. Çoğu defa tanık oluyorum. Kişi spyware(casus yazılım) kodluyor. Hata mesajı verdiriyor, görev yöneticisini devre dışı bırakıyor, sistem geri yüklemeyi kapatıyor. Sen casus yazılım mı kodluyorsun yani? Benim bildiğim casus yazılım kendisini kullanıcıya hissettirmez. Casusluk yapar, sisteme zarar vermez. Gereğinden fazla zarar vermek iyi bir şey değildir.

Anti virüs yazılımları, anti virüs firmalarına rapor göndermektedir. En az iki defa zararlı diye gönderilmiş raporlar anti virüs firmalarının laboratuvarlarında incelenmeye alınır. Bu incelemede daha önceden söylediğim gibi programın offsetleri incelenir, programın yaptığı işlemler tespit edilir. 
Daha sonra inceleme sonucunda zararlı olduğu tespit edilirse, anti virüs firmasının havuzuna programın Hex imzası eklenir. Daha sonra bilgisayarlarımızdaki anti virüslerin kendisini güncellemesi ile bu Hex imzaları bilgisayarımızdaki anti virüsün veri tabanına eklenir.
Anti virüs yazılımımız, offsetleri tekrar taradığında veri tabanındaki zararlı Hex imzası ile taranan programın Hex imzasını eşitlemeye çalışır. Eğer eşitlenirse anti virüs programımızı etkisiz bırakarak, hemen karantinaya taşıyacaktır. Yani programımız Detect(deşifre) olmuştur.
Eğer rapor gönderen anti virüslerle programımızı tararsak kendi ellerimizle programımızı kurban etmiş oluruz. Program kısa sürede Detect olacaktır ve yaptığımız UD işlemleri boşa gidecektir.

Temel UD yöntemleri nelerdir?
Gereksiz Kod – Scantime
Gereksiz Algoritma – Runtime
Not: Ben vb.net bildiğim için yöntemleri bu dil üzerinden anlatacağım fakat siz benim yaptığım işlemleri değil de ne amaçla yaptığıma odaklanırsanız UD işleminin mantığını kavramış olursunuz. Bu sayede bildiğiniz programlama diline bu yöntemleri entegre edebilirsiniz.

1-“\” , “.exe” gibi şüphe uyandıracak değerleri şifreleme algoritmaları ile şifrelemelisiniz.

2-Projenize gereksiz formlar, gereksiz kod sayfaları ekleyin.

3-Projenizin assembly bilgilerini ve iconunu değiştirin.

4-Projenizde değişken (Dim) ve sabitlerin (Const) isimlerine anlamsız isimler verin.

5-Projenize anlamsız algoritmalar ile anlamsız kodlar ekleyin. Bu eklediğiniz anlamsız algoritmaları ve kodları, zararlı kodlarınızla iliştirin.

6-Projenizdeki apilerin sıralamasını değiştirin ve sahte api ekleyin.

7-Function ve Sub isimlerinize anlamsız isimler verin.

8-Projenizin derlendiği dizini değiştirin. Örneğin, “c:\” dizininde derleniyorsa, “d:\” dizininde derleyin.


Hangi editörleri kullanmalıyım?

1-Peid: Nesnenin en son ne yapılmış olduğunu gösteren programdır.

2-Hex Workshop: Programın offsetlerini gösteren ve bu offsetler üzerinde değişiklik yapabileceğimiz programdır.

3-OlyDbg(X0R): Bu programda Hex Workshop programına benzerlik göstermektedir. Offsetlerde değişiklik yapabilme imkânı sağlar.

4-Lord PE: Programımızı Hex editörleri ile işlem yaptığımızda çalışmadığı durumda, tekrardan çalışır duruma getiren programdır.

5-Av Fucker: Programın offsetlerini teker teker değiştirerek yeni dosya oluşturur. Sonra anti virüslere taratarak yakalanan offsetlere sahip programlar silinir. Bu sayede hem anti virüslere yakalanmayan offsete sahip program bulunur.

6-Res Hacker: Programın iconunu ve assembly bilgilerini değiştirebilme imkânı sağlar. DLL dosya eklememize de yaramaktadır.

7-Resource Tuner: Program hakkında geniş işlem yapabileceğimiz çok fonksiyonlu programdır.

8-UPX: Exe dosyalarını sıkıştırmaya yarayan programdır.

9-PE Explorer: Programımızda birçok değişiklik yapabilmemizi sağlayan programdır.

Yazının sonuna geldik. Olabildiğince başlangıç seviyesindeki bilgileri verdiğimi düşünüyorum. Bu işe başlamak isteyen arkadaşlar için rehber olacağını düşünmekteyim.

Tüm bu yazıyı PDF olarak indirmek istersen buraya (alternatif) tıkla.