it-swarm-eu.dev

C'è un modo per scaricare un PHP senza che sia eseguito?

Recentemente ho ricevuto una mail di phishing di qualità insolitamente scadente; "Accedi immediatamente al seguente link, poiché siamo la tua banca, lo sai" -ish. Il link punta a un URL non convincente con .php alla fine.

Mi chiedevo perché avrebbero potuto usare uno script PHP invece di falsificare l'aspetto di una determinata pagina e inviare i dati inseriti a un modulo.

Non voglio davvero fare clic sul collegamento per scoprirlo, ma mi piacerebbe sapere cosa sta per fare questo PHP sta per fare. C'è un modo per scaricare lo script, ad esempio come hai potuto con il JavaScript lato client?

O non riesco ad accedere al PHP, poiché viene eseguito dal server?

Esistono altri modi per analizzare questo file e il suo comportamento senza alcun pericolo?

20
Zaibis

Se il server è configurato correttamente, non è possibile scaricare un PHP. Verrà eseguito quando chiamato tramite il server web. L'unico modo per vedere cosa fa è ottenere l'accesso al server tramite SSH o FTP o qualche altro metodo.

Questo perché PHP è un linguaggio lato server, tutte le azioni vengono eseguite sul server, quindi il risultato viene inviato al tuo browser (che è client laterale).

Se hai paura di pasticciare con il tuo sistema, puoi usare Virtualbox con Ubuntu VM e aprire la pagina da lì. Se fai un'istantanea del VM = dopo l'installazione e prima di fare cose pericolose, puoi in seguito tornare a quella istantanea e annullare tutto ciò che lo script avrebbe potuto fare sulla VM.

65
SPRBRN

Come altri hanno già detto, il file PHP viene eseguito sul lato server, a meno che il server non sia impostato in modo così errato da servire semplicemente l'origine.

Se desideri esaminare ciò che viene inviato al tuo client senza la possibilità che ciò comporti qualcosa di spiacevole, utilizza un editor di testo come Blocco note per aprire l'URL. Cioè, usa File → Open ma apri l'URL anziché un file reale.

Il server interpreterà la richiesta e invierà ciò che normalmente invierebbe a un browser. Il tuo editor di testo lo riceverà, ma tutto ciò che un editor di testo può fare è visualizzare se per la modifica. Non si avvicinerà mai a un browser o altro motore di rendering da eseguire.

12
Andrew Leach

Il file .php Viene eseguito sul lato server, quindi purtroppo non è possibile ottenere il codice sorgente. Quello che puoi provare tuttavia è manipolare l'URL con la speranza che l'amministratore di sistema abbia fatto un errore.

Quando un utente visita http://www.example.com/index.php, il server Web genera la risposta HTML eseguendo il file /usr/bin/php Da index.php Da /var/www/html.

I server Web sono in genere configurati per eseguire solo i file .php, Quindi .jpg O qualsiasi altro tipo di file vengono offerti normalmente.

Se un amministratore di sistema smemorato ha creato una copia del file .php A scopo di backup, tuttavia, potresti essere in grado di recuperare la copia senza essere eseguito da /usr/bin/php

Quindi, se l'amministratore di sistema ha fatto una copia come /var/www/html/index.php.bak, Puoi scaricare il suo codice sorgente visitando http://www.example.com/index.php.bak con il tuo browser.

Trovare questi file rimanenti è un'attività complicata, quindi potresti voler dare un'occhiata agli strumenti di fuzzing automatico degli URL.

Infine, ti consiglio di usare curl per fare questi esperimenti, perché non eseguirà JavaScript o Flash sul tuo computer.

1
Gabor

No, non puoi, perché PHP viene eseguito sul server. End.

  1. Non è necessario ottenere il codice, perché non è eseguito sul tuo computer, quindi non c'è rischio per la sicurezza per te.
  2. PHP servirà i siti Web come qualsiasi altro, in modo che non ci sia una risposta specifica per PHP.

    Se sei interessato a una risposta generale, dai un'occhiata a Come posso controllare in modo sicuro un allegato e-mail sospetto? Le sue risposte sono vere anche per l'apertura sicura di siti Web.
1

C'è un modo if il server contiene un exploit LFI: https: //www.owasp .org/index.php/Testing_for_Local_File_Inclusion .

Tuttavia, se il server è configurato correttamente una volta non dovrebbe essere in grado di scaricare PHP.

Di recente ho avuto il piacere di rattoppare questo in un progetto che ho ereditato, quindi perché lo so. Si potrebbe scaricare direttamente PHP dando il nome dello script desiderato sopra il $_GET[] che conterebbe.

A dire la verità, dovresti avere un po 'di fortuna che c'è un exploit possibile e dovresti anche capire come è strutturato il filesystem del server (cioè qual è il percorso relativo dello script che ti interessa rispetto a lo script contenente la vulnerabilità di LFI) Quindi, se hai intenzione di esplorare il server, usa un sandbox/VM. Potresti essere fortunato se il server è davvero mal configurato come suggerito dal commento di Gustavo Rodrigues.

1
Clueless_captain

Non è possibile tramite HTTP perché

A) Il codice PHP scritto nel file, viene eliminato dal file dal server http prima di essere inviato al client http

Quindi un modulo HTML potrebbe fare riferimento a blah.php che contiene uno snippet php, un codice circondato da tag php, che controlla se la password inviata è 1234 ma se dovessi wget blah.php non vedrai quel codice. (anche se il web server di supporto php ti ha permesso di ottenere direttamente blah.php, senza reindirizzarti a ricevere qualche altro file .. non è proprio il blah.php sul server che stai ricevendo). È blah.php elaborato dal server con il codice php rimosso e sostituito con qualunque php emesso. O con qualunque codice lato client (html/javascript) dovrebbe essere mostrato il codice php determinato.

e

B) il modulo php del server HTTP eseguirà qualsiasi php e produrrà il file risultante da inviare al client.

A proposito, tecnicamente un file HTML su un server può contenere PHP. Quindi non è come PHP sono più pericolosi dei file HTML. PHP esegue l'elaborazione del server e quindi genera altre cose sul lato client che si possono trovare in un file HTML come HTML o JavaScript lato client.

0
barlop