Thread < Problem mit textarea -> Datenbank (40 answers)
Opened by Gustl at 2011-07-26 21:21

pq
 2011-07-27 22:45
#150813 #150813
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
2011-07-27T20:29:53 rosti
Dass Browser ein JavaScript, was in einer Textarea steht, auch ausführen, war selbst für mich (kürzlich) was Neues.

ich glaube, es ist dir immer noch nicht ganz klar, was passiert.
was in einer textarea steht, sollte nicht ausgeführt werden. heisst:
Code (html): (dl )
<textarea><script>alert('foo')</script></textarea>

ist in der regel kein erfolgreicher angriff (nur invalides HTML).

natürlich sollte man sich trotzdem nicht darauf verlassen, dass kein browser das ausführt.

wenn man über eine textarea javascript einschleusen will, dann macht man das aber in der regel so:
Code: (dl )
</textarea><script>alert('foo')</script>


dies wird nun in
Code (html): (dl )
<textarea>...</textarea>
eingebettet.
der browser bekommt dadurch das ende der textarea vorzeitig und interpretiert alles, was danach kommt, als regulären html-code. also auch die script-tags.

daher, ich kann es immer nur wiederholen: einfach alles, was man ans template übergibt, vom template-system escapen lassen.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem

View full thread &lt; Problem mit textarea -> Datenbank