장고 보안 릴리스 3종 공개, CVE 5건 수정
장고(Django) 팀이 2026년 10월 6일 보안 릴리스 세 개를 한꺼번에 내놨습니다. 대상은 6.1.2, 6.0.9, 5.2.18이고, 이번에 함께 처리된 취약점은 CVE 5건입니다. 신규로 공개된 4건에 더해 앞서 공개됐던 CVE-2026-15830의 후속 수정이 함께 들어갔습니다. 공지에 따르면 6.1, 6.0, 5.2 계열과 개발 중인 main 브랜치가 모두 영향 범위에 들어갑니다. 운영 중인 장고 앱이 이 계열 안에 있다면 업그레이드 대상이라고 보면 됩니다.
자, 신규 4건이 뭘 막았는지 확인합시다. 넷 중 둘은 서비스 거부(DoS) 계열입니다. CVE-2026-77050은 언어 코드를 길이 제한 없이 메모리 캐시 키로 쓰던 문제로, 긴 코드가 들어오면 프로세스 메모리를 과도하게 먹을 수 있었습니다. 이제 500자를 넘는 언어 코드는 잘라내거나 거부합니다. CVE-2026-84429는 HTTP 헤더 파싱에서 따옴표로 묶인 값 안에 구분자가 많을 때 처리 시간이 제곱으로 늘어나는 문제였습니다. 파서를 파이썬의 email.message.Message 기반으로 바꿔 해결했습니다. 심각도는 각각 낮음과 보통으로 분류됐습니다.
나머지 둘은 네트워크 요청과 요청 위조 쪽입니다. CVE-2026-87890은 공간(spatial) 조회에서 래스터를 바이트로 넘기면 외부 래스터 소스를 참조하는 VRT 문서가 섞여 들어와 네트워크 요청이 발생할 수 있던 문제로, 이제 바이트 래스터는 GDALRaster로 감싸도록 바뀌었습니다. CVE-2026-87975는 기본 키를 수정할 수 있는 모델 폼셋에서 조작된 POST 데이터로 제한 쿼리셋 밖의 인스턴스를 만들거나 지우던 문제입니다. 이 세 건은 심각도 보통입니다.
다섯 번째는 신규 CVE가 아니라 기존 CVE-2026-15830에 대한 후속 수정입니다. 기존 완화책을 우회해 깊게 중첩된 WKB 지오메트리가 GEOS까지 닿을 수 있었던 부분을 막는, 원래 패치를 보강하는 성격의 변경입니다.
CVSS 9점대가 섞인 요란한 공지는 아니지만, 가볍게 넘길 만한 소식도 아니라고 봅니다. DoS 두 건은 인증 없이 평범한 요청 헤더나 언어 협상 경로로 닿을 수 있어서, 외부에 노출된 서비스라면 공격 비용이 낮은 편으로 보입니다. 폼셋 권한 문제는 데이터 무결성과 직결되고요. 장고는 지원 중인 세 계열을 동시에 패치하는 방식이라, 어느 버전을 쓰든 대응 버전이 이미 나와 있다는 점이 그나마 다행입니다.
무작정 올리진 마시고, 먼저 지금 돌아가는 버전이 6.1, 6.0, 5.2 중 어디에 속하는지부터 확인한 뒤 같은 계열의 패치 버전으로 올리세요. 장고 팀도 가능한 한 빨리 업그레이드하라고 권하고 있습니다.
🔗 https://www.djangoproject.com/weblog/2026/oct/06/security-releases/
로그인 후 답글을 남길 수 있습니다.