AWS - EFS Enum
EFS
기본 정보
Amazon Elastic File System (EFS)는 AWS에 의해 완전히 관리되며 확장 가능하고 탄력 있는 네트워크 파일 시스템으로 제공됩니다. 이 서비스는 여러 EC2 인스턴스 및 다른 AWS 서비스에서 동시에 액세스할 수 있는 파일 시스템의 생성 및 구성을 용이하게 합니다. EFS의 주요 기능은 수동 개입 없이 자동으로 확장할 수 있는 능력, 저지연 액세스 제공, 고처리량 워크로드 지원, 데이터 내구성 보장 및 다양한 AWS 보안 메커니즘과의 원활한 통합을 포함합니다.
기본적으로, 마운트할 EFS 폴더는 **/
**이지만 다른 이름을 가질 수 있습니다.
네트워크 액세스
EFS는 VPC에서 생성되며 기본적으로 모든 VPC 하위 네트워크에서 액세스할 수 있습니다. 그러나 EFS에는 보안 그룹이 있을 것입니다. EFS를 마운트할 EC2에 액세스하려면 EFS 보안 그룹에서 EC2 보안 그룹으로부터의 입방향 NFS(2049 포트) 규칙을 허용해야 합니다.
이를 하지 않으면 NFS 서비스에 연락할 수 없습니다.
이를 수행하는 방법에 대한 자세한 정보는 여기를 참조하세요: https://stackoverflow.com/questions/38632222/aws-efs-connection-timeout-at-mount
열거
EFS 마운트 포인트가 동일한 VPC 내에 있지만 다른 서브넷에 있을 수 있습니다. 모든 EFS 포인트를 찾으려면 /16
넷마스크를 스캔하는 것이 좋습니다.
EFS 마운트
IAM 액세스
기본적으로 EFS에 네트워크 액세스 권한이 있는 사람은 마운트, 루트 사용자로서 읽고 쓸 수 있습니다. 그러나 파일 시스템 정책을 통해 특정 권한을 가진 주체만 액세스할 수 있도록 설정할 수 있습니다. 예를 들어, 이 파일 시스템 정책은 IAM 권한이 없으면 파일 시스템을 마운트조차 할 수 없게 합니다:
또는 이렇게 하면 익명 액세스가 방지됩니다:
IAM으로 보호된 파일 시스템을 마운트하려면 마운트 명령어에서 "efs" 유형을 사용해야 합니다:
액세스 포인트
액세스 포인트는 EFS 파일 시스템으로의 응용 프로그램별 진입점으로, 공유 데이터 집합에 대한 응용 프로그램 액세스를 보다 쉽게 관리할 수 있게 합니다.
액세스 포인트를 생성할 때, 파일 및 디렉토리의 소유자 및 POSIX 권한을 지정할 수 있습니다. 또한 액세스 포인트를 통해 생성된 파일 및 디렉토리를 위한 사용자 정의 루트 디렉토리를 정의할 수 있습니다. 기존 디렉토리를 지정하거나 원하는 권한으로 새 디렉토리를 생성하여 액세스 포인트를 통해 EFS 파일 시스템에 대한 액세스를 응용 프로그램별 또는 사용자별로 제어할 수 있게 되어, 공유 파일 데이터를 보다 쉽게 관리하고 보호할 수 있습니다.
액세스 포인트에서 파일 시스템을 마운트하는 방법은 다음과 같습니다:
액세스 포인트를 마운트하려면 네트워크를 통해 NFS 서비스에 연락해야 하며, EFS에 파일 시스템 정책이 있는 경우 마운트하기 위해 충분한 IAM 권한이 필요합니다.
액세스 포인트는 다음과 같은 목적으로 사용할 수 있습니다:
권한 관리 간소화: 각 액세스 포인트에 대해 POSIX 사용자 및 그룹을 정의함으로써 기존 파일 시스템 권한을 수정하지 않고도 다른 애플리케이션 또는 사용자의 액세스 권한을 쉽게 관리할 수 있습니다.
루트 디렉토리 강제: 액세스 포인트는 EFS 파일 시스템 내의 특정 디렉토리로의 액세스를 제한하여 각 애플리케이션이나 사용자가 지정된 폴더 내에서 작동하도록 보장합니다. 이를 통해 우연한 데이터 노출 또는 수정을 방지할 수 있습니다.
더 쉬운 파일 시스템 액세스: 액세스 포인트는 AWS Lambda 함수 또는 AWS Fargate 작업과 연결될 수 있어 서버리스 및 컨테이너화된 애플리케이션의 파일 시스템 액세스를 간소화할 수 있습니다.
Privesc
AWS - EFS PrivescPost Exploitation
AWS - EFS Post ExploitationPersistence
AWS - EFS PersistenceLast updated