Tersine Mühendislik Nedir ?

Capture The Flag etkinliklerinde siber güvenlik dünyasında önemli bir yere sahip olan, bir aygıt yada yazılımın ne iş yaptığının analiz ile anlamaya çalışılması işlemi olan Tersine Mühendislik (Reverse Engineering), Makine Mühendisliği, Elektronik Mühendisliği, Yazılım Mühendisliği ve Kimya Mühendisliği gibi alanlarda kullanılmaktadır.

Yazılımda Tersine Mühendislik

Yazılımda Tersine Mühendislik, uygulama bilgilerini elde etmek için bir yazılım sistemini kısmen veya tamamen analiz etme eylemidir. Yazılımda Tersine Mühendislik, kod kırma, bulmaca çözme, programlama ve mantıksal analiz gibi çeşitli işlemleri birleştirmektedir. Tersine Mühendislik becerileri, virüsleri ve kötü amaçlı yazılımları tespit etmek ve etkisiz hale getirmek ve fikir hakkını korumak için de kullanılmaktadır.

Reversing işlemi, kötü amaçlı yazılım zincirinin her iki ucunda da yaygın olarak kullanılmaktadır. Kötü amaçlı yazılım geliştiricileri genellikle işletim sistemlerindeki ve diğer yazılımlardaki güvenlik açıklarını bulmak için reversing işlemini gerçekleştirmektedir. Bir tarafta yazılan bir yazılımın açıklarını tespit etmek için tersine mühendislik yapılırken, diğer tarafta ise bu  açıklıkları sömürmek için yazılmış zararlı yazılımların tespiti için tersine mühendislik yapılmaktadır.

Zararlı yazılım analistlerinin çokça iç içe olduğu Tersine Mühendislik terimi, zararlı yazılımların ve ya bir programın incelenmesi açısından iki yöntem kullanılmaktadır. İlk olarak incelenecek olacak programın disassembly kodları incelenebilir, bir diğer yöntem olarak programın dinamik olarak çalışabilirliği, fonksiyonları adım adım test edilebilir. Bu yöntemlere Statik Analiz ve Dinamik Analiz adları verilmektedir.

Protecter’lar

Çeşitli 3. parti yazılımlar ile oluşturduğunuz yazılımların kaynak kodlarının erişilmesi – düzenlenmesi engellenebilmektedir .