상세 컨텐츠

본문 제목

지난 20년 동안 모든 OpenSSH 버전에 영향을 미친 취약점 공개 돼

국내외 보안동향

by 알약(Alyac) 2018. 8. 23. 17:21

본문

Vulnerability Affects All OpenSSH Versions Released in the Past Two Decades


이번에 발견된 취약점은 OpenSSH가 처음 출시된 1999년 이래로 지난 20년 동안 모든 버전의 OpenSSH 클라이언트에 영향을 미친 것으로 나타났습니다.


이 버그에 대한 패치는 이번주 공개 되었지만, OpenSSH 클라이언트가 수 많은 소프트웨어 어플리케이션 및 하드웨어 기기에 내장 되어 있기 때문에 모든 시스템이 패치될 때 까지는 수 개월에서 수 년이 소요될 것으로 예상됩니다.


OpenSSH에서 사용자 계정 열거 버그 발견


이 버그는 Qualys의 보안 연구원이 지난주 OpenBSD의 OpenSSH 소스 코드의 커밋에서 발견했습니다.


해당 커밋을 분석 후, 연구원들은 해당 코드가 OpenSSH 클라이언트가 제작될 당시부터 존재해 왔던 보안 버그를 우연히 수정한 사실을 깨달았습니다.


이 버그는 원격의 공격자가 OpenSSH 서버에 등록 된 계정을 추측할 수 있도록 허용합니다. OpenSSH는 클라우드 호스팅 서버에서 IoT 장비에 이르기 까지 다양한 기술과 함께 사용 되기 때문에, 수십억 대의 장치가 이에 영향을 받습니다.


공격자는 악성 인증 요청을 통해 (예를 들어, 잘린 패킷을 통해) OpenSSH 엔드포인트에서 인증을 시도할 수 있습니다.


취약한 OpenSSH 서버는 이러한 일이 발생할 경우 아주 다른 두 가지의 방식으로 반응할 것입니다. 악성 인증 요청에 포함 된 계정이 존재하지 않을 경우, 서버는 인증 실패 응답으로 답변합니다. 만약 사용자가 존재할 경우, 서버는 아무런 응답 없이 연결을 종료합니다.


이 행동의 차이점으로 인해, 공격자는 SSH 서버에 등록 된 유효한 사용자 계정을 추측할 수 있게 됩니다. 정확한 사용자 계정명을 알아낸다고 해서 당장 위험을 끼칠 수 있는 것은 아니지만, 브루트포싱 공격이나 사전공격을 통해 패스워드도 함께 알아낼 수 있게 됩니다.


OpenSSH의 설치 기반은 너무나도 방대해, 이 버그는 APT 타겟 공격이나 대량 공격 시나리오에서도 이상적으로 사용될 수 있습니다.



버그는 지난주 패치 되었으며 PoC 코드 공개 돼


CVE-2018-15473으로 등록 된 이 버그는 Open SSH의 안정적인 버전 1:6.7p1-1과 1:7.7p1-1, 그리고 불안정적인 버전 1:7.7p1-4에서 패치 되었습니다. 이 패치는 Debian에도 적용 되었으며, 다른 리눅스 배포판에도 적용 된 것으로 보입니다.


서버가 취약한지 확인할 수 있는 PoC 코드(공격에도 사용될 수 있음)는 다양한 곳에서 제작되었습니다.  [1, 2, 3].


NVISO Labs의 Didier Stevens는 이 버그를 테스트할 수 있는 단계별 튜토리얼을 공개했습니다. 이 블로그 포스트에는 취약한 서버에 이 버그를 악용하려는 시도에 대한 OpenSSH 이벤트 로깅에 대한 정보도 포함 되어 있습니다.


완화법도 공개 돼


다양한 이유로 패치를 설치할 수 없는 시스템 관리자들도 여러 완화법을 사용할 수 있습니다. OpenSSH 인증을 비활성화 하거나, 원격 기기에 로그인하기 위한 대체 수단을 사용하는 것입니다.


만약 이것이 불가능하며 OpenSSH 클라이언트가 기기에 연결할 수 있는 유일한 방법일 경우, 시스템 관리자들은 취약한 코드가 존재하는 OpenSSH의 “공개 키 인증” 메쏘드를 비활성화하면 됩니다.


위의 경우 시스템 관리자들이 OpenSSH 인증 키를 사용할 수 없으며, OpenSSH를 통해 기기에 로그인 할 때마다 계정 및 비밀번호를 입력해야 합니다.





참고 : 

https://www.bleepingcomputer.com/news/security/vulnerability-affects-all-openssh-versions-released-in-the-past-two-decades/

관련글 더보기

댓글 영역