라이믹스/릴리즈 노트/2.1.5

2023년 09월 13일에 등록 된 릴리즈 노트입니다.
-

보안패치입니다. 가급적 빨리 업데이트하시기 바랍니다.

보안취약점 수정[편집 / 원본 편집]

  • [RVE-2023-2] 에디터 모듈의 XSS 취약점
  • [RVE-2023-3] 익명 게시판(라이믹스 일부 버전) 또는 일반 게시판(라이믹스 구 버전 및 XE 1.x)에서 글이나 댓글의 작성자 정보를 변조할 수 있는 문제
  • [RVE-2023-4] 글이나 댓글의 일부 속성을 일반 사용자가 임의로 조작할 수 있는 문제
  • 최근 라이믹스에서 발견되는 대부분의 보안취약점은 XE 1.x에서 물려받은 것으로, 구 버전과 XE 1.x에도 동일하거나 더 심각한 취약점이 있을 가능성이 높습니다. 구 버전이나 XE 1.x를 위한 패치 방법[1]은 개별적으로 안내하지 않으며, 최신 버전으로 업그레이드하실 것을 권장합니다.

새 기능과 변경 사항[편집 / 원본 편집]

  • 사이트 메뉴 편집에서 각 메뉴에 지정할 class 속성을 설정하는 기능 추가 (#2070)
    • 해당 속성을 인식하여 HTML 소스에 삽입하는 레이아웃에서만 정상 작동합니다. XEDITION 등 코어에 포함된 레이아웃은 수정되었습니다.
  • 알림센터 등 몇몇 모듈의 트리거(이벤트 핸들러)를 PHP에서 일일이 체크하지 않고 module.xml에서 선언하는 방식으로 변경 (#2174)
    • 앞으로 대부분의 모듈이 이 방식으로 변경될 예정이며, 서드파티 자료도 트리거(이벤트 핸들러)를 module.xml에서 선언할 것을 권장합니다.
  • SCSS 컴파일시 sourcemap을 생성하여, 개발자 도구에서 원본 SCSS 파일의 줄 번호를 쉽게 확인할 수 있도록 개선
    • 스크립트 합치기 기능 사용시에는 동작하지 않습니다.
  • 템플릿에서 오류 발생시 표시되는 줄 번호가 원본 파일의 줄 번호와 항상 일치하도록 개선
  • 템플릿 컴파일시 불필요한 BOM을 삭제하고, CRLF 줄바꿈 문자를 LF로 통일하여 최종 출력물이 일관성있게 인코딩되도록 개선
  • 부분 페이지 렌더링(레이아웃 제거) 기능 사용 여부를 관리자가 컨트롤할 수 있도록 옵션 추가
  • 파이어폭스에서 deprecated된 자바스크립트 함수를 호출할 경우, console.warn()stack trace가 표시되지 않으므로 console.error()를 사용
  • files 테이블upload_target_type 컬럼에 최대 20자까지 저장할 수 있도록 하여, doc, cmt 등으로 억지로 줄여쓸 필요 없도록 변경
  • 에디터 모듈 설정을 저장하면 CKEditor 관련 URL에 붙이는 캐시 갱신용 쿼리스트링을 일괄 변경하도록 변경하여, 에디터 관련 테스트 편의 개선 (#2173)
  • CSS, JS, 프로필 사진, 썸네일 등의 URL에 붙이는 캐시 갱신용 쿼리스트링의 형식을 ?20230912000000에서 ?t=1694444400 형태로 변경하고, 모든 상황에 일관성있게 적용

버그 수정[편집 / 원본 편집]

  • PHP 8.x에서 일부 스킨 사용시 XML JS filter에서 발생하는 오류 수정 (#2176)
  • 다음 APIPostcodify를 사용하여 일부 주소 검색시, 주소 입력란이 모두 채워지지 않거나 나중에 정상적으로 불러오지 못하는 문제 수정 (#2178)
  • 관리자 대시보드에서 글/댓글 삭제 바로가기가 작동하지 않는 문제 수정 (#2179)
  • PHP-CLI에서 라이믹스 호출시 세션을 사용할 수 없어서 발생하는 E_WARNING 수정
  • 스크립트 합치기 기능 사용시 개발자 도구가 잘못된 경로의 sourcemap 파일을 로딩하려고 시도하므로, 이 경우 sourcemap 참조를 제거하도록 변경
  • 캐시 키에 한글, 특수문자, 줄바꿈 문자, 바이너리 등을 넣을 경우 일부 캐시 방식이 오작동할 수 있는 문제 수정
  • 특정한 상황에서 템플릿 파일을 찾을 수 없을 때, 에러 메시지에 상대경로가 아닌 절대경로가 표시되는 문제 수정
  • 사이트 메뉴 편집에서 문서 페이지, 위젯 페이지 등의 "상세 설정"을 클릭하면 레이아웃이 적용되지 않은 화면으로 넘어가는 문제 수정
  • SCSS, LESS 등에 변수를 전달하여 로딩하면 불필요한 주석이 페이지 소스에 노출되는 문제 수정
  • 일부 특수문자가 포함된 태그가 검색되지 않는 문제 수정
  • PHP 8.x에서 발생하는 E_WARNINGE_DEPRECATED 수정

정리[편집 / 원본 편집]

  • 더이상 사용하지 않는 ./themes/ 폴더를 참조하는 코드 삭제 (#2062)
  • 오해를 일으키는 몇몇 컨트롤러의 $is_admin 파라미터 명칭을 적절하게 변경 (#2145)
  • xGetElementById(), xAddEventListener()x.js 함수를 호출하는 스크립트 일괄 정리
  • 구 버전 IE 전용으로 작성되었던 CSS 속성 다수 삭제
  • XEDITION 레이아웃에서 임의로 출력하던 불필요한 <meta> 태그 삭제

각주[편집 / 원본 편집]

  1. 공식적으로는 패치를 하지 않지만, 유저들이 비공개로 패치를 하고 공개함.
• 현재 페이지 URL 줄이기