PHP中is_numeric函数十六进制绕过0day
0×00 简介
国内一部分CMS程序里面有用到过is_numberic函数,我们先看看这个函数的结构
bool is_numeric ( mixed $var )
如果 var 是数字和数字字符串则返回 TRUE,否则返回 FALSE。
0×01 函数是否安全
接下来我们来看个例子,说明这个函数是否安全。
$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次注入.
0×02 总结
尽量不要使用这函数,如果要使用这个函数,建议使用规范的sql语句,条件加入单引号,这样16进制0x31206f722031就会在数据库里显示出来。而不会出现1 or 1。
转载于:https://www.cnblogs.com/wjvzbr/p/7538138.html
PHP中is_numeric函数十六进制绕过0day相关推荐
- php中sha1,PHP中sha1()函数和md5()函数的绕过
相信大家都知道,sha1函数和md5都是哈希编码的一种,在PHP中,这两种编码是存在绕过漏洞的. PHP在处理哈希字符串时,会利用"!="或"=="来对哈希值进 ...
- python print函数用法_Python3.2中Print函数用法实例详解
本文实例讲述了Python3.2中Print函数用法.分享给大家供大家参考.具体分析如下: 1. 输出字符串 >>> strHello = 'Hello World' >> ...
- php 格式化评论量函数,深入剖析PHP中printf()函数格式化使用
printf()函数优点在于可以格式化输出! printf的格式控制的完整格式: % - 0 m.n l或h 格式字符 下面对组成格式说明的各项加以说明: ①%:表示格式说明的起始符号,不可缺少. ② ...
- format函数python的顺序_[转载] Python中format函数用法
Python中format函数用法 format优点 format是python2.6新增的格式化字符串的方法,相对于老版的%格式方法,它有很多优点. 1.不需要理会数据类型的问题,在%方法中%s只能 ...
- python中find函数忽略大小写_python字符串(大小写、判断、查找、分割、拼接、裁剪、替换、格式化)...
一.通用操作 1.Python len() 方法返回对象(字符.列表.元组等)长度或项目个数. 语法 len()方法语法: len( q ) 参数 q -- 对象. 返回值 返回对象长度. 实例 以下 ...
- c语言 内存搜索,怎么在一段内存中搜索一个十六进制串
如何在一段内存中搜索一个十六进制串? 比如有长度为N,首地址为P的内存,搜索其中的内容是否包含有"001122ff"这样的串?如何能高效搜索?谢谢 ------解决方案------ ...
- 10.4.4 使用ctypes调用kernel32.dll中的函数
10.4.4 使用ctypes调用kernel32.dll中的函数 2007-10-17 14:41 孙广磊 人民邮电出版社 字号:T | T 综合评级: 想读(5) 在读(0) 已读(6) ...
- C++中虚函数工作原理和(虚)继承类的内存占用大小计算
转载请标明出处,原文地址:http://blog.csdn.net/hackbuteer1/article/details/7883531 一.虚函数的工作原理 虚函数的实现要求对象携带额 ...
- 在内存中读取函数的ShellCode并执行
在内存中读取函数的ShellCode并执行 下面是一个例子,实现的效果是将fun1函数的十六进制读取出来,在内存中将str1的地址改成str2,分配一块内存,将改好的函数的ShellCode写入并执行 ...
最新文章
- kettle中的switch_Kettle学习笔记(二)— 基本操作
- mysql工具使用意义_MySQL性能分析、及调优工具使用详解
- Typora开始收费,介绍几款免费的MarkDown编辑器
- JQ和Js获取span标签的内容
- Ubuntu SSH Algorithm negotiation failed
- 一起学WindowsPhone7开发(二十六. Advertising)
- java http 工具类_Java发送Http请求工具类
- 【如何制作电子书】云展网教程 | 编辑纯文本阅读页面功能(有利于SEO收录)
- You can't specify target table 'UpdateInfo' for update in FROM clause
- 【Leetcode】1925. Count Square Sum Triples
- vs2013如何调用监视窗口实现调试(如何打断点、逐步调试、逐过程调试、退出调试、条件调试)
- sourceTree细节安装
- 10.3国庆作业(UART实验)
- 如何下载某个网站的ico图标
- 为TreeView正色
- 渗透测试-SQL注入之sqlmap的使用方法及实战案例
- 墨尔本大学计算机本科学费,墨尔本大学学费一年多少?墨尔本大学学费贵吗?...
- List拆分为多个list
- 一. HTML基础介绍
- Redis 大key与热key
热门文章
- Mysql数据库基础系列(二):表结构、键值
- nfs参数介绍与写法示例及报错( Operation not permitted)
- MySQL 分库分表与分区的区别和思考
- 从七个方面,面试大厂高级工程师
- 「mysql优化专题」你们要的多表查询优化来啦!请查收(4)
- Java线程详解(8)-线程的同步
- 区分TTL、MSL、RTT
- Android可输入的下拉框,android 可编辑的下拉框 Demo
- iphone刷基带_iphone7基带坏了怎么办,iphone7基带修复多少钱
- linux7双网卡设置,Centos 7 静态IP和双网卡配置