• 公告ID (KylinSec-SA-2023-2262)

摘要:

php security update

安全等级: High

公告ID: KylinSec-SA-2023-2262

发布日期: 2023年9月9日

关联CVE: CVE-2022-31631   CVE-2023-3247   CVE-2023-0662   CVE-2023-3823   CVE-2023-0568   CVE-2023-0567   CVE-2023-3824  

  • 详细介绍

1. 漏洞描述

   

PHP is an HTML-embedded scripting language. PHP attempts to make it easy for developers to write dynamically generated web pages. PHP also offers built-in database integration for several commercial and non-commercial database management systems, so writing a database-enabled webpage with PHP is fairly simple. The most common use of PHP coding is probably as a replacement for CGI scripts. The php package contains the module (often referred to as mod_php) which adds support for the PHP language to Apache HTTP Server.

Security Fix(es):

A flaw was found in PHP. This issue occurs due to an uncaught integer overflow in PDO::quote() of PDO_SQLite returning an improperly quoted string. With the implementation of sqlite3_snprintf(), it is possible to force the function to return a single apostrophe if the function is called on user-supplied input without any length restrictions in place.(CVE-2022-31631)

In PHP 8.0.X before 8.0.28, 8.1.X before 8.1.16 and 8.2.X before 8.2.3, password_verify() function may accept some invalid Blowfish hashes as valid. If such invalid hash ever ends up in the password database, it may lead to an application allowing any password for this entry as valid.(CVE-2023-0567)

In PHP 8.0.X before 8.0.28, 8.1.X before 8.1.16 and 8.2.X before 8.2.3, core path resolution function allocate buffer one byte too small. When resolving paths with lengths close to system MAXPATHLEN setting, this may lead to the byte after the allocated buffer being overwritten with NUL value, which might lead to unauthorized data access or modification. (CVE-2023-0568)

In PHP 8.0.X before 8.0.28, 8.1.X before 8.1.16 and 8.2.X before 8.2.3, excessive number of parts in HTTP form upload can cause high resource consumption and excessive number of log entries. This can cause denial of service on the affected server by exhausting CPU resources or disk space. (CVE-2023-0662)

In PHP versions 8.0.* before 8.0.29, 8.1.* before 8.1.20, 8.2.* before 8.2.7 when using SOAP HTTP Digest Authentication, random value generator was not checked for failure, and was using narrower range of values than it should have. In case of random generator failure, it could lead to a disclosure of 31 bits of uninitialized memory from the client to the server, and it also made easier to a malicious server to guess the client's nonce. 

(CVE-2023-3247)

In PHP versions 8.0.* before 8.0.30, 8.1.* before 8.1.22, and 8.2.* before 8.2.8 various XML functions rely on libxml global state to track configuration variables, like whether external entities are loaded. This state is assumed to be unchanged unless the user explicitly changes it by calling appropriate function. However, since the state is process-global, other modules - such as ImageMagick - may also use this library within the same process, and change that global state for their internal purposes, and leave it in a state where external entities loading is enabled. This can lead to the situation where external XML is parsed with external entities loaded, which can lead to disclosure of any local files accessible to PHP. This vulnerable state may persist in the same process across many requests, until the process is shut down. 

(CVE-2023-3823)

In PHP version 8.0.* before 8.0.30,  8.1.* before 8.1.22, and 8.2.* before 8.2.8, when loading phar file, while reading PHAR directory entries, insufficient length checking may lead to a stack buffer overflow, leading potentially to memory corruption or RCE. 

(CVE-2023-3824)

2. 影响范围

cve名称 产品 组件 是否受影响
CVE-2022-31631 KY3.5.2 php Fixed
CVE-2023-3247 KY3.5.2 php Fixed
CVE-2023-0662 KY3.5.2 php Fixed
CVE-2023-3823 KY3.5.2 php Fixed
CVE-2023-0568 KY3.5.2 php Fixed
CVE-2023-0567 KY3.5.2 php Fixed
CVE-2023-3824 KY3.5.2 php Fixed

3. 影响组件

    php

4. 修复版本

   

KY3.5.2

