TLDR

  • Jamf ha analizzato PamStealer, un malware macOS distribuito come falso Maccy clipboard manager.
  • La catena usa uno script AppleScript/JXA come stager e un secondo payload Rust su Apple Silicon.
  • La parte più interessante è il furto password: il malware mostra un prompt nativo e valida localmente la password via PAM.
  • Per difendersi servono download solo da fonti ufficiali, attenzione ai file `.scpt`, controllo dei login item e segnali come Script Editor che scarica o firma app.

Perché conta ora

macOS non è un talismano.

È un sistema molto più difeso di anni fa, certo. Gatekeeper, notarizzazione, TCC, XProtect, Full Disk Access, permessi granulari. Tutto utile. Tutto necessario.

Ma l'utente resta una superficie d'attacco.

PamStealer è interessante perché non prova solo a essere invisibile. Prova a essere credibile. Si presenta come Maccy, un clipboard manager legittimo e molto usato, poi costruisce una catena che sfrutta abitudini normali: aprire un download, seguire istruzioni, premere Run, inserire la password quando macOS sembra chiederla.

Il furto non arriva come un fulmine.

Arriva come una finestra familiare.

Il falso Maccy

Il progetto Maccy reale non è il problema.

Il problema è il sosia.

Secondo Jamf, PamStealer è stato distribuito tramite un sito che imitava Maccy e offriva un file dentro un disk image. Il contenuto visibile era un file AppleScript, Maccy.scpt, che macOS apre in Script Editor.

Qui entra la parte sociale: l'utente vede istruzioni che lo invitano a eseguire lo script. Il codice reale è nascosto più in basso, dietro una grande quantità di spazio vuoto.

Non è una vulnerabilità spettacolare.

È una leva sul comportamento umano.

Lo stager: AppleScript e JXA

Il primo stadio non ruba tutto.

Prepara.

Il file AppleScript contiene un payload JavaScript for Automation, cioè JXA, che scarica e avvia il secondo stadio usando API native di macOS. Questo è importante perché riduce alcuni segnali rumorosi. Non è il classico script che apre una shell evidente e lancia comandi riconoscibili.

Lo stager controlla anche l'ambiente: architettura, locale, tastiera, fuso orario, segnali anti-analisi. Nei campioni osservati, il payload era mirato ad Apple Silicon.

L'obiettivo è semplice: eseguire solo dove conviene.

Il prompt che verifica la password

La parte più cattiva è il prompt.

Il secondo stadio, scritto in Rust, mostra una finestra nativa che sembra una normale richiesta di autorizzazione macOS. Chiede la password dell'utente.

Fin qui, purtroppo, niente di nuovo.

La differenza è che PamStealer non si accontenta di qualunque testo. Valida localmente la password con PAM, il sistema Pluggable Authentication Modules usato da macOS per autenticazioni locali. Se la password è sbagliata, la finestra torna. Se è corretta, il malware prosegue.

Questo cambia la qualità del furto: l'attaccante ottiene una password verificata.

Non un tentativo.

Il decoy finale

Dopo aver ottenuto ciò che vuole, il malware mostra una falsa finestra che dice che l'app è danneggiata e va spostata nel cestino.

È una mossa elegante nel senso peggiore: l'utente pensa che il download fosse rotto, elimina l'esca e passa oltre. Nel frattempo il payload può aver già impostato persistenza, letto clipboard, preso dati da browser, wallet, Keychain o chiesto Full Disk Access con un'altra finestra ingannevole.

Il messaggio di errore diventa anestesia.

Non segnala il fallimento dell'attacco.

Ne copre il successo.

Cosa controllare

Su un Mac sospetto, guarda:

  1. File .scpt scaricati da poco.
  2. Script Editor che effettua richieste di rete.
  3. Script Editor che avvia codesign.
  4. Bundle dentro ~/Library/Application Support/ con nomi simili a componenti Apple.
  5. Login item nuovi o sospetti.
  6. Processi chiamati Finder fuori dai percorsi Apple.
  7. Accessi ripetuti alla clipboard.
  8. Richieste di Full Disk Access non coerenti.
  9. Cache HTTP associate a bundle anomali.
  10. Download da domini simili ma non identici al sito ufficiale.

Il segnale più utile è spesso la combinazione.

Un file .scpt non è automaticamente malware. Script Editor che scarica, firma e lancia un bundle finto in Application Support è un'altra storia.

Difesa pratica

Per utenti tecnici:

  • scarica app solo dal sito ufficiale o da repository verificati;
  • controlla bene domini simili;
  • non eseguire file .scpt scaricati da Internet se non sai esattamente cosa fanno;
  • diffida di istruzioni che chiedono di premere Run in Script Editor;
  • verifica periodicamente login item e Full Disk Access;
  • usa un password manager e riduci l'abitudine di digitare la password macOS;
  • tieni attivi XProtect, Gatekeeper e aggiornamenti;
  • usa un account non admin per il lavoro quotidiano quando possibile.

Per aziende:

  • monitora Script Editor e JXA;
  • alert su codesign lanciato da Script Editor;
  • blocca esecuzione di script non approvati;
  • controlla bundle in Application Support con nomi Apple-like;
  • raccogli log TCC, login item e process execution;
  • addestra gli utenti a riconoscere prompt fuori contesto.

Errori comuni

Il primo errore è dire "su Mac non succede".

Succede. Meno spesso in certi segmenti, in modo diverso, ma succede.

Il secondo errore è fidarsi di una finestra solo perché sembra nativa. Un prompt bello non è una prova di legittimità.

Il terzo errore è credere che l'app sia davvero rotta quando compare il messaggio finale. In molti attacchi moderni, il falso errore è parte dell'esecuzione riuscita.

Il punto

PamStealer non insegna che macOS è fragile.

Insegna che l'interfaccia è un campo di battaglia.

La password non viene rubata rompendo il sistema. Viene chiesta con il tono giusto, nel momento giusto, dentro una finestra che sembra abbastanza normale.

La sicurezza del Mac non è solo patch.

È anche sapere quando non premere Run.

FAQ

Che cos'è PamStealer?

È un infostealer macOS osservato da Jamf che si presenta come una copia malevola di Maccy, un clipboard manager legittimo.

Perché PAM rende l'attacco più credibile?

Perché il malware può verificare localmente se la password digitata è corretta. Se l'utente sbaglia, il prompt torna e chiede di riprovare.

Maccy è compromesso?

No. Il rischio descritto riguarda un sito e un pacchetto falso che imitano Maccy, non il progetto legittimo.

Gatekeeper blocca questo attacco?

Non sempre. La catena sfrutta il fatto che un file `.scpt` aperto in Script Editor può essere eseguito dall'utente, anche se porta attributi di quarantena.

Cosa controllare su un Mac sospetto?

Login item, bundle finti in Application Support, Script Editor che fa rete o avvia codesign, processi che imitano Finder e accessi ripetuti a clipboard o Keychain.

Fonti