
TL;DR
Luka CVE‑2025‑43300 to błąd zapisu poza bufor (CWE‑787) w ImageIO, wyzwalany podczas przetwarzania specjalnie przygotowanego pliku graficznego (m.in. DNG). Apple potwierdza doniesienia o wykorzystaniu w atakach ukierunkowanych. Patch dostępny m.in. w iOS/iPadOS 18.6.2, 17.7.10, 16.7.12, 15.8.5 oraz macOS Sequoia 15.6.1 / Sonoma 14.7.8 / Ventura 13.7.8. Z perspektywy ATT&CK zdarzenie odwzorowujemy na T1203/T1658 (Exploitation for Client Execution). SOC powinien szukać koincydencji: (1) napływ/miniaturyzacja obrazu (DNG/RAW/JPEG‑L) → (2) awarie/EXC_BAD_ACCESS w QuickLook*/ImageIO → (3) sieć z procesów sandboxowanych, a następnie pilnie aktualizować urządzenia.
Krótka definicja techniczna
CVE‑2025‑43300 to out‑of‑bounds write w frameworku ImageIO prowadzący do korupcji pamięci podczas parsowania złośliwego obrazu. Wektor ataku jest sieciowy (np. treści w komunikatorach, podgląd miniatur, przeglądarka/QuickLook), a wyzwolenie może następować bez pełnej interakcji użytkownika w określonych przepływach, jednak oficjalny wektor CVSS NVD oznacza UI:R. Błąd został naprawiony „poprawioną kontrolą zakresów”.
Gdzie występuje / przykłady platform
- iOS / iPadOS: poprawki w 18.6.2 (20 VIII 2025), backporty: 16.7.12 i 15.8.5 (15 IX 2025), 17.7.10 (20 VIII 2025).
- macOS: Sequoia 15.6.1 / Sonoma 14.7.8 / Ventura 13.7.8 (20 VIII 2025).
- CISA KEV: luka dodana 21 VIII 2025 (termin dla agencji federalnych: 11 IX 2025).
- Konsekwencje dla SOC: dotyczy stacji macOS oraz urządzeń iOS/iPadOS w BYOD/COPE, MDM i środowiskach hybrydowych (M365/Slack/WhatsApp jako nośnik obrazów). (Łańcuchy ataków z WhatsApp CVE‑2025‑55177 były publicznie raportowane).
Szczegółowy opis techniki (jak działa, cele, skuteczność)
ImageIO to systemowy framework odpowiedzialny za dekodowanie/miniaturyzację wielu formatów (w tym RAW/DNG). Błąd dotyczy ścieżki dekodowania — w analizach poprawek wskazywano na komponenty RawCamera i JPEG Lossless w DNG; naprawa polega na dołożeniu warunków granicznych (bounds check), co sugeruje klasyczne przepisanie poza zaalokowanym buforem przy niespójności metadanych vs strumień JPEG‑L. Taki prymityw bywa szczególnie cenny, bo może prowadzić do RCE w kontekście procesu przetwarzającego obraz (np. QuickLook* lub serwisy komunikatora). Apple odnotował „ekstremalnie wyrafinowany atak” na wąską grupę celów; niezależne raporty prasy branżowej potwierdzają łańcuchy z udziałem WhatsApp (oddzielna CVE po stronie aplikacji).
Artefakty i logi
| macOS Unified Logging | process == "QuickLookUIService" / QuickLookSatellite / ThumbnailsAgent | crashe/EXC_BAD_ACCESS wokół parsowania obrazu; korelować z otwarciem/miniaturą pliku .dng | log show --last 1h --predicate 'process CONTAINS "QuickLook" AND (eventMessage CONTAINS "EXC_BAD_ACCESS" OR eventMessage CONTAINS "abort")' |
| macOS CrashReporter | ~/Library/Logs/DiagnosticReports/*.crash | sygnatury KERN_INVALID_ADDRESS dla QuickLook*/aplikacji wyzwalającej | Wpisy „Exception Type: EXC_BAD_ACCESS (SIGSEGV)” w czasie otwarcia/preview DNG. |
| Quick Look cache (forensics) | /private/var/folders/.../C/com.apple.QuickLook.thumbnailcache (index.sqlite / thumbnails.data) | ślady miniatur plików przetwarzanych przez QuickLook | Uwaga: dostęp ograniczony od Mojave; przez cały czas użyteczne w analizie powłamaniowej. |
| iOS sysdiagnose/Unified Logs | zrzuty AUL/sysdiagnose | anomalia w logach ImageIO/QuickLook w oknie ataku | Metodyka akwizycji AUL/sysdiagnose do IR. |
| EDR telemetry (macOS/iOS) | Process/File/Crash/Network | sekwencja: plik .dng → crash QuickLook*/aplikacji → outbound z procesu sandbox | Ogólna metodyka korelacji (proces/plik/sieć). |
| M365 Defender (AH) | DeviceCrashEvents/DeviceProcessEvents/DeviceFileEvents | zdarzenia z hostów macOS (iOS jeżeli wspierane przez MDM/defender) | Wzorce zapytań w sekcji 7. |
| CloudTrail | – | [nie dotyczy] (luka kliencka na Apple OS) | – |
| K8s audit / ESXi | – | [nie dotyczy] | – |
| M365 Audit (Unified Audit Log) | – | [nie dotyczy] | – |
Detekcja (praktyczne reguły)
Sigma (macOS, proces crash + korelacja z DNG)
title: macOS QuickLook/ImageIO Crash After DNG Handling (CVE-2025-43300 Lead) id: 4a1e2a2d-3f2d-4e05-9f60-ql-dng-crash status: experimental description: Detects crashes of QuickLook*/ImageIO-related processes shortly after handling .dng images (possible exploitation attempt of CVE-2025-43300) author: Badacz CVE date: 2025/11/11 references: - https://support.apple.com/en-us/124925 - https://nvd.nist.gov/vuln/detail/CVE-2025-43300 logsource: product: macos category: process_crash detection: sel_proc: Image|endswith: - "/QuickLookUIService" - "/QuickLookSatellite" - "/com.apple.quicklook.ThumbnailsAgent" sel_msg: Message|contains: - "EXC_BAD_ACCESS" - "SIGSEGV" near_file: TargetFilename|endswith: ".dng" timeframe: 5m condition: sel_proc and sel_msg and near_file fields: - Image - ParentImage - TargetFilename - Message - CrashType falsepositives: - Uszkodzone/niestandardowe pliki DNG z aparatów - Znane błędy QuickLook (wysokie CPU/mem) level: high tags: - attack.t1203 - attack.t1658Splunk (SPL)
Crash + korelacja z DNG w oknie 5 min
(index=edr OR index=os) (sourcetype=mac:crashreporter OR sourcetype=mac:unifiedlog) (process_name="QuickLookUIService" OR process_name="QuickLookSatellite" OR process_name="com.apple.quicklook.ThumbnailsAgent") ("EXC_BAD_ACCESS" OR "SIGSEGV" OR "KERN_INVALID_ADDRESS") | eval _time_crash=_time | join type=inner host [ search index=edr sourcetype=mac:file (file_path="*.dng" OR file_name="*.dng") | bin _time span=5m | stats earliest(_time) as first_seen by host file_path process_name ] | where abs(_time_crash - first_seen) <= 300 | table _time host process_name file_path MessageKQL (Microsoft 365 Defender, Advanced Hunting)
let crashWin = 5m; let crashes = DeviceCrashEvents | where OSPlatform == "macOS" | where ProcessName in~ ("QuickLookUIService","QuickLookSatellite","com.apple.quicklook.ThumbnailsAgent") | where CrashType has_any ("EXC_BAD_ACCESS","SIGSEGV","KERN_INVALID_ADDRESS") | project DeviceId, CrashTime=Timestamp, ProcessName, CrashType; let dng = DeviceFileEvents | where OSPlatform == "macOS" | where FileName endswith ".dng" | project DeviceId, FileTime=Timestamp, FileName, FolderPath, InitiatingProcessFileName; crashes | join kind=innerunique (dng) on DeviceId | where CrashTime between (FileTime .. FileTime + crashWin) | project CrashTime, DeviceId, ProcessName, CrashType, FileName, FolderPath, InitiatingProcessFileName | order by CrashTime descAWS CloudTrail / CloudWatch (zapytanie)
[brak danych / nie dotyczy] — luka dotyczy endpointów Apple, nie usług AWS.
Elastic EQL (endpoint)
sequence by host.id with maxspan=5m [file where file.extension == "dng" and process.name in ("IMTransferAgent","Messages","Safari","Finder")] [process where process.name in ("QuickLookUIService","QuickLookSatellite","com.apple.quicklook.ThumbnailsAgent") and (event.action == "crashed" or message like "*EXC_BAD_ACCESS*" or message like "*SIGSEGV*")]Źródła kontekstowe: Apple advisories; ATT&CK T1203/T1658; Unified Logging/QuickLook procesy.
Heurystyki / korelacje
- Łańcuch czasowy: pojawienie się nowego .dng (z komunikatora/WWW/preview) → crash QuickLook*/aplikacji → nietypowy ruch sieciowy z procesu sandbox (np. krótkie połączenia TLS do świeżych domen).
- Artefakty miniatur: świeże wpisy w Quick Look cache powiązane z plikiem, choćby jeżeli został usunięty.
- Kampanie łańcuchowe: jeżeli w telemetrii widać WhatsApp/Messages poprzedzające crash oraz aktualizacje łatające CVE‑2025‑55177, podnieś priorytet incydentu.
False positives / tuning
- Uszkodzone lub nietypowe DNG z aparatów/oprogramowania RAW mogą powodować crashe QuickLook bez intencji atakującego. Ogranicz reguły do korelacji DNG + crash + źródło z sieci/komunikatora.
- Znane problemy wydajnościowe QuickLook (wysokie CPU/awarie) mogą generować szum — filtruj po rozszerzeniu .dng i wąskim oknie czasowym.
Playbook reagowania (SOC/IR)
- Triage & isolacja: odseparuj urządzenie (macOS/iOS) od sieci. Zanotuj wersję OS i poziom łatek.
- Zbierz dowody:
- macOS: log collect --last 2h --output ~/suspect.logarchive oraz ostatnie .crash dla QuickLook/aplikacji.
- iOS: wywołaj sysdiagnose zgodnie z procedurą IR/MDM i zabezpiecz backup.
- Łańcuch zdarzeń: skorelkuj plik .dng (DeviceFileEvents/EDR) z crash (DeviceCrashEvents) i ruch sieciowy procesu.
- Eradykacja: usuń/freeze nośnik (wiadomość/załącznik), zablokuj domeny IOC jeżeli są znane.
- Remediacja: aktualizuj do wersji zawierających poprawkę (poniżej) i wymuś update przez MDM.
- Hunt wsteczny (30–90 dni): wyszukaj sekwencje DNG → crash QuickLook; sprawdź skrzynki/komunikatory osób wysoko‑profilowych.
- Raportowanie: jeżeli masz przesłanki łańcucha z WhatsApp, oznacz incydent jako high‑confidence targeted i eskaluj do CSIRT.
Przykłady z kampanii / case studies
- Apple: w opisach łatek firma wskazała na wysoce wyrafinowany atak na wybrane osoby.
- CISA KEV: CVE dodane 21 VIII 2025 (patch compliance dla instytucji federalnych do 11 IX 2025).
- Media / analizy: doniesienia o łańcuchu z CVE‑2025‑55177 (WhatsApp) oraz backportach poprawek przez Apple.
- Reverse engineering/patche: analiza Quarkslab wskazuje na ścieżkę DNG + JPEG Lossless (RawCamera) i dodane sprawdzenia granic. (Używaj do zrozumienia ryzyka, nie do ofensywy).
12) Lab (bezpieczne testy)
Tylko bezpieczne środowisko testowe / brak exploitów. Celem jest weryfikacja telemetrii i reguł.
- Próbki DNG (nieszkodliwe): pobierz legalne przykładowe DNG z publicznych datasetów (np. strony producentów aparatów).
- macOS — generowanie miniatur:
- qlmanage -p ~/Samples/*.dng (podgląd) oraz log stream --style syslog --predicate 'process CONTAINS "QuickLook"' — weryfikuj, iż pipeline telemetryczny widzi akcję. (Apple Developer)
- Korelacja w SIEM: odtwórz zapytania z sekcji 7 i sprawdź, czy pojawiają się zdarzenia File→Process/Crash (bez crasha, ale z wejściem i logami).
- iOS (MDM): dostarcz nieszkodliwy obraz .dng do urządzenia testowego (np. przez AirDrop/MDM Content Push), zbierz sysdiagnose i sprawdź logi ImageIO/QuickLook. (pat_h/to/file)
Mapowania (Mitigations, Powiązane techniki)
Mitigations (ATT&CK):
- M1051 – Update Software: wymuszaj szybkie wdrożenie wersji z poprawką.
- M1040 – Behavior Prevention on Endpoint: reguły EDR blokujące anomalię decode/parserów obrazów.
- M1031 – Network Intrusion Prevention: sygnatury/heurystyki na C2 po udanym wyzwoleniu.
Powiązane techniki:
- T1203 / T1658 (egzekucja), T1189 (wejście przez WWW) / T1566 (dostarczenie w wiadomości), w zależności od scenariusza.
Źródła / dalsza lektura
- Apple advisories: iOS/iPadOS 18.6.2 (20 VIII 2025); macOS Sequoia 15.6.1, Sonoma 14.7.8, Ventura 13.7.8; iPadOS 17.7.10; backporty 16.7.12 i 15.8.5 (15 IX 2025). (Apple Support)
- NVD/CVE details (CVSS/KEV/chronologia): (CVE Details)
- MITRE ATT&CK: T1203 (Enterprise), T1658 (Mobile), wersjonowanie v18.0. (MITRE ATT&CK)
- Opis kampanii/łańcucha z WhatsApp: The Hacker News (backport + łańcuch CVE‑2025‑55177). (The Hacker News)
- Analiza techniczna patcha/ścieżki DNG/JPEG‑L: Quarkslab. (Quarkslab Blog)
- Kontekst ImageIO/0‑click powierzchni parsowania: badania o ImageIO/QuickLook i Unified Logging. (googleprojectzero.blogspot.com)
Checklisty dla SOC / CISO (krótko)
SOC (operacyjne):
- Czy SIEM/EDR ma reguły z sekcji 7 (crash QuickLook*/ImageIO + .dng)?
- Czy korelujesz zdarzenia plikowe .dng z procesami QuickLook*/aplikacją w oknie ≤5 min?
- Czy włączono hunting retrospektywny 30–90 dni dla sekwencji DNG → crash → sieć?
- Czy MDM wymusza aktualizacje do wersji z poprawką?
CISO (strategiczne):
- SLA patchowania Apple OS zredukowane <14 dni dla VIP/HTA.
- Polityka monitoringu komunikatorów (telemetria endpointowa) dla załączników obrazów.
- Testy tabletop dot. 0‑day/0‑interaction w kanałach mobilnych.
- Przegląd pokrycia ATT&CK: T1203/T1658 + mitigacje M1051/M1040/M1031.
Rekomendacja: potraktować CVE‑2025‑43300 jako priorytet krytyczny na urządzeniach VIP i w zespołach wysokiego ryzyka, wdrożyć aktualizacje i utrzymywać reguły detekcji oparte na sekwencji zdarzeń, nie na pojedynczym sygnale.





![Krytyczna podatność w Androidzie umożliwia zdalne wykonanie kodu, bez interakcji ze strony użytkownika [CVE-2025-48593]](https://sekurak.pl/wp-content/uploads/2025/11/Zrzut-ekranu-2025-11-7-o-13.55.14.png)