Tersine Mühendislik Başlangıç Terminolojisi

Berhan Bingöl
2 min readOct 12, 2021

--

Decompilers

Binary dosyalarını C++ gibi daha yüksek seviyeli dillere çevirir.

Disassemblers

Binary dosyaları assembler diline çevirir.

Debuggers

Çalışmakta olan bir programı inceleyip hatalarını veya nasıl çalıştığını anlamanıza yarayan programdır.

Hex Editors

Binary dosyanın içeriğini görüntülemenize ve düzenlemenize izin verir.

Encode, Decode

Encode, bir kodu ve ya dizini base64 gibi türde şifrelemek.

Decode, şifrelenmiş kodu çözer.

Bilinmesi gereken bir diğer şey ise farklı türdeki programlama dilleridir. CPU’dan düşükten yükseğe soyutlama seviyesidir.

  1. Makine Kodu, bir CPU tarafından yürütülen 1'ler ve 0'lardır.
  2. Assembler bir sonraki seviyedir ve insan tarafından okunabilen ilk seviyedir, C++ gibi dillerden daha zor okunur.
  3. Derlenmiş olarak da adlandırılan üst düzey diller arasında C ve C++ bulunur ve bunlar işlevsel olarak okunabilir kodun ilk düzeyidir.
  4. Yorumlanan Diller, Perl, PHP, Python ve Ruby gibi dillerdir. Çalıştırmak için bir ortam gerektirir. Daha kolay anlaşılabilir ama daha yavaştır.
  5. Bytecode Dilleri, Java ve .NET gibi yorumlanan diller gibi platformlar arası olan, ancak derlenmiş dillere benzer okunabilirlik ve hıza sahip dillerdir.

Özet:

  1. Binary sistemden assembler geçmek için bir disassembler kullanın.
  2. Binary’den daha yüksek dile geçmek için bir decompiler kullanın.
  3. Binary dosyasının içeriğinin düzenlemek için bir hex editör kullanın.
  4. Çalışırken bir uygulamayla etkileşim kurmak için debugger kullanın.

--

--

No responses yet