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