중요한 보안패치입니다. 가급적 빨리 업데이트하시기 바랍니다.
라이믹스 1.x 및 XE 1.2.0 이상 1.11.6 이하 모든 버전에도 동일한 보안패치가 필요합니다. 라이믹스 1.x는 2021년 말에 지원이 종료되었으며 XE 1.x는 2019년 이후 업데이트되지 않고 있으니, 아직 구 버전을 사용하고 계신 분은 아래의 정보를 참고하여 document.controller.php 파일을 수정하시기 바랍니다.
특히 XE 1.x는 다국어 기능을 사용하지 않는 한국어 전용 사이트에서도 이 보안취약점을 이용한 공격이 가능하므로 반드시 수정하셔야 합니다. 라이믹스 개발팀이 언제까지나 다른 CMS에 대한 정보를 제공해 드릴 수는 없으니, 신규 보안취약점에 지속적으로 대응할 수 있는 CMS로 변경하시기를 강력히 권해 드립니다.
보안취약점 수정
- 다국어 문서를 수정할 때 본문 HTML을 올바르게 필터링하지 않아 XSS, CSRF 등의 공격으로 이어질 수 있는 문제 수정
개선점
- 익명 게시판에서 관리자 계정은 예외로 할 수 있는 옵션 추가 @nemo9l (#1838, #1851)
- 푸시 알림(FCM) 전송시 보낸이 정보, 제목, 내용 등을 구분하여 data 필드에 넣어서 받는 앱이 자유롭게 조합할 수 있도록 개선 (#1843)
- 메일 주소나 전화번호로 로그인할 경우 user_id 대신 email_address나 phone_number라는 필드명을 사용할 수 있도록 하여 브라우저 자동완성 지원 강화 (#1847)
- 관리자가 회원을 거부 처리한 경우 기존에 발송했던 인증 메일은 무효화 (#1858)
- 게시판 목록에서 tags 속성을 사용할 수 있도록 개선 (#1867)
- 메일, SMS, 푸시 설정 화면에서 비밀번호 입력란이 자동완성되지 않도록 속성 추가
- 프로필 사진 크기 조정시 가로세로 비율을 강제로 맞추는 옵션 추가
- XML 쿼리 사용시 변수 값으로 NullValue 클래스를 넘기면 IS NULL, IS NOT NULL 조건이 생성되도록 개선
- XML 테이블 스키마에서 foreign key를 정의한 경우, 테이블간의 관계를 감안하여 CREATE TABLE 순서를 결정하도록 개선
- DB 쿼리 결과는 BaseObject를 상속받는 DBResultHelper 클래스에 담아서 반환하여 쉽게 구분할 수 있도록 변경
- SCSS import 실패시 경고를 띄우도록 변경
버그 수정
- CAPTCHA를 사용할 수 있는 폼이 여러 개 있는 경우, 어느 폼에 사용할지 판단할 수 있도록 함수 제공 (#1815)
- DB 인코딩이 utf8mb4가 아닌 경우, 다국어 문서의 제목과 내용에 포함된 이모티콘 문자 등이 깨지는 문제 수정 (#1853)
- 포인트 이름을 변경해도 일부 설정 항목에는 적용되지 않는 문제 수정 (#1854)
- XeXmlParser 클래스의 주석이 잘못된 타입을 가리키는 문제 수정 (#1855)
- 회원정보 중 홈페이지나 블로그에 한글 도메인을 입력하면 공백으로 표시되는 문제 수정 (#1856)
- 커스텀 쿼리 사용시 테이블 alias가 일관성있게 생성되지 않는 문제 수정 (#1864)
- SCSS나 LESS에서 구글 웹폰트 등 특수문자가 포함된 URL을 import하려고 하면 잘못 해석되는 문제 수정 (#1868)
- 에디터 컴포넌트 등의 확장변수 선언시 type 속성을 지정하지 않으면 입력란이 사라지는 문제 수정 (#1871, #1872)
- 코어에 포함된 게시판 모바일 스킨들이 모바일 헤더/푸터 설정을 따르지 않는 문제 수정 (#1873)
- 이미 로그인한 사용자가 로그인 화면에 접근하면 직전 화면이 아닌 메인화면으로 돌아가는 문제 수정
정리
- 사용하지 않는 글쓰기 상태값 숨김 @dewekk (#1845)
- PHP 8.x에서 발생하는 워닝 수정 @Erictoby (#1866)
- 회원 모듈의 기기 등록 관련 액션들을 별도의 클래스로 분리 (#1874)
- 메뉴 이미지 버튼에는 이미지 파일만 업로드할 수 있도록 제한
https://rhymix.org/news/277