"è possibile che un hacker sia in grado di leggere l'avviso di eccezione e quindi utilizzare tali informazioni per manipolare i miei script?"
Forse.
In genere, si desidera fornire all'utente la minima quantità di informazioni in una condizione di errore. In questo caso, se dici a qualcuno che non esiste una particolare variabile get, allora potrebbero provare a fornire valori casuali a quella variabile per vedere come si comporta l'app.
Naturalmente, è necessario bilanciare questo con le esigenze dei tuoi utenti reali. Se la variabile è una di cui normalmente avrebbero il controllo, dare la risposta su un problema con il valore è perfettamente accettabile.
UPDATE
Avendo recentemente incorrere in una raffica di API web di che sembrano pensare lanciando messaggi di errore generici è la strada da percorrere voglio aggiornare questo un po '.
È fondamentale che le API Web restituiscano una quantità adeguata di informazioni al sistema di consumo in modo che possano capire cosa c'è che non va e risolverlo.
In un caso recente per un'API di elaborazione dei pagamenti, la loro documentazione era semplicemente sbagliata. I dati delle transazioni di test mostrati sono stati costantemente restituiti con "Errore del server 500" e non abbiamo avuto ricorso, ma per avere uno dei loro sviluppatori al telefono e fare scrupolosamente ogni elemento nel loro XML. Su 50 elementi, solo uno aveva lo stesso nome di quello che era nei loro "documenti dello sviluppatore"
In un'altra integrazione ci è stato dato "Errore server 402". - Questo NON era un gateway di pagamento. Sebbene non abbia mai fatto riferimento ai loro documenti, apparentemente quel messaggio significava che mancava un parametro JSON. Per inciso, era un parametro non referenziato nei loro documenti e di nuovo richiesto tempo con il loro sviluppatore per identificarlo.
In entrambi i casi precedenti sarebbe stato incredibilmente utile se il messaggio di errore avesse risposto con un esempio di un documento valido. Simile al modo in cui i vecchi comandi Unix/DOS tornavano con le informazioni di aiuto quando si passavano parametri errati. Davvero non voglio parlare con altri programmatori.So che il loro tempo è costoso e preferiscono fare qualcosa di diverso da una chiamata di assistenza; ma più che altro, se lavoro alle 22:00 e ho bisogno di una risposta RFN, l'attesa di un programmatore al telefono il giorno dopo è raramente un'opzione.
Poiché sembra che tu stia semplicemente visualizzando il contenuto dei parametri GET, i dati che sono disponibili guardando comunque l'URL, non vedo come questo potrebbe essere un rischio per la sicurezza se non richiamare l'attenzione su di esso. Modifica: non mi rendevo conto che stavi operando la distinzione tra diversi tipi di dati nei messaggi di errore - suppongo che questa conoscenza possa essere sfruttata fino alla fine ma se stai disinfettando l'input correttamente non riesco a pensare a come. – junkforce