플러그인 방치는 취약점이 공개된 채로 고쳐지지 않는 상태가 된다는 뜻입니다. 문제는 “마지막 업데이트 2년 전” 같은 숫자 하나로 단정하기 어렵다는 것 — 완성돼서 조용한 플러그인과 버려져서 조용한 플러그인은 겉이 같습니다.
다섯 가지 신호를 겹쳐 본다
- Tested up to — 코어 몇 개 버전 전에서 멈췄는가. 날짜보다 정직한 신호입니다.
- 지원 포럼 응답 — 최근 질문에 개발자 응답이 있는가. 무응답 스레드가 쌓이면 방치입니다.
- 공개 취약점 이력 — 취약점 DB 에 미해결(unfixed) 항목이 있는가. 이것 하나면 즉시 교체 대상입니다.
- PHP 호환 — 최신 PHP 에서 deprecated 경고를 쏟아내는가. 방치의 이른 징후입니다.
- 설치 수 추세 — 활성 설치가 줄고 있는가. 커뮤니티가 이미 떠나는 중이라는 뜻입니다.
대체가 불가능할 때의 차선
맞물린 데이터 구조 때문에 당장 못 지우는 경우가 있습니다. 그때는 노출면이라도 줄입니다 — 해당 플러그인의 프론트 엔드포인트를 서버에서 막고, 관리자 전용 기능이면 관리자 밖에서 로드되지 않게 하고, 파일 권한을 읽기 전용으로 내립니다. 격리는 해결이 아니라 유예라는 것을 기록에 남기는 것까지가 일입니다.
애초에 늘리지 않기
플러그인 하나는 기능 하나가 아니라 유지보수 부채 하나입니다. 도입 전에 코어 · 테마 · 몇 줄의 자체 코드로 해결되는지 먼저 확인하는 습관이 이 판별 작업 자체를 줄입니다. 반복 필드가 필요할 때 유료 플러그인 대신 구조로 푸는 예시를 ACF 무료판 콘텐츠 모델에서 볼 수 있습니다.
설치된 플러그인 전체의 취약점 대조는 최적화 지원 사업의 취약점 진단 항목에서 전/후 리포트로 제공합니다.