Sto cercando di iniettare un SO in un processo che inizia a usare systemd init system (utilizzando LD_PRELOAD), ma non viene caricato nel nuovo processo.LD_PRELOAD non caricato su systemd
ho rispettato un SO di base (unrandom.c):
int rand(){
return 42; //the most random number in the universe
}
con la riga di comando:
gcc -shared -fPIC unrandom.c -o unrandom.so
ho cambiato il file .Service per includere:
Environment="LD_PRELOAD=/tmp/unrandom.so"
Dopo aver avviato il servizio, la variabile di ambiente LD_PRELOAD esiste nel processo, ma la SO non viene iniettata
cat /proc/<PID>/maps
Mi manca qualcosa?
La mia macchina è RHEL7
Funziona se si esegue da una shell? – hek2mgl
sì, se sto eseguendo il comando direttamente dalla shell funziona ... –
Avrei bisogno di testarlo. Posso darti un feedback la sera. Btw, strana idea! :) Posso chiederti perché lo stai facendo? – hek2mgl