Pazartesi, Temmuz 03, 2006

Nedir Bu Reverse Engineering dedikleri ?

İlgi alanlarım arasında geçmesine rağmen daha önce hiç Reverse Engineering konusunda yazmamıştım.
Nedir Bu Reverse Engineering* dedikleri şey ?

Herkesin bildiği gibi Engineering 'in karşılığı Mühendislik. Nedir Mühendislik ? Mühendis dediğin Uygulama ve Üretim yapar -asıl olarak - Mesela Bir benzinli motorun çalışma prensibini herkes bilir - Liselerde bile öğretiyorlar- Ama herkes motor üretemiyor, çünkü pek çok uygulma probleminin halledilmesi lazım. İşte mühendisler bu alanlarda çalışırlar. Yani Ana bir fikirden yola çıkıp umumun kullanabileceği bir ürüne ulaşmak. Bunun içinde Hem araştırma geliştir me hemde üretim vardır. İyide Reverse Ne olaki. Reverse'yi ters diye çeviriyorlar ama bu işte bir terslik var . :) buradaki Reverse'nin anlamı ortada bir ürün vardır ve siz o üründen yola çıkıp nasıl üretildiğini anlamaya çalışırsınız. Kısaca Mühendislik fikirden ürüne ise ters mühendislik üründen fikire ulaşır - tabii ki üzerinde ufak tefek değişiklikler yapıp ürünü kendisi üretmek için-

Eğer tanımı anladıysanız, Tarihçesinin de taa tekerleğin icadına kadar gittiğini anlarsınız. Bize ne tekerleğin icadından sen bize düzgün bir örnek ver derseniz, Size common-rail yeni nesil dizel motorları örnek olarak verebilirim.
cdti Opel
crdi Hyundai
hdi Peugeot
cdi Mercedes
jtd Fiat
tdci Ford
bu yani bunu ilk üretenin ürünü üzerinde diğer firmalar RE çalışması yapıp
bazı değişikliklerle başka bir isimde tescil ettirmişler Hepside common rail dir aslında

İyi de kardeşim sen ne diyorsun bir RE denince Cracking işini anlıyoruz. Cevap veriyorum yanlış anlıyorsunuz. Cracking**adı üzerinde kırma işlemidir ve programların lisanssız kullanımını engellemek için konulmuş korumaları kırmaya / kaldırmaya denir. -yazılım alanında tabii ki - RE çok daha geniş manası var ve tabii ki Programlar konusundada uygulaması var. Diyelim ki bir program yazacaksınız ve bu konuda yazılmış çok başarılı bir program var. Alıp incelersiniz.

- Oo programı başarılı yapan ne ? ne gibi eksiklikleri var ?
- Menüleri nasıl düzenlenmiş - hımm biz de benzeri şekilde yapalım aynı kısa yol tuşlarını kullanalım kolaylık olsun-
-Verilerini dosyda şu şekilde tutuyorlarmış - bu veri yapısından import edelim-
-Bunları yapmak için filan kütüphane kullanılmış yada hangi API lar nasıl kullanılmış

gibi pek çok sonuca ulaşabilirsiniz. Tabii bunları yapa bilmeniz için Assembly'yi bilmeniz lazım Bu işler için kullanılan araçları kullanabilmeniz lazım. Anti Debugging tekniklerinide öğrenmeniz lazım. Bu Aynı zamanda kendi kendi ürünleriniz konusunda RE uygulamaya kalkanların işlerini zorlaştırmak için de lazım olur :)
Pek Tabii Bu kadar şeyi bildikten sonra Cracking de yapabilirsiniz. Yalnız sadece program kırmak için bu kadar emek haracamak ne kadar mantıklıdır ? Kırığını bulun ;) daha iyi .

Bu arada Crackingi küçümsediğim anlaşılmasın. Eğer Cracking olmasaydı kim Ne öğrene bilirdi ki. Sadece lisanslı programların kullanıldığı -daha doğrusu lisans ücretleri yüzünden kullanılamadığı- bir ülkede büyüdüğünüzü düşünün. Hemen hemen hiç birşey öğrenemezdiniz. Ama Bu işinde bir ahlakı olmalı diye düşünüyorum. kısaca Cracker RobinHood*** gibi olması lazım Ama bu belkide başka bir yazı konusu...

Son olarak Bir kaç link verelim

http://mdkgroup.com/forum/
http://exetools.com/
http://boomerang.sourceforge.net/
http://lkubaski.free.fr/reverse/reverse.html
http://www.sct.tr.cx/
http://www.dtcg.org/
http://tutorials.accessroot.com/
http://www.informit.com/articles/article.asp?p=353553&seqNum=3&rl=1
http://community.reverse-engineering.net/
http://home.arcor.de/idapalace/

* Reverse engineering (RE) is the process of discovering the technological principles of a mechanical application through analysis of its structure, function and operation. It often involves taking something (e.g., a mechanical device, an electronic component, a software program) apart and analyzing its workings in detail, usually with the intention to construct a new device or program that does the same thing without actually copying anything from the original. The verb form is to reverse-engineer. diyor Wikipedia bir inceleyin derim
** reverse engineering ile karıştırılan manasıyla yoksa başka anlamlarıda vardır
*** cracking dökümanlarında rastlayacabileceğiniz
Bir programı kullanarak para kazanıyorsanız, programı satın alın.
Bir programı eğer gerçekten kullanıyorsanız, programı satın almayı düşünün.
gibi sözlerden anlaşılanda bu.

3 yorum:

Error Inside dedi ki...

www.sct.tr.cx olan site
www.sctzine.com olarak değişirse seviniriz :)

Adsız dedi ki...

www.sct.tr.cx olan siteye
www.sctzine.com adresinden erişmeniz mümkün

bluekid dedi ki...

şu an itibarıyla iki adreste aynı yere gidiyor.

ama illa düzeltin diyorsanız düzeltelim