WWW2Exec - sips ICC Profile Out-of-Bounds Write (CVE-2024-44236)

Reading time: 4 minutes

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) Jifunze na fanya mazoezi ya Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Support HackTricks

Overview

Ushirikiano wa kuandika nje ya mipaka katika parser ya profaili ya ICC ya Apple macOS Scriptable Image Processing System (sips) (macOS 15.0.1, sips-307) kutokana na uhakiki usio sahihi wa uwanja wa offsetToCLUT katika lebo za lutAToBType (mAB ) na lutBToAType (mBA ). Faili ya ICC iliyoundwa inaweza kusababisha kuandika sifuri hadi byte 16 baada ya buffer ya heap, ikiharibu metadata ya heap au viashiria vya kazi na kuwezesha utekelezaji wa msimbo wa kiholela (CVE-2024-44236).

Vulnerable Code

Kazi iliyo hatarini inasoma na kuweka sifuri byte 16 kuanzia kwenye offset inayodhibitiwa na mshambuliaji bila kuhakikisha inapatikana ndani ya buffer iliyotolewa:

c
// Pseudocode from sub_1000194D0 in sips-307 (macOS 15.0.1)
for (i = offsetToCLUT; i < offsetToCLUT + 16; i++) {
if (i > numberOfInputChannels && buffer[i] != 0)
buffer[i] = 0;
}

Tuangalia tu offsetToCLUT <= totalDataLength. Kwa kuweka offsetToCLUT == tagDataSize, mzunguko unafikia hadi byte 16 baada ya mwisho wa buffer, ukiharibu metadata ya heap iliyo karibu.

Hatua za Utekelezaji

  1. Tengeneza profaili mbaya ya .icc:
  • Jenga kichwa cha ICC (bytes 128) chenye saini acsp na kiingilio kimoja cha lutAToBType au lutBToAType.
  • Katika jedwali la lebo, weka offsetToCLUT kuwa sawa na size ya lebo (tagDataSize).
  • Weka data inayodhibitiwa na mshambuliaji mara moja baada ya block ya data ya lebo ili kuandika metadata ya heap.
  1. Chochea uchambuzi:
bash
sips --verifyColor malicious.icc
  1. Uharibifu wa metadata ya heap: Kuandika sifuri OOB huandika metadata ya allocator au viashiria vya karibu, ikiruhusu mshambuliaji kuchukua udhibiti wa mtiririko na kufikia utekelezaji wa msimbo wa kiholela katika muktadha wa mchakato wa sips.

Athari

Utekelezaji wa mafanikio unapelekea utekelezaji wa msimbo wa kiholela kwa mbali kwa ruhusa ya mtumiaji kwenye mifumo ya macOS inayotumia zana ya sips iliyo hatarini.

Ugunduzi

  • Fuata uhamishaji wa faili kwenye protokali za kawaida (FTP, HTTP/S, IMAP, SMB, NFS, SMTP).
  • Kagua faili zilizohamishwa zikiwa na saini acsp.
  • Kwa kila lebo mAB au mBA , thibitisha ikiwa uwanja wa Offset to CLUT ni sawa na Tag data size.
  • Weka alama kama ya kutatanisha ikiwa hali hii inakidhi.

Marejeleo

  • ZDI blog: CVE-2024-44236: Uthibitisho wa Utekelezaji wa Msimbo wa Mbali katika Zana ya Apple macOS sips https://www.thezdi.com/blog/2025/5/7/cve-2024-44236-remote-code-execution-vulnerability-in-apple-macos
  • Sasisho la Usalama la Apple Oktoba 2024 (patch inayopeleka CVE-2024-44236) https://support.apple.com/en-us/121564

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) Jifunze na fanya mazoezi ya Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Support HackTricks