|
危害
盗取各类用户帐号,如机器登录帐号、用户网银帐号、各类管理员帐号
控制企业数据,包括读取、篡改、添加、删除企业敏感数据的能力
盗窃企业重要的具有商业价值的资料
非法转账
强制发送电子邮件
网站挂马
控制受害者机器向其它网站发起攻击
防范
必须明确:一切输入都是有害的,不要信任一切输入的数据。
缓和XSS问题的首要法则是确定哪个输入是有效的,并且拒绝所有别的无效输入。
替换危险字符,如:"&", "<", ">", ""","’", "/", "?",";", ":", "%", "<SPACE>", "=", "+"。各种语言替换的程度不尽相同,但是基本上能抵御住一般的XSS攻击。
python的cgi.escape函数:
| 以下是引用片段: def escape(s, quote=None): ’’’Replace special characters "&", "<" and ">" to HTML-safe sequences. If the optional flag quote is true, the quotation mark character (") is also translated.’’’ s = s.replace("&", "&") # Must be done first! s = s.replace("<", "<") s = s.replace(">", ">") if quote: s = s.replace(’"’, """) return s |
| 以下是引用片段: <%= Server.HTMLEncode("The paragraph tag: <P>") %> ASP.NET的Server.HtmlEncode及Server.UrlEncode: String TestString = "This is a <Test String>."; String EncodedString = Server.HtmlEncode(TestString); Server.UrlEncode(Request.Url.ToString()); |
| 以下是引用片段: <?php $new = htmlspecialchars("<a href=’test’>Test</a>", ENT_QUOTES); echo $new; // <a href=’test’>Test</a> ?> |
| 以下是引用片段: <a href=http://www.xxx.com/detail.asp?id=2008 onclick=’javascrpt:alert(’haha’)’> |
| 以下是引用片段: <a href="http://www.xxx.com/detail.asp?id=2008 onclick=’javascrpt:alert(’haha’)’"> |
| 以下是引用片段: <%@ Page Language="C#" AutoEventWireup="true"%> <html> <body> <span id="Welcome1" runat="server"> </span> <span id="Welcome2" runat="server"> </span> </body> </html> <script runat="server"> private void Page_Load(Object Src, EventArgs e) { // Using InnerText renders the content safe–no need to HtmlEncode Welcome1.InnerText = "haha"; // Using InnerHtml requires the use of HtmlEncode to make it safe Welcome2.InnerHtml = "Hello, " + Server.HtmlEncode("haha"); } </Script> |
| 以下是引用片段: <iframe security="restricted" src="http://www.somesite.com/somepage.htm"></frame> |
| 以下是引用片段: <%@ Page Language="C#" ValidateRequest="false" %> |
| 以下是引用片段: <system.web> <pages buffer="true" validateRequest="true" /> </system.web> |
| 以下是引用片段: if (/^(?:["s"w"?"!","."’""]*|(?:"<"/"?(?:i|b|p|br|em|pre)">))*$/i) { #Cool, it’s valid input } |
| 入侵网站必备经典语句 | 01-17 |
| 说说session | 10-23 |
| 新or注入教程 | 09-10 |
| Mssql2005注入命令总结 | 07-30 |
| 阿D常用注入命令汇总 | 07-30 |
| Penetration Testing 渗透测试 | 07-04 |
| Exploit Sites 和0day公布的站点 | 06-18 |
| 3389得到肉鸡后的命令 | 06-18 |
| Cmd模式下的入侵技术大全 | 05-30 |
| 阿D常用注入命令整理 | 05-17 |
| opendatasource学习记录 | 05-14 |
| SQL Injection规避入侵检测技术总 | 05-06 |