AWS12 [AWS] Network - CloudFront A. CDN(Contents Delivery Network) 개요1. CDN이란? 출처 : https://www.cloudflare.com/ko-kr/learning/cdn/what-is-a-cdn/콘텐츠 제공자와 사용자 간 지리적으로 떨어져 있는 환경에서 콘텐츠를 빠르게 제공하기 위한 기술입니다. CDN 기술의 핵심은 캐시 서버를 통한 지역적인 분산에 있습니다. 원본 콘텐츠를 가지고 있는 서버를 오리진 서버라 부르는데, 해당 오리진 서버로부터 지역적으로 분산되어 있는 캐시 서버로 콘텐츠를 분배합니다. 이러한 CDN의 성능적인 우위와 높은 가용성 보장 등의 기술적 장점으로 많은 기업이 CDN을 도입하여 서비스하고 있습니다. 2. CND 캐싱 방식캐싱 : 지역적으로 분산된 캐시 서버로 저장하는 행위.Cac.. [Information]/[AWS] 2024. 6. 21. [AWS] Chapter4. 서버&서버리스 진단 - 5 6. XXE01. XXE 개요 - XML 타입의 데이터를 웹 요청을 통해 전송, 서버에서 XML 외부 엔티티 처리가 가능할 때 발생 - 사용자가 웹 애플리케이션으로 전달되는 XML 데이터를 직접 업로드/수정 가능 -> 파일과 같은 서버 내부의 정보 탈취/SSRF 등 공격 수행 - XML 외부 엔티티 선언 형태- 사용자가 브라우저를 통해 XML 데이터를 입력 후 서버(lambda)로 전송 - 서버의 함수는 XML 데이터를 파싱하며, XXE 공격 발생 - XML 구문 분석기의 입력 값 검증 누락으로 발생02. 시나리오진단방안 - 전제 조건 -> 서버 요청 시 DTD(Document Type Definiton)를 선언할 수 있어야 함03. 진단방법XXE 파서 취약성 - XML 구문 분석에 사용되는 py.. [Education]/[AWS] Cloud Hacking 2024. 5. 25. [AWS] Chapter4. 서버&서버리스 진단 - 4 5. Command Injection01. 개요Command Injection- 취약한 애플리케이션을 통해 호스트 운영 체제에서 임의 명령을 실행 -> 양식, 쿠키, HTTP 헤더 등의 인자를 조작하여 시스템 쉘에 전달- 실행되었을 때 명령은 애플리케이션 권한으로 동작- 불충분한 입력 유효성 검사가 원인02. 취약점 발생 원리Faas 환경에서 사용자 관리 범위와 서비스 제공자 관리 범위의 차이 존대- FaaS 환경에서 사용자는 호스트 운영 체제에 관여할 수 없음 -> AWS에서 가상 환경을 구성하며 Amazon Linux, Amazon Liunx 2 사용- 사용자가 지정한 런타임 가상환경에서 임의 명령을 실행 -> Node, Python, Ruby, Java, Go 등 런타임 가상환경 사용 .. [Education]/[AWS] Cloud Hacking 2024. 5. 25. [AWS] 클라우드 구현 모델(프라이빗/퍼블릭/하이브리드 클라우드) 비교 A. 프라이빗 클라우드1. 프라이빗 클라우드의 이점비용감소프라이빗 클라우드를 사용하면 워크로드의 효율성을 유지하며 IT 인프라 비용을 대폭 줄일 수 있습니다. 또한, 퍼블릭 클라우드 제공업체가 제공하지 않는 기능도 지원합니다. 효율성과 제어클라우드 벤더는 기업별 환경을 생성하기 위해 온사이트 데이터 센터 또는 타사에서 임대한 데이터 센터에 프라이빗 클라우드를 호스팅합니다. 이러한 인프라를 사용할 경우 데이터와 인프라를 보다 확실히 제어하면서 필요한 경우 즉시 개입할 수 있습니다.커스텀기술 및 비즈니스 요구 사항은 각각의 상호 작용에 따라 다르며 비즈니스 목표, 회사 규모 및 산업에 좌우됩니다. 프라이빗 클라우드에서는 네트워크 특성, 특정 스토리지와 같은 인프라 요소에 초점을 맞추고 개별 요구 사항을 충족.. [Information]/[AWS] 2024. 5. 23. [AWS] 클라우드 서비스 종류(IaaS, PaaS, SaaS) 비교 A. 클라우드 개요1. 클라우드란?클라우드란 언제나, 어느곳에서나 원하는 만큼의 IT 리소스를 손쉽게 사용할 수 있게 하는 서비스입니다. 이러한 클라우드 컴퓨팅 환경이 널리 보급 되면서 기업체에서는 온프레미스 IT 솔루션 대신 aaS(as-a-Service) 형태로 제공되는 소프트웨어, 플랫폼, 컴퓨팅 인프라로 전환하기 시작했습니다. 클라우드의 서비스 종류는 IaaS, Paas, SaaS가 있습니다. 2. aaS(as-a-Service)란? 서드파티 벤더(AWS, Google, 등등)가 제공하는 클라우드 컴퓨팅 서비스를 의미합니다. 3. 클라우드의 이점클라우드를 사용하게 되면 기업은 주요 비즈니스 기능, 고객 관계 등 더 중요한 업무에 집중할 수 있습니다. 이 3가지 클라우드 컴퓨팅 모델 각각에서는.. [Information]/[AWS] 2024. 5. 23. [AWS] Chapter4. 서버&서버리스 진단 - 3 4. NoSQL Injection 01. 개요 NoSQL 개요 - 유연한 수평확장(Scale-Out) - 빠른 레이턴시 - 유연한 스키마 - 조인(join)이 불가하여 복잡한 로직 수행 시 성능 감소 DynamDB 개요 - AWS 클라우드 기반 NoSQL 솔루션 - INSERT, UPDATES, DELETES, QUERY 및 SCAN 작업 포함 CRUD 지원 - 데이터 검색을 위해 쿼리 및 스캔 사용 - 스캔 함수는 전체 테이블 스캔 후 ScanFilters를 기반으로 결과 리턴 02. 시나리오DynamoDB 구성 -> 테이블 -> 기본키(Partition Key) - 무결성 보장 -> 데이터 타입 - S(String), N(Number), B(Binary), SET, Bool, Null, L(List).. [Education]/[AWS] Cloud Hacking 2024. 5. 7. [AWS] Chapter4. 서버&서버리스 진단 - 1 1. AWS 침투 테스트 정책01. 침투 테스트 허용/금지 서비스침투 테스트 허용 서비스 - EC2, NAT Gateway 및 Elastic Load Balancer- RDS- CloudFront- Aurora- API Gateway- Lambda 및 Lambda Edge 기능- Lightsail 리소스- Elastic Beanstalk 환경침투 테스트 금지 서비스 - Route 53 Hosted Zones를 통한 DNS zone walking - 서비스 거부(Dos), 분산 서비스 거부(DDoS) - 포트 플러딩 - 프로토콜 플러딩 - 요청 플러딩(로그인 요청, API 요청) 02. AWS 침투 테스트 도구 정책 침투 테스트 도구 -> AWS는 다양한 침투 테스트 도구의 존재 및 사용 가능성을 인정.. [Education]/[AWS] Cloud Hacking 2024. 5. 6. [AWS] Chapter3. 클라우드 아키텍처(Cloud Architecture) 1. 정적 웹 호스팅 01. AWS Well-ArchitectedAWS Well-Architected - 보안, 안정성, 성능 효율성, 비용 최적화, 운영 우수성보안 기반 아키텍처 프레임워크ID 및 액세스 관리 - 허가, 인증된 사용자에 한해 리소스에 액세스 / 키관리탐지 제어 - 로그, 이벤트 및 모니터링 처리인프라 보호 - VPC를 이용한 환경 구성, 퍼블릭 또는 프라이빗 서브넷 구성데이터 보호 - 암호화(서버측 암호화, SSL 통신) 인시던트 대응 - 상세 로그 제공 02. 정적 웹 호스팅 AWS 정적 웹 구축S3 + CloudFront정적 컨텐츠는 S3 사용, 가상서버를 사용하지 않고 배포CloudFront - CDN(Contents Delivery Network) 서비스, 전 세계에 배치된 캐.. [Education]/[AWS] Cloud Hacking 2024. 5. 6. [AWS] Chapter2. 사용자 관리 - 2 2. 인증 정보01. IAM 인증 정보IAM 인증 정보(Credential)- API Key, SSH Pubkey, AWS CLI & SDK 등 서비스 키를 포함 - 개발 실수, 환경 설정 미흡 등으로 인해 공개된 저장소에 저장되지 않도록 유의 - IAM 사용자는 고유한 액세스 키를 자신의 권한에 한하여 교체 가능 => 하지만, root 사용자는 모든 IAM 사용자의 키 관리에 관여 가능 - 환경변수, ~/.aws/credentials 에 저장하여 프로파일 등록 후 사용 IAM 인증 정보 유출 경로 - 스크린샷, 코드 형상관리 파일(.git, .env) 관리 미흡, 불필요한 공개 설정 등 다양 IAM 인증 정보 유출 경로 (예시)IAM 인정 정보 유출 시 위협 - 공격자는 키 획득 이후 추가 공격 .. [Education]/[AWS] Cloud Hacking 2024. 5. 4. [AWS] Chapter2. 사용자 관리 - 1 1. Cloud 사용자 관리01. root 사용자root 사용자? -> AWS 계정을 처음 생성할 때 해당 계정의 모든 AWS 리소스에 액세스 권한이 있는 ID -> 이메일 주소와 암호를 이용하여 인증 -> 일상적인 작업 및 관리 작업에도 루트 사용자의 사용을 권장하지 않음 -> 오직 계정 및 과금 관리 작업 수행 시에만 root 사용자 사용 권장 02. IAM IAM (Identity and Access Management)AWS 서비스와 리소스에 대한 액세스 통제AWS 사용자 및 그룹을 만들고 관리하며 리소스에 대한 액세스 허용 및 거부 가능AWS 관리를 위한 그룹, 사용자 및 역할(Role) 생성 가능 IAM 사용자(User)개체, 서비스 및 리소스와 상호작용하기 위해 개체를 사용하는 사람.. [Education]/[AWS] Cloud Hacking 2024. 5. 4. [AWS] Chapter1. 클라우드 모의해킹 기초 - 2 2. AWS 주요 서비스 01. 온프레미스와 클라우드 온프레미스 VS 클라우드 - 애플리케이션의 클라우드 이전 시 다양한 전략 존재 -> 기존 환경의 마이그레이션, 관리형 서비스 이용, 서비스형으로 전환 (예시) 웹 애플리케이션을 서비스 단위로 분해하여 재설계 및 배포 02. AWS 주요 서비스 03. 클라우드 용어 AWS 글로벌 인프라 -> 리전(Region) : 국가 단위 -> 가용 영역(Availability Zone) : 데이터 센터(IDC), 하나의 리전에 여러 개의 가용 영역으로 구성 -> 엣지 로케이션(Edge Location) : CDN(Content Delivery Network) - 빠른 배포를 위한 캐시서버25개 지리적 리전에 걸쳐 80개의 가용 영역을 보유( 2020년 기.. [Education]/[AWS] Cloud Hacking 2024. 5. 4. [AWS] NACL(Network ACL) vs Security Group(보안그룹) NACL(Network ACL)- 규칙 번호가 낮은 순으로 우선 적용- 서브넷 단위로 적용(하나의 NACL만 적용)- NACL이 설정된 서브넷 안의 모든 인스턴스에 적용- 1개의 VPC에 최대 200개의 NACL까지 생성 가능- 1개의 NACL Inboud 20개, Outbound 20개 등록 가능- 여러개의 서브넷에 NACL 적용 가능- Stateless 성질(요청 정보를 따로 저장하지 않기 때문에, 응답하는 트래픽에 대한 필터링 설정 필요)@주의- 규칙 번호는 낮을수록 더 높은 우선순위를 가지며, 운영 도중 규칙을 삽입해야하는 경우가 분명 생기므로, 처음에 10,100 단위로 만들어야한다.Security Group (보안그룹)- 인스턴스(서버) 단위로 적용- 특정 그룹을 지정시에만 인스턴스에 적용.. [Information]/[AWS] 2024. 4. 30. 이전 1 다음