Son zamanlarda bir aile Bash BUG ile ilgili güvenlik açıkları, GNU / Linux, MAC OS ve bazı Unix'teki en yaygın yorumlayıcıdır ve S olarak adlandırılmıştır.cehennemŞok veya Bashdoor (CVE-2014-6271). Bu konudaki en önemli ve endişe verici konu, söz konusu HATA'nın son 20 yıldır Bash'te bulunmasıyla ilgili olduğundan, konunun ciddiyetinin Heartbleed'den bile daha büyük olduğu tahmin ediliyor.
NS Bash HATA veya ShellShock Kendi başına kötü amaçlı bir kod değildir (bilgisayar virüsleri, casus yazılımlar, kötü amaçlı yazılımlar vb.), bu nedenle virüsten koruma veya benzeri sistemler tarafından algılanamaz ve engellenemez, ancak yazılım uygulamasında "acı çeken" düzeltilmelidir.
Bu öğreticinin, burada açıklandığı gibi bilgisayar bilimi araştırma ve çalışmasıyla ilgili amaçlar için kontrollü ortamlarda uygulanması önerilir.
Bash BUG ShellShock nedir?
Temel olarak sorun, Bash'in komut dosyası işlevlerinin tanımını ortam değişkenlerinde saklaması olasılığında, daha doğrusu bu işlevlerin Bash tarafından nasıl yüklendiğinde yatmaktadır.
Hata, bir ortam değişkeninde, işlev tanımından sonra, işlevi yükledikten sonra Bash'in ayrıştırmaya ve yürütmeye devam edeceği ek kod eklendiğinde ortaya çıkar.
Aşağıdaki komutla, "x" değişkenine boş bir fonksiyon tanımı, rastgele kod yüklendi ve ardından Bash çağrıldı.
Bash'i çağırmadan önce, ortam değişkeni yüklendi ve konsolda "savunmasız" dizesini gösteren enjekte edilen kod yürütüldü (elbette daha kötü olabilirdi!). Daha sonra Bash yürütüldü ve yankı komutu örnek olarak çağrıldı. Testi gerçekleştirmek için komutun daha basit bir çeşidi:
$ env x = '() {:;}; echo savunmasız 'bashBu son komut, Bash sürümünde HATA varsa ekranda "savunmasız" dizesini gösterecek veya yamalı bir sürümse hiçbir şey göstermeyecektir.
Giriş bölümünde belirtildiği gibi, bu HATA, bir saldırgan tarafından bilgisayarları uzaktan kontrol etmek için kullanılabilecek bir güvenlik açığı ailesini belirler. Bu varyantlar içinde bazıları biraz daha karmaşık, bazıları çok basit ve bazıları az çok karmaşıktır. Apache ve CGI modülleriyle ilgili, diğerleri DHCP istemcisi için ve bazıları diğerlerinden biraz daha ayrıntılı varyantlar vardır.
Bu kılavuz için en basit durumlardan biri kullanılacaktır, GNU / Linux DHCP istemcisine shellShock saldırısı.
İlgili SistemlerKurban Sunucusu:
Bash 4.3 ile GNU / Linux
DHCP istemcisi isc-dhclient-4.2.4
IP 192.168.1.88 (DHCP aracılığıyla)
Saldıran Ana Bilgisayar:
Windows XP
DHCP Sunucusu "tftp32", Ph. Jounin
IP: 192.168.1.100
BÜYÜT
Kavram kanıtı için, hem Kurbanın hem de Saldırganın bağlı olduğu bir LAN varsayıyoruz.
DHCP istemci yazılımı yönetim izinleriyle yürütüldüğünden, saldırgan, kurbana atanan DHCP yapılandırmasındaki bazı DHCP seçenek parametrelerine kötü amaçlı kod eklemeye çalışacaktır.
İşlem
1) Saldırgan DHCP hizmet yazılımını çalıştırıyor {(ftp32 ”by Ph. Jounin) bu kılavuz için kullanıldı}
1.1) Kullanılacak ağ arayüzünü seçin ve "Ayarlar" düğmesine basın
1.2) Seçenekleri yalnızca DHCP hizmetini çalıştıracak şekilde yapılandırın.
1.3) "DHCP" sekmesine gidin ve aşağıdaki gibi yapılandırın:
1.4) Not "Ek Seçenek" alanında, seçenek 114 (VOIP'de kullanılır) belirtilmiş ve seçenek ayrıntısı alanına Bash işlevinin tanımı ve kötü amaçlı kod girilmiştir:
() {yok sayıldı;}; echo 'KOD ENJEKSİYONU'; / bin / kedi / vb / şifre1.5) "Tamam" a basın, DHCP hizmeti hazır.
2) Kurbanın sistem terminalinde, DHCP isteğini yürüttüğümüzde sistemin Syslog'unu açığa çıkarmak için aşağıdaki komutu yürütün:
# tail -f / var / log / syslog &3) eth1'in kurbanın ağ arabirimi olduğunu varsayarsak, DHCP istemcisini çalıştırın:
# dhclient eth14) Komut, DHCP talebini ve Saldırganı ilgili atamayı yapacaktır:
5) Kurbanın terminalinde, arka planda sistem syslog'unu gösteren tail komutu sayesinde, enjekte edilen kodun yürütülmesi görüntülenecek, bu durumda "ENJECTED CODE" dizesi görüntülenecek ve ardından dosyanın içeriği görüntülenecektir. / etc / kurbanın şifresi (çok daha kötü olabilirdi …):
Bu son kısım komut sayesinde "/ bin / kedi / vb / şifre”Seçenek 114 olarak belirtilen dizenin bir parçası olan.
Saldırgan, Kurbanın DHCP istemcisi bu ayrıcalıklarla çalıştığı için "kök" izinlerine sahip olduğu için başka komutları çalıştırabilir ve herhangi bir eylemi gerçekleştirebilirdi.
HususlarBu kılavuz için, Victim sisteminde değişiklik yapılmadan ortak yazılım kullanılmıştır. Bu güvenlik açığı, sistemde parametreleri veya komut dosyalarını yürütmek için Bash kullanan diğer uygulamalarda bulunur.
zorunlu mu bu tür saldırıları önlemek için ilgili güncellemeleri sisteme uygulayın.
Burada sunulan içeriğin hem saldırının mekaniğini anlamak hem de bu son nokta hakkında farkındalık yaratmak açısından faydalı olduğunu belirtmekte fayda var. Bu kararın en az 20 yıldır yürürlükte olduğunu unutmayın, bu nedenle yayınlanmadan çok önce uygulanmış olabilir.
Bu Eğitimi beğendiniz ve yardım ettiniz mi?Yazara olumlu puan vermek için bu düğmeye basarak yazarı ödüllendirebilirsiniz.