php is_numberic函数造成的SQL注入漏洞
- 软件编程
- 2026-01-11 16:41:20
一、is_numberic函数简介
国内一部分CMS程序里面有用到过is_numberic函数,我们先看看这个函数的结构
bool is_numeric (mixed $var)
如果 var 是数字和数字字符串则返回 TRUE,否则返回 FALSE。
二、函数是否安全
接下来我们来看个例子,说明这个函数是否安全。
复制代码 代码如下:$s = is_numeric($_GET['s'])?$_GET['s']:0;
$sql="insert into test(type)values($s);"; //是 values($s) 不是values('$s')
mysql_query($sql);
上面这个片段程序是判断参数s是否为数字,是则返回数字,不是则返回0,然后带入数据库查询。(这样就构造不了sql语句)
我们把‘1 or 1' 转换为16进制 0x31206f722031 为s参数的值
程序运行后,我们查询数据库看看,如下图:
如果再重新查询这个表的字段出来,不做过滤带入另一个SQL语句,将会造成2次注入.
三、 总结
尽量不要使用这函数,如果要使用这个函数,建议使用规范的sql语句,条件加入单引号,这样16进制0x31206f722031就会在数据库里显示出来。而不会出现1 or 1。
# 国内
# STRONG
# 要使
# 会在
# 将会
# 不做
# TRUE
# FALSE
# 如下图
# php
# 数据库查询
# 转换为
# 到过
# var
# 单引号
# 库里
# 再重新
# 看个
# 对于ThinkPHP框架早期版本的一个SQL注入漏洞详细分析
# mixed
# 利用SQL注入漏洞登录后台的实现方法
# 利用SQL注入漏洞拖库的方法
# SQL注入漏洞过程实例及解决方案
# php中sql注入漏洞示例 sql注入漏洞修复
# PHP代码网站如何防范SQL注入漏洞攻击建议分享
# is_numeric
# 在Global.asax文件里实现通用防SQL注入漏洞程序(适应于post/get请求)
# sql注入漏洞
# PHPCMS2008广告模板SQL注入漏洞修复
# is_numberic函数
# Discuz7.2版的faq.php SQL注入漏洞分析
# is_numberic
相关栏目:
【
教研文案 】
【
日常文案 】
【
AI模型 】
【
网络运营 】
【
营销推广 】
【
云计算 】
【
技术教程 】
【
软件编程 】
【
汉字学习 】
【
歌词歌曲 】
【
精选文章 】
相关推荐:
Golang搭建开发环境的图文教程
thinkphp诸多限制条件下如何getshell详解
如何在scrapy中集成selenium爬取网页的方法
python-地图可视化组件folium的操作
在CentOS启动时自动加载内核模块overlayfs操作
PHP大文件分割分片上传实现代码
9个小技巧让你的Java if else看起来更优雅
Selenium环境变量配置(火狐浏览器)及验证实现
docker 查看容器日志命令的实现
MySQL8.0设置远程访问权限的方法
给Docker更换国内镜像源操作
vue添加自定义右键菜单的完整实例
MySQL使用MRG_MyISAM(MERGE)实现分表后查询的示例
Pyqt助手安装PyQt5帮助文档过程图解
解决C语言中使用scanf连续输入两个字符类型的问题
用python对oracle进行简单性能测试
docker-compose快速搭建docker私有仓库的步骤
php远程请求CURL实例教程(爬虫、保存登录状态)
Mysql 5.6 "隐式转换"导致的索引失效和数据不准确的问题
使用Python爬取Json数据的示例代码
Java程序执行过程及内存机制详解
Springboot集成graylog及配置过程解析
Python getsizeof()和getsize()区分详解
Python类class参数self原理解析
Docker 容器生命周期 架构 以及和VM之间的差异详解
spring boot实现阿里云视频点播上传视频功能(复制粘贴即可)
python 爬取小说并下载的示例
python安装及变量名介绍详解
使用git上传到码云分支的实现
详解prometheus监控golang服务实践记录
pandas实现导出数据的四种方式
python 解决函数返回return的问题
Docker 清理环境操作
MySQL 全文索引的原理与缺陷
react中hook介绍以及使用教程
在vue中动态修改css其中一个属性值操作
SQL Server 批量插入数据的完美解决方案
python不同版本的_new_不同点总结
在docker容器中调用和执行宿主机的docker操作
如何创建一个Flask项目并进行简单配置
详解vue-cli项目在IE浏览器打开报错解决方法
python 批量下载bilibili视频的gui程序
浅析SQL Server授予了CREATE TABLE权限但是无法创建表
详解vue 组件注册
学习C语言对后期java有帮助吗
C#中is,as,using关键字的使用说明
PHP sdk实现在线打包代码示例
使用Idea或Datagrip导入excel数据的方法
Docker 使用nsenter工具进入容器的操作
PHP sdk文档处理常用代码示例解析
本文转自网络,如有侵权请联系客服删除。
热门内容推荐
C#使用虚拟方法实现多态
- 2026-01-11
JavaScript原生对象之String对象的属性和方法详解
- 2026-01-11
js实现DOM走马灯特效的方法
- 2026-01-11
轻松创建nodejs服务器(1):一个简单nodejs服务器例子
- 2026-01-11
php实现微信公众平台账号自定义菜单类
- 2026-01-11
