GHOST glibc 취약점 (CVE-2015-0235) : glibc 업그레이드 후 서버를 다시 시작해야합니까?


답변:


23

다시 시작이되지 않는 기술적으로 필요한 glibc에 필요성을 사용하는 경우에만 프로그램을 다시 시작해야하기 때문에, 그리고 커널의 glibc를 사용하지 않습니다.

즉, glibc를 사용하는 모든 것을 다시 시작 하면 충분히 넓어 재부팅 할 수 있습니다 .

예를 들어, /sbin/initglibc를 사용합니다. 그러나 다시 시작하는 것은 간단합니다 ( init u루트로 실행 ).


3
OTOH initCVE로 인해이 취약점이 심각하다고 의심합니다. )
Erbureth는 Monica Reinstate Monica

11
@Erbureth는 동의하지만 " 이 프로그램 은 취약하다고 생각 합니다. 프로그램 이 아니라고 생각 합니다. "는 "이상한 게임입니다. 유일한 승리의 움직임은 플레이하지 않는 것입니다."
gowenfawr

sysvinit는 안전합니다 (DNS 호출이없고 항상 정적으로 연결되지는 않음). systemd리졸버 자체가있는 것 같습니다. 오랜 경험으로 인해 사용 된 라이브러리를 교체 할 경우 불안정 할 수 있습니다. 재부팅하고 행복하십시오.
mr.spuratic

2
sysvinit를 다시 시작할 수 있습니다. init u 명령을 실행하면 / sbin / init가 실행됩니다.
Joshua


9

취약한 라이브러리를 사용하는 개별 서비스를 수동으로 다시 시작하는 것에 만족하면이 명령을 실행하고 나열된 프로세스를 다시 시작할 수 있습니다.

# lsof | awk '/libc-/ {print $1}' | sort -u

컴퓨터를 완전히 다시 시작하는 것이 더 쉬울 것입니다.


9
lsof | awk '/DEL.*libc/{print $1}' | sort -u현재 삭제 된 (업데이트 후) libc에 연결된 링크에서만 일치합니다 .
sch

2
누군가 실제로 출력을 확인 했습니까 lsof | grep libc? 그것은 libcurl, libcups, libcairo 등을 포함한 수많은 라이브러리와 일치합니다 libc-.

꽤 우회하고 부정확 한 방법입니다. 라이브러리 패키지를 사용하여 실행중인 프로세스를 어떻게 감지합니까? 어쨌든 glibc의 대답은 거의 모든 프로세스입니다. 유용한 것은 이전 프로세스에 남아있는 프로세스를 아는 것입니다.이 명령으로 알려주지 않습니다.
Gilles 'SO- 악마 그만해'

7

예. 따라서 이전 버전의 glibc에 의존하는 프로세스는 새로운 버전의 라이브러리로 다시 시작됩니다. 이러한 이유로 정적으로 링크 된 프로그램도 다시 컴파일해야합니다.


DNS 기능과 NSS, glibc 및 이전 glibc 관리자역사적 편향 과의 상호 작용을 고려할 때 정적 링크는 거의 없습니다 .
mr.spuratic
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.