← 아티클 목록
업데이트phplaravel업데이트

PHP 7.3.24 업데이트 — 한국 Laravel 개발자 영향 분석

작성: 라라벨 코리아 (초안)

발행: 2026년 8월 6일

## 요약

요약

PHP 7.3.24는 2020년 10월 29일에 릴리스된 PHP 7.3 브랜치의 보안 및 버그 수정 릴리스입니다. IMAP, MySQLnd, ODBC, OPcache 등 다양한 확장 모듈에 걸친 다수의 버그가 수정되었으며, 이전 7.3.x 릴리스들에 포함된 보안 취약점 패치(CVE-2020-7070, CVE-2020-7069 등)도 누적 포함되어 있습니다. PHP 7.3은 현재 Security Fixes Only 단계에 있으므로, 프로덕션 환경에서 장기적으로 사용 중인 팀은 업그레이드 계획 수립이 필요합니다.


핵심 내용

🔒 누적 보안 수정 사항 (7.3.16 ~ 7.3.24)

PHP 7.3.24에는 직전 릴리스들을 통해 패치된 다음 CVE들이 모두 누적 포함되어 있습니다.

CVE영향 모듈설명
CVE-2020-7070Core인코딩된 쿠키 이름 파싱 오류로 악의적인 __Host- 쿠키 전송 가능
CVE-2020-7069OpenSSLAES-CCM 암호화에서 12바이트 IV 사용 시 잘못된 암호문/태그 생성
CVE-2020-7068Pharphar_parse_zipfile에서 해제된 해시 키 사용(Use-After-Free)
CVE-2020-7067Standardurldecode()에서 범위 초과 읽기(OOB Read)
CVE-2020-7065MBstringmb_strtolower(UTF-32LE)에서 스택 버퍼 오버플로우
CVE-2020-7064EXIFexif_read_data()에서 미초기화 값 사용
CVE-2019-11048Core긴 파일명/변수로 인한 OOM 및 임시 파일 미삭제

⚠️ 주의: 위 CVE 중 하나라도 해당되는 기능을 사용 중이라면 즉시 업데이트가 필요합니다.


🐛 7.3.24 주요 버그 수정 상세

Core

  • Bug #79423: copy() 함수가 복사할 수 있는 파일 크기에 제한이 있던 문제 수정. 대용량 파일 처리 작업에서 예상치 못한 실패가 발생할 수 있었던 버그입니다.

Calendar

  • Bug #80185: jdtounix() 함수가 2037년 이후 날짜에서 실패하는 문제 수정. Unix 타임스탬프 2038년 문제(Y2K38)와 관련된 버그로, 장기 일정 계산 로직에 영향을 줄 수 있습니다.

IMAP (다수 수정)

  • Bug #80213, #80215, #80216, #80220, #80223: imap_mail_compose() 함수에서 세그멘테이션 폴트, 파라미터 변조, 메모리 누수, 타입/인코딩 미검증 등 복수의 심각한 문제 수정.
  • Bug #80226: imap_sort() 함수의 메모리 누수 수정.
  • IMAP 확장을 사용하는 메일 발송/파싱 로직이 있다면 반드시 이번 버전으로 업데이트해야 합니다.

MySQLnd

  • Bug #80107: mysqli_query()에서 압축(compression)이 활성화된 상태로 약 16MB 이상의 쿼리를 실행할 때 실패하는 문제 수정. 대용량 INSERT 또는 배치 처리를 사용하는 환경에서 발생할 수 있는 버그입니다.
  • Bug #80115: mysqlnd.debug에서 슬래시를 포함한 절대 경로를 인식하지 못하는 문제 수정.

OPcache

  • Bug #80083: 옵티마이저 패스 6에서 ibm_db2 데이터 바인딩에 사용되는 변수를 제거하는 문제 수정. IBM DB2 또는 유사한 데이터 바인딩 방식을 사용하는 환경에서의 예상치 못한 동작을 해결합니다.

Standard

  • Bug #80114: parse_url()이 포트 번호 0을 포함한 URL을 파싱하지 못하는 문제 수정.

📅 PHP 7.3 지원 주기 현황

PHP 7.3의 Active Support는 2020년 12월 6일에 종료되었으며, Security Support는 2021년 12월 6일에 종료 예정입니다(릴리스 당시 기준). 이 문서는 2020년 10월 릴리스를 기준으로 작성된 드래프트이므로, 현재 시점에서 PHP 7.3은 공식 지원이 완전히 종료된 버전입니다.


한국 Laravel 개발자에게 미치는 영향

Laravel 버전별 호환성

