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

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

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

발행: 2026년 8월 6일

## 요약

요약

PHP 7.3.27은 2021년 2월 4일에 릴리스된 보안 패치 버전으로, SOAP 확장의 Null 역참조 취약점(CVE-2021-21702)을 수정합니다. 이 버전은 PHP 7.3 브랜치의 보안 픽스를 포함하며, 해당 브랜치는 이미 EOL(End of Life)에 근접한 상태이므로 업그레이드 계획 수립이 시급합니다. 아직 PHP 7.3을 운영 중인 한국 Laravel 팀은 즉시 7.3.27로 패치하거나 PHP 8.x 마이그레이션을 최우선 과제로 삼아야 합니다.


핵심 내용

보안 취약점 수정 (CVE-2021-21702)

  • 영향 컴포넌트: PHP SOAP 확장(ext/soap)
  • 취약점 유형: Null Pointer Dereference (널 포인터 역참조)
  • CVE 번호: CVE-2021-21702
  • 수정 방법: SoapClient 내부에서 발생하는 널 역참조 버그를 수정 (담당: cmb, Stas)
  • 공격 시나리오: 악의적으로 조작된 SOAP 응답 또는 WSDL을 처리할 때 PHP 프로세스가 크래시되거나 비정상 종료될 수 있음
  • 영향 범위: SoapClient를 직접 사용하거나, 외부 SOAP 기반 API(금융, 공공기관 연계 등)와 통신하는 서비스

⚠️ Laravel에서의 SOAP 사용 패턴: Laravel은 기본적으로 REST/JSON API를 선호하지만, 국내 금융권, 공공 API(건강보험, 국세청 등), 일부 PG사 연동 시 SoapClient를 직접 사용하는 경우가 있습니다. 이런 환경에서는 이 패치가 직접적인 보안 영향을 미칩니다.


7.3.26에서 함께 포함된 보안 수정 사항

PHP 7.3.27 패키지에는 7.3.26의 변경 사항도 포함됩니다:

  • CVE-2020-7071: FILTER_VALIDATE_URL이 잘못된 userinfo를 포함한 URL을 유효한 것으로 허용하는 버그 수정
    • filter_var($url, FILTER_VALIDATE_URL) 결과를 신뢰하는 인증/검증 로직에 영향
    • Laravel의 url validation rule 내부에서도 간접적으로 이 필터를 활용할 수 있음

누적된 주요 버그 수정 이력 (7.3.17 ~ 7.3.25)

7.3.27은 이전 마이너 버전들의 픽스를 모두 포함합니다. Laravel 개발자에게 실질적으로 영향을 줄 수 있는 항목들:

버전영역내용
7.3.18Core긴 파일명/폼 변수로 인한 OOM 및 임시 파일 미삭제 (CVE-2019-11048)
7.3.23Core인코딩된 쿠키 이름 파싱으로 __Host- 쿠키 위조 가능 (CVE-2020-7070)
7.3.23OpenSSLAES-CCM 암호화에서 잘못된 암호문/태그 생성 (CVE-2020-7069)
7.3.21Pharphar_parse_zipfile에서 해제된 해시 키 사용 (CVE-2020-7068)
7.3.17Standardurldecode()에서 OOB 읽기 (CVE-2020-7067)
7.3.24OPcache옵티마이저 패스 6가 데이터 바인딩 변수 제거하는 버그
7.3.19Opcache특정 최적화 레벨에서 PHP 크래시
7.3.24MySQLnd압축 활성화 시 ~16MB 쿼리 실패

PHP 7.3 EOL 현황

  • PHP 7.3의 Active Support는 2020년 12월 6일 종료되었습니다.
  • Security Support도 2021년 12월 6일 종료 예정입니다.
  • 7.3.27 이후 추가적인 보안 패치는 매우 제한적으로 제공됩니다.
  • 공식적으로 PHP 7.3은 사용을 권장하지 않는 버전입니다.

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

호환성

  • Laravel 버전별 PHP 7.3 지원 현황:
    • Laravel 6.x (LTS): PHP 7.3 지원 (단, 6.x도 2022년 9월 EOL)
    • Laravel 7.x: PHP 7.3 지원 (2021년 3월 EOL)
    • Laravel 8.x: PHP 7.3 지원하나, 최신 기능 활용 시 PHP 8.0+ 권장
    • Laravel 9.x 이상: PHP 8.0 이상 필수, 7.3 미지원

PHP 7.3 + Laravel 7.x 조합을 사용 중이라면, 두 가지 모두 EOL이거나 EOL에 근접한 이중 위험 상태입니다.

