전체보기

· Study/K8s
앞서 알아보았던 Service 중 외부 요청을 처리하기 위한 것에는 NodePort가 있었다. NodePort는 클러스터 내의 모든 노드에 특정 포트를 오픈시켜 외부로부터 접근할 수 있도록 하는 서비스이다. 이러한 방식으로 클러스터 내부 네트워크로 접근하는 방식에는 사실 몇가지 애로사항이 존재한다. 포트 사용 문제 NodePort는 각 서비스별로 하나의 포트를 고정으로 사용한다. NodePort 기본 정의에 따라 30000~32767 사이의 포트만 지정해줄 수 있다. SSL 인증서 사용 불가 이러한 애로사항을 해결해주기 위해 LoadBalancer 서비스를 사용할 수 있다. 하지만 LoadBalancer는 Public Cloud에 많이 의존하게 되는 것부터 노출시킬 서비스에 대해 각각 IP주소를 가진다는..
· Cloud/AWS
도메인을 리다이렉트해달라는 내용을 요청받았다. 자세히 이야기하자면, www.before.com과 같은 도메인으로 들어온 요청을 www.after.com과 같은 다른 도메인으로 리다이렉트하도록 설정을 해달라는 내용이였다. 이러한 예시는 실제로 종종 볼 수 있다. 예를 들어 어떤 서비스의 도메인이 완전히 바뀌어서, 이전 도메인으로 접속하는 트래픽을 신규 도메인으로 리다이렉션해주는 상황이 있을 수 있다. 이외에도 회사의 브랜드나 서비스 등을 사칭하는 사례의 방지를 위해 관련된 도메인들을 구매하고 정식 서비스로 리다이렉트 시켜버리는 등의 예시도 생각 할 수는 있다. (도메인 사칭방지와 관련된 LG전자의 실제 예시에서 이같은 방법을 고려해볼 수 있을 것이다. 다만, 도메인을 모오두 사들이는 돈은 있어야겠지만.....
· Study/SQL
데이터모델링의 이해 데이터 모델링 설계과정에서 시스템의 중요한 개념을 논리적인 데이터 모델로 구성하는 작업 물리적인 데이터베이스 모델 구현부터 시스템 데이터베이스 반영과정을 포함 단순히 데이터를 다루는 것이외에도 시스템의 구체적인 흐름을 정의하는데에도 영향을 끼침 정보시스템을 구축하기 위한 데이터 관점의 업무 분석 기법 현실세계의 데이터에 대해 약속된 표기법으로 표현하는 과정 데이터베이스를 구축하기 위한 분석/설계의 과정 데이터 모델링의 3단계 개념적 데이터 모델링 높은 추상화 수준, 포괄적인 수준의 모델링 논리적 데이터 모델링 Key, 속성, 관계를 표현, 재사용성 높음 물리적 데이터 모델링 물리적인 성격을 고려해 설계 데이터 모델링의 3요소 Thing (어떤 것) Attributes (속성) Rela..
· Cloud/IaC
본격적으로 조금 더 복잡한 내용으로 들어가보도록한다. 많이 사용되는 WEB, WAS, DB 구조인 3-tier 아키텍쳐를 Terraform Code로 구성해보도록한다. 아키텍쳐 구성도 구성할 요소가 상당히 많은 것을 볼 수 있다. 이번 글에서는 네트워킹 요소(VPC)부터 구성하고, 그 다음으로 Application(WEB, WAS, DB)를 구축해보도록 한다. Terraform 코드 작성 전체적인 프로젝트는 module화 시켜 최대한 가독성있게 제작했다. (모듈화를 시킴으로써 각 모듈에서 필요한 요소들을 가져오고 내보내는 과정을 익힐 수 있었다. [output / variables]) ├── main.tf ├── module │ ├── application# EC2, ALB 등의 application 요..
시나리오 개요 Starting as an anonymous outsider with no access or privileges, exploit a misconfigured reverse-proxy server to query the EC2 metadata service and acquire instance profile keys. Then, use those keys to discover, access, and exfiltrate sensitive data from an S3 bucket. 시나리오 목표 S3 버킷 내의 confidential 파일 다운로드(탈취) 시나리오 세팅 ./cloudgoat.py create cloud_breach_s3 solutions 디렉토리 내의 cloud_breach_s3..
· Cloud/AWS
GuardDuty AWS 계정 전반의 위협 탐지 서비스(Threat Detection Service) AWS 계정과 워크로드를 보호하기 위해 악의적인 활동들과 비인가적인 행위들을 지속적으로 모니터링한다. GuardDuty는 위협 인텔리전스 피드를 통해 악성IP / 도메인을 판별하고, 이를 바탕으로 머신러닝을 적용시켜 위협 탐지를 수행한다. GuardDuty가 모니터링하는 항목으로는 다음과 같다. VPC flow log CloudTrail 이벤트 로그 CloudTrail 관리 이벤트 DNS 로그 GuardDuty는 기본으로 활성화되지 않고 별도로 활성화를 시켜줘야 모니터링과 탐지를 시작한다. GuardDuty 서비스를 나타내는 객체로 감지기라는 개념이 존재한다. 이 감지기는 리전 단위의 객체로, 이 탐지기..
시나리오 개요 Exploit insecure IAM permissions to escalate your access. Start with a role that manages other users credentials and find a weakness in the setup to access the "admin" role. Using the admin role retrieve the flag from secretsmanager. 시나리오 목표 Admin role을 통해 SecretsManager에 있는 flag 탈취 시나리오 세팅 ./cloudgoat.py create iam_privesc_by_key_rotation solutions 디렉토리 내의 iam_privesc_by_key_rotation 시나..
· Cloud/AWS
이전 글에서 Bastion host를 사용하지 않고 내부 Private 서브넷의 인스턴스에 접근하는 수단인 Session Manager에 대해 알아보았다. Session Manager도 IAM을 이용해 키 페어를 관리할 필요 없이 간편하게 인스턴스 접근할 수 있도록 서비스가 제공되나, 아웃바운드 인터넷 라우팅이 없는 폐쇄망에 접근하는 경우에 엔드포인트 세팅 작업이 필요해 조금은 불편했던 점이 있었다. 추가로, Private 인스턴스로의 연결을 위해 생성하는 3개의 엔드포인트들은 각각 시간당 요금이 부과된다는 점도 마냥 간과할 수는 없는 포인트이다. 비교적 최근 AWS에서는 이러한 폐쇄된 서브넷의 인스턴스에 연결할 수 있는 EC2 Instance Connect Endpoint(이하 EIC 엔드포인트)라는 ..
Omoknooni
'분류 전체보기' 카테고리의 글 목록 (2 Page)