분류 전체보기 719

EKS 스터디 - 6주차 2편 - EKS pod가 IMDS API를 악용하는 시나리오

이 글은 pod가 IMDS API를 사용하여 AWS 리소스를 제어하는 공격 시나리오를 설명합니다. IMDS API란? IMDS API(Instance Metadata Service)는 EC2 메타데이터를 조회하는 API입니다. EC2인스턴스에서 IMDS API를 호출할 수 있습니다. EKS 워커노드를 EC2인스턴스로 사용하면, pod또한 IMDS API를 사용할 수 있습니다. IMDS API는 옵션으로 활성화/비활성화 합니다. 이 글은 영상으로도 만나볼 수 있습니다. https://youtu.be/0aIfpNReeBc IMDS API 위험 IMDS API은 EC2 메타데이터를 쉽게 조회하는 장점이 있지만, 해커에게 악용될 위험이 있습니다. EC2 인스턴스 IAM role 조회, 임시자격증명 발급 등 악용..

연재 시리즈 2023.05.28

EKS 스터디 - 6주차 1편 - 미흡한 kubelet 인증/인가 설정의 위험

2022년 OWASP에서 쿠버네티스 TOP10 위험을 공개했습니다. 이 글은 항목 중 9번째에 해당하는 kubelet미흡한 설정 위험을 설명하고 예제를 살펴봅니다. 이 글은 영상으로도 만나보실 수 있습니다. https://youtu.be/88c2iXZBm7w kubelet API 인증과 인가 kubelet은 kube API server와 통신하기 위해 10250포트를 오픈합니다. kube API server는 오픈된 10250포트를 사용하여 kubelet API를 호출합니다. kubelet API는 kubectl run, exec 등이 있습니다. kubelet API을 누구나 호출이 가능하면 악용될 여지가 있습니다. pod 목록 조회, pod안에서 명령어 실행 등 해거가 좋아하는 명령어가 가득합니다. 그..

연재 시리즈 2023.05.27

EKS 스터디 - 5주차 2편 - CPA

CPA란? CPA(cluster-proportional-autoscaler)는 노드 개수에 비례(proportional)하여 pod 개수 관리합니다. 예를 들어 노드가 추가될 때마다 coredns pod개수 증가시켜, coredns부하를 줄일 수 있습니다. CPA를 사용하면 node개수가 2개일 때 coredns 1개를, node개수가 5개일 때 coredns를 3개 등을 설정할 수있습니다. CPA는 의존성이 적습니다. Metrics server 등을 사용하지 않고 kubapi server API를 사용합니다. 여러분은 노드 개수에 비례하여 pod를 얼마나 배포할지만 규칙만 설정하면 됩니다. CPA사용 기대효과 노드 개수가 증가되면, 전체 pod개수도 많아집니다. pod개수가 많아질수록 어느 특정 서비스..

연재 시리즈 2023.05.21

EKS 스터디 - 5주차 1편 - VPA

VPA란? VPA(Vertical Pod Autoscaler)는 pod resources.request을 최대한 최적값으로 수정합니다. 수정된 request값이 기존 값보다 위 또는 아래 범위에 속하므로 Vertical라고 표현합니다. pod마다 resource.request를 최적값으로 설정하면, 쿠버네티스 노드 자원 효율성이 좋아집니다. pod가 스케쥴링될 때 pod resources.request만큼 노드에 자원이 있어야 합니다. VPA를 설정하면 쿠버네티스 노드 cpu와 메모리를 최대한 확보할 수 있으므로 자원 효율성이 증가합니다. 주의사항 VPA는 HPA와 같이 사용할 수 없습니다. VPA는 pod자원을 최적값으로 수정하기 위해 pod를 재실행(기존 pod를 종료하고 새로운 pod실행)합니다. ..

연재 시리즈 2023.05.21

EKS 스터디 - 4주차 3편 - AMP에 EKS메트릭 저장

안녕하세요. 이 글은 EKS메트릭을 AMP(AWS Managed Prometheus)에 저장하고 AMG(AWS Managed Grafana)에서 시각화하는 방법을 설명합니다. AMP란? AMP(Amazon Managed Prometheus)는 서버리스 프로메테우스입니다. AWS가 프로메테우스를 직접 관리하고 사용자는 프로메테우스 설정만 하면 됩니다. AMP는 AWS리소스(SNS 등)를 연계하여 알림 기능도 구현할 수 있습니다. AMP는 AWS 다중 가용영역(Availability Zone)을 활영하여 HA(High Availability)를 지원합니다. AMP에 저장된 데이터는 150일동안 저장됩니다. AMP 설치방법 AMP는 워크스페이스 단위로 구분합니다. 워크스페이스가 프로메테우스 인스턴스라고 생각하..

연재 시리즈 2023.05.14