CRACKING
Crack..!Bu kelime nerden gelmi� neden bunu se�mi�ler o kadar kelime aras�ndan bilmiyorum. Ba�ka bir isim bulunabilirdi bence daha etkili bir �ey ne bileyim. Neyse i�in felsefe ve edebiyat taraf�n� bilmiyorum. Ama bizim yapt���m�z olay bu kelimeyle tabir ediliyor. Biraz daha a�acak olursak Crack k�saca Programc�n�n istemedi�i �eyleri zavall� programa zorla yapt�rmak. Watanda� program�n� delphi, c, basic art�k her neyse yazar. Tabiki bizim gibi keyfinden yada can� s�k�ld���ndan yazmaz, para kazanmak i�in yazar. Yazd��� program�n kopyalan�p da��lmamas� i�ine bir g�venlik �nlemi al�r. Bunu �ayet yapmazsa program�n� sadece bir ki�iye satabilir. Di�erleri de bu arkada�tan kopya alarak ihtiya�lar�n� giderir. Tabiki programc� bunu bildi�i i�in o kadar emek werdi�i, yazarken bileklerini ve klavyesinin 7 ayl�k �mr�n� harcad��� i�in kopyalamaya kar�� program�na bir procedure ekler. ��te biz krakerler burada devreye gireriz.
Bir program� k�rmaya yada tersine �evirmeye (reverse) karar verdi�inizde e�er maksad�n�z , programa bedavadan sahip olmaksa bu i�ten �imdiden vazge�in inan�n ki bu kadar u�ra�maya de�mez ��nk� o program� mutlaka birileri zaten k�rm��t�r ve siz onun crack'ini internette kolayl�kla bulabilirsiniz hatta full versiyonunu da bulman�z m�mk�n olabilir. E�er , ben kulland���m programlar�n benden habersiz ne yapt�klar�n� bilmek istiyorum diyorsan�z ve her �eyin kontrol�m alt�nda olmas�n� istiyorum diyorsan�z devam edin. Demo programlar�n k�r�lmas�n� �rnek olarak vermemiz ise sadece bir ara�t�r ama kesinlikle bir ama� de�ildir. Crackerlar ve programc�lar aras�nda kar��l�kl� bir yar�� vard�r , programc�lar yeni bir koruma geli�tirir crackerlar onu k�rar , programc�lar daha yeni bir koruma geli�tirir ve asla k�r�lamayaca��n� iddia eder , crackerlar yeniden k�rar ve bu sefer programc�lar� tiye al�rlar ,
programc�lar buna �ok k�zarlar ve art�k programlar�n�n i�ine sadece k�rmaya �al��an crackerlar�n fark edece�i t�rden mesajlar b�rak�rlar (PleasefollowmeMRCracker ad�nda bir fonksiyon buna bir �rnek) bu i� b�ylece s�r�p gider ;ama asla k�r�lamayaca�� iddia edilen neredeyse t�m programlar her zaman k�r�lm��t�r. Yani galip gelen taraf hep cracker'lard�r.
Crackerlik Hakk�nda Bilmeniz Gerekenler;
Bir program�n k�r�lmas� o program�n yaz�l�� amac� d���nda davranmas�na sebep olmak olarak yorumlanabilir. Programlar belli bir programlama dilinde yaz�ld�ktan sonra derleyici denilen ba�ka programlar ile �al��t�r�labilir kod haline �evrilir. Bu �al���t�r�labilir kod i�erisinde CPU nun anlayaca�� dilde ve i�letim sisteminin �zelliklerine ba�l� olarak makine dili olarak Hexedecimal (onalt�l�k) bir d�zende bulunur. Makine koduna �evrilmi� programlar i�erisinde programc�n�n yazm�� oldu�u kodu bar�nd�rmazlar. �yle ise program�n i�eri�ini derlenmi� bir koddan a��k ve net bir bi�imde anlamak �ok zordur. Makine dili denilen dil asl�nda rakamsal bir dildir .Bu onalt�l�k say� d�zeninde bulunan kodlar ikilik say� sistemine (binary) d�n��t�r�lerek CPU 'ya gider 0 ve 1 ler bilgisayar�n i�leyi�indeki temel olan elektrik sinyali var (1) elektrik sinyali yok (0) olarak CPU taraf�ndan yorumlanarak programlar i�ler. Makine dilinin bu zor ve anla��lmaz olu�undan dolay� ASSEMBLY dili geli�tirilmi�tir. Bu dil bilgisayar dilleri i�erisinde en alt d�zey programlama dilidir. Bu dil ile yaz�lan programlar CPU ya direkt olarak hitap eder . Fakat bu dil ile uzun programlar yazmak ta olduk�a zor ve gereksizdir. Bunun yerine di�er diller ile yaz�lan programlarda o programlama dilinin yetersiz kald��� ya da yava� kald��� noktalarda daha h�zl� ve direkt eri�im olana��na sahip bir dil olan ASSEMBLY ile prosed�r veya fonksiyonlar yaz�l�r. G�n�m�zde bu sadece baz� ayg�t s�r�c�lerini yazarken yada virus' lerde kullan�lmaktad�r.
Gelelim Windows programlar�na ;
Windows i�in yaz�lan programlar da �e�itli programlama dilleri yada program geli�tirme ara�lar� ile yaz�larak derlenir ve �al��t�r�labilir kod haline d�n��t�r�l�r. Bu �al��t�r�labilir kodun DOS programlar�nda en belirgin fark� i�erisinde kulland��� i�letim sistemini �zel fonksiyonlar�d�r. DOS i�letim sisteminin INTERRUPT denilen baz� fonksiyonlar� vard�r. Bu fonksiyonlar windows i�in yazd���n�z programlar�n i�erisinde direkt olarak yer almazlar bunun yerine Windows i�letim sisteminin hali haz�rda yaz�lm�� fonksiyonlar� kullan�l�r.
Hepimizin mutlaka dikkatini �ekmi�tir Windows / System dizini alt�nda bir �ok DLL uzant�l� dosya mevcuttur. ��te bu dosyalar i�erisinde programlar�n �al���rken kulland��� bir�ok fonksiyon yada tan�m bulundururlar. ��te bu fonksiyonlar programlar� k�rmam�za yard�mc� olacak noktalard�r. Daha �nce de belirtti�im gibi programlar makine dilinde bulunuyordu dosyalarda , �yleyse bunlar� anlayabilece�imiz bir �ekle sokmak i�in bu programlar� ASSEMBLY diline �evirmemiz gerekecek. Bu i� i�in kullanaca��m�z programlara Disassembler denilir . Programlar�n ham i�eri�ini yani onalt�l�k say� d�zenindeki i�eri�ini g�r�nt�leyebilmek i�inse HEX edit�r denilen programlara ihtiyac�m�z olacak . Bunun haricinde ise bazen programlar�n CPU' da ki i�eni� s�ras�ndaki i�eri�ini g�r�nt�leyebilen ve asl�nda programlardaki hatalar� ay�klamak i�in kullan�lan Debugger denilen programlar ise ileride �ok i�imize yarayacak.
�yle ise program k�rmak i�in gerekli olan �eyleri ��yle s�ralayabiliriz;
1-ASSEMBLY dilini bilmek
2- Windows i�letim sistemini iyi tan�mak ve fonksiyonlar�n� bilme (C++ kullananlar bu konuda pek zorluk �ekmeyecektir )
3-�yi bir Disassembler program�
4-Hexedit�r program�
5-Debugger program�
6- Sab�r (en gerekli �ey) .
Bu sayd�klar�m�n
hepsine sahip oldu�unuzda program k�rmak i�in her �eyiniz vard�r anlam�na
geliyor. Gelelim bizi ilgilendiren g�venlik procedurelerine..
Peki nedir
bu procedure ler ve nas�l �al���r ?
Bunlar programc�ya g�re de�i�ir. Ama genellikle baz� kli�ele�mi� y�ntem kullan�rlar.
Bundan ba�ka bir �ok koruma metodu vard�r. Ama temelde 2 �e�ittir bunlar.
Hardware
- donan�m korumas�
Software - yaz�l�m korumas�
(Asl�nda sadece software korumas� vard�r. ��nk� Donan�m� da yaz�l�mla kontrol ediyorlar..)
Ha bu arada
baz�lar� soruyor.
"T�m Programlar� k�ran bir program yok mu ?" diye,
Karde� maalesef bir program� ancak bir insan beyni k�rabilir.
Software
korumalar�.:
Bunlardan biri hemen hemen herkesin kar��la�t��� bir olay �ifre-anahtar sorgusudur.
Program size bir �ifre verir ve karde� �u numaray� ara oradan sana anahtar
kelimeyi werecekler onu yaz�ver diye bir not yazar. Tabi ki i� bu kadar kolay
de�il. Numaray� arars�n k�sa bir sualden sonra bir miktar para isterler. ��te
bu k�s�m kimsenin ho�una gitmez. K���k bir programa (etc. Logo,eta) 600$-850$
gibi manyak bir rakam isterler. Bu herkese ewlat ac�s� gibi koyar. O zaman
zavall� k�vranmaya ba�lar. Sistemi sat�n ald��� yer o program� 5-10 milyona
y�klemi�, �imdi sistem ��km�� kurulumunda ise yeni bir sistem paras� vermesi
gerekmektedir. Tabi ki bizler imdad�na yeti�iriz. Yar� fiyat�na i�i yapar�z
ve iki tarafta mutlu olur.
G�n�m�zde herkesin kulland��� bir �ok cracklerin bulundu�u siteler var. Bunlar
sadece b�y�k firmalar�n ve ortal�kta s�k�a dola�an (zip,office,psp etc..)yaz�l�mlara
��z�mler sunuyorlar. Ki�isel �zel bir yaz�l�m�n yamas�n� kesinlikle bulamazs�n�z.
O zaman i�te ger�ek bir kraker oldu�unuzu g�sterme zaman�d�r. Ordan burdan
patch indirip te ben krakerim diyenlerin yolu burada biter i�te.
Stat� olarak ayn� konumdad�rlar. Fakat biri zirveye s�r�nerek, di�eri ise
ba�kalar�n�n kanatlar�yla u�arak ��km��t�r. Bu noktalar� �ok sewiyorum ��nk�
ger�ekler ortaya ��k�yor.
Bu kadar yeter art�k ufak ufak konuya girelim.
Arkada�lar t�m programlar makine kodunda (EXE,COM) olarak elimize ge�er. Hi�
kimse yazd��� program�n kaynak kodlar�n� satmaz yada piyasaya s�rmez. �yle
olsayd� crack diye bir �ey kalmaz programc�da para falan kazanamazd�. ��te
bilgisayardaki son nokta. Buraya kadar istedi�iniz yoldan gelebilirsiniz (c,basic,pascal,cobol,delphi
etc.) Ama bundan sonras� assembly olacakt�r. �ayet program�n�z�n ba�ka bir
programa ba�l� kalmadan tek ba��na �al��mas�n� istiyorsan�z onu derleyip EXE
veya COM haline getirmeniz gerekir. ��te piyasadaki t�m programlar b�yle yani
makine dili. Biz bu dile assembly diyoruz. Bu dili bilmeden bu i�lere bula�mak
kanats�z u�maya benzer. Tabiki bu dili bilmekle i� bitmez. Baz� programlara
gerek var. Gerekli olan programlar genelde ayn�d�r. Debugger, hex edit�r.
Bu kadar. ��te bu 2 program assembly ile y�r�r, dururlar.
S�rekli olarak assembly diyorum. Bu dili �yle �okta bilmeniz gerekmez. Sadece
komutlar�n ne i�e yarad���n� ��renin biraz tecr�be o kadar.
Gelelim programc�n�n ekledi�i koruma b�l�m�n�n mant���na.
Program size �ifreyi verdi ve anahtar istiyor. Kafan�za g�re yaz�n bir �eyler ve entere bas�n. Kabul etmeyecektir. (tabi o kadar ball� de�ilseniz)
��te burada mant�kl� bir d���nelim
Program girilen anahtar�n yanl�� oldu�u kan�s�na nas�l vard� ?
B�t�n olay
burada ba�lay�p bitiyor. Demek ki do�ru anahtar� biliyor ve girilen de�er
ile k�yaslama yap�p do�ru yada yanl�� diye karar weriyor. Bizim i�imiz program�n
i�indeki o do�ru bilgiyi ele ge�irip tekrar ona vermek. ��te bu olaya crack
diyorlar.
Bu olay�n mantalitesini ele alal�m �imdide.
Bunu nas�l ��zeriz ? Tam olarak assembly bilgimize g�veniyorsak hex edit�rde
kodlar�n i�inden oray� nop laya bilir veya k�yaslamay� ters �evirip kolayca
s�yr�l�r�z i�in i�inden. Tabi ki bu y�ntemi ancak kendi yazd���n�z bir programda
d�ng�y� ters �evirebilirseniz, di�er programlarda da deneye bilirsiniz.
Ben bu olay� 2 kere becerdim. Tavsiye etmem �aft�m kayd�.
Yada g�zel bir debugger y�kleyerek (en babalar� softice) program� �al��t�rmak.
Program �ifre b�l�m�ne gelince program�n tipine g�re ilgili procedur e break
point (k�rma noktas�, durak) koyup i�eri d��mek. (Bu terimler yabanc� gelebilir
a��klayaca��m.) sonra ad�m ad�m giderek karar a�amas�n� atlamak veya de�i�tirmek.
Sonra aradan ��k�nca zaten yolunu bulur gider.
Basit�e izah edersek. Debugger imizi y�kl�yoruz. Program� �al��t�r�p �ifre
a�amas�na gelince debuggerimizi aktif edip program�n kodlar�n� tek tek icra
ediyoruz. Burada programc�n�n mant���n� kap�p hemen m�dahale etmek �nemli.
Softice hakk�nda bilgi i�in softice b�l�m�ne bakabilirsiniz.
Evet arkada�lar birde ayn� y�ntemle program trial, shareware (deneme, k�s�tl�
kull.) modundan full moda ge�i� yaparlar. Olay yine ayn� mant�k biraz farkl�d�r.
Program ilk kurulumunda kay�t k�t���ne (basit prg.lar) yada kendi dosyalar�ndan
birinin i�ine(prof prg.lar)kurulum tarihi not al�r. Sonraki g�nlerde buna
bakarak 20-30 art�k ka� g�nse hesap eder ve o an gelince; buraya kadar ya
sil, ya al, yada k�r beni demeye ba�lar. Bu tip programlar� i�te o sitelerden
birinden indirece�iniz ufak bir patch ile halledip kafan�z� a�r�tmazs�n�z.
Bu patch ler ya dosya yada reg. deki tarihi bulup de�i�tirir, yada program
i�indeki sorguyu de�i�tirirler.
Kimi programlar sadece belli bir kay�t say�s�na ula��nca b�yle bir talepte bulunur. At�yorum 50 kay�ttan yukar�s� i�in al beni der. Nerden biliyor 50 rakam�n� nerden biliyor ? program� yazan amcam �yle demi� ondan. K�yaslamada ilgili lokasyondaki bilgiyi 50 de�ilde 150 yaparsak buda biter.
Bunun gibi
epeyce aptal aptal koruma y�ntemi vard�r.
��te di�erleri..
Hardware korumalar�:
Sentinantel-dungle
korumas�
Bu y�ntemde bilgisayar�n printer ��k��� olan lpt1,2 veya com1,2,3,4 yada usb
portuna, nadirde olsa PCI yada ISA slotlara tak�lan bir elektronik par�a s�z
konusudur. Program �al���nca ilgili porta gider oradan belli cevaplar alarak
o par�an�n varl���n� kontrol eder. �ayet mevcutsa program �al���r. De�ilse
hata mesaj� vererek program� keser. Bu tip korumalarda program� kopyalay�p
alsan�z bile dungle olmadan �al��maz. Dungle l�da heralde adam size veremeyece�ine
g�re orta yerde kal�rs�n�z. Bunu k�rmak i�in �nce dungle nas�l bir �ey onu
bilmek gerekir. A�abilirseniz (com,usb ve lpt tipleri) a��p �iptenmi yoksa
entegre devredenmi olu�tu�una, entegre numaralar�n�n silinip silinmedi�ine
bak�n. Zaten �ipse �ans�n�z yok. Entegre devre ise ve �zeri silinmemi�se ayn�
devreyi yapt�rabilirsiniz. Bu olas�l�k �ok d���kt�r. (Ben hi� kar��la�mad�m!)
Di�er olas�l�k ise yine program�n i�inde. Portta ki sentinental sorgusu 1
tak�m soru cevaptan ibarettir. Sorular sorulur, do�ru,yanl�� cevap gelmesi
veye hi� cevap gelmemesi s�z konusudur. Yine cevaplar k�yaslan�r (!!!!) karar
verilir. Buradaki metot yukar�daki metodun ayn�s�n�. Do�ru cevaplar biliniyor
ve gelenlerle check ediliyor. ��te buras� baltay� vuraca��m�z yer.
Yaln�z baz� programlar sadece a��l��ta dungle kontrol� yaparken baz�lar� s�rekli
olarak program kapanana kadar bu kontrol� yap�yor. B�yle bir durumda s�rekli
olarak bizim yerimize bu sorgular� denetleyecek bir TSR program yazmam�z gerekecektir.
Yada programdaki ilgili procedure � komple iptal etmek gerekir. Bunlardan
birini se�mek o anki duruma kal�r.
Bios-hdd no-donan�m seri numaralar�
Buraki metod
programc�n�n size gelip program� kurmas� ve elindeki k���k bir programla donan�m�n�zdaki
bir par�an�n numaras� al�p ilgili program�n kontrol�ne vermesidir.
Program her aktif olu�ta �rn.Bios seri numaras�na bakar eline verilen numara
ile ayn� ise �al���r de�ilse �al��maz. Bu y�ntemle yaz�l�m ba�ka makineye
gidip gitmedi�ini anlar ve kendini korur.
(hava o kadar so�uk ki ellerim dondu klavyenin �st�nde hareket etmiyor. S�rekli
Backspace e basmaktan yoruldum.)
��z�m yine ayn�d�r. Sorguyu baltalamak yada kontrol edilen ana bilgiyi yenisiyle
de�i�tirmek.
Maalesef arkada�lar insan beyninin yapt��� bir kilidi yine ba�ka bir insan beyni a�abiliyor. Bu kanunu kim koymu� bilmiyorum fakat ger�ekler b�yle.
Arkada�lar eskilerden bir d�k�man buldum. Burada �zel bir firman�n yazd��� program� Avusturyadan getirtti�i dungle lar ile nas�l g�venli�e ald���n� ve benim nas�l m�cadele etti�imi yazm���m ilgilenenler buradan sonras�n� okuya bilirler..
Kuyumcu otomasyon program�
Her crack sayfalar�nda yazar "bilgi ama�l�d�r" Sa�ma.. O bilgiyi ��renince vatanda� uygulamaya ge�er ve bilgisi peki�ir. Haliyle verilen ve al�nan bilgiler do�ruysa birileri zarar g�rmeye mahkumdur. Bende yaz�yorum ki buradaki bilgiler yeni cracker lar yeti�tirmek i�indir. Bu yaz�l�m furyas�na ve aptalca programlara fahi� fiyat isteyenlere dur demenin zaman� geldi..!!
Bu arada mesela logo al�nteri program�n�n a���� ilk kurulumda �ifre isterken bir DEBUGGER ile araya girip memory dump edilecek olursa istenilen �ifre g�r�lebilir. Bug �n� ele alacak olursak eski 1999 tarihli bir al�nterini kurun makinaya �ifre program�n� �al��t�rmadan ��k�n, daha sonra 2000 g�ncelleme s�r�m�n� �zerine y�kleyin.. Bu kadar. Dizin alt�na ge�ip atr yaz�p logo ya girebilirsiniz. Bu olay ise program�n bir bug �. Zavall� yazarlar ve �izerler bu durumu g�zden ka��rm��lar. Dolay�s� ile bunlar ka��r�lmayacak bug lard�r. Sadece herkeste olan bir �eyi kullanmas�n� bilmek laz�m o da beyin..
Ge�enlerde elimdeki bir program� k�rmak i�in yola ��kt�m. (KDV dahil program�n orjinal fiyat� 1350$. My god.!! Buna bu kadar para werilir mi ? Program� alaca��ma 1 bilgisayar daha al�r�m diye d���nenlere yard�mc� olmak bizim g�rewimiz..) S�rekli olarak vakit ay�ramad���m i�in 3 g�nde k�rd�m program�. Fakat bir yama program� yazmak (crack) o kadar kolay olmad�. Yakla��k olarak 9 g�n�m� ald�. Yukar�daki algoritma gibi geli�medi�i i�in konuyu biraz daha a��yorum. K�rmak istedi�im program LPT1 �zerindeki bir sentinental i ar�yor (Dungle) e�er bulamaz ise �al��m�yor. Bulursa haliyle art�k.. Bu tip donan�m korumal� programlar k�rmak o kadar kolay de�il. Pekte zor de�il. Sadece biraz assembly bilmek (softice �n i�ine d��t���n zaman orada neler d�d���n� anlayacak kadar..), exe, com dosya tipleri ve �al��malar� hakk�nda bilgi sahibi olmak, �zerinde �al��t���n�z i�letim sisteminin nas�l �al��t���n� ve bir ka� yard�mc� program� kullanmas� bilmek gerekiyor.
A�a��daki yazacaklar�m dungle korumal� bir program�n nas�l k�r�ld���d�r. Herkesin anlayabilece�i bir dilden yazmaya gayret ettim. :) ama yine baz� terimlerin t�rk�esi yok bildi�iniz gibi ... :)
Gerekli olacaklar ;
1- Softice (Windows alt�nda �al��an herhangi bir versiyonu)
2- K�r�lacak dungle korumal� bir program :-)
3- Bir adet bunlar� y�netecek beyin (zannedersem herkeste war..)
Ba�lamadan �nce bir tak�m a��klamalar yapay�m ki olay daha iyi anla��ls�n.
K�rmak istedi�im program �zel bir yaz�l�m. Baz� �zel bilgisayar yan �r�nlerini kullan�p kumanda ediyor. Program iki par�a. Orjinal program EXE format�nda, dungle kontrol� yapan ve bu exe dosyas�n� �al��t�ran program ise COM tipinde. Exe kendi ba��na �al��m�yor. Exe ba��l��� de�i�tirilmi� ve program i�erisinde belirli baz� byte lar �e�itli kap�lardan ge�irilerek de�i�tirilmi�. Yani exe ba�l���n� d�zeltsek bile program yine �al��m�yor. Com ise vir�tik bir yap�da yaz�lm�� ve kodlar tamamiyle �ifreli. Com �al��t�ktan sonra s�rekli olarak ilerki sat�rlarda de�i�iklik yap�yor, jmp komutuyla kod aralar�na atlay�p stil de�i�tiriyor, 01h ve 03h kesmelerini kendi i�erisine y�nlendiriyor. SS ve SP illegal yollardan de�i�tirilip program aras�na bir debugger ile giri� engellenmi�. ��te o a�amada bellekte kendini decode ediyor ve ba�ka bir lokasyona tekrar yaz�yor kendini. Orada dungle kontrol�n� yap�yor ve yoksa ekrana mesaj bas�p y�klendi�i b�lgeyi tamamiyle 00h �le dolduruyor ve arkas�nda iz b�rakmadan ��k�p gidiyor. Eger varsa, exe dosyas�n� a��yor belle�e y�kl�yor. Belirli b�lgelerde de�i�iklik yap�yor PSP olu�turuyor ve Exe dosyas�na yol veriyor. Tabiki exe yi y�kledikten sonra kendi kodu �zerine de yaz�yor. Yine iz b�rakmadan bellekten ��k�yor. Com dosyas�n�n i�erisinde de�i�iklik yapam�yorum ��nk� �ifreleme algoritmas�n� ��zmeye zaman�m olmad�. Neticede Exe dosyas�na bula�mak istemedim yol �ok uzundu. Bende oturup assembly dilinde k�sa bir TSR program par�as� yazd�m. Ger�ektende iyi �al��t� ama.. :-) Neyse uzatmayal�m.. Gelelim nas�l yapt���ma..
�nce softice � a��p lpt1 kap�s�na bir bek�i yerle�tirdim ve dedim ki.. "Bruder, bu kap�dan giren veya ��kan olursa bi zahmet bana haber ver" We softice dan ��kt�m. (Softice komutu = bpio 378 rw) ve (Ctrl+D) Bu arada Program�n lpt1 �zerinde arayaca�� dungle tak�l�. Program� �al��t�rd�m ve hoop kap�daki bek�iden bir haber geldi. "Abi buraya biri kap�dan girmek istiyo.." Tamam dedim ve bek�iyi hemen aradan ��kard�m. (bd *) Kontrol art�k benim elimde. Sat�rlar� tek tek icra etmeye ba�lad�k. Son derece masum bir �ekilde programc���m�z lpt1 kap�s�ndan okuyo, yaz�yo de�i�kenlere al�yor, xor,ror,shl,rol kap�lar�ndan cx kadar ge�iriyor vs.vs.vs. Zaten yakla��k olarak en az 27 kere o sat�rlardan her g�n ge�tim CS:IP takip etmekten g�zlerim d�nm��t�. Neticede oradan ald��� verileri �e�itli �ekillere sokup de�i�kenlerin i�ine yerle�tirdi. Ve bunlar� kontrol etti Tam 5 yerde ve ka� kere yineledi�ini sayamad�m. En ufak bir �eli�kide tekrar d�n�yor. Ve bir kere okunmuyor veriler. Gelelim sadete her �ey yolunda ise belli bir yerde registerlerin i�erikleri kontrol ediliyor. Herkes alaca�� de�eri alm��sa s�ra de�i�kenlere geliyor onlarda tamam sa bu kontrol d�ng�s�nden ��k�l�yor ve EXE dosyas� a��lmak isteniyor. Zaten buradan sonras� bizi ilgilendirmiyor. He he..
Derken LPT1 den dungle denen z�mb�rt�y� ��kard�m. Bek�iyi yine yerine yerle�tirdim ve tekrar program� �a��rd�m. Yine ayn� olaylar Taki register i�erikleri ve de�i�kenlerin kontrol edildi�i yere kadar. Buraya gelince bakt�m program s�rayla registerleri kontrol ediyor, program diyo "cmp ax,2020" ben hemen ax registerinin de�erini k�yaslanan de�er yap�yorum. (r ax=2020) Tabiki baz� i�erikler kontrol edilmiyor, neden ? program algoritmas� b�yle. �a��rtmaca. Program ax in i�eri�ini konrol ediyor ve e�er ax tamamsa demk ki �u de�i�kenin i�erisinde �u war, DS i�erisinde ise bu war mantalitesi ile gidilmi�. E�er sen sadece kontrol edilen yerleri de�i�tirirsen program di�er tarafta �ak�l�p kal�yor. Bende Program�n kulland��� t�m de�i�kenlerin i�eri�ini ve register i�eriklerini bir �nceki �al��mada not ald�m. He he he.. ve yerlerine yerle�tirdim. B�yle b�yle yeterince devam ettik. Bir ka� kerede flaglar� de�i�tirdikten sonra softice i�erisinden ��kt�m (Ctrl+D) vee exe dosyas� yakla��k (4 sn) sonra �al��t�. Tabiki bende m�thi� bir sevin�..
Bundan sonras� art�k kolay. Program tekni�i art�k ��z�lm�� ve sadece bunlar� benim yerime yapacak bir program yazmaya gelmi�ti. Yazd�p�m program ise com tipi bir TSR (yani s�rekli olarak bellekte duruyor ve �al���yor). Benim program belle�e yerle�tikten sonra Kendinden sonra �al��acak olan dosyay� bekliyor. �al��an dosya e�er bu programa ait dosya ise i�lem ba�l�yor. Peki nas�l biliyorum. �al��acak olan program�n i�erisindeki birka� byte t� ar�yorum o an �al��an programda. yok sa demekki ba�ka bir program �al��m��. ��lem yapm�yorum. Warsa bizim program demektir bu.. Wee Show zaman�. Bellekteki orjinal program kodlar�n�n yan�na gidiyorum ve bu 5 yerdeki de�i�kenlerin i�erisine direk aranan de�erleri yaz�yorum. Register i�erikleri i�inse program�n i�erisinde g�z�me kestirdi�im bir yerden itibaren yeni kodlar� yaz�yorum. Ve i�im bitiyor. ( tabiki burada biraz bu i�ten anlayanlar soracaklar. "Sen de�i�kenin iceri�ini de�i�tirdin ama program �al���rken okuyaca�� de�erleri gelip senin de�erlerin �zerine tekrar yazacak ve program eski d�zenine d�necek" Burada verece�im cevap ise gayet basit . Benim program bellekte buldu�u bu kurban program�n kodlar�n� s�rekili olarak takip ediyor nereye giderse gitsin yine buluyor ve s�rekli olarak g�ncelleniyor de�i�imler. Zaten registerlerin i�erikleri i�in kod yazm��t�m program gelirken onlar�da kendisi haz�rlay�p kontrol noktas�na geliyor ve her�ey tamam exe dosyas� i�in haz�rl�klar ba�lay�nca bizim program art�k kendini durduruyor. Sadece bellekte bo� yere yer kapl�yor. We exe dosya y�klenip �al���yor. Sonu� olarak ekrana hemen ad�m�z� yaz�yoruz.
Cracked by CIWATA�
Mutlu son..
(Tabiki program yazarlar� i�in ayn� �eyi s�yleyemem.. :) )
Arkada��m�z Crack olay� ile ilgili Screen Shot lar�yla birlikte tutorial g�ndermi�.
Kendisine te�ekk�r ediyorum. Crack olay� ve tecr�be i�in yararl� olur. �ndirmek
i�in TIKLAYIN
Arkada�lar bu yaz�n�n telif ve yay�n haklar� Ciwata.net e aittir. �zinsiz olarak �o�alt�l�p yay�nlanamaz.
Bye by Ciwata