Pikachu中 Xss的简单防御剖析

本文详细剖析了Pikachu中针对XSS攻击的防御措施,包括输入过滤、正则表达式替换、HTML转义、JavaScript编码、长度控制、模板引擎安全设置、避免内联事件和拼接HTML等方法,旨在提高网站的安全性。
摘要由CSDN通过智能技术生成

Pikachu中 Xss的简单防御剖析 --小文文

xss的防范措施总原则:


输入做过滤,输出做转义

过滤:比如对输入的东西做要求,如输入手机号,只能输入数字
转义∶所有输出到前端的数据都根据输出点进行转义,比如输出到html中进行html实体转义,输入到JS里面的进行js转义。

输入过滤

第一part + 防御

例子:输入内容<script>alert(‘123’)</script>

说明:我们输入的<script></script>被过滤掉了 

这里使用,实现简单的防御

//preg_replace正则表达式<script进行替换为空,也就是过滤掉
$message=preg_replace('/<(.*)s(.*)c(.*)r(.*)i(.*)p(.*)t/', '', $_GET['message']); 

第二part 严谨的防御++

  防御  大小写 输入内容:<SCRIPT>alert(‘123’)</SCRIPT>

点击submit,有下图所示:

利用escapeHTML()函数,实现防御

防御核心

//这里会使用正则对<script进行替换为空,也就是过滤掉,修改方式是:添加escape()函数
$message=escape(preg_replace

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值