接上一篇:正则表达式(regex)错误使用导致功能漏洞 ,我们继续梳理,正则表达式错误使用,导致功能设计漏洞(bug),做web方面,需要掌握的知识很多,网站开发这项工作,在国内也就10多年,很多开发人员,都是通过:培训(自学) ->模仿->做项目 ,这样一个过程。很多就是修修改改后,就成为了web开发工程师。这行入门低,很容易上手。但是想成为大师级的,还是很不容易。需要学习,掌握的知识几十门。而对于刚刚入门同人,很多时候因为缺乏系统学习,理论支持。导致提升有些心有余而力不足啦!因此,出现这些或多或少的功能设计漏洞,是很常见的!
好了,有些跑题了,在做代码走查时候,这类漏洞也是时常出现。我们看下,下面代码:
<?php $user="bcd123张三"; ///匹配用户名中出现abc还有bcd开头,后面紧跟是数字字符 preg_match_all("/abc|bcd\d+/",$user,$match); var_dump($match); /*结果是 array(1) { [0]=> array(1) { [0]=> string(6) "bcd123" } } */
查找所有页面出现abc或者bcd开头,后面紧跟数字字符串。通过上面,我们看,正确匹配到bcd123,如果我们输入:$user = “abc123张三”, 发现不能匹配到了。原因是”|”字符,优先级最低,以上写法会变成:匹配abc 或者是bcd\d+ 字符串。
以上图,将|,包含到()中。
如果要提升优先级,可以(abc|bcd)\d+ ,匹配所有abc或者bcd 字符串,并且后面紧跟数字的。在使用”|”字符串,注意它的优先级级别低,如果要优先匹配,可以放入()中。
1、前言 为什么我们要隐藏部分接口? 因为我们在用swagger代替接口的时候,难免...
1、在Windows系统中,下载并安装sublime text3 软件 2、sublime text 添加到鼠标...
一、界面改变 1.项目创建界面 首先启动界面改变就不说了,创建项目的界面做了较...
软件作者:pt007[at]vip.sina.com版权所有,转载请注明版权 信息来源:邪恶八进制...
NEU lzf ??基于Flink的个人装扮商城群体用户画像与数据实时统计系统为本人于昨日...
MySql 整体结构 MySQL 由连接池、SQL 接口、解析器、优化器、缓存、存储引擎等组...
微软官方博客于 2 月初再次发布提示,将会在 3 月 9 日停止对经典版 Edge 浏览器...
【51CTO.com原创稿件】小李今天刚上班就收到客户的反馈,说查询用户信息会非常的...
首先 是将后台中 模块---新闻心情---心情配置 去掉多余的剩一个,名称改成 “赞...
在Win10中,不少人都很喜欢休眠功能,因为它十分好用,可以保存当前内存中的所有...