PHP 7.3.24는 Laravel 6.x(LTS), Laravel 7.x와 함께 사용되는 시점의 릴리스입니다. 이 릴리스 자체가 PHP 7.3 브랜치의 버그 수정이므로 Laravel 코드베이스와의 직접적인 비호환성은 없습니다.

현재 시점 권고: 이 글을 읽는 시점에 PHP 7.3을 아직 운영 중이라면, PHP 8.1 또는 8.2 이상으로의 업그레이드가 강력히 권고됩니다. PHP 7.3은 보안 지원도 종료된 상태입니다.

보안 취약점 영향 판단

다음 기능을 프로젝트에서 사용 중이라면 즉시 패치 여부를 확인하세요.

  • 쿠키 처리 (CVE-2020-7070): Laravel의 쿠키 미들웨어(EncryptCookies)는 내부적으로 PHP의 쿠키 파싱에 의존합니다. __Host- 또는 __Secure- 접두어를 사용하는 쿠키가 있다면 영향을 받을 수 있습니다.
  • OpenSSL (CVE-2020-7069): encrypt() 헬퍼, Crypt 파사드, 또는 직접 OpenSSL 함수를 사용하는 경우 확인이 필요합니다.
  • 파일 업로드 (CVE-2019-11048): Laravel의 Request::file() 및 파일 업로드 처리 전반에 영향을 줄 수 있습니다. 특히 사용자로부터 파일명이나 폼 변수 이름을 제어받는 구조라면 위험합니다.

로컬 개발 환경별 고려 사항

환경영향 및 조치
Laravel Valetvalet use php@7.3 사용 시 Homebrew를 통해 7.3.24로 업데이트 필요. brew upgrade php@7.3
Laravel Sail사용 중인 docker-compose.yml의 PHP 이미지를 확인. php:7.3-fpm 이미지가 7.3.24 이상인지 점검
Docker (커스텀)베이스 이미지 FROM php:7.3-fpm은 공식 이미지가 자동 업데이트되므로 docker pull로 갱신 후 재빌드
서버 직접 관리php -v로 현재 버전 확인 후 패키지 관리자(apt, yum 등)로 업데이트

실무 체크리스트

로컬 환경

  • php -v 명령으로 현재 PHP 버전 확인
  • PHP 7.3 사용 중이라면 7.3.24로 업데이트
    • macOS(Valet): brew upgrade php@7.3 && valet restart
    • Docker/Sail: docker pull php:7.3-fpm && docker-compose build --no-cache
  • 업데이트 후 php -v로 버전 재확인
  • 로컬에서 php artisan serve 또는 valet 정상 실행 확인

스테이징 환경

  • IMAP 확장 사용 여부 확인 (php -m | grep imap)
    • 사용 중이라면 imap_mail_compose(), imap_sort() 관련 기능 회귀 테스트 실행
  • mysqli 압축 옵션 사용 여부 확인 (mysqli.allow_persistent, 커넥션 설정의 MYSQLI_CLIENT_COMPRESS)
  • copy() 함수로 대용량 파일을 복사하는 코드가 있다면 테스트
  • parse_url()을 사용하는 URL 파싱 로직 테스트 (특히 포트 0 처리)
  • OPcache 활성화 상태에서 전체 기능 테스트 실행

프로덕션 환경

  • PHP 버전 현황 인벤토리 작성 — 모든 서버의 PHP 버전 목록화
  • PHP 7.3.24 업데이트 적용 (무중단 배포 또는 점검 시간 활용)
    • Ubuntu/Debian: apt-get update && apt-get upgrade php7.3
    • CentOS/RHEL: yum update php
    • Amazon Linux 2: amazon-linux-extras 또는 Remi 저장소 활용
  • 업데이트 후 PHP-FPM 또는 Apache 재시작 (systemctl restart php7.3-fpm)
  • 애플리케이션 Health Check 엔드포인트 정상 응답 확인
  • 에러 로그(storage/logs/laravel.log, /var/log/php-fpm/error.log) 이상 없는지 확인
  • 장기 계획: PHP 7.3은 지원이 종료된 버전입니다. PHP 8.1+ 마이그레이션 로드맵 수립을 권장합니다.
    • Laravel Shift를 활용한 자동 마이그레이션 검토
    • rector/rector를 이용한 PHP 8.x 코드 자동 변환 검토

편집자 주: 이 글은 PHP 7.3.24 릴리스 당시(2020년 10월) 기준으로 작성된 드래프트입니다. 현재 시점에서 PHP 7.3은 보안 지원이 완전히 종료되었으므로, 신규 프로젝트 또는 유지보수 중인 프로젝트 모두 최신 지원 PHP 버전으로의 업그레이드를 최우선 과제로 삼아야 합니다.