웹 서버 파일에서 언제 "Apache : Apache"또는 "Nobody : Nobody"를 사용해야합니까?

StackOverflow https://stackoverflow.com/questions/1850297

  •  13-09-2019
  •  | 
  •  

문제

배경: 나는 나의 오래된 고용 장소에서 웹 서버 관리자가 항상 httpd- 접근 가능한 파일 업로드 디렉토리를 변경하여 Apache : Apache 또는 Nobody : Nobody가 소유 한 방법을 항상 기억합니다.

그는 이것이 보안상의 이유라고 말했다.

의문: 이것의 보안 영향이 구체적으로 무엇인지 말해 줄 수 있습니까? 또한 Apache를 아무도 실행할 수있는 방법이 있습니까?

티아

도움이 되었습니까?

해결책

HTTPD (APACHE)가 루트가 소유하고 그룹 루트에 속한다고 가정하고, 코드 자체에서 발견 된 취약점이 있다고 가정하면, 악의적 인 사용자는 더 긴 URL을 요청했습니다. 예상보다 httpd seg-faulted. 이제,이 익스플로잇은 발견 된 루트 액세스를 보유하고 있음을 의미합니다. 즉, 시스템을 제어 할 수 있으므로 악의적 인 사용자는 궁극적으로 제어를 압류하고 상자에 혼란을 야기합니다.

그것이 HTTPD 데몬의 소유권이 아무도 없거나 아파치 : 아파치에서 실행되는 이유입니다. 익스플로잇/취약성이 루트 액세스를 노출시키지 않도록하기위한 예방 조치입니다. 그것이 일어날 경우 보안 영향을 상상해보십시오.

다행스럽게도 이제 Linux 분포에 따라 BSD 변형 (OpenBSD/FreeBsd/NetBsd) 또는 상용 UNIX 변형에 따라 HTTPD 데몬은 특권이 가장 적은 사용자 그룹에서 실행됩니다. 또한 많은 Apache 코드가 충분히 테스트되고 안정적이라고 말하는 것이 안전 할 것입니다. 모든 도메인에서 서버의 약 49%가 Apache를 실행하고 있습니다. Microsoft의 IIS는 도메인의 29%로 실행됩니다. 이것은 Netcraft Survey Site에 따른 것입니다 여기.

또 다른 맥락에서, 그것은 최소한의 특권으로 실행되는 프로그램이 '안전한'것으로 간주 될 것이며, 악용, 취약한 가능성의 가능성을 완화시킬 것임을 보여줍니다.

다른 팁

이것은이 질문에 대한 잘못된 사이트입니다. 일반적으로 당신은 할 것입니다 ~ 아니다 소스 코드가 Apache와 동일한 사용자가 소유하기를 원합니다. Apache의 보안 결함이나 서버 측 스크립트가 발생하면 공격자는 권한 에스컬레이션없이 웹 사이트의 파일을 악의적으로 수정할 수 있습니다.

한 가지 예외는 파일 업로드 디렉토리입니다. 이 경우 Apache가 해당 디렉토리를 변경하기를 원합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top