
CVE-2023-4698에 대한 개념 증명 익스플로잇으로, usememos/memos < 0.13.2의 로컬 파일 포함 취약점을 이용하여 서버에서 임의의 파일 읽기를 가능하게 합니다.
오늘은 중요한 발견 — usememos/memos에서 확인된 심각한 보안 취약점에 대해 조명하고자 합니다. 로컬 파일 포함(LFI) 범주에 속하는 이 취약점은 usememos/memos 0.13.2 미만 버전을 실행하는 시스템에 심각한 위협을 가합니다. 이 문제는 CVE 식별자 CVE-2023–4698이 할당되었습니다. 이 블로그 게시물에서는 이 취약점을 분석하고, 그 영향력을 이해하며, 해결의 시급성을 강조할 것입니다.
이 취약점의 핵심은 로컬 파일 포함(LFI) 결함입니다. 이러한 유형의 취약점은 공격자가 코드의 취약점을 악용하여 서버에서 임의의 파일을 읽을 수 있도록 합니다. 구체적으로, 이 취약점은 공격자가 요청에서 “InternalPath” 매개변수를 조작할 수 있는 결함으로 인해 발생하며, 궁극적으로 서버 파일 시스템의 파일을 포함하게 됩니다.
로컬 파일 포함(LFI) 취약점을 성공적으로 악용할 경우 그 영향은 광범위하고 심각합니다. usememos/memos의 영향을 받는 버전(< 0.13.2)을 실행하는 시스템의 경우 다음과 같은 결과가 발생할 수 있습니다:
이 취약점은 주로 "resource.go" 파일(1~69행)의 코드 자체에서 비롯됩니다. 핵심 문제는 "InternalPath" 필드에 대한 사용자 입력의 부적절한 검증 및 정화에 있습니다. 이러한 간과로 인해 공격자는 리소스를 생성하거나 업데이트할 때 "InternalPath"에 악성 값을 제공할 수 있습니다. 이 악성 입력은 이후 서버 파일 시스템의 민감한 파일에 접근하는 데 무분별하게 사용됩니다.
예를 들어, 공격자는 "InternalPath" 필드를 "/etc/passwd" 또는 "/proc/self/environ"으로 설정하여 서버에서 민감한 파일을 검색하려고 시도할 수 있습니다. 결과적으로 서버는 이러한 내부 파일의 내용을 의도치 않게 노출하여 매우 민감한 정보를 유출할 가능성이 있습니다.
이 취약점에 대한 자세한 내용은 다음 리소스를 참조하십시오:
연구 및 기타 보안 관련 주제에 대한 업데이트를 위해 저를 팔로우할 수도 있습니다:
보안을 최우선으로 하고 잠재적 위협으로부터 시스템을 보호합시다. 경계를 늦추지 마세요! 💻🔒