Vorrei proteggere un gestionale che ho realizzato, c'è modo di monitorare se qualche altra applicazione sta leggendo i dati in memoria e intervenire di conseguenza?
Vorrei proteggere un gestionale che ho realizzato, c'è modo di monitorare se qualche altra applicazione sta leggendo i dati in memoria e intervenire di conseguenza?
Ovviamente si puo' fare, ma bisogna hookare parti dell'API del sistema operativo. Inutile dire che si tratta di andare a mettere le mani nel kernel e ovviamente il metodo e' OS-specifico, cioe' non e' portabile tra Linux, Windows, macOS.
Probabilmente esistono software di sicurezza che permettono di impedire che altre applicazioni leggano le aree di memoria di un determinato programma. Ricordo che Kaspersky Internet Security, alcuni anni fa, aveva un modulo (forse il firewall) che includeva questa funzione.
È sostanzialmente una perdita di tempo; puoi fare tutte le barriere che vuoi, ma nel momento in cui si attacca un kernel debugger la memoria è tutta visibile senza alcun problema. Physical access = root access, e anche senza accesso fisico difendere un'applicazione che gira su una macchina non tua (dove l'attacker ha un utente amministratore) è una battaglia persa in partenza per definizione.
Amaro C++, il gusto pieno dell'undefined behavior.
Concordo con MItaly ... tempo sprecato.
No MP tecnici (non rispondo nemmeno!), usa il forum.