Burpsuite - Macro token CSRF

2

Ho implementato un sito Web utilizzando vaadin-framework . Quando invio una richiesta al mio server, ci sono alcuni dati nel mio POST-Request che assomigliano a:

{"csrfToken":"3df2f528-15c7-434c-8505-539be1c44157","rpc":[["13","v","v",["text",["s","Nazar Medeiros"]]],["13","v","v",["c",["i",4]]],["15","com.vaadin.shared.ui.button.ButtonServerRpc","click",[{"altKey":false,"button":"LEFT","clientX":82,"clientY":286,"ctrlKey":false,"metaKey":false,"relativeX":45,"relativeY":18,"shiftKey":false,"type":1}]]],"syncId":3,"clientId":3}

Ora la parte interessante per me sono tre parametri:

Nazar Medeiros, "syncId":3 and "clientId":3".

Il contenuto (Risposta) che ricevo dal server assomiglia a:

for(;;);[{"syncId": 4, "clientId": 4, "changes" : [["change",{"pid":"13"},["1",{"id":"13"}]]], "state":{"13":{"text":"Nazar Medeiros"}}, "types":{"13":"1","25":"19","26":"21","6":"20"}, "hierarchy":{"25":[],"26":[],"6":["7","10","11","12","25","26"]}, "rpc" : [["25","com.vaadin.shared.data.DataProviderRpc","resetDataAndSize",[0]],["25","com.vaadin.shared.data.DataProviderRpc","setRowData",[0,[]]]], "meta" : {}, "resources" : {}, "timings":[3306, 1]}]

Voglio utilizzare burp suite e una macro per un processo di fuzzing automatico. Quando uso un altro valore anziché Nazar Medeiros devo aumentare clientId e syncId di 1 per ogni richiesta.

Quello che ho fatto finora è configurare un macro con i due parametri. Ma il problema è che l'utilizzo della macro non mi dà il risultato che voglio.

for(;;);[{"syncId": 26, "resynchronize": true, "clientId:4"...

Il syncId è aumentato di 2 anziché di 1 mentre clientId rimane allo stesso valore.

Una soluzione che ho usato (senza macro) era quella di inviare i tre parametri a Intruder , impostare l'opzione payload su Pitchfork e dare a ciascuno di essi un payload. Il payload per syncId e clientId è lo stesso e contiene numeri per aumentare i valori a ogni richiesta. Per utilizzare questo approccio devi essere sicuro che clientId e syncId inizino a 0 (aggiorna la pagina). Altrimenti i numeri non si adattano alle richieste.

Sarei molto felice se qualcuno potesse darmi una soluzione migliore. I migliori saluti, Nazar Medeiros

    
posta Nazar Medeiros 06.10.2016 - 11:02
fonte

0 risposte

Leggi altre domande sui tag