🇰🇷 한글 설명
Nautobot 2.4.33 및 3.1.2 이전 버전에서 GitRepository 레코드의 current_head 필드를 REST API로 직접 편집할 수 있는 권한 검증 부재 취약점입니다. 악의적 사용자가 저장소를 의도하지 않은 커밋으로 체크아웃하거나 존재하지 않는 커밋을 가리키도록 조작하여 저장소를 비활성화할 수 있습니다.
💡 쉬운 설명
Nautobot 네트워크 관리 소프트웨어에서 저장소의 현재 버전을 권한 없는 사용자가 마음대로 바꿀 수 있는 문제입니다. 이를 악용하면 시스템이 잘못된 코드 버전을 실행하거나 완전히 오작동할 수 있습니다.
🇺🇸 원문 (English)
Nautobot is a Network Source of Truth and Network Automation Platform. Prior to 2.4.33 and 3.1.2, a user with access to add/change a GitRepository record could use the REST API to directly set the current_head field on the record, which was not intended to be user-editable. Doing so could cause Nautobot's local clone(s) of the relevant repository to checkout a commit other than the latest commit on the specified branch (resulting in misleading state), or potentially to be unable to make use of the repository at all (until manually remediated) due to the current_head pointing to a nonexistent commit hash or malformed value. This vulnerability is fixed in 2.4.33 and 3.1.2.
📍 영향받는 시스템
Nautobot 버전 < 2.4.33 및 < 3.1.2
⚔️ 공격 벡터
REST API를 통해 GitRepository 레코드의 current_head 필드를 임의 값으로 설정
🛡️ 대응 방법
Nautobot을 버전 2.4.33 이상 또는 3.1.2 이상으로 즉시 업그레이드
🔧 검증 코드
출력된 버전이 2.4.33 이상 또는 3.1.2 이상이면 안전하고, 그 이하이면 취약합니다.
pip list 2>/dev/null | grep -i nautobot | awk '{print $2}'