
Archiviazione in chiaro di materiale di licenza sensibile nella memoria di processo in Abacre Restaurant Point of Sale (POS)
Esiste una vulnerabilità in Abacre Restaurant Point of Sale (POS) versioni <= 15.0.0.1656 in cui i dati di licenza sensibili vengono memorizzati in chiaro nella memoria di processo durante il flusso di attivazione del software.
Durante la procedura di attivazione della licenza, l'applicazione genera e processa chiavi di licenza legate al dispositivo che hanno lo scopo di validare l'installazione del software rispetto a una macchina specifica. Tuttavia, questi valori vengono allocati nella memoria di processo senza un'adeguata protezione o meccanismi sicuri di gestione della memoria.
Poiché questi valori rimangono in memoria in forma chiara, un attaccante con accesso locale può collegare un debugger al processo in esecuzione ed estrarre il materiale di licenza direttamente dalla memoria.
Ciò consente il recupero di chiavi di licenza valide che possono poi essere riutilizzate per attivare il software sulla stessa macchina senza acquistare una licenza.
Prodotto: Abacre Restaurant Point of Sale (POS)
Fornitore: Abacre Limited
Versioni interessate: <= 15.0.0.1656
Debolezza principale:
Debolezza correlata:
Durante la routine di attivazione, l'applicazione POS esegue le seguenti operazioni:
L'applicazione non implementa protezioni come:
Di conseguenza, la chiave di licenza può essere estratta utilizzando comuni tecniche di reverse engineering.
Il problema si verifica durante il tentativo di attivazione della licenza, quando l'applicazione processa e valida il materiale di licenza.
In questa fase:
sono tutti temporaneamente memorizzati nella memoria di processo senza offuscamento o protezione.
Un attaccante con accesso locale alla macchina può eseguire i seguenti passaggi:
Poiché la chiave di licenza è memorizzata in memoria in chiaro, può essere estratta direttamente dallo spazio di memoria del processo.
La chiave estratta può quindi essere riutilizzata per attivare il software sulla stessa macchina senza acquistare una licenza.
Le seguenti immagini mostrano l'output del debugger e l'ispezione della memoria a runtime in cui le chiavi di licenza sono visibili nella memoria di processo durante l'attivazione.
![Memory Analysis Evidence] 
![Debugger Memory View]
Le seguenti immagini dimostrano l'attivazione riuscita utilizzando la chiave di licenza recuperata.
![Activated Software Screenshot]
![Activation Confirmation]
![Activated UI State]
Uno sfruttamento riuscito consente a un attaccante di:
Sebbene questo problema impatti principalmente l'integrità del sistema di licenza, dimostra una gestione impropria di informazioni sensibili in memoria.
La vulnerabilità è causata dalla gestione non sicura dei dati di licenza sensibili in memoria. Nello specifico:
Per prevenire vulnerabilità simili, il fornitore dovrebbe:
| Data | Evento |
|---|---|
| 2025 | Vulnerabilità scoperta |
| 2025 | Fornitore notificato |
| 2025 | CVE assegnata |