PHP 7.3.4 업데이트 — 한국 Laravel 개발자 영향 분석
작성: 라라벨 코리아 (초안)
발행: 2026년 8월 6일
## 요약
요약
PHP 7.3.4가 2019년 4월 4일 릴리스되었습니다. 이번 업데이트는 EXIF 확장의 힙 버퍼 오버플로우를 포함한 보안 취약점 수정과 더불어, Core·MySQLi·Opcache·Sodium 등 다양한 컴포넌트의 안정성 버그를 해결합니다. 특히 직전 버전인 7.3.3에서 MySQL LOCAL INFILE 기본값 변경이 이루어진 만큼, Laravel 애플리케이션에서 DB 설정을 검토하는 것이 권장됩니다.
핵심 내용
🔐 보안 관련 수정 (우선순위 높음)
-
EXIF 힙 버퍼 오버플로우 2건 (bug #77753, #77831)
php_ifd_get32s및exif_iif_add_value함수에서 발생하는 힙 버퍼 오버플로우 취약점이 수정되었습니다.- 사용자로부터 이미지 업로드를 허용하는 모든 Laravel 서비스에서 즉시 업그레이드가 필요합니다.
Intervention/Image,spatie/laravel-medialibrary등 이미지 처리 패키지를 사용하는 경우 특히 영향을 받습니다.
-
Sodium
sign_detached()문자열 미종료 버그 (bug #77646)- 서명 문자열이 null byte로 올바르게 종료되지 않는 문제가 수정되었습니다.
- Laravel의 암호화·서명 기능과 간접적으로 연관될 수 있습니다.
🐛 안정성 및 런타임 버그 수정
-
Core 세그멘테이션 폴트 다수 수정
break 2147483648구문으로 인한 세그폴트 (bug #77660): 비정상적인 break 표현식으로 인한 충돌 수정- 순환 참조 가비지 컬렉션 중 스택 오버플로우 (bug #77345): 복잡한 객체 그래프를 사용하는 Laravel 애플리케이션에서 드물게 발생 가능했던 문제
- 익명 클래스가 인터페이스 정보를 잃는 버그 (bug #77652): PHP 7.3에서 익명 클래스를 적극 활용하는 코드에서 발생 가능
-
MySQLi
mysqli_fetch_field행 멈춤 현상 (bug #77597)- 스크립트가 무한정 hang되는 심각한 버그 수정
- PDO를 주로 사용하는 Laravel의 경우 직접 영향은 낮지만, MySQLi를 직접 사용하는 레거시 코드가 있다면 주의
-
CLI 서버
$_SERVER['REMOTE_ADDR']오류 (bug #77722)localhost환경에서REMOTE_ADDR에 잘못된 IP가 설정되던 문제 수정php artisan serve사용 시 IP 기반 접근 제어 로직이 있는 개발 환경에서 영향을 줄 수 있었음
-
Opcache pi 노드 삽입 오류 (bug #77743)
- Opcache 활성화 환경에서 JIT 최적화 관련 잘못된 코드 생성 수정
- 프로덕션 환경에서 Opcache를 사용하는 대부분의 Laravel 앱에 해당
-
Bcmath
bcpow()GCC 최적화 관련 오류 (bug #77742)- 금융 계산, 정밀 수치 연산에
bcmath를 사용하는 경우 잘못된 결과를 반환할 수 있었음
- 금융 계산, 정밀 수치 연산에
-
Standard
extract()충돌 (bug #77669),var_export()PHP_INT_MIN 오류 (bug #76717)extract()로 배열을 덮어쓸 때 충돌 발생 수정PHP_INT_MIN값이var_export()로 파싱 불가능한 값을 생성하던 문제 수정
📦 SQLite3 신규 기능
sqlite3.defensiveINI 지시어 추가- SQLite3 데이터베이스의 보안 모드를 강화하는 옵션
- SQLite를 테스트 DB로 사용하는 Laravel 환경(
DB_CONNECTION=sqlite)에서 활용 가능
⚠️ 7.3.3에서의 중요 변경사항 (7.3.4 적용 시 함께 확인 필요)
- MySQL
LOCAL INFILE기본값 비활성화 (bug #77630 관련)mysqli.allow_local_infile(MySQLi) 또는PDO::MYSQL_ATTR_LOCAL_INFILE(PDO MySQL)을 명시적으로 설정해야LOAD DATA LOCAL INFILE사용 가능- 데이터 마이그레이션 스크립트나 대용량 CSV 임포트 기능이 있는 프로젝트에서 반드시 확인 필요
한국 Laravel 개발자에게 미치는 영향
호환성
- Laravel 5.7 / 5.8 사용자: PHP 7.3.x가 공식 지원 범위이므로 7.3.4로의 패치 업그레이드 적용이 권장됩니다.
- Composer 의존성: PHP 버전 패치 업그레이드는 minor/major 변경이 아니므로 패키지 호환성 문제가 발생할 가능성이 거의 없습니다.
보안 긴급도
| 취약점 | 영향 | 긴급도 |
|---|---|---|
| EXIF 힙 버퍼 오버플로우 (#77753, #77831) | 이미지 업로드 기능 보유 서비스 | 🔴 높음 |
| Sodium sign_detached 미종료 (#77646) | 서명 검증 기능 | 🟡 중간 |
| Core 세그폴트 다수 | 운영 안정성 | 🟡 중간 |
로컬 개발 환경 (Laravel Valet / Sail / Docker)
-
Laravel Valet (macOS)
brew upgrade php또는brew upgrade php@7.3명령으로 업데이트 후valet restart실행- Valet이 사용하는 PHP-FPM 소켓 재시작 필요
-
Laravel Sail (Docker)
sail/8.0,sail/7.4등 공식 이미지를 사용 중이라면 기반 이미지 업데이트 여부 확인- 커스텀 Dockerfile에서
php:7.3-fpm기반 이미지를 사용 중이라면docker pull php:7.3.4-fpm후 재빌드
docker pull php:7.3-fpm./vendor/bin/sail build --no-cache -
Docker 직접 운영
- 운영 이미지에서
php --version으로 현재 버전 확인 후 기반 이미지 업데이트 적용
- 운영 이미지에서
국내 호스팅 환경 주의사항
- 카페24, 가비아 등 공유 호스팅을 사용하는 경우 관리자 패널에서 PHP 버전 변경 옵션을 확인하거나, 고객센터를 통해 패치 적용 여부를 문의하세요.
- AWS Elastic Beanstalk, NHN Cloud, KT Cloud 등 매니지드 환경에서는 플랫폼 업데이트 정책에 따라 패치 시점이 다를 수 있습니다.
실무 체크리스트
로컬 환경
-
php --version명령으로 현재 PHP 버전 확인 - Homebrew(macOS):
brew upgrade php@7.3실행 - phpenv / anyenv 사용자:
phpenv install 7.3.4후phpenv global 7.3.4또는.php-version파일 업데이트 - Valet 사용자:
valet restart실행 후valet php --version재확인 - EXIF 관련 코드 점검:
exif_read_data(),Intervention/Image,spatie/laravel-medialibrary등 이미지 처리 기능 테스트
스테이징 환경
- PHP 7.3.4 업그레이드 적용
-
php-fpm재시작 확인:sudo systemctl restart php7.3-fpm - Opcache 캐시 초기화:
php artisan opcache:clear또는opcache_reset()호출 -
LOCAL INFILE사용 여부 확인:LOAD DATA LOCAL INFILE을 사용하는 마이그레이션 또는 Artisan 명령 테스트- MySQLi:
php.ini에mysqli.allow_local_infile = On추가 필요 - PDO: 연결 시
PDO::MYSQL_ATTR_LOCAL_INFILE => true옵션 추가 필요
- MySQLi:
-
bcmath를 사용하는 금융/정밀 계산 로직의 결과값 정합성 테스트 - CLI 빌트인 서버 사용 환경:
REMOTE_ADDR기반 미들웨어 동작 확인
프로덕션 환경
- 배포 전 스테이징에서 전체 테스트 스위트 (
php artisan test) 통과 확인 - 무중단 배포 시: 새 PHP 버전으로 PHP-FPM 풀 재시작 (nginx와 연동된 경우 graceful reload)
sudo systemctl reload php7.3-fpm# 또는sudo service php7.3-fpm reload - Opcache 상태 확인: Laravel Telescope 또는
phpinfo()페이지로 버전 및 Opcache 활성화 상태 점검 - 이미지 업로드 기능이 있는 서비스: 취약점 패치 적용 후 보안 로그 모니터링
-
php.ini변경사항 (sqlite3.defensive,mysqli.allow_local_infile) 필요 여부 검토 후 적용 - 배포 후 에러 로그 (
storage/logs/laravel.log) 및 서버 에러 로그 모니터링 (최소 1시간)
주의: 이 문서는 초안(Draft)입니다. 게시 전 PHP 공식 릴리스 페이지(https://www.php.net/releases/7_3_4.php)에서 최신 정보를 재확인하고, 환경별 테스트를 반드시 수행하시기 바랍니다.