L'intercettazione delle chiamate di sistema può aiutarti qui. Avvertenza: ti consente di registrare il fatto che un processo comunica con un demone / servizio, ma se il daemon / servizio non è soggetto alla registrazione, non registrerà in modo transitorio le azioni eseguite dal daemon / servizio, quindi non può esporre tutto confuso problemi di vice.
Dalla pagina man di strace
In the simplest case strace runs the specified command until it exits. It intercepts and records the system calls which are called by a process and the signals which are received by a process. The name of each system call, its arguments and its return value are printed on standard error or to the file specified with the -o option.
Poiché l'accesso al file system e la creazione del socket di rete avvengono tramite syscalls, la registrazione di tali chiamate ti consentirà di ricostruire il file e le risorse di rete a cui il tuo programma sta accedendo.
Se vuoi capire a quali risorse stai accedendo, e poi assicurati che il processo non acceda mai più di quello anche se sovvertito, guarda in systrace
.
For complicated applications, it is difficult to know the correct policy before running them. Initially, Systrace notifies the user about all system calls that an application tries to execute. The user configures a policy for the specific system call that caused the warning. After a few minutes, a policy is generated that allows the application to run without any warnings. However, events that are not covered still generate a warning. Normally, that is an indication of a security problem. Systrace improves cyber security by providing intrusion prevention.
Alternatively, policies can be learned automatically. In many instances, the automatically learned policies can be used for sandboxing immediately. Sometimes, minimal manual post-processing is necessary.
Avvertenza: strace
non è stato progettato per la sicurezza il modo in cui systrace
è stato quindi soggetto a condizioni di gara sfruttabili attorno ai parametri syscall. Vedi il commento di D.W. per i punti su come indurire strace
.
Non so molto sull'intercettazione di syscall su Windows, ma STraceNT e vtrace sembra un buon punto di partenza.
StraceNT is a System Call Tracer for Windows. It provides similar functionality as of strace on Linux. It can trace all the calls made by a process to the imported functions from a DLL. StraceNT can be very useful in debugging and analyzing the internal working of a program.
VTrace collects data about processes, threads, messages, disk operations, network operations, and devices. The technique uses a DLL loaded into the address space of every process to intercept Win32 system calls; establishes hook functions for Windows NT kernel system calls; modifies the context switch code in memory to log context switches; and uses device filters to log accesses to devices.