浅聊一下Django如何避免xss攻击
2024-10-21 04:57:47
一、什么是xss攻击
xss攻击:----->web注入
xss跨站脚本攻击(Cross site script,简称xss)是一种“HTML注入”,由于攻击的脚本多数时候是跨域的,所以称之为“跨域脚本”。
我们常常听到“注入”(Injection),如SQL注入,那么到底“注入”是什么?注入本质上就是把输入的数据变成可执行的程序语句。SQL注入是如此,XSS也如此,只不过XSS一般注入的是恶意的脚本代码,这些脚本代码可以用来获取合法用户的数据,如Cookie信息。
PS: 把用户输入的数据以安全的形式显示,那只能是在页面上显示字符串。
django框架中给数据标记安全方式显示(但这种操作是不安全的!):
- - 模版页面上对拿到的数据后写上safe. ----> {{XXXX|safe}}
- - 在后台导入模块:from django.utils.safestring import mark_safe
二、如何避免xss攻击
PS:利用HTML特殊符号
使用Django模板语言(DTL)编写HTML,Django会自动进行HTML转义,如:
<
会转换为<
>
会转换为>
'
(单引号)转换为'
"
(双引号)会转换为"
&
会转换为&
<a href="">a标签</a>
---
<a href="">a标签</a>
后端mark_safe相当于是否替换‘<’这类的符号
最新文章
- FFmpeg 转码和截屏
- vmware
- C#:调用webservice时提示对操作的回复消息正文进行反序列化时出错
- Chrome 自动填充的表单是淡黄色的背景
- 路由器 NorFlash与NandFlash区别
- presto访问 Azure blob storage
- Thread的第二天学习
- 第二百七十二、三天 how can I 坚持
- mac上java开发环境
- poj3642 Charm Bracelet(0-1背包)
- android命令行网络时间同步
- ansible学习之路
- Oracle单行函数基础运用
- 用C语言实现Ping程序功能
- 零基础怎么学java
- Azure CosmosDB (6) 冲突类型和解决策略
- loadrunner&#160;脚本录制-Protocol&#160;Advisor协议分析器的使用
- C# 控制左右声道
- 《Java程序设计》第二周学习记录(1)
- Django-website 程序案例系列-15 singnal分析
热门文章
- 货币转换I
- mujoco d4rl 安装问题
- 在vue中引入elementui
- 微信小程序仿手机相册组件——简单版
- 乾象投资:基于JuiceFS 构建云上量化投研平台
- 三十一、kubernetes网络介绍
- Selenium4+Python3系列(六) - Selenium的三种等待,强制等待、隐式等待、显式等待
- Mybatis 报错Mapper method &#39;xxx&#39; has an unsupported return type
- Excel常用需求
- 使用vite + vue3 + ant-design-vue + vue-router + vuex 创建一个后台管理应用