När du använder Burp Suite kan du ofta stöta på data som använder någon form av kodning. Kodning är i allmänhet utformad för att konfigurera data så att datorsystemet kan hantera det, tyvärr gör det i allmänhet det omöjligt, eller åtminstone svårt att läsa. I vissa fall kan data avkodas tillbaka till en läsbar form, men i andra fall var den kodade datan redan slumpmässig och kommer inte att ge begripliga resultat. Burp innehåller ett verktyg som heter "Decoder" för att hjälpa till att avkoda data så att du kan se vad den säger, eller om den inte innehåller data som kan läsas av människor.
Hur man avkodar data
För att lägga till data till Decoder kan du antingen skriva in det manuellt, klistra in det från urklippet, eller så kan du högerklicka på det på flikarna Target, Proxy, Intruder eller Repeater och klicka på "Skicka till Decoder". Du kan göra detta med hela förfrågningar; Det kommer dock i allmänhet att vara mer användbart att begränsa det till bara den data du vill ska avkodas genom att markera den innan du högerklickar.
Högerklicka på data som du vill avkodas och klicka sedan på "Skicka till avkodare".
När du väl har data i Decoder kan du avkoda den genom att klicka på knappen "Avkoda som" till höger och välja det kodningsschema du tror att den använder. Alla alternativ kommer att fungera för alla inmatningar, men de kanske inte producerar utskrivbara tecken, vilket vanligtvis betyder att det inte använde den kodningen eller att data bara genererades slumpmässigt.
Kodningarna du kan välja mellan är Plain, URL, HTML, Base64, ASCII hex, Hex, Octal, Binary och Gzip. Välj en av dessa från rullgardinsmenyn och Burp kommer att visa resultatet i en ny ruta nedan. Den nya lådan kommer med en egen uppsättning identiska kontroller, så om du upptäcker att utgången fortfarande är kodad kan du avkoda den igen, även om avkodningstypen är annorlunda. Till exempel, om du avkodar en Base64-sträng och hittar en annan Base64-sträng, kan du avkoda den också.
Tips: Du kan koppla ihop många nivåer av avkodning; du är inte begränsad till bara ett eller två steg.
Du kan avkoda data och sedan avkoda resultatet igen, om det finns flera nivåer av kodning.
Hur man kodar data
Du kan också använda Decoder för att koda data i alla tillgängliga kodningsmetoder genom att klicka på "Koda som" och välja en kodningsmetod. Detta är användbart om du behöver avkoda en sträng, modifiera den och sedan måste koda om den för att infoga ändringen i en webbförfrågan.
Tips: Kodningen är inte särskilt smart; till exempel behöver alfanumeriska tecken inte kodas i URL:er eftersom de är giltiga tecken, men URL-kodaren kodar varje tecken.
Du kan också generera en hash av en sträng genom att klicka på "Hash" och sedan välja en algoritm. Burp erbjuder inte ett sätt att vända en hash eftersom detta inte är möjligt eftersom hash är envägsfunktioner.
Tips: Alla kombinationer av avkodning, kodning och hash är möjliga med Decoder, även om vissa operationsordningar inte är logiska.
Du kan också använda Decoder för att koda data eller hasha den.
Du kan avkoda, koda eller hasha en del av en sträng i Decoder genom att markera den innan du väljer hur den ska hanteras. Detta är användbart om du har två variabler kodade med olika metoder.
Obs: Avkodaren stöder inte underflikar, så du kan bara hantera en ingång åt gången. Var noga med att kopiera resultatet av en process innan du skickar mer data till Decoder om du inte är okej med att förlora den.