È possibile che un file PDF caricato danneggi un server Apache, se non è possibile trovare il percorso file? Cioè, il file PDF non può essere visualizzato dal browser o accessibile da un percorso conosciuto una volta caricato.
Ho una funzionalità all'interno di un sito Drupal che consente a chiunque di caricare un file PDF per far sì che venga eseguita qualche elaborazione ImageMagick. Il file risultante è un JPEG.
Il file PDF viene eliminato automaticamente non appena viene visualizzato il file JPEG. Ma sono preoccupato che anche durante il breve tempo di elaborazione, un PDF dannoso potrebbe danneggiare il server. O che l'elaborazione IMageMagick può essere interrotta e consentire al file PDF di vivere sul server.
Ecco la procedura:
L'utente cerca e sceglie il file PDF.
Utente salva il nodo.
- la possibilità di visualizzare il PDF caricato prima di salvare il nodo è stata disabilitata (non impostata nel modulo, non solo nascosta)
- durante il caricamento, il nome del file PDF cambia e il nome della directory di caricamento contiene una stringa casuale
- esiste un limite per la dimensione del file
- presumibilmente il mimetype viene rilevato usando PHP FileInfo ma non posso dire se funziona (un test indica che non lo è)
Si verifica l'elaborazione di ImageMagick.
Il nuovo nodo viene visualizzato automaticamente.
- Il file PDF viene automaticamente eliminato non appena viene visualizzato il nodo
- Il nuovo nodo contiene solo un collegamento al JPEG risultante