🇰🇷 한글 설명
ChatterBot 1.2.14 미만 버전의 UbuntuCorpusTrainer.extract() 함수에서 예측 가능한 경로를 사용하는 보안 취약점이 발견되었습니다. 공격자가 해당 경로에 심볼릭 링크를 미리 생성해 두면, 압축 해제 과정에서 파일이 공격자가 의도한 디렉토리에 작성될 수 있습니다.
💡 쉬운 설명
프로그램이 파일을 저장할 위치를 미리 정해두는 허점을 이용한 공격입니다. 해커가 가짜 길(심볼릭 링크)을 만들어 두면, 프로그램이 중요한 파일을 엉뚱한 곳에 저장하게 만들 수 있습니다.
🇺🇸 원문 (English)
ChatterBot is a machine learning, conversational dialog engine for creating chat bots. Prior to 1.2.14, UbuntuCorpusTrainer.extract() uses a predictable home-rooted output directory (~/ubuntu_data/ubuntu_dialogs) with a check-then-create pattern followed by tar.extractall(path=self.data_path), allowing a local attacker who pre-plants a symlink at the predictable path to cause archive contents to be written through the symlink to an attacker-chosen directory. This issue is fixed in version 1.2.14.
📍 영향받는 시스템
ChatterBot 1.2.14 미만 버전
⚔️ 공격 벡터
로컬 공격자가 예측 가능한 경로에 심볼릭 링크를 사전 생성하여 파일 쓰기 경로를 조작
🛡️ 대응 방법
ChatterBot을 1.2.14 버전 이상으로 업데이트
🔧 검증 코드
출력된 버전이 1.2.14보다 낮으면 취약한 상태입니다.
pip show chatterbot | grep Version