국내 서비스 특화 영향

  • 공공기관/금융 SOAP API 연동: CVE-2021-21702 직접 영향. 건강보험공단, 금융결제원, 일부 PG사(이니시스, KCP 등 SOAP 방식 사용 업체) 연동 코드 점검 필요
  • 대용량 파일 업로드: CVE-2019-11048 수정으로 멀티파트 폼 처리 안정성 향상
  • MySQL 압축 연결: 국내 일부 호스팅/클라우드 환경에서 MySQL 연결 압축 활성화 시 16MB 쿼리 실패 버그 해소

로컬 개발 환경

Laravel Valet (macOS)

# Homebrew PHP 버전 확인 php --version brew list | grep php # PHP 7.3 업데이트 (shivammathur/php tap 사용 시) brew upgrade shivammathur/php/php@7.3 valet restart

Laravel Sail (Docker)

# docker-compose.yml 또는 .env에서 PHP 버전 확인 # Sail 기본 이미지는 PHP 8.x를 사용하므로 # 7.3을 명시적으로 사용 중인 경우에만 해당
# Sail 환경에서 PHP 버전 확인./vendor/bin/sail php --version# 이미지 재빌드 (커스텀 Dockerfile 사용 시)./vendor/bin/sail build --no-cache

Docker (직접 운영)

# php:7.3.27-fpm 또는 php:7.3.27-apache 이미지로 업데이트docker pull php:7.3-fpm# Dockerfile에 명시적 버전 태그 사용 권장FROM php:7.3.27-fpm

마이그레이션 노력

현재 환경권장 조치난이도
PHP 7.3 + Laravel 6PHP 8.1 + Laravel 10 업그레이드높음
PHP 7.3 + Laravel 7PHP 8.1 + Laravel 9/10 업그레이드높음
PHP 7.3 + Laravel 8최소 PHP 8.0으로 업그레이드중간
단기 패치만 필요7.3.27로 업데이트 후 마이그레이션 계획 수립낮음

실무 체크리스트

즉시 조치 (1~2일 내)

  • 운영 서버 PHP 버전 확인: php -v
  • SOAP 확장 사용 여부 확인: php -m | grep soap
  • 코드베이스에서 SoapClient 사용처 검색:
    grep -r "SoapClient\|soap_client\|new Soap" app/ --include="*.php"
  • FILTER_VALIDATE_URL을 신뢰 로직에 사용하는 코드 검색:
    grep -r "FILTER_VALIDATE_URL" app/ --include="*.php"

스테이징 환경 업데이트

  • 스테이징 서버에 PHP 7.3.27 설치 및 테스트
    # Ubuntu/Debian (ondrej/php PPA 사용 시)sudo apt updatesudo apt upgrade php7.3 php7.3-* php -v  # 7.3.27 
    # CentOS/RHEL (Remi 저장소 사용 시)sudo yum update php73php -v
  • SOAP 연동 기능 통합 테스트 실행
  • OPcache 관련 기능 동작 확인 (캐시 초기화 후 테스트)
  • Laravel 테스트 스위트 전체 실행: php artisan test

운영 환경 배포

  • 점검 시간 확보 또는 블루/그린 배포 준비
  • PHP-FPM 재시작 계획 수립 (서비스 중단 최소화)
    sudo systemctl restart php7.3-fpm# 또는sudo service php7.3-fpm restart
  • OPcache 초기화 (업데이트 후 필수):
    # php artisan을 통한 OPcache 초기화 php artisan opcache:clear # 또는 직접 초기화 php -r "opcache_reset();"
  • 배포 후 에러 로그 모니터링 (최소 30분):
    tail -f /var/log/php7.3-fpm.logtail -f storage/logs/laravel.log
  • APM(New Relic, Datadog, Sentry 등) 알림 임계값 일시 상향 조정

중장기 마이그레이션 계획

  • PHP 8.x 마이그레이션 로드맵 작성 (PHP 7.3 EOL: 2021년 12월)
  • php8-compatibility-checker 또는 phpstan으로 호환성 사전 분석:
    composer require --dev phpstan/phpstan./vendor/bin/phpstan analyse app --level=5
  • Laravel Shift(https://laravelshift.com) 활용한 자동 업그레이드 검토
  • PHP 8.0/8.1 명명된 인수, 열거형 등 신규 기능 팀 내 스터디 계획

편집자 주: 이 문서는 초안입니다. PHP 7.3의 정확한 EOL 날짜 및 각 서버 환경별 패키지 업데이트 명령어는 배포 전 재검토가 필요합니다. 특히 AWS Elastic Beanstalk, NHN Cloud, Cafe24 호스팅 등 국내 환경별 PHP 업데이트 방법은 별도 확인을 권장합니다.