软件名称 架构 版本号
php-devel x86_64 8.0.30-1.ky3_5.kb1
php-common x86_64 8.0.30-1.ky3_5.kb1
php-mysqlnd x86_64 8.0.30-1.ky3_5.kb1
php-dbg x86_64 8.0.30-1.ky3_5.kb1
php-xml x86_64 8.0.30-1.ky3_5.kb1
php-help x86_64 8.0.30-1.ky3_5.kb1
php-intl x86_64 8.0.30-1.ky3_5.kb1
php-bcmath x86_64 8.0.30-1.ky3_5.kb1
php-dba x86_64 8.0.30-1.ky3_5.kb1
php x86_64 8.0.30-1.ky3_5.kb1
php-opcache x86_64 8.0.30-1.ky3_5.kb1
php-embedded x86_64 8.0.30-1.ky3_5.kb1
php-pgsql x86_64 8.0.30-1.ky3_5.kb1
php-enchant x86_64 8.0.30-1.ky3_5.kb1
php-gmp x86_64 8.0.30-1.ky3_5.kb1
php-ldap x86_64 8.0.30-1.ky3_5.kb1
php-gd x86_64 8.0.30-1.ky3_5.kb1
php-mbstring x86_64 8.0.30-1.ky3_5.kb1
php-odbc x86_64 8.0.30-1.ky3_5.kb1
php-sodium x86_64 8.0.30-1.ky3_5.kb1
php-snmp x86_64 8.0.30-1.ky3_5.kb1
php-ffi x86_64 8.0.30-1.ky3_5.kb1
php-pdo x86_64 8.0.30-1.ky3_5.kb1
php-tidy x86_64 8.0.30-1.ky3_5.kb1
php-cli x86_64 8.0.30-1.ky3_5.kb1
php-fpm x86_64 8.0.30-1.ky3_5.kb1
php-process x86_64 8.0.30-1.ky3_5.kb1
php-soap x86_64 8.0.30-1.ky3_5.kb1
php-xml aarch64 8.0.30-1.ky3_5.kb1
php-ffi aarch64 8.0.30-1.ky3_5.kb1
php-common aarch64 8.0.30-1.ky3_5.kb1
php-fpm aarch64 8.0.30-1.ky3_5.kb1
php-pdo aarch64 8.0.30-1.ky3_5.kb1
php-devel aarch64 8.0.30-1.ky3_5.kb1
php-mbstring aarch64 8.0.30-1.ky3_5.kb1
php-intl aarch64 8.0.30-1.ky3_5.kb1
php-enchant aarch64 8.0.30-1.ky3_5.kb1
php-snmp aarch64 8.0.30-1.ky3_5.kb1
php-help aarch64 8.0.30-1.ky3_5.kb1
php-mysqlnd aarch64 8.0.30-1.ky3_5.kb1
php-embedded aarch64 8.0.30-1.ky3_5.kb1
php-gd aarch64 8.0.30-1.ky3_5.kb1
php-opcache aarch64 8.0.30-1.ky3_5.kb1
php aarch64 8.0.30-1.ky3_5.kb1
php-dbg aarch64 8.0.30-1.ky3_5.kb1
php-dba aarch64 8.0.30-1.ky3_5.kb1
php-bcmath aarch64 8.0.30-1.ky3_5.kb1
php-cli aarch64 8.0.30-1.ky3_5.kb1
php-odbc aarch64 8.0.30-1.ky3_5.kb1
php-gmp aarch64 8.0.30-1.ky3_5.kb1
php-soap aarch64 8.0.30-1.ky3_5.kb1
php-ldap aarch64 8.0.30-1.ky3_5.kb1
php-pgsql aarch64 8.0.30-1.ky3_5.kb1
php-tidy aarch64 8.0.30-1.ky3_5.kb1
php-process aarch64 8.0.30-1.ky3_5.kb1
php-sodium aarch64 8.0.30-1.ky3_5.kb1

5. 修复方法


方法一:下载安装包进行升级安装
1、通过下载链接下载需要升级的升级包保存,如 xxx.rpm
2、通过rpm命令升级,如 rpm -Uvh xxx.rpm

方法二:通过软件源进行升级安装
1、保持能够连接上互联网
2、通过yum命令升级指定的包,如 yum install 包名

6. 下载链接

   

KY3.5.2:

x86_64:

     php-devel   

     php-common   

     php-mysqlnd   

     php-dbg   

     php-xml   

     php-help   

     php-intl   

     php-bcmath   

     php-dba   

     php   

     php-opcache   

     php-embedded   

     php-pgsql   

     php-enchant   

     php-gmp   

     php-ldap   

     php-gd   

     php-mbstring   

     php-odbc   

     php-sodium   

     php-snmp   

     php-ffi   

     php-pdo   

     php-tidy   

     php-cli   

     php-fpm   

     php-process   

     php-soap   

aarch64:

     php-xml   

     php-ffi   

     php-common   

     php-fpm   

     php-pdo   

     php-devel   

     php-mbstring   

     php-intl   

     php-enchant   

     php-snmp   

     php-help   

     php-mysqlnd   

     php-embedded   

     php-gd   

     php-opcache   

     php   

     php-dbg   

     php-dba   

     php-bcmath   

     php-cli   

     php-odbc   

     php-gmp   

     php-soap   

     php-ldap   

     php-pgsql   

     php-tidy   

     php-process   

     php-sodium   

上一篇:KylinSec-SA-2023-2261 下一篇:KylinSec-SA-2023-1669