Fork Bomb - Vikipedi
İçeriğe atla
Ana menü
Gezinti
  • Anasayfa
  • Hakkımızda
  • İçindekiler
  • Rastgele madde
  • Seçkin içerik
  • Yakınımdakiler
Katılım
  • Deneme tahtası
  • Köy çeşmesi
  • Son değişiklikler
  • Dosya yükle
  • Topluluk portalı
  • Wikimedia dükkânı
  • Yardım
  • Özel sayfalar
Vikipedi Özgür Ansiklopedi
Ara
  • Bağış yapın
  • Hesap oluştur
  • Oturum aç
  • Bağış yapın
  • Hesap oluştur
  • Oturum aç

İçindekiler

  • Giriş
  • 1 Tarihi
  • 2 Uygulama
  • 3 Önleme
  • 4 Ayrıca bakınız
  • 5 Kaynakça
  • 6 Dış bağlantılar

Fork Bomb

  • Català
  • Čeština
  • Deutsch
  • English
  • Español
  • فارسی
  • Français
  • Hrvatski
  • Bahasa Indonesia
  • İtaliano
  • 日本語
  • 한국어
  • Lombard
  • മലയാളം
  • Polski
  • Русский
  • Simple English
  • Українська
  • 中文
Bağlantıları değiştir
  • Madde
  • Tartışma
  • Oku
  • Değiştir
  • Kaynağı değiştir
  • Geçmişi gör
Araçlar
Eylemler
  • Oku
  • Değiştir
  • Kaynağı değiştir
  • Geçmişi gör
Genel
  • Sayfaya bağlantılar
  • İlgili değişiklikler
  • Kalıcı bağlantı
  • Sayfa bilgisi
  • Bu sayfayı kaynak göster
  • Kısaltılmış URL'yi al
  • Karekodu indir
Yazdır/dışa aktar
  • Bir kitap oluştur
  • PDF olarak indir
  • Basılmaya uygun görünüm
Diğer projelerde
  • Vikiveri ögesi
Görünüm
Vikipedi, özgür ansiklopedi
Çatal bombasının çalışma biçimini gösteren şekil. Süreçler sürekli olarak kendilerini kopyalayarak potansiyel olarak hizmet reddine neden olur

Bilgisayarlı programlamada, çatal bombası (İngilizce: Fork Bomb, tavşan virüsü veya wabbit[1] olarak da adlandırılır), bir işlemin mevcut sistem kaynaklarını tüketmek, kaynak yetersizliği nedeniyle sistemi yavaşlatmak ve sonunda tamamıyla çökertmek için sürekli olarak kendini kopyaladığı bir hizmet reddi saldırısıdır.

Tarihi

[değiştir | kaynağı değiştir]

1978 civarında, wabbit adı verilen çatal bombasının erken bir varyantının bir System/360 üzerinde çalıştığı bildirildi. Washington Üniversitesi'ndeki bir Burroughs 5500'de 1969'da rapor edilen RABBITS adlı benzer bir saldırıdan gelmiş olabileceğini gösteriyor.[1]

Uygulama

[değiştir | kaynağı değiştir]

Çatal bombaları hem çatallanma sürecinde CPU sürecini tüketerek hem de işletim sisteminin işlem tablosunu doldurarak çalışır.[2][3] Bir çatal bombasının temel bir uygulaması, kendisinin yeni kopyalarını tekrar tekrar başlatan sonsuz bir döngüdür.

Unix benzeri işletim sistemlerinde, çatal bombaları genellikle çatal sistem çağrısını kullanmak için yazılır.[3] Çatallanmış süreçler aynı zamanda ilk programın kopyaları olduğundan, çerçeve işaretçisindeki sonraki adresten yürütmeye devam ettiklerinde, aynı sonsuz döngünün kendi kopyaları içinde durmadan çatallanmaya devam ederler; bu, süreçlerde üstel bir büyümeye neden olma etkisine sahiptir. Modern Unix sistemleri, yeni süreçleri çatallanırken genellikle bir yazma üzerine kopyalama kaynak yönetimi tekniği kullandığından[4] bir çatal bombası genellikle böyle bir sistemin belleğini doyurmayacaktır.

Microsoft Windows işletim sistemleri, Unix fork sistem çağrısına eşdeğer bir işlevselliğe sahip değildir;[5] Böyle bir işletim sistemindeki çatal bombası, mevcut bir işletim sisteminden çatallanmak yerine yeni bir süreç yaratmalıdır.

