用HTML+PHP写一个留言板来进行XSS测试&学习 第三篇(简单的过滤标签功能实现&绕过)
2017-04-09 16:58
716 查看
这次我们要给前一篇文章写的简易“入库”留言板添加一个功能,实现初级的过滤
留言板代码请看:http://blog.csdn.net/qq_38219257/article/details/69808812
因为是功能示范,暂时就写一个过滤<script>标签的简单方法
这次用到了PHP中的 过滤器
filter_var 期中的参数FILTER_CALLBACK可以自定义数组进行过滤,用户可以自己构造函数,定义过滤规则
function convertScript($string) //自己构建一个函数,以字符串作为形参
{
return str_replace("<script>", "", $string);//返回值中进行替换操作,将<script> 替换为空
} //
fwrite($log,filter_var($_POST['user'], FILTER_CALLBACK, array("options"=>"convertScript"))."\r\n");
fwrite($log,filter_var($_POST['desc'], FILTER_CALLBACK, array("options"=>"convertScript"))."\r\n")
就我的理解,filter_var后面的 数组进行了关联这一过程,将前面的变量作形参传给options关联的convertscript(),取得返回值进行关联。
把这段代码加到读文件操作的后面即可以达到过滤目的
那又该如何绕过呢?
因为不是循环检测,所以它只会过滤一遍,我们可以构造<scr<script>ipt> 或者大小写混合(甚至在这个例子中全用大写就可以绕过)如 <ScrIpT>。
就是这些思路,没有什么难点,如果有什么错误的地方恳请大家指出。。
下一篇试试宽字节绕过环境的搭建吧,敬请期待。
留言板代码请看:http://blog.csdn.net/qq_38219257/article/details/69808812
因为是功能示范,暂时就写一个过滤<script>标签的简单方法
这次用到了PHP中的 过滤器
filter_var 期中的参数FILTER_CALLBACK可以自定义数组进行过滤,用户可以自己构造函数,定义过滤规则
function convertScript($string) //自己构建一个函数,以字符串作为形参
{
return str_replace("<script>", "", $string);//返回值中进行替换操作,将<script> 替换为空
} //
fwrite($log,filter_var($_POST['user'], FILTER_CALLBACK, array("options"=>"convertScript"))."\r\n");
fwrite($log,filter_var($_POST['desc'], FILTER_CALLBACK, array("options"=>"convertScript"))."\r\n")
就我的理解,filter_var后面的 数组进行了关联这一过程,将前面的变量作形参传给options关联的convertscript(),取得返回值进行关联。
把这段代码加到读文件操作的后面即可以达到过滤目的
那又该如何绕过呢?
因为不是循环检测,所以它只会过滤一遍,我们可以构造<scr<script>ipt> 或者大小写混合(甚至在这个例子中全用大写就可以绕过)如 <ScrIpT>。
就是这些思路,没有什么难点,如果有什么错误的地方恳请大家指出。。
下一篇试试宽字节绕过环境的搭建吧,敬请期待。
相关文章推荐
- 用HTML+PHP写一个留言板来进行XSS测试&学习 第一篇(GET反射型)
- 用HTML+PHP写一个留言板来进行XSS测试&学习 第二篇(POST储存型)
- Android编程学习系列:第三篇,简单的对话框功能实现
- 《Orange's 一个操作系统的实现》学习笔记--一个简单的引导扇区
- 转[翻译]案例学习:仅使用Redis+PHP设计实现一个简单的Twitter
- 简单实现PHP留言板功能
- 基于PHP实现一个简单的在线聊天功能
- php+Memcached实现简单留言板功能示例
- PHP实现一个简单url路由功能实例
- salesforce 零基础学习(四十四)实现checkbox列表简单过滤功能
- 一个简单实现了PHP图片上传功能
- 一个简单的PHP&MYSQL留言板源码
- php简单的留言板与回复功能具体实现
- 一个简单的PHP&MYSQL留言板源码第1/2页
- PHP+MySql实现一个简单的留言板
- PHP实现一个简单url路由功能
- WPF学习——制作一个简单的录入界面(2):用C#编程实现所有控件的功能
- PHP实现一个简单url路由功能
- php对文本文件进行分页功能简单实现
- 一个简单的PHP&MYSQL留言板源码第1/2页