, ga escapiranje HTML pretvori v neškodljivo besedilo, ki se namesto izvajanja dobesedno prikaže. Izpis vedno izrišite glede na kontekst - HTML za vsebino strani, JavaScript za skriptne bloke, URL za povezave."}}]}

String Escape/Unescape

S tem vsestranskim orodjem za pobeg iz nizov JSON, HTML, XML, URL in drugih formatov pobegnite ali odpravite posebne znake v nizih. Posebne znake pretvorite v njihove kodirane ustreznike ali jih dekodirajte nazaj in tako zagotovite celovitost podatkov v različnih kontekstih. Idealno za spletne razvijalce, integracijo API in naloge obdelave podatkov.

Pogosto zastavljena vprašanja

Orodje podpira več oblik pobega, vključno z JSON (narekovaji, novimi vrsticami, zavihki), entitetami HTML, entitetami XML, kodiranjem URL in pobegom nizov JavaScript, kar vam omogoča pripravo nizov za različne kontekste.

Nizi pobega za JSON, kadar morate v vrednosti JSON vključiti posebne znake, kot so narekovaji, povratne lomke ali nove vrstice, s čimer zagotovite veljavno sintakso JSON in preprečite napake pri razčlenjevanju.

Da, orodje deluje dvosmerno. Razkrijete lahko kodirane nize in si ogledate izvirno besedilo, kar je uporabno za odpravljanje napak in razumevanje pobeglih podatkov iz API-jev ali podatkovnih zbirk.

Pri izogibanju HTML se znaki, kot so <, >, & in narekovaji, pretvorijo v entitete HTML (&lt;, &gt;, &amp;, &quot;), da se preprečijo napadi XSS in težave s prikazom, pri izogibanju JSON pa se obravnavajo znaki, ki kršijo sintakso JSON.

Kodiranje URL (odstotno kodiranje) je posebna vrsta izogibanja, ki posebne znake pretvori v obliko %XX za varno uporabo v URL-jih in se razlikuje od izogibanja JSON ali HTML.

Pravilno pobeganje nizov preprečuje napade z vbrizgavanjem (XSS, vbrizgavanje SQL), saj zagotavlja, da se uporabniški vnos obravnava kot podatki in ne kot izvršljiva koda, zato je to ključna varnostna praksa pri razvoju spletnih strani.

Pri eskapiranju JSON se upošteva strogi standard (RFC 8259), ki zahteva eskapiranje s povratno poševnico za narekovaje (\"), povratne poševnice (\\) in kontrolne znake (\n, \t, \r). Izrivanje nizov v javascriptu je podobno, vendar bolj popustljivo, saj omogoča dodatne izrivanje, kot so \v (navpični tabulator), \0 (ničla) in \x (šesterokraki izrivanje). JSON zahteva tudi nadomestne pare UTF-16 za znake zunaj BMP, medtem ko lahko JavaScript uporablja zapis \u{XXXXXX}. Za zagotavljanje stroge združljivosti pri odzivih API in izmenjavi podatkov vedno uporabljajte eskapiranje JSON.

Vsak jezik ima posebne zahteve za pobeg: V jeziku Python se uporabljajo povratne lomke (\n, \t, \') in podpirajo surove nize (r'text'), v javascriptu se uporabljajo podobne pobege ter literali v predlogah, v jeziku C/C++ se zahtevajo pobegi narekovajev in povratnih lomk, v jeziku SQL se podvajajo enojni narekovaji ('') ali se pobegnejo, v skripti lupine pa se skrbno pobegnejo $, ` in narekovaji. Da bi se izognili ranljivostim, vedno uporabljajte vgrajene funkcije pobegov svojega jezika (kot so Pythonova json.dumps(), JavaScriptova JSON.stringify() ali parametrizirane poizvedbe SQL) in ne ročnih pobegov.

Bistvena zaporedja pobega vključujejo: \n (podajanje nove vrstice/vrstice), \r (vrnitev vozička), \t (tabulator), \" (dvojni narekovaj), \' (enojni narekovaj), \\ (poševnica), \0 (ničelni znak), \b (backspace) in \f (form feed). Za Unicode: \uXXXX (štirimestna šestmestna številka) in \xXX (dvomestna šestmestna številka). Različni konteksti zahtevajo različno izogibanje - JSON uporablja \/, HTML uporablja &lt; in &gt;, XML je podoben HTML, regularni izrazi pa uporabljajo \d, \w, \s za razrede znakov.

Napadi XSS vnašajo zlonamerne skripte z izkoriščanjem neizrazitega uporabniškega vnosa na spletnih straneh. Ustrezno eskapiranje pretvori nevarne znake v varne reprezentacije: < postane &lt;, > postane &gt;, & postane &amp;, " postane &quot; in ' postane &#x27;. To preprečuje, da bi brskalniki uporabniški vnos razumeli kot kodo HTML ali JavaScript. Če uporabnik na primer vnese <script>alert('XSS')</script>, ga escapiranje HTML pretvori v neškodljivo besedilo, ki se namesto izvajanja dobesedno prikaže. Izpis vedno izrišite glede na kontekst - HTML za vsebino strani, JavaScript za skriptne bloke, URL za povezave.