一、XSS

跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS。恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。

1. 工作流程

a. 恶意用户,在一些公共区域(例如,建议提交表单或消息公共板的输入表单)输入一些文本,这些文本被其它用户看到,但这些文本不仅仅是他们要输入的文本,同时还包括一些可以在客户端执行的脚本。如:

<script>
   this.document = "*********"; 
  alert(
'Not Safe'); </script>

b. 恶意提交这个表单

c. 其他用户看到这个包括恶意脚本的页面并执行,获取用户的cookie等敏感信息。

Django—XSS及CSRF

 

 

 2. 实例-未防范XSS攻击

 1 pinglu = []     # 评论列表
 2 
 3 #提交表单
 4 def commit(request):
 5     if request.method == 'GET':
 6         return render(request, 'commit.html')
 7     else:
 8         com = request.POST.get('commit')
 9         pinglu.append(com)
10         return redirect('/index.html/')
11 
12 
13 #查看评论页面
14 def index(request):
15     return render(request, 'index.html', {'commit': pinglu})
view.py

相关文章: