🇰🇷 한글 설명
mystem은 Yandex.ru의 MyStem 형태소 분석기를 위한 Node.js 래퍼입니다. 이 라이브러리는 바이너리 리소스를 HTTP를 통해 다운로드하므로 중간자 공격(MITM)에 취약하며, 공격자가 요청된 바이너리를 악성 파일로 교체할 경우 원격 코드 실행(RCE)이 발생할 수 있습니다.
💡 쉬운 설명
프로그램이 필요한 파일을 내려받을 때 보안이 취약한 통로를 사용합니다. 이 과정에서 해커가 중간에 가로채서 가짜 파일을 심으면 컴퓨터를 원격으로 조종할 수 있습니다.
🇺🇸 원문 (English)
mystem is a Node.js wrapper for MyStem morphology text analyzer by Yandex.ru mystem downloads binary resources over HTTP, which leaves it vulnerable to MITM attacks. It may be possible to cause remote code execution (RCE) by swapping out the requested binary with an attacker controlled binary if the attacker is on the network or positioned in between the user and the remote server.
📍 영향받는 시스템
mystem Node.js wrapper (HTTP 다운로드 기능을 사용하는 버전)
⚔️ 공격 벡터
네트워크 중간에서 HTTP 트래픽을 가로채 바이너리 파일을 악성 파일로 교체하는 중간자 공격(MITM)
🛡️ 대응 방법
HTTP 대신 HTTPS를 사용하도록 라이브러리를 업데이트하거나, 바이너리 다운로드 시 무결성 검증(Checksum)을 수행하도록 수정해야 합니다.
🔧 검증 코드
설치된 mystem 패키지의 존재 여부와 버전을 확인하여 취약한 버전 사용 여부를 판단합니다.