Hoppa till innehålletHisnLabs
← Ditt operativsystem, din första försvarslinje

Lektion 3 av 4 · 8 min

Hur macOS kontrollerar apparna du öppnar

Kodsignering, Gatekeeper, notarisering och XProtect: fyra kontroller som körs före och efter att du öppnar en app.

Varje gång du öppnar en app för första gången kör macOS en kort serie kontroller innan den startar. För det mesta ser man dem aldrig; du märker bara när en av dem stoppar något. Den här lektionen följer vad som faktiskt händer, med hjälp av Apples egen beskrivning av varje steg.

Kodsignering: bevisar vem som byggde den

Apples säkerhetsdokumentation förklarar att på macOS utförs kodsignering av utvecklaren med hjälp av deras utvecklar-ID-certifikat (utfärdat av Apple). Verifiering av denna signatur bevisar för användaren att en utvecklares programvara inte har manipulerats sedan utvecklaren byggde och signerade den.’ En signatur säger inte att appen är säker; det står att appen är den exakta filen som utvecklaren producerade, oförändrad sedan dess.

Notarisering: Apples egen check

Notarisering är ett separat, extra steg. Apple förklarar att det "kan utföras av vem som helst i mjukvarudistributionskedjan och bevisar att Apple har fått en kopia av koden för att kontrollera [för skadligt innehåll], och ingen [känd skadlig programvara] hittades. Utdata från Notarization är en biljett, som lagras på Apples servrar och som valfritt kan häftas till appen.’ Sedan macOS Catalina gäller den här kontrollen som standard nästan allt du öppnar, oavsett hur den kom till din Mac.

Gatekeeper: kontrollen som körs när du öppnar en app

Gatekeeper är det som faktiskt tillämpar dessa resultat i det ögonblick du dubbelklickar på något. Apple beskriver det som utformat för att säkerställa att endast pålitlig programvara körs på en användares Mac. När en användare laddar ner och öppnar en app, ett plugin-program eller ett installationspaket utanför App Store, verifierar Gatekeeper att programvaran kommer från en identifierad utvecklare, är attesterad av Apple för att vara fri från [känt skadligt innehåll] och att den inte har ändrats. Gatekeeper begär också användargodkännande innan du öppnar nedladdad programvara för första gången för att se till att användaren inte har blivit lurad att köra körbar kod som de trodde helt enkelt var en datafil.’ Det är varningen du ser första gången du öppnar något som laddats ner från internet.

  1. Du laddar ner en app utanför App Store och dubbelklickar på den.
  2. Gatekeeper kontrollerar utvecklarens signatur och letar upp Apples notariseringsbiljett för det.
  3. Om kontrollerna går igenom ber macOS dig fortfarande att bekräfta att du vill öppna den första gången.
  4. Om Apple har återkallat appen, eller om ingenting checkar ut, vägrar macOS att öppna den och berättar varför.

XProtect: tittar efter att appen har körts

Det sista lagret fungerar i efterhand. Apples guide beskriver XProtect som macOS:s "inbyggda antivirusteknik för signaturbaserad upptäckt och borttagning av [känd skadlig programvara]", som "kontrollerar efter känt [skadligt] innehåll närhelst: en app först lanseras, en app har ändrats, [eller] XProtect-signaturer uppdateras", med Apples systemuppdateringar automatiskt, oberoende av dessa signaturer. Om det hittar ett känt hot förklarar Apple att det "blockerar det och flyttar det till papperskorgen. Sedan varnar den användaren i Finder.'

Viktigt att minnas

  • Kodsignering bevisar att en apps fil inte har ändrats sedan dess utvecklare byggde och signerade den; det betyder inte i sig att appen är säker.
  • Notarisering är att Apple kontrollerar en kopia av appens kod innan den kan köras som standard på nuvarande macOS.
  • Gatekeeper tillämpar båda kontrollerna i det ögonblick du öppnar en app, och ber om ditt godkännande första gången.
  • XProtect fortsätter att kontrollera efter att appen har körts, med hjälp av signaturer som Apple uppdaterar automatiskt och oberoende av fullständiga systemuppdateringar.
  • macOS låter dig åsidosätta dessa kontroller för en specifik app i Inställningar, men om du gör det tar du bort ett verkligt skydd, så det borde vara sällsynt och avsiktligt.

Testa dig själv

  1. 1. Vad bevisar egentligen en giltig kodsignatur?

    • Att appen är fri från alla möjliga problem
    • Att appens fil inte har ändrats sedan utvecklaren signerade den — Rätt.
    • Att appen granskades av en människa på Apple
    • Att appen inte kan komma åt internet

    Kodsignering verifierar integritet och utvecklarens identitet, inte att appen på annat sätt är säker eller väluppfostrad.

  2. 2. Vad betyder notarisering, enligt Apple?

    • Apple skrev appen
    • Apple har kontrollerat en kopia av appens kod och hittat inga kända hot — Rätt.
    • Appen köptes från App Store
    • Appen har översatts till flera språk

    Notarisering bevisar att Apple fick koden för att kontrollera, och inget känt för att vara skadligt hittades i den.

  3. 3. När ber Gatekeeper om ditt godkännande för att öppna en app?

    • Varje gång du öppnar en app
    • Endast första gången du öppnar nedladdad programvara — Rätt.
    • Endast för appar från App Store
    • Aldrig, det fungerar tyst

    Gatekeeper begär godkännande första gången du öppnar nedladdad programvara, så du kan inte luras att köra något oväntat.

  4. 4. Hur uppdaterar XProtect sina detektionssignaturer?

    • Endast när du installerar en större macOS-uppgradering
    • Automatiskt, oberoende av fullständiga systemuppdateringar — Rätt.
    • Endast när du kör en skanning manuellt
    • Den uppdateras aldrig när den väl har installerats

    Apple uppdaterar XProtect-signaturer automatiskt och separat från fullständiga systemuppdateringar, ofta dagligen.

Testa det med FireAI

Omsätt den här lektionen i praktiken på din egen Mac.

Källor

Omsätt det på din Mac

Prova alla funktioner gratis i 17 dagar, inget kort behövs.

Ladda ner för Mac Dokumentation