제로보드 4 PHP 7+ 버전을 제작했습니다.
제로보드 4.1 pl9 버전을 PHP 7.1 이상에서 사용 가능하게 패치하였습니다.
기존 제로보드 4.1은 PHP 5.4 이상에서는 사용할 수 없습니다.
이 패치에서는 오래된 문법과 함수 등을 최신 PHP에 맞게 수정하고, 알려진 취약점을 포함하여 여러 가지 보안 패치를 진행하였습니다.
패치한 내용은 대략 아래와 같습니다.
- mysql_* 함수 -> mysqli 클래스 및 prepared statement로 변경
- register_globals 의존성 제거
- SQL 인젝션 취약점 수정
- 파일 업로드 취약점 수정
- CSRF 토큰 추가
- XSS 취약점 수정
- Open Redirect 취약점 수정
- LFI / RFI 취약점 수정
- 메일 헤더 인젝션 취약점 수정
- 비밀번호 저장 알고리즘을 bcrypt로 변경
- 쿠키 보안 강화
- 논리 버그 수정 (권한 검증 취약점 등...)
- 미정의 변수 및 상수 사용 수정
- DB 스키마 정리
- short_open_tag 제거
특히 제로보드의 고질병이었던 SQL 인젝션 취약점을 완벽하게 해결하고자 하였습니다.
거의 모든 파일에서 SQL 기능을 사용하고 있어서 패치가 가장 오래 걸렸던 부분이었습니다.
PHP 7.1.0 및 8.5.8에서 정상적으로 작동하는 것을 확인했습니다.
한 시대를 대표했던 CMS를 그대로 살려보자는 취지에서 진행한 작업인 만큼 새로운 기능을 추가하거나 기존 기능을 삭제하는 것은 지양하였습니다.
제로보드 4 기반 시스템을 유지보수하시는 분께 유용할 것 같습니다.
https://github.com/nid1104/zeroboard4-new
기존 제로보드 4.1은 PHP 5.4 이상에서는 사용할 수 없습니다.
이 패치에서는 오래된 문법과 함수 등을 최신 PHP에 맞게 수정하고, 알려진 취약점을 포함하여 여러 가지 보안 패치를 진행하였습니다.
패치한 내용은 대략 아래와 같습니다.
- mysql_* 함수 -> mysqli 클래스 및 prepared statement로 변경
- register_globals 의존성 제거
- SQL 인젝션 취약점 수정
- 파일 업로드 취약점 수정
- CSRF 토큰 추가
- XSS 취약점 수정
- Open Redirect 취약점 수정
- LFI / RFI 취약점 수정
- 메일 헤더 인젝션 취약점 수정
- 비밀번호 저장 알고리즘을 bcrypt로 변경
- 쿠키 보안 강화
- 논리 버그 수정 (권한 검증 취약점 등...)
- 미정의 변수 및 상수 사용 수정
- DB 스키마 정리
- short_open_tag 제거
특히 제로보드의 고질병이었던 SQL 인젝션 취약점을 완벽하게 해결하고자 하였습니다.
거의 모든 파일에서 SQL 기능을 사용하고 있어서 패치가 가장 오래 걸렸던 부분이었습니다.
PHP 7.1.0 및 8.5.8에서 정상적으로 작동하는 것을 확인했습니다.
한 시대를 대표했던 CMS를 그대로 살려보자는 취지에서 진행한 작업인 만큼 새로운 기능을 추가하거나 기존 기능을 삭제하는 것은 지양하였습니다.
제로보드 4 기반 시스템을 유지보수하시는 분께 유용할 것 같습니다.
https://github.com/nid1104/zeroboard4-new
총 2명이 반응했습니다
|
댓글을 작성하시려면 로그인이 필요합니다.
댓글 10개
https://rhymix.org/free 에도 알려주시면 더 좋을거 같습니다.^^
아무래도 라이믹스(xe) 와 더 관련있으니
아직 제로보드 사용하시느분이.. 소수 있는거 같으니..
기존 제로보드가 플러그인 등의 스킨이 다양하게 사용된겻우가 많아서
갤러리 스킨에 다수 사용된 이미지 변환 등 ...
php 8까지 대응해서 개선된 버전을 만드신 노력에 존경과 감사를 드립니다
수고하셨습니다
예전에 사용하던 플러그인이 있는데 나중에 시간날 때 붙여봐야겠네요