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

19

Recentemente ho ricevuto una mail di phishing di qualità insolitamente cattiva; "Per favore accedi subito al seguente link, dato che siamo la tua banca, lo sai" -ish. Il link punta a un URL non convincente con .php alla fine.

Mi chiedevo perché potevano usare uno script PHP invece di fingere l'aspetto della pagina e inviare i dati inseriti a un modulo.

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

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

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

    
posta Zaibis 03.09.2015 - 10:51
fonte

6 risposte

64

Se il server è configurato correttamente, non è possibile scaricare un file PHP. Sarà eseguito quando chiamato tramite il webserver. 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 server, tutte le azioni sono eseguite sul server, quindi il risultato viene inviato al tuo browser (che è client lato).

Se hai paura di rovinare il tuo sistema, puoi usare Virtualbox con una macchina virtuale Ubuntu e aprire la pagina da lì. Se esegui un'istantanea della VM dopo l'installazione e prima di fare cose pericolose, puoi in seguito tornare a quell'istantanea e annullare tutto ciò che lo script avrebbe potuto fare sulla VM.

    
risposta data 03.09.2015 - 11:03
fonte
11

Come altri hanno già detto, il file PHP viene eseguito lato server, a meno che il server non sia configurato così male da servire semplicemente la fonte.

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

Il server interpreterà la richiesta e invierà ciò che normalmente invierà 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 sarà mai vicino a un browser o altro motore di rendering da eseguire.

    
risposta data 03.09.2015 - 23:13
fonte
2

No , non puoi, perché PHP è eseguito sul server. Fine.

  1. Non è necessario ottenere il codice, perché non viene eseguito sul tuo computer, quindi non c'è alcun rischio per la sicurezza.
  2. PHP servirà siti 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 ispezionare in modo sicuro un allegato e-mail sospetto? Le sue risposte sono anche valide per l'apertura sicura dei siti Web.
risposta data 04.09.2015 - 12:34
fonte
1

Il file .php viene eseguito sul lato server, quindi non c'è modo di ottenere il codice sorgente sfortunatamente. Quello che puoi provare è manipolare l'URL con la speranza che l'amministratore di sistema abbia commesso un errore.

Quando un utente visita link , il server Web genera la risposta HTML di /usr/bin/php eseguendo il file index.php da /var/www/html .

I server Web sono in genere configurati per eseguire solo .php file, quindi .jpg o qualsiasi altro tipo di file vengono pubblicati normalmente.

Se un sysadmin smemorato ha fatto una copia del file .php a scopo di backup, tuttavia, potresti essere in grado di recuperare la copia senza essere eseguita da /usr/bin/php

Quindi se il sysadmin ha fatto una copia come /var/www/html/index.php.bak , puoi scaricare il suo codice sorgente visitando link con il tuo browser.

La ricerca di questi file avanzati è un'attività complicata, quindi potresti dare un'occhiata agli strumenti automatici per lo sfocatura degli URL.

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

    
risposta data 04.09.2015 - 11:50
fonte
0

Non puoi tramite HTTP perché

A)PHP code written in the file, is deleted from the file by the http server before it is sent to the http client

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

e

B)the HTTP server's php module will execute any php and produce the resultant file to send to the client.

A proposito, tecnicamente un file HTML su un server può contenere PHP. Quindi non è che i file PHP siano più pericolosi dei file HTML. Il codice PHP esegue l'elaborazione del server e quindi restituisce altri elementi del lato client che si possono trovare in un file HTML come HTML o client javascript.

    
risposta data 05.07.2016 - 22:04
fonte
-4

Sì, c'è un modo per ottenere il file PHP.

Devi semplicemente sostituire il protocollo http o https con ftp.

esempio: link sostituito da ftp://www.facebook.com/profile.php

Scaricherà il tuo file PHP se inserisci la credenziale corretta per ftp.

    
risposta data 16.10.2018 - 15:35
fonte

Leggi altre domande sui tag