반응형

2024/05/25 5

[AWS] Chapter7. 클라우드 취약점 진단 심화

1. 클라우드 인증 정보01. AWS 자격증명IAM- AWS 리소스에 대한 액세스를 제어할 수 있는 서비스- 인증 및 권한 부여된 대상을 제어액세스 키(Access Key)- IAM 사용자, Root 사용자에 대한 자격 증명- CLI 또는 API에 대한 요청 및 서명- 액세스 키 ID(AWS_ACCESS_KEY)와 보안 액세스 키(AWS_SECRET_KEY)로 구성IAM 임시 보안 자격 증명(SESSION TOKEN)- STS(Security Token Service)- 리소스에 대한 액세스를 제어할 수 있는 임시 보안 자격 증명- 지정 기간 후에 만료됨IAM - Access Key- Access key는 사용자 별 최대 2개- 발급 시에만 Secret 키 쌍 제공- 사용하지 않는 key는 비활성화, 삭..

[AWS] Chapter6. 인증 및 API 진단

1. 인증 및 인가 서비스 Cognito01 개요AWS Cognito - 웹 및 모바일 앱에 대해 인증, 권한 부여 및 사용자 관리 제공- 사용자는 로그인하기 위해 아이디/비밀번호 또는 Google, Facebook 등의 권한 부여자를 통해 로그인02. 취약점 발생 원리비밀번호 오류 횟수 제한- 비밀번호 오류 횟수 제한 로직이 존재하지 않아 무작위대입 공격을 통해 타 사용자 비밀번호 획득 가능한 취약점- 금융위원고시 전자금융감독규정 - 비밀번호 5회 실패 시 계정을 잠그고 비밀번호 재부여 또는 초기화 지시- Cognito는 임시 잠금 기능을 통해 일부 대응참 고로그인 시도의 실패는 5회까지 허용되며 그 후의 각 실패에 대해서는 1초부터 시작하여 약 15분까지 두 배씩 기하급수적으로 증가한 시간만큼 임시 ..

[AWS] Chapter5. S3 및 불필요 리소스 진단

1. 불필요한 Public 설정01 개요공개 설정을 하는 이유- S3 정적 웹 호스팅- 민감도가 낮은 데이터- 공유가 필요한 데이터S3에 포함될 수 있는 정보- AWS CloudTrail 로그- 코드 형상관리 ( CodeCommit ) - 코드 배포 (Pipeline, Elastic Beanstalk)- S3 백업 파일 (S3 Versioning)02. 시나리오공개 설정된 S3- S3는 REST 웹 서비스 인터페이스를 통해 파일 전송- 공격자는 S3 버킷 주소를 통해 접속하여 파일 목록 읽기, 파일 다운로드 가능 발생할 수 있는 위협- 리소스에 대한 권한 나열 -> 계정에 따른 AWS 리소스 사용 권한 획득-> 최소 권한 부여 원칙이 적용되지 않은 경우 획득한 권한을 이용하여 인스턴스 제어 가능 - 로그..

[AWS] Chapter4. 서버&서버리스 진단 - 5

6. XXE01. XXE 개요 - XML 타입의 데이터를 웹 요청을 통해 전송, 서버에서 XML 외부 엔티티 처리가 가능할 때 발생 - 사용자가 웹 애플리케이션으로 전달되는 XML 데이터를 직접 업로드/수정 가능 -> 파일과 같은 서버 내부의 정보 탈취/SSRF 등 공격 수행 - XML 외부 엔티티 선언 형태- 사용자가 브라우저를 통해 XML 데이터를 입력 후 서버(lambda)로 전송 - 서버의 함수는 XML 데이터를 파싱하며, XXE 공격 발생 - XML 구문 분석기의 입력 값 검증 누락으로 발생02. 시나리오진단방안 - 전제 조건 -> 서버 요청 시 DTD(Document Type Definiton)를 선언할 수 있어야 함  03. 진단방법XXE 파서 취약성 - XML 구문 분석에 사용되는 pyth..

[AWS] Chapter4. 서버&서버리스 진단 - 4

5. Command Injection01. 개요Command Injection- 취약한 애플리케이션을 통해 호스트 운영 체제에서 임의 명령을 실행-> 양식, 쿠키, HTTP 헤더 등의 인자를 조작하여 시스템 쉘에 전달- 실행되었을 때 명령은 애플리케이션 권한으로 동작- 불충분한 입력 유효성 검사가 원인02. 취약점 발생 원리Faas 환경에서 사용자 관리 범위와 서비스 제공자 관리 범위의 차이 존대- FaaS 환경에서 사용자는 호스트 운영 체제에 관여할 수 없음-> AWS에서 가상 환경을 구성하며 Amazon Linux, Amazon Liunx 2 사용- 사용자가 지정한 런타임 가상환경에서 임의 명령을 실행-> Node, Python, Ruby, Java, Go 등 런타임 가상환경 사용 가능- 실행되었을 ..

반응형