Gå til innhold

Hvilken metode er mest sikker ved innsetting og uthenting av HTML i MySQL?


Anbefalte innlegg

Videoannonse
Annonse

Escape brukerinput. Mer er det strengt tatt ikke å tenke på ved innsetting. Klarer egentlig ikke helt å se hvordan det å hente ut data fra databasen kan utgjøre et sikkerhetsproblem. :blink: Du mener kanskje hva slags tiltak man bør gjøre når man skal vise dataen sammen med HTML? Isåfall bør du html-escape dataen, slik at ingen ting tolkes at nettleseren.

Endret av Jonas
Lenke til kommentar

Jeg snakker om innsetting av HTML som senere skal vises for brukeren, normalt stripper jeg all input for all potensielt skadelige ikoner( " > ) osv. det jeg tenker på er f.eks, nasty javascript som ikke gjør en flue fortredt i databasen, men som muligens gjørs kade for brukeren når det blir vist. Hvilken metode er best for å sjekke slikt?

 

Hvis du escaper brukerinput, vil ikke dette hindre HTML i å bli vist når du henter det fra databasen?

 

Er en del måneder siden jeg sist kodet aktivt, (eksamen var i veien) så nå har jeg glemt en del...

Lenke til kommentar

Å escape input med mysql_real_escape_String vil bare forberede dataen for innsetting. Ved uthenting vil den se identisk ut igjen. Når det gjelder problemstillingen din, så ja, ved å tillate brukeren å skrive HTML som vises på siden, så utgjør dette et enormt sikkerhetsproblem. Det er vanskelig å kun tillate litt HTML - det ufarlige - og kun fjerne det skadelige. Det man ofte gjør er å strippe teksten for all HTML og bruke bbkode eller tilsvarende for å tillate tekstformatering og diverse veldig enkle ting.

Lenke til kommentar

Bør vel også nevnes at XSS fort kan gjennomføres selv uten at man har muligheten til å dytte inn (X)HTML-tager eller attributter direkte. Har man dårlig validering og escaping i en BBCode-implementasjon kan dette være litt skummelt:

[url=http://www.google.com" onclick="java script:alert('XSS')]google.com[/url]

Samtidig er det også veldig viktig å eksempelvis validere at en URL faktisk er en URL selv om man erstatter " med & quot; osv. F.eks. IE (iallfall 6.0) og Opera har ingenting i mot at hele innholdet i src-attributten i en img-tag er javascript ...

Lenke til kommentar

Jeg tror faktisk jeg aldri hadde latt en bruker få lov til å sette inn html i et tekst felt. Fort så begynner de å kopiere inn tekst fra Word og andre programmer som har med seg en del tagger som kan gi deg ganske mye krøll på siden din.

 

Jeg stripper altid bort html og andre tags før jeg setter noe inn i basen min.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...