.. | ||
aslr | ||
pie | ||
stack-canaries | ||
cet-and-shadow-stack.md | ||
libc-protections.md | ||
memory-tagging-extension-mte.md | ||
no-exec-nx.md | ||
README.md | ||
relro.md |
Yaygın Binary Saldırı Korumaları ve Atlamaları
{% hint style="success" %}
AWS Hacking'i öğrenin ve uygulayın:HackTricks Eğitimi AWS Kırmızı Takım Uzmanı (ARTE)
GCP Hacking'i öğrenin ve uygulayın: HackTricks Eğitimi GCP Kırmızı Takım Uzmanı (GRTE)
HackTricks'i Destekleyin
- Abonelik planlarını kontrol edin!
- 💬 Discord grubuna katılın veya telegram grubuna katılın veya bizi Twitter 🐦 @hacktricks_live** takip edin.**
- Hacking püf noktalarını paylaşarak PR göndererek HackTricks ve HackTricks Cloud github depolarına katkıda bulunun.
Çekirdek Dosyalarını Etkinleştirme
Çekirdek dosyaları, bir işlem çöktüğünde işletim sistemi tarafından oluşturulan bir tür dosyadır. Bu dosyalar, çöken işlemin bellek görüntüsünü, kayıtlarını ve program sayacı durumunu içeren ayrıntıları içerir. Bu anlık görüntü, çökerken neden olduğunu hata ayıklamak ve anlamak için son derece değerli olabilir.
Çekirdek Dökümü Oluşturmayı Etkinleştirme
Varsayılan olarak, birçok sistem çekirdek dosyalarının boyutunu 0'a (yani çekirdek dosyaları oluşturmaz) sınırlar ve disk alanı tasarrufu yapar. Çekirdek dosyalarının oluşturulmasını etkinleştirmek için ulimit
komutunu (bash veya benzer kabuklarda) kullanabilir veya sistem genelinde ayarlar yapabilirsiniz.
- Ulimit Kullanımı:
ulimit -c unlimited
komutu geçerli kabuk oturumunun sınırsız boyutta çekirdek dosyaları oluşturmasına izin verir. Bu, hata ayıklama oturumları için faydalıdır ancak yeniden başlatmalar veya yeni oturumlar arasında kalıcı değildir.
ulimit -c unlimited
- Kalıcı Yapılandırma: Daha kalıcı bir çözüm için, tüm kullanıcıların oturumlarında ulimit'i manuel olarak ayarlamadan sınırsız boyutta core dosyaları oluşturmalarına izin veren
* soft core unlimited
gibi bir satırı içeren/etc/security/limits.conf
dosyasını düzenleyebilirsiniz.
* soft core unlimited
GDB ile Çekirdek Dosyalarının Analizi
Bir çekirdek dosyasını analiz etmek için, GDB (GNU Debugger) gibi hata ayıklama araçlarını kullanabilirsiniz. Varsayalım ki bir çekirdek dökümü oluşturan yürütülebilir bir dosyanız var ve çekirdek dosyasının adı core_file
ise analize şu şekilde başlayabilirsiniz:
gdb /path/to/executable /path/to/core_file
Bu komut, yürütülebilir dosyayı ve çekirdek dosyasını GDB'ye yükler ve çökme anındaki program durumunu incelemenizi sağlar. GDB komutlarını kullanarak yığını keşfedebilir, değişkenleri inceleyebilir ve çökmenin nedenini anlayabilirsiniz.