FTP에 쓰기 가능한 chroot 디렉토리를 갖는 위험은 무엇입니까?

FTP에 쓰기 가능한 chroot 디렉토리를 갖는 위험은 무엇입니까?

chroot이 옵션을 사용하여 FTP 서버를 구성하면( vsftpd실행조차 되지 않음) 인터넷상의 사람들은 쓰기 가능한 FTP 루트를 갖는 것이 얼마나 안전하지 않은지 소리칠 것입니다.

왜 나쁜지에 대한 설명이 누락되었나요?

누군가 이 주제를 더 확장하고 위험이 무엇인지, chroot 디렉토리에 쓸 수 있는 방법을 설명할 수 있습니까?권한이 없는 사용자악용될 수 있나요?

답변1

이 공격은 구어체로 "Howling Beast" 공격으로 알려져 있으며, 다음 권고에서 이에 대한 자세한 내용을 읽을 수 있습니다.

이 기능을 사용하려면 chroot(2)FTP 서버가~ 해야 하다루트 권한이 있습니다. 그런 다음 권한이 없는 클라이언트는 /etcchroot 서버 프로세스 내에서(또는) 생성될 파일을 요청합니다. /lib이러한 디렉터리에는 일반적으로 동적으로 로드된 라이브러리와 DNS 확인자, 사용자/그룹 이름 검색,.클라이언트가 생성한 파일은 다음과 같습니다.아니요내부에진짜 /etc/그리고 /lib시스템의 디렉토리 -하지만 이내에, chroot이 클라이언트에서 생성된 파일그건 진실이야.

따라서 악의적인 클라이언트는 프로세스를 chroot하는 FTP 서버에 연결하고 해당 chroot 내에 필요한 디렉터리/ /lib파일을 생성 /etc하고 일부 동적 라이브러리의 악의적인 복사본을 업로드한 다음 서버에 특정 작업을 수행하도록 요청하여 사용을 시작합니다. 새로운 동적 라이브러리(일반적으로 사용자/그룹 검색 등을 위한 시스템 기능을 사용하는 디렉토리 목록). 서버 프로세스는 악성 라이브러리를 실행하고,그리고왜냐하면 서버가여전히 루트 액세스 권한이 있을 수 있음, 악성 라이브러리 코드는 원하는 모든 작업을 수행하기 위해 추가 액세스 권한을 가질 수 있습니다.

/etc그렇지 /lib않으므로 주의해 주십시오오직디렉토리를 살펴보십시오. 문제는 시스템 라이브러리가 파일 위치에 대해 가정하는 것에 관한 것입니다. 따라서 다양한 플랫폼에는 보호할 추가 디렉터리가 있을 수 있습니다.

/etc/예를 들어, ProFTPD는 이제 그러한 디렉토리 생성을 금지합니다./lib루트할 때, 이러한 공격을 완화합니다.

관련 정보