EditPlus查找PHP源码简单数字型注入的正则表达式

站长资源 2025-06-02 03:45www.dzhlxh.cnseo优化

今日,我面对一个项目代码,文件虽少却充满了注入代码。阅读每一行都显得异常繁琐,于是我决定投入一些时间来编写一个正则表达式,以便快速搜索并识别这些注入点。经过一番操作后,我成功筛选出了安全的代码段,大大节省了时间。

针对`select`、`update`和`delete`语句,我使用了以下的正则表达式进行查找:

```scss

((select|SELECT|update|UPDATE|delete|DELETE) .(from|FROM|set|SET) .(where|WHERE) .)

```

对于没有条件判断的查询语句,由于它们基本不存在注入问题,因此只需搜索这些语句即可。举个例子:

```sql

select from user where

```

接下来,我针对简单的数字型注入进行了正则匹配,该表达式能够找到`select`、`update`和`delete`三种语句,以及五种格式的整形注入。例如:

直接变量传入的方式:

```sql

select from guess where id=$subject_id

update guess set is_valid=0 where id=$subject_id

delete from guess where id=$subject_id

```

当`=`与变量之间存在空格时:

```sql

select from guess where id= $subject_id

update guess set is_valid=0 where id= $subject_id

delete from guess where id= $subject_id

```

变量被双引号包围时:

```sql

select from guess where id="$subject_id"

update guess set is_valid=0 where id="$subject_id"

delete from guess where id="$subject_id"

```

当`=`与双引号或引号之间存在空格,或是`=`与引号、双引号同时存在空格时,以上的正则表达式同样能够匹配到。

在完成以上工作后,我使用`cambrian.render('body')`来呈现我的成果。整个过程中,正则表达式的强大之处在于,它能够帮助我们快速识别出潜在的注入风险,为代码的安全审查提供了有力的工具。通过这样的方式,我们可以更加高效地保护代码的安全性,确保系统的稳定运行。

Copyright © 2016-2025 www.dzhlxh.cn 金源码 版权所有 Power by

网站模板下载|网络推广|微博营销|seo优化|视频营销|网络营销|微信营销|网站建设|织梦模板|小程序模板