🇰🇷 한글 설명
Python의 filelock 라이브러리 4.1.0부터 4.2.1 버전 사이에서 SoftReadWriteLock 및 AsyncSoftReadWriteLock이 파일 잠금 트리 경로를 캐싱하는 취약점이 발견되었습니다. 로컬 사용자가 첫 잠금 획득 후 해당 트리를 교체하면, 잠금 기록 쓰기 작업을 사용자가 권한을 가진 다른 디렉토리로 리다이렉션할 수 있습니다.
💡 쉬운 설명
파일을 잠그는 과정에서 경로 정보를 잘못 기억하여 발생하는 문제입니다. 공격자가 중간에 경로를 바꿔치기하면, 프로그램이 엉뚱한 곳에 파일을 쓰도록 유도할 수 있습니다.
🇺🇸 원문 (English)
filelock is a platform-independent file lock for Python. From 4.1.0 until 4.2.1, SoftReadWriteLock and AsyncSoftReadWriteLock cache a successful check of the <path>.rw lock tree and resolve its names again during later record operations, allowing another local user who can replace that tree after the first acquisition to redirect lock-record writes into directories writable by the lock user. This issue is fixed in version 4.2.1.
📍 영향받는 시스템
Python filelock 라이브러리 버전 4.1.0 ~ 4.2.1
⚔️ 공격 벡터
로컬 사용자가 파일 잠금 트리를 교체하여 쓰기 경로를 리다이렉션하는 방식
🛡️ 대응 방법
filelock 라이브러리를 4.2.1 버전 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 버전이 4.2.1 미만(4.1.0 이상)이면 취약한 상태입니다.
pip show filelock | grep Version