Pagina 3 di 7 primaprima 1 2 3 4 5 ... ultimoultimo
Visualizzazione dei risultati da 21 a 30 su 72

Discussione: preventivo sito

Hybrid View

  1. #1
    Il sito da rifare sarebbe questo.. non l'ho fatto io :P però vorrei rifarlo da zero per evidenti motivi!

    http://www.omcc03.net/frameset.htm

  2. #2
    La cosa interessante è che una tecnica di quel genere è molto più efficiente di avere un unico file XML contenente tutti i record, visto che deleghi al filesystem il lavoro del DB (cosa che si fa in molti casi, ad esempio tutti i server di posta che usano il formato maildir fanno ben così); per siti semplici può anche essere una buona soluzione.
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Come è successo? Scombinando l'url?

  4. #4
    Quote Originariamente inviata da Luca Crippa Visualizza il messaggio
    Come è successo? Scombinando l'url?
    Cambi 1.txt a un nome di file qualunque che sicuramente non esiste, ad esempio assdasdasd.txt; il messaggio che viene fuori (grazie, PHP, ottimi strumenti di debugging ) è
    Warning: file_get_contents(../public/events/assdasdasd.txt) [function.file-get-contents]: failed to open stream: No such file or directory in D:\Inetpub\webs\coroconcorezzoit\circolino\evento. php on line 36 - See more at: http://www.coroconcorezzo.it/circoli....Upv3QSNP.dpuf
    da cui si ricava immediatamente che il codice di apertura del file si limita a concatenare il parametro "eve" a "../public/events/"; a questo punto è immediato cambiare l'URL per leggere a piacimento qualunque file interno del tuo sito.

    Tempo speso: 30 secondi.

    Ah, vedo sulla destra che c'è anche degli errori relativi a scandir, forse si possono sfruttare anche quelli per riuscire ad ottenere directory listing in giro per il tuo sito.
    Ultima modifica di MItaly; 04-11-2013 a 17:04
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Utente di HTML.it L'avatar di hfish
    Registrato dal
    Dec 2000
    Messaggi
    3,180


    se passi al tuo script l'indirizzo del file di testo da cui prendere i dati DEVI anche fare qualche controllo di sanità, altrimenti allo script si può passare un file a caso, anche sé stesso, mostrandone il contenuto, o parte, a video

    cattivo mitaly, cattivo
    Non dobbiamo trascurare la probabilità che il costante inculcare la credenza in Dio nelle menti dei bambini possa produrre un effetto così forte e duraturo sui loro cervelli non ancora completamente sviluppati, da diventare per loro tanto difficile sbarazzarsene, quanto per una scimmia disfarsi della sua istintiva paura o ripugnanza del serpente.

  6. #6
    Quote Originariamente inviata da hfish Visualizza il messaggio
    cattivo mitaly, cattivo
    Internet è un luogo pieno di gente cattiva, non vedo perché essere da meno (specie di lunedì).
    Amaro C++, il gusto pieno dell'undefined behavior.

  7. #7
    Con controllo di sanità cosa intendi?

  8. #8
    Quote Originariamente inviata da Luca Crippa Visualizza il messaggio
    Con controllo di sanità cosa intendi?
    Intendo validare sempre i parametri per evitare che si possano fare scherzetti di questo genere. Nel tuo caso, una possibilità potrebbe essere tentare di convertire il parametro in un intero prima di fare quella concatenazione, in modo che qualunque roba che non sia semplicemente un numero venga uccisa sul nascere.

    Inoltre, prima di accedere ad un percorso che dipende da un parametro può essere sensato far "risolvere" completamente il percorso, rendendolo "canonico" (ci sarà sicuramente una funzione PHP per 'sta roba, anzi, ce ne saranno 12, di cui 4 che fanno la stessa cosa ma con i parametri in ordine diverso, 3 che ricalcano la sintassi C, 3 deprecate e 2 wrapper ad oggetti che non usa nessuno perché disponibili solo da PHP 7 in poi; tutte ovviamente hanno bachi diversi) e verificando lì se effettivamente (1) i file che stai pescando stanno nella directory corretta e (2) se hanno l'estensione corretta.
    Ultima modifica di MItaly; 04-11-2013 a 17:14
    Amaro C++, il gusto pieno dell'undefined behavior.

  9. #9
    Quote Originariamente inviata da MItaly Visualizza il messaggio
    Intendo validare sempre i parametri per evitare che si possano fare scherzetti di questo genere. Nel tuo caso, una possibilità potrebbe essere tentare di convertire il parametro in un intero prima di fare quella concatenazione, in modo che qualunque roba che non sia semplicemente un numero venga uccisa sul nascere.

    Inoltre, prima di accedere ad un percorso che dipende da un parametro può essere sensato far "risolvere" completamente il percorso, rendendolo "canonico" (ci sarà sicuramente una funzione PHP per 'sta roba, anzi, ce ne saranno 12, di cui 4 che fanno la stessa cosa ma con i parametri in ordine diverso, 3 che ricalcano la sintassi C, 3 deprecate e 2 wrapper ad oggetti che non usa nessuno perché disponibili solo da PHP 7 in poi; tutte ovviamente hanno bachi diversi) e verificando lì se effettivamente (1) i file che stai pescando stanno nella directory corretta e (2) se hanno l'estensione corretta.
    Intendi ad esempio prendere il path ../public/events/1.txt e cambiarlo in 58648448464256? Con una funzione che genera un numero a seconda del file di testo? E poi passare quello riconvertendolo dopo?

  10. #10
    Utente di HTML.it L'avatar di fred84
    Registrato dal
    Dec 2005
    Messaggi
    434
    Quote Originariamente inviata da Luca Crippa Visualizza il messaggio
    Intendi ad esempio prendere il path ../public/events/1.txt e cambiarlo in 58648448464256?

    NO
    dice di controllare se "1.txt" é un intero seguito da ".txt": se sì, prosegui; se no, errore.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.