목록

2026.10.02 17:57
조회 37
0

제로보드 4.1 pl9 버전을 PHP 7.1 이상에서 사용 가능하게 패치하였습니다.

기존 제로보드 4.1은 PHP 5.4 이상부터는 사용할 수 없습니다.
이 패치에서는 오래된 문법과 함수 등을 최신 php에 맞게 수정하고, 알려진 취약점을 포함하여 여러 가지 보안 패치를 진행하였습니다.

패치한 내용은 대략 아래와 같습니다.
- mysql_* 함수 -> mysqli 클래스 및 prepared statement 으로 변경
- register_globals 의존성 제거
- 파일 업로드 취약점 수정
- 미정의 변수 및 상수 사용 수정
- CSRF 토큰 추가
- XSS 취약점 수정
- LFI / RFI 취약점 수정
- 비밀번호 저장 알고리즘을 bcrypt으로 변경
- 쿠키 보안 강화
- 논리 버그 수정 (권한 검증 취약점 등...)
- DB 스키마 정리
- short_open_tag 제거

특히 제로보드의 고질병이었던 SQL 인젝션 취약점을 완벽하게 해결하고자 하였습니다.
거의 모든 파일에서 SQL 기능을 사용하고 있어서 패치가 가장 오래 걸렸던 부분이었습니다.

PHP 7.1.0 및 8.5.8에서 정상적으로 작동하는 것까지 테스트 완료했습니다.

한 시대를 대표했던 CMS를 그대로 살려보자는 취지에서 진행한 작업인 만큼 새로운 기능을 추가하거나 기존 기능을 삭제하는 것은 지양하였습니다.

제로보드 4 기반 시스템을 유지보수하시는 분께 유용할 것 같습니다.

https://github.com/nid1104/zeroboard4-new

nid1104 Lv. 1

댓글 1

  • 제 사이트는 제로보드4 개조해 사이트 운영중인데 

    제로보드 패치 파일 나오다니 웬지 반갑네요.

    제가 아는거라곤 제로보드뿐이거든요.

    제로보드4 PHP 7 버전을 직접 제작하시다니 진짜 대단하세요.

    근데 전 제로보드 euc-kr만 사용하는데 

    옛날에 누군가가 utf8 사용해야 하는 php 버전 높은거

    패치 파일 올려놓은 적 있어 저도 좀 더 높은거 사용하려 했더니

    로그인할때 에러가 많이 나고 그래서 아직껏 euc-kr만

    사용하고 PHP 4 버전 옛날꺼 그대로 사용하네요

    그대로 사용해도 지금껏 아무 문제없이 잘 쓰고 있어요.

     

    XE로 마이그레이션하려 해도 제로보드 파일

    수정을 많이 한건 마이그레이션이 안된다고 해서

    여태 XE로도 못넘어갔어요.

    라이믹스 쓰려면 XE로 넘어가야 하는데...

    아예 제로보드에서 라이믹스로 직행할 수 있는

    길이라도 있으면 라이믹스 쓰고 싶은데말예요.

     

    제로보드 저도 PHP 버전 높은거 쓰고 싶은데

    저같은 경우는 제로보드 파일 수정한게 하도 많다 보니

    보나 마나 에러가 많이 날 듯 해서 패치할 자신이 없지만 

    그래도 나중에 개인서버 성공시키면

    테스트해보고 싶네요.