🇰🇷 한글 설명
Axios의 HTTP/2 세션 정리 로직에 상태 손상 버그가 존재하여, 악의적인 서버가 동시 세션 종료를 통해 클라이언트 프로세스를 충돌시킬 수 있습니다. 이는 lib/adapters/http.js의 Http2Sessions.getSession() 메서드의 제어 흐름 오류로 인한 것입니다.
💡 쉬운 설명
Axios 라이브러리의 HTTP/2 통신 중 세션 처리 부분에 버그가 있어서 악의적인 웹서버가 이를 악용하면 프로그램이 갑자기 종료될 수 있습니다. 버전 1.13.2 이상으로 업그레이드하면 해결됩니다.
🇺🇸 원문 (English)
Axios is a promise based HTTP client for the browser and Node.js. Starting in version 1.13.0 and prior to 1.13.2, Axios HTTP/2 session cleanup logic contains a state corruption bug that allows a malicious server to crash the client process through concurrent session closures. The vulnerability exists in the Http2Sessions.getSession() method in lib/adapters/http.js. The session cleanup logic contains a control flow error when removing sessions from the sessions array. This vulnerability is fixed in 1.13.2.
📍 영향받는 시스템
Axios 1.13.0 ~ 1.13.1 (Node.js 환경)
⚔️ 공격 벡터
악의적인 HTTP/2 서버가 동시 세션 종료 시그널을 보내 클라이언트 프로세스 크래시 유발
🔧 검증 코드
명령어가 VULNERABLE을 출력하면 영향받는 버전이 설치된 것이며, SAFE를 출력하면 안전한 버전이거나 설치되지 않은 것입니다.
npm list axios 2>/dev/null | grep axios | awk '{print $2}' | grep -E '^1\.13\.[01]$' && echo 'VULNERABLE' || echo 'SAFE'