2015-02-04 13 views
26

Sto cercando un modo semplice per intercettare una richiesta web e modificare il contenuto della richiesta (principalmente POST) utilizzando Fiddler.Come modificare una richiesta in Fiddler?

Si tratta di test della convalida lato server.

Devo usare Fiddler, tuttavia non ho trovato un buon modo semplice per farlo.

ci sono stati diversi modi documentate per scrivere script per intercettare il traffico e cambiare le intestazioni, ma vorrei farlo senza scrivere uno script - questo strumento deve essere utilizzato dai tester e di scrittura/scripts modifica tutte le il tempo di diversi tester può essere fastidioso.

Esempio:

POST semplice con 2 parametri:

field1=foo, 
field2=bar 

Vorrei intercettare la richiesta, modificare il valore di campo2 essere qualcosa di simile ban (notare il ñ, nel mio caso è invalido e questo è quello che voglio testare).

risposta

49

Ok, pubblicando la risposta che ho messo insieme da mettendo insieme dal seguente video youtube:

Tampering Client Requests and Server Responses with Fiddler


  1. violinista Start (sto usando Fiddler 4)

  2. Si noterà che intercetta tutto il traffico attraverso tutti i browser e altre applicazioni

  3. impostare un filtro - questo vi permetterà di visualizzare solo i dati che ti interessa

    1. Sul lato destro, fare clic sulla scheda filtri
    2. Selezionare 'Utilizza i filtri'
    3. su host , utilizzare 'Mostra solo i seguenti host'
    4. Nella casella di testo sotto, inserire l'host per il quale si sta eseguendo il test. Nel nostro caso per l'ambiente di test, inserire quanto segue: testing.internalsite.com;
    5. Nella sezione 'Punti di interruzione', selezionare 'Break richiesta su POST'
  4. Intercept richiesta

    1. Nel browser, accedere alla pagina che si sta testando. Nel nostro caso, è la pagina di benvenuto in cui eseguiremo la verifica della convalida lato server: https://testing.internalsite.com/yourapp/welcome.do
    2. Cancellare tutte le richieste registrate esistenti premendo la "X" nella barra multifunzione e scegliendo "Rimuovi tutto".
    3. Nel browser, inserisci i dati nel modulo che ti interessa testare e premere invio. Questo è un dato valido (passa la validazione lato client) che cambierai con il violinista.
    4. In Fiddler, vedrai la richiesta con l'icona rossa. Clicca sulla richiesta per caricare i dettagli sul lato destro.
    5. Nella scheda Ispettori, seguita dalla scheda WebForms, è possibile modificare i parametri del modulo inviato. Modificare i dati come appropriato per il test.
    6. Premi il pulsante 'Run a compimento'
  5. Convalida che la vostra risposta è corretta - di solito una sorta di messaggio di errore se si sta testando le convalide lato server

+0

comunque per fermare questa manomissione ?? –

+0

Questo è semplicemente un metodo per riconfigurare una richiesta lato client - qualsiasi convalida sul lato client dovrebbe avere una convalida sul lato server equivalente, poiché un cliente ha teoricamente sempre la capacità di controllare ciò che la macchina invia. – Coruscate5

+4

@ Sujit.Warrier No. Non hai mai il controllo su ciò che il cliente può inviare; significa che non puoi mai fidarti dei dati del cliente. Devi * convalidare/pulire/etc sul lato server. – Matt

3

Io uso il violinista 4.6.3. Puoi provare questo se stai inviando un modulo web.

Annotare la richiesta di posta quando si invia un modulo. Lascia che la richiesta rimanga nel violinista. Consente di modificare la richiesta in Fiddler.

1 - Richiesta clic destro> selezionare "sblocco per modifica".

2 - Scheda Impostazioni> Modifica campi modulo come nome utente, password ecc. Nella sezione Corpo.

3 - Richiesta clic destro> Riproduci> Richiesta di riemissione.

Fatto! L'unico problema con questo approccio è la modifica della vecchia richiesta. Nel proxy Charles, questo viene fatto in 2-3 clic rispetto ai molti clic in Fiddler. Inoltre, non devi incasinare la vecchia richiesta.

Problemi correlati