🇰🇷 한글 설명
Emlog 2.6.29 및 이전 버전에서 태그 이름이 기사 편집기에서 렌더링될 때 HTML 인코딩되지 않는 취약점이 존재합니다. 공격자가 특수 문자가 포함된 태그를 생성하면 브라우저가 이를 자바스크립트로 해석하여 임의의 코드를 실행할 수 있습니다.
💡 쉬운 설명
웹사이트의 태그 이름에 악성 코드를 숨겨 넣으면, 다른 사용자가 해당 페이지를 볼 때 해커가 의도한 명령이 자동으로 실행될 수 있는 보안 결함입니다. 이는 웹사이트 관리자나 방문자의 브라우저에서 위험한 동작을 유발할 수 있습니다.
🇺🇸 원문 (English)
Emlog is an open source website building system. In versions 2.6.29 and prior, tag names in emlog are not HTML-encoded when rendered in the article editor. An attacker can create a tag containing ');alert(document.domain);//. The addslashes() function does not escape HTML entities, so ' is stored as-is. When the browser renders the page, it decodes ' back to a literal single quote before evaluating the JavaScript, breaking out of the string and executing arbitrary code. At time of publication, there are no publicly known patches.
📍 영향받는 시스템
Emlog 2.6.29 및 그 이전 모든 버전
⚔️ 공격 벡터
악성 자바스크립트가 포함된 태그를 생성하여 사용자 브라우저에서 코드가 실행되도록 유도하는 방식
🛡️ 대응 방법
공식 보안 패치가 출시될 때까지 태그 입력값에 대한 HTML 인코딩을 적용하거나 입력 검증을 강화해야 합니다.
🔧 검증 코드
설치된 Emlog의 버전 정보가 2.6.29 이하인지 확인하여 취약 여부를 판단합니다.
grep -r "emlog" /var/www/html/ 2>/dev/null | grep -E 'version|config'