Unix kabuğu için klasik çatallama bombası örneği :(){ :|:& };:, şu şekilde daha kolay anlaşılabilir:

fork() {
  fork | fork &
}
fork

İçinde, bir işlev (fork()) kendisini (fork) olarak adlandırır, daha sonra sonucunu (|) kendisinin bir arka plan işine (&) yönlendirir. Sistem çağrılarındaki sınırlamalar göz önüne alındığında, Windows eşdeğeri batch olarak şu şekilde yazılabilir:

:loop
start %~nx0
goto loop

Bunun daha da kısa bir versiyonu, anonim fonksiyonlar kullanılarak elde edilebilir:

%0|%0

Önleme

[değiştir | kaynağı değiştir]

Bir çatal bombasının çalışma modu tamamen yeni süreçler oluşturarak kapsüle edildiğinden, bir çatal bombasının tüm sistemi ciddi şekilde etkilemesini önlemenin bir yolu, tek bir kullanıcının sahip olabileceği maksimum işlem sayısını sınırlamaktır. Linux'ta bu, ulimit yardımcı programı kullanılarak gerçekleştirilebilir; örneğin, ulimit -u 30 komutu, etkilenen kullanıcıyı sahip olunan maksimum otuz işlemle sınırlayacaktır.[6] PAM etkin sistemlerde, bu sınır /etc/security/limits.conf,[7] de de ayarlanabilir ve FreeBSD'de sistem yöneticisi /etc/login.conf sınırlar koyabilir.[8] Modern Linux sistemleri ayrıca cgruplar ve işlem numarası (PID) denetleyicisi aracılığıyla daha ince taneli çatal bombası önlemeye izin verir.[9]

Ayrıca bakınız

[değiştir | kaynağı değiştir]
  • Kilitlenme
  • Mantık bombası
  • Saatli bomba (yazılım)

Kaynakça

[değiştir | kaynağı değiştir]
  1. ^ a b "wabbit". The Jargon Lexicon. 1 Ekim 2004. 9 Haziran 2003 tarihinde kaynağından arşivlendi. Erişim tarihi: 15 Ekim 2013. 
  2. ^ Secure Computer and Network Systems: Modeling, Analysis and Design. 2008. s. 16. ISBN 0470023244. 
  3. ^ a b Network Dictionary. 2007. s. 200. ISBN 1602670005. 
  4. ^ Operating Systems: A Concept-based Approach. 2006. s. 285. ISBN 0-07-061194-7. 
  5. ^ Python Programming On Win32: Help for Windows Programmers. 2000. s. 35. ISBN 1565926218. 
  6. ^ Advanced Bash Scripting Guide. 2005. ss. 305-306. ISBN 1430319305. 
  7. ^ Linux Administration: A Beginners Guide. 2012. ss. 364-365. ISBN 0071767592. 
  8. ^ Absolute FreeBSD: The Complete Guide to FreeBSD. 2007. ss. 198-199. ISBN 1593271514. 
  9. ^ "Process Number Controller in Documentation/ as appeared in Linux kernel 5.3". 8 Ekim 2019. 8 Ekim 2019 tarihinde kaynağından arşivlendi. 

Dış bağlantılar

[değiştir | kaynağı değiştir]
  • Birçok dilde çatal bomba örnekleri 30 Ekim 2020 tarihinde Wayback Machine sitesinde arşivlendi.
"https://tr.wikipedia.org/w/index.php?title=Fork_Bomb&oldid=33484698" sayfasından alınmıştır
Kategori:
  • İşlem (bilgisayar)
Gizli kategori:
  • Webarşiv şablonu wayback bağlantıları
  • Sayfa en son 19.17, 11 Temmuz 2024 tarihinde değiştirildi.
  • Metin Creative Commons Atıf-AynıLisanslaPaylaş Lisansı altındadır ve ek koşullar uygulanabilir. Bu siteyi kullanarak Kullanım Şartlarını ve Gizlilik Politikasını kabul etmiş olursunuz.
    Vikipedi® (ve Wikipedia®) kâr amacı gütmeyen kuruluş olan Wikimedia Foundation, Inc. tescilli markasıdır.
  • Gizlilik politikası
  • Vikipedi hakkında
  • Sorumluluk reddi
  • Davranış Kuralları
  • Geliştiriciler
  • İstatistikler
  • Çerez politikası
  • Mobil görünüm
  • Wikimedia Foundation
  • Powered by MediaWiki
Fork Bomb
Konu ekle