宿迁腾云网络公司

腾云网络 五年经验专注网站建设
  • 首页
  • 服务项目
    • 网站建设
    • 微信小程序
    • SEO优化
    • APP开发
  • 建站费用
  • 成功案例
    • 网站建设案例
    • 小程序案例
    • APP开发案例
    • SEO优化案例
  • 行业动态
    • 网站建设
    • SEO优化
    • 技术日志
  • 联系我们
    • 关于我们
首页 > 行业动态 > 技术日志 > php git的一些查找代码漏洞方法

php git的一些查找代码漏洞方法

2020-01-05


前言

    2020年好,各位 PHPer 们,很久没有写原创文章了,心里实在过意不去,决定写点文字,"从心"出发,以求共鸣。


背景
    今天打开 php.net ,忽地发现 PHP 7.4.1 正式版本都已经发布了,感慨万千。想当年,自己从 PHP 5.1 版本作为学习起点,一直到 PHP 7.2 版本,已经学了十多年了。不得不说,这些年 PHP 的变化确实很多也很大,期间还炒了很长一段时间 PHP 6,但 6 在西方属于不吉利数字,所以跳过了。众所周知,PHP 是一门动态类型的语言,因此其编程时的灵活度和自由度会比强类型语言更高,然而正是这种特性使得它存在着与生俱来无法完整覆盖测试的漏洞场景。


操作步骤

    第1步、打开 PHP 7.4.1 变更记录(https://www.php.net/ChangeLog-7.php#7.4.1)网址,如下图:

原创|从 PHP Git 源码的查找导致 PHP 安全漏洞的代码变更(图1)

我们发现了好几个 CVE (CVE 的英文全称是“Common Vulnerabilities & Exposures”),即公共漏洞和暴露,而这种漏洞通常就是上一个版本存在的安全漏洞。


第2步、打开 bug.php.net 打开某个 bug 

的详情(https://bugs.php.net/bug.php?0" cellspacing="0" >

In PHP versions 7.2.x below 7.2.26, 7.3.x below 7.3.13 and 7.4.0, PHP bcmath extension functions on some systems, including Windows, can be tricked into reading beyond the allocated space by supplying it with string containing characters that are identified as numeric by the OS but aren't ASCII numbers. This can read to disclosure of the content of some memory locations.
References


英文我就不翻译了,如果感兴趣,请自行想办法。


第3步、使用 php-src 官方源码,我在 gitee 上同步了一份来自 github 的源码,仓库地址:https://gitee.com/gopro/php-src.git,直接克隆一份到本地,git clone https://gitee.com/gopro/php-src.git。


第4步、使用 PHPStorm 打开 php-src 源码,如下图所示:

原创|从 PHP Git 源码的查找导致 PHP 安全漏洞的代码变更(图2)

接着,切换分支到 PHP-7.4.1 ,在 php-src 目录右键

原创|从 PHP Git 源码的查找导致 PHP 安全漏洞的代码变更(图3)

选择 Remote Branches -> origin/php-7.4.1 -> checkout。


第5步、比较 PHP-7.4.1 分支与 PHP-7.4.0 分支的目录改动区别。如下图操作:

原创|从 PHP Git 源码的查找导致 PHP 安全漏洞的代码变更(图4)

结果如下:

原创|从 PHP Git 源码的查找导致 PHP 安全漏洞的代码变更(图5)

第6步、我们鼠标双击图中的 str2num.c 文件,根据PHP 7.4.1 的 changelog 我们可以直接推断,这个变动应该就是修复了 CVE-2019-11046这个漏洞的,我们再来看看对应的文件变更比较:

原创|从 PHP Git 源码的查找导致 PHP 安全漏洞的代码变更(图6)

这里已经比较明显了,如果有同学能够看懂 PHP 源码,可以继续深究一下了,本文纯属抛砖引玉。


Tag:

感谢您关注我们,如果您有建站需求,请与我们取得联系。

网站制作公众号

宿迁腾云网络公司@网站开发| 网页制作公司 | 网站制作公司

咨询电话:13160355545

上一篇

返回栏目

下一篇

热推

  • 这篇文章主要教大家如何使用Html5编写属于自己的画画板

相关

标签

html5(1) 画板(1) 网站排名(1) 百度优化(1) 动网(1) 网站架构(1) 网站统计(1) 搜索引擎优化(1) iconv(2) 字符(1) windows 10(1) 网络科技有限公司(1) 网站建设公司(1) 解决方案(1) 网站建设方案(2) 学院(1) 学校(1) 手游(1) 养老(1) 民生(1)
宿迁腾云网络公司
网站建设
  • 私人定制
  • 标准模板建站
  • 经济模板建站
精品模板

宿迁腾云网络公司

13160355545

江苏省宿迁市丽景湾华庭北门都市花园公寓9楼907

SiteMap
Copyright © 2017-2020 TYWEB.NET 宿迁腾云网络科技有限公司 ALL RIGHTS RESERVED.   苏ICP备17033535号-1
网站建设
建站费用
成功案例
联系我们
  • 售前客服
  • 售后客服
  • 微信扫一扫
  • 联系电话
    手机号13160355545
  • 返回顶部