Visualizzazione dei risultati da 1 a 9 su 9

Discussione: Modifica file xml

Hybrid View

  1. #1
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,480
    Quote Originariamente inviata da Erwin19 Visualizza il messaggio
    Ho pensato che per modificare il file xml, debba per forza passare da php che risiede su un altro server. Php non lo posso installare su quello in cui sto smanettando attualmente con js. E dunque, per far ciò, dovrò effettuare una richiesta POST in js. E fino qua mi è tutto chiaro...
    Se non hai a disposizione una pagina lato server che gestisca le modifiche al file XML per tuo conto, l'unica cosa che puoi fare è abilitare la modifica dei file via HTTP, ossia consentire lato server che tramite HTTP POST sia possibile inviare al server un file XML aggiornato da sostituire al precedente, utilizzando il protocollo HTTP quasi come fosse simile a un FTP, in breve consentendo a qualsiasi client di aggiornare la risorsa indicando il percorso, il comando (POST) e i dati da scrivere nel file.

    Quote Originariamente inviata da Erwin19 Visualizza il messaggio
    Per quanto ne so e per quanto io ne possa capire, js è in chiaro sulle pagine.
    JavaScript è in chiaro ma può essere offuscabile, tuttavia la richiesta HTTP è visibile facilmente premendo F12 e osservando qualsiasi interazione della pagina con il server.

    Quote Originariamente inviata da Erwin19 Visualizza il messaggio
    Ora, per effettuare la richiesta POST, nella mia pagina dovrò inserire il link, e relativi parametri. Se io questa cosa la posso fare da un server ad un altro, ciò che mi perplime è che la può fare chiunque, semplicemente guardando il codice nella mia pagina.
    Il codice della pagina è irrilevante: comunque si arrivi alla richiesta POST tramite codice, quella che è visibile è appunto l'operazione di POST con l'indirizzo del file XML e i dati inviati, nel momento in cui avviene, quindi chiunque può replicarla specificando dati differenti.

    Quote Originariamente inviata da Erwin19 Visualizza il messaggio
    Prenderebbe il mio stesso codice ed effettuerebbe la stessa richiesta allo stesso indirizzo.
    Non è necessario avere il codice: basta usare cURL o un qualsivoglia altro tool per fare la stessa richiesta che si vede partire dalla pagina, mettendo l'indirizzo del file XML e i contenuti desiderati.

    Quote Originariamente inviata da Erwin19 Visualizza il messaggio
    Ed ecco qui che mi ha modificato il file. Dico bene?! Quindi come posso evitare questa cosa?
    L'unico modo per ovviare è introdurre lato server un controllo in base alle caratteristiche del server Web: ad esempio, si potrebbe sottoporre l'accesso alla risorsa a una protezione con utente e password, così che l'operazione sia fattibile da chiunque abbia le credenziali per poterlo fare.

    Stiamo esaminando uno scenario dove non è presente alcun codice di gestione della richiesta e dove è abilitato l'aggiornamento diretto di una risorsa tramite HTTP: non è che ci siano chissà quante soluzioni...
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    99
    Quote Originariamente inviata da alka Visualizza il messaggio
    Stiamo esaminando uno scenario dove non è presente alcun codice di gestione della richiesta e dove è abilitato l'aggiornamento diretto di una risorsa tramite HTTP: non è che ci siano chissà quante soluzioni...
    Effettivamente...
    Dove potrei trovare un esempio in cui possa capire come sia possibile gestire tale richiesta di gestione?
    Ho letto di utente e password... Interessante, ma come, soprattutto se la richiesta proviene da esterno?! Il server come fa a capire chi ascoltare?! Tracciando l'IP? Utente e password... Dove nasconderli e soprattutto come fai a nasconderli!? Attraverso la crittografia dei dati?? Ma per codificare, dovrai avere un metodo e quel metodo lato client, sarà in chiaro.

    Sto buttando giù pensieri eh, non metto in dubbio i tuoi consigli!

    Sono argomenti che pur googolando, io non riesco a trovare facilmente. Probabilmente mi mancano le chiavi di ricerca, o forse è giusto che certe informazioni non devono essere di facile accesso. Far capire al server chi sta gestendo varie modifiche e soprattutto chi ha l'autorità per farlo, che dire, sono cose che certamente desidero approfondire!

    Comunque sto apprezzando molto i tuoi interventi!

  3. #3
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,480
    Quote Originariamente inviata da Erwin19 Visualizza il messaggio
    Dove potrei trovare un esempio in cui possa capire come sia possibile gestire tale richiesta di gestione?
    Essenzialmente, questa gestione dovrà essere fatta dal server Web, quindi il tutto dipende dal server che hai a disposizione (IIS, Apache, ecc.), supponendo che tu possa configurarlo a piacimento.

    Quote Originariamente inviata da Erwin19 Visualizza il messaggio
    Ho letto di utente e password... Interessante, ma come, soprattutto se la richiesta proviene da esterno?!
    Il server come fa a capire chi ascoltare?!
    La richiesta proviene sempre dall'esterno.

    Quote Originariamente inviata da Erwin19 Visualizza il messaggio
    Tracciando l'IP?
    Dovresti censire sul server Web tutti gli indirizzi IP delle macchine su cui TU usi l'applicazione, abilitando la risorsa ad essi, escludendo quindi di fatto gli altri.

    Quote Originariamente inviata da Erwin19 Visualizza il messaggio
    Utente e password... Dove nasconderli e soprattutto come fai a nasconderli!?
    Non vanno nascosti: devi inserirli al momento in cui effettui HTTP POST nella pagina, e sarà il browser a richiederli se la risorsa è stata protetta lato server usando - ad esempio - una Basic Authentication.

    Se l'operazione viene tentata da chiunque altro, dovrà essere in possesso delle credenziali prestabilite per poter eseguire l'operazione.

    Quote Originariamente inviata da Erwin19 Visualizza il messaggio
    Attraverso la crittografia dei dati?? Ma per codificare, dovrai avere un metodo e quel metodo lato client, sarà in chiaro.
    Dimentica di memorizzare qualcosa in modo nascosto nel codice e/o nella pagina!

    Quote Originariamente inviata da Erwin19 Visualizza il messaggio
    Sono argomenti che pur googolando, io non riesco a trovare facilmente. Probabilmente mi mancano le chiavi di ricerca, o forse è giusto che certe informazioni non devono essere di facile accesso. Far capire al server chi sta gestendo varie modifiche e soprattutto chi ha l'autorità per farlo, che dire, sono cose che certamente desidero approfondire!
    A mio avviso, ti conviene rivedere l'architettura dell'applicazione che stai progettando, perché in questo modo diventa impossibile da gestire, ed eventualmente spiegare qual è la finalità di tutto questo accrocchio.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

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.