Inndata

Deobfusert utdata

Hva er Python-deobfuscator?

Har du noen gang arvet et Python-skript fullt av \x41\x42-heksstrenger og nestede exec(compile(...))-kall? Du er ikke alene. Obfuskert Python-kode dukker opp overalt — fra base64-innpakkede nyttelaster i malware-droppere til CTF-utfordringer basert på exec/eval-triks. Dette verktøyet dekoder Python unicode- og hex-escapes, pakker ut exec/compile-lag og gjenoppretter lesbar innrykk — alt i nettleseren din uten å laste opp noe. For kompilerte .pyc-filer, prøv decompile3-prosjektet.

Verktøyet kjører helt i nettleseren din. Ingen kode sendes til en server. Det håndterer vanlige teknikker som hex- og unicode-escape-dekoding, exec(compile(...))-deteksjon, base64-hint og gjenoppretting av innrykk.

Slik bruker du verktøyet

1

Lim inn eller last opp

Lim inn obfuskert eller minifisert Python i venstre panel, eller last opp en .py- eller .txt-fil. Eksempel laster et eksempel.

2

Se deobfusert utdata

Høyre panel viser ren og formatert Python-kode. Streng-escapes dekodes, innrykk gjenopprettes og exec/compile-mønstre merkes.

3

Kopier eller last ned

Bruk Kopier eller Last ned for å lagre resultatet som en .py-fil.

Eksempler på Python-deobfuscator

Her er et eksempel på deobfuskerings av Python-kode som bruker hex-escapes inne i et exec(compile(...))-kall.

Eksempel: Hex-escape + exec(compile) obfuskerings

Obfuskert inndata:

Inndata

Deobfusert utdata:

Utdata

Når Python-deobfuscator hjelper

Python brukes mye i malware-analyse, CTF-utfordringer og kodesikkerhetsgjennomganger. Obfuskert Python er vanlig i droppere, CTF-oppgaver og skriptbeskyttelse. Verktøyet håndterer kildekodeobfuskerings automatisk.

Ofte stilte spørsmål

Kan verktøyet reversere all Python-obfuskering?

Det håndterer de vanligste mønstrene: hex/unicode-dekoding, exec/compile-utpakking, base64-hint, semikolondeling og innrykkgjenoppretting. Avansert VM- eller bytecode-obfuskering krever et dedikert verktøy som uncompyle6.

Sendes Python-koden min til en server?

Nei — alt kjøres i nettleseren din. Ingenting lastes opp eller lagres. Derfor er det trygt for sensitiv kode.

Hvilke Python-obfuskeringsmønstre håndteres?

Hex-escapes som \x41, unicode-escapes som \u0041, exec(compile(...))-innpakninger, base64-kodede strenger, semikolonsammenføyde utsagn og komprimert innrykk.

Fungerer det på kompilerte .pyc-filer?

.pyc-filer er kompilert bytekode — ikke kildekode — så dette verktøyet kan ikke behandle dem. Du trenger en bytecode-dekompilator som decompile3.

Hvorfor ser innrykk annerledes ut enn originalen?

Obfuskert Python fjerner ofte all hvitrom. Verktøyet rekonstruerer blokstrukturen fra Python-nøkkelord som if, for, def og class, og bruker deretter standard 4-mellomroms innrykk.

Relaterte verktøy

Mer om Python: offisiell Python-dokumentasjon.