xss 跨站脚本攻击

这是一个非常简单的攻击。

两个页面如下:

<form action="MyJsp.jsp" method="get">
    	<input type="text" name="content"/>
    	<input type="submit" values="submit"/>
</form>
<% 
	out.print(request.getParameter("content"));
%>

如果攻击者在输入框里面输入以下内容:

<script>alert('Help me ask you sisiter hello...')</script>

那么就有以下结果:


当然,用户还可以输入:

<script>alert(document.cookie)</script>

用户还可以直接在地址栏输入:如下:


不仅可以注入script,还可以直接注入html代码。。。

http://localhost:8080/Test/MyJsp.jsp?content=<script><a href="http://weibo.com/shangaoquangengqing">My Weibo</a></script>


攻击者输入的内容可以改的,大家都明白这是很危险的。
这个在高级的浏览器,比如现在的360急速浏览器是不能通过的,具体原因未深究。


防范方法很多,最简单的就是将代码的一下基本字符替换掉,比如< > " 等。

以后写代码留意一点就行。

原文地址:https://www.cnblogs.com/riskyer/p/3268773.html