glibc
우리는 현재 버전 2.2에서 최신 버전 5/6/7로 업그레이드 해야 한다는 것을 알고 있습니다 .
내 질문은 우리 환경에 7000개가 넘는 서버가 있어서 시스템을 재부팅하기 어려울 때 시스템을 재부팅해야 하는지 여부입니다.
업데이트 후에 glibc
는 취약하지 않은데 애플리케이션/서버를 다시 시작해야 하는 이유는 무엇입니까?
답변1
이번 포스팅에서 대부분의 질문에 답변해 드렸습니다여기유령 취약점에 대해.
즉, 아니요, 시스템을 다시 시작하는 것이 "필수"는 아니지만 많은 응용 프로그램/시스템 유틸리티가 glibc를 사용하므로 패치가 적용되기 전에 모든 응용 프로그램/시스템 유틸리티를 다시 시작해야 합니다. 그렇기 때문에 환경을 다시 시작하는 것이 "권장"됩니다.
내 게시물에서는 다시 시작해야 하는 glibc를 사용하는 애플리케이션을 식별하는 방법과 여전히 영향을 받는지 확인하기 전과 후에 취약점을 테스트하는 방법을 보여줍니다. glibc 테스트를 통해 패치 후 취약하지 않은 것으로 나타날 수 있지만 glibc를 메모리에 로드하고 메모리 내 버전의 glibc가 여전히 취약하기 때문에 모든 애플리케이션을 다시 시작해야 합니다. 그러니 당신은 아직 안전하지 않습니다.
답변2
유예 경비원Ghost 취약점에 관한 훌륭한 기사를 썼습니다. glibc 라이브러리를 사용하는 모든 프로세스를 다시 시작해야 한다고 명시되어 있으므로 새 라이브러리를 사용하려면 최소한 모든 서비스를 다시 시작해야 할 것 같습니다.
고정시키다
배포판에 사용할 수 있는 패치가 있으면 설치하십시오. 그렇지 않으면:
- glibc 2.18 이상으로 업데이트
- glibc 라이브러리를 로드하는 모든 프로세스를 다시 시작합니다.
- glibc 라이브러리의 취약한 버전에 정적으로 연결되는 소프트웨어용 새 바이너리를 출시합니다.
빨간 모자완전히 재부팅하는 것이 권장되지만 libc를 사용하여 모든 서비스를 찾는 명령도 제공됩니다.
시스템을 다시 시작하거나 영향을 받는 모든 서비스를 다시 시작합니다.
이 취약점은 시스템의 많은 수의 응용 프로그램에 영향을 미치기 때문에모든 애플리케이션이 업데이트된 glibc 패키지를 사용하고 있는지 확인하는 가장 안전하고 권장되는 방법은 시스템을 재부팅하는 것입니다..
전체 시스템을 재부팅할 수 없는 경우 다음 명령을 실행하여 glibc를 사용하는 시스템의 모든 서비스와 바이너리를 나열하십시오.
$ lsof +c 15 | grep libc- | awk '{print $1}' |
결과 목록에서 공개 서비스를 식별하고 다시 시작합니다. 이 절차는 임시 해결 방법으로 작동할 수 있지만 Red Hat에서는 지원하지 않으며 문제가 발생하면 문제 해결을 시작하기 전에 시스템을 재부팅하라는 메시지가 표시됩니다.