알파인 리눅스 등 musl 환경의 SSH 서버에서 비밀번호로 로그인할 수 없어야 할 계정이 긴 비밀번호로 열릴 수 있다(sshhole.com)
작성 언어: 한국어작성 언어로 보기
쉬운 요약
- 알파인 리눅스나 OpenWrt처럼 musl이라는 기본 라이브러리를 쓰는 환경에서는, 원래 비밀번호로 들어올 수 없어야 하는 계정(예: 키로만 접속하는 계정)이 257자 이상 1024자 이하의 긴 비밀번호로 통과될 수 있다고 원문이 설명한다.
- 원문 작성자는 musl의 crypt() 함수가 256바이트를 넘는 입력에서 실패할 때 비밀번호 칸의 *를 반환하는 구조가 원인이라고 분석한다. 이는 작성자의 분석이며, 원문 밖에서 확인된 내용은 아니다.
- 원문 작성자는 glibc, musl, PAM 사용 여부 등 여러 조합으로 약 17,600건의 로그인 시도를 해봤더니 musl에서 PAM을 쓰지 않는 빌드만 잘못 허용했다고 밝힌다. 이 측정은 작성자가 직접 한 것이다.
- 원문은 openssh 10.6p2 버전으로 업데이트하면 문제가 고쳐진다고 안내하고, 업데이트가 어려우면 비밀번호 로그인을 끄라고 권한다. 수정 버전의 정확성은 원문 밖에서 확인되지 않았다.
편집 의견
O: 알파인 리눅스 기반 Docker 이미지나 OpenWrt 공유기에서 SSH 키로만 접속하는 배포 계정을 운영하는 관리자가, 테스트 서버에서 원문이 안내한 비밀번호 로그인 끄기 설정을 먼저 적용해 보는 장면에 쓸 만합니다.
X: 원문은 PAM 미사용 musl 환경에서만 문제가 된다고 하지만 이 판단은 작성자의 분석과 측정에 기대므로, 비밀번호 로그인을 끄기 전에 키 로그인이 정상 작동하는지 먼저 확인해야 합니다.
작성 언어: 한국어
발견한 곳
Hacker News ↗ / 추천 1,554 / 댓글 424
비슷한 일을 겪어 본 적이 있나요? 그때 어떻게 했는지 한두 줄로 들려주세요. 제품을 잘 몰라도 괜찮습니다.