Jeg skal have en side online, men inden jeg putter den online har jeg testet den med dette værktøj: http://parosproxy.org
Den melder så følgende fejl:
Medium (Warning)
Cross site scripting
Description
Cross-site scripting or HTML injection is possible. Malicious script may be injected into the browser which appeared to be genuine content from the original site. These scripts can be used to execute arbitrary code or steal customer sensitive information such as user password or cookies.
Very often this is in the form of a hyperlink with the injected script embeded in the query strings. However, XSS is possible via FORM POST data, cookies, user data sent from another user or shared data retrieved from database.
Currently this check does not verify XSS from cookie or database. They should be checked manually if the application retrieve database records from another user's input.
Do not trust client side input even if there is client side validation. Sanitize potentially danger characters in the server side. Very often filtering the <, >, " characters prevented injected script to be executed in most cases. However, sometimes other danger meta-characters such as ' , (, ), /, &, ; etc are also needed.
In addition (or if these characters are needed), HTML encode meta-characters in the response. For example, encode < as <
Reference
The OWASP guide at http://www.owasp.org/documentation/guide
Men jeg ham der har lavet siden kan ikke gennemskue, hvad fejlen går ud på. Han har forsøgt med diverse, men kan ikke få den til at injecte noget i databasen. Den kommer bare med en fejlside....
Nogen der har de vise sten, eller skal vi bare ignorere fejlen ?
Hvis du får at vide, at dit site er sårbart i forhold til XSS, så er det en god ide at tage det seriøst. Det lyder lidt som om du forveksler XSS med SQL injection - det er to forskellige ting. XSS handler om, at du tillader brugerne af dit site at skrive ting, som kan ramme andre brugere af dit site. F.eks. kan Claus skrive noget kode, som aflæser Peters password, næste gang Peter får vist det Claus har skrevet (sådan lidt groft sagt). Du kan læse mere på Wikipedias side om Cross Side Scripting
Måden du kommer udenom det på, er ved at sikre dig, at brugerne ikke kan skrive ting på dit site som andre brugere kan blive ramt af. Dette gøres ved at fjerne HTML og Javascript fra det input brugerne leverer.