XSS进阶二

本文通过四个实例深入探讨了XSS攻击的原理及防御措施,包括如何使用php的preg_match函数过滤恶意代码,以及如何绕过过滤机制实现攻击。实例四中展示了如何阻止script标签的使用,实例五讲解了限制特定函数的执行,而实例六则涉及了如何正确地处理字符串以避免XSS漏洞。最后,文章提供了防御XSS攻击的一些建议,包括字符转换、参数类型检查、输出前过滤、输入限制和建立白名单等方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实验来源:合天网安实验室

实例四、换一个角度,阳光依旧

      关键代码:

分析:首先preg_match函数是php的正则表达式匹配函数,一旦从$_GET['name']中匹配到script这个字眼,i参数忽略大小写,die() 函数输出一条消息--errpr,并退出当前脚本,下面的代码就不会再执行,这样的话script标签是不能用的啦,只能用的只能是其他标签,XSS进阶一里面的最后一个例子的img标签试试,应该是可以的,因为可以绕过if语句啊,结果请看下面,可以吧

 

任务一

根据实例四的代码提示,下面哪种方式能成功:  【单选题】  题目已完成,2 

实例五、限制了我的左手,我还有右手

     关键代码:


分析:preg_match匹配alert,并忽略大小写,不过改为大写的话,函数也不能行的啦,这样alert函数就不行了吧,还有其他函数啊,如prompt(提示消息框),confirm(确认消息框)啊,具体看图:


confirm就是比alert多了个取消按钮


任务二

根据实例五的代码提示,下面哪种方式不能成功:  【单选题】  题目已完成,2 

实例六、大胆去思考,小心去求

      关键代码:


分析:首先php将get获取到的值输出出来,那么就是$_GET['name']的值当做字符串复制给js的$a变量了,xss很常说的一个是什么标签闭合什么的,这里能不能语句闭合呢


我们看看源码


整理一下就是:

<script>
	var $a = "";
	alert("bye!");
	"";
</script>
这就是正常的js代码,不过最后一句(不过语法是没错的),在本地也测试了



当然这样会好理解一点


任务三

根据实例六的代码提示,下面哪种方式能成功:  【单选题】  题目已完成,2 

分析与思考





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值