전체보기

AWS

boto3를 활용한 EC2 IMDS v1 취약점 점검 및 조치

0. IMDS(Instance Metadata Service) EC2 인스턴스의 메타데이터에 접근할 수 있는 서비스로 인스턴스 자체 혹은 내부에서 실행되는 애플리케이션과 AWS 또는 모니터링 도구간의 상호작용을 돕는 역할을 합니다. IMDS를 통해 다음과 같은 정보를 얻을 수 있습니다. - 인스턴스 메타데이터: 인스턴스 유형, IP 주소, 보안그룹 등 - IAM 역할 및 권한: 인스턴스에 할당된 IAM 역할 및 권한 - 보안 정보: 암호화된 볼륨 사용 여부, 키 페어 사용 여부 등 IMDS v1의 가장 큰 위험은 공격자가 EC2에 할당된 IAM 권한을 취득해 활용할 수 있다는 점입니다. 설령 IAM이 할당되어 있지 않다 하더라도 상술한 것과 같이 상당히 많은 유용한 정보를 획득하여 이를 공격에 활용할 수..

etc

Certified Kubernetes Application Developer(CKAD) 자격증 취득 후기(23.09. 시험)

1. 취득 계기 정보보호 담당자로서 쿠버네티스에 대한 지식을 쌓고 보안을 적용하기 위해 CKAD를 취득하게 되었습니다. 작년에 취득한 CKA에 이어서 쿠버네티스 3종을 모두 취득해보자는 목표도 있었구요. 2. 공부 방법 1. 강의 빛과 소금같은 유데미 강의를 열심히 들었습니다.(링크) 개념과 적절한 실습을 함께 공부할 수 있어서 도움이 많이 됐었고 해당 강의를 3회차 수강하고 블로그에 관련 내용을 정리하는 식으로 복습했습니다. 2. 실습 유데미 강의에서 제공해주는 KodeKloud의 모든 실습 문제를 2회씩 풀었고 Lightning Labs와 Mock Exams, Challenges를 각각 5번 넘게 풀어 봤습니다. CKAD 시험 등록 후 Linux Foundation에서 제공해주는 killer.sh의 ..

etc

Keycloak 구축 및 AWS SAML 연동

1. Keycloak 개념 Keycloak은 Red Hat에서 개발한 오픈소스 IAM 솔루션입니다. OAuth 2.0 및 OpenID Connect와 같은 표준 프로토콜을 기반으로 사용자 인증ㆍ인가 기능과 SSO를 제공합니다. 기업에서 사용하는 무수히 많은 서비스에 대한 인증을 개별적으로 관리하는 것은 보안담당자 뿐만 아니라 사용자로서도 무척 불편한 부분입니다. 이런 불편함을 극복하고 중앙 집중식의 통합된 사용자 관리 기능을 Keycloak를 통해 달성할 수 있습니다. Keycloak을 이해하기 위해 필요한 개념은 다음과 같습니다. Realm 애플리케이션 그룹을 "Realm"으로 정의합니다. 각 Realm은 독립된 사용자 그룹, 클라이언트 애플리케이션, 인증 및 접근 제어 설정을 가집니다. 클라이언트 애..

etc

C-TAS에서 위협 IP를 자동으로 수집해 슬랙으로 전송하기 - (4) 자동화 스크립트

0. 전체 스크립트 앞선 분석과 준비 과정을 통해 코드를 작성할 준비를 모두 마쳤습니다. 전체 코드를 본 다음에 기능별로 설명을 이어나가겠습니다. import time, os import pandas as pd from glob import glob from datetime import date from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.chrome.options import Options from slack_sdk import WebClient from slack_sdk.errors import SlackApiError chrome_options = Options() c..

etc

C-TAS에서 위협 IP를 자동으로 수집해 슬랙으로 전송하기 - (3) 크롤링 분석

0. 크롤링을 위한 사이트 분석 Selenium을 사용하기 위한 작업과 Slack bot 설정을 모두 마쳤으니 이제는 크롤링을 할 대상을 파악할 단계입니다. IP정보를 크롤링 해올 C-TAS 홈페이지는 로그인이 필요하기 때문에 먼저 로그인 페이지에 대한 분석을 먼저 시작합니다. 개발자 도구에서 확인해보니 "idPWWrap"이라는 div에서 userId와 userPassword에 각각 아이디와 패스워드를 입력받고 있습니다. request 요청에서도 주의깊게 살펴볼 부분은 없어보이기 때문에 간단한 파이썬 코드를 작성해 로그인 테스트를 해봅니다. 1. 로그인 테스트 다음과 같은 파이썬 코드를 실행하면 안타깝게도 유효하지 않은 접근으로 차단이 되는 것을 확인할 수 있습니다. import requests from..

etc

C-TAS에서 위협 IP를 자동으로 수집해 슬랙으로 전송하기 - (2) Slack bot 생성 및 권한 부여

0. Slack Bot slack-sdk를 활용해 위협 IP를 슬랙 메세지로 발송하기 위해서는 파이썬의 요청을 수행하기 위한 전용 bot이 필요합니다. 이를 위해 Slack API 홈페이지에서 bot을 생성하고 적절한 권한을 부여해야 합니다. 1. Slack Bot 생성 Slack API 홈페이지에서 "Create an app"을 클릭하고, 곧바로 뜨는 팝업창에서 "From scratch"를 클릭합니다. 뒤이어 나오는 화면에서 bot의 이름과 bot을 사용할 슬랙 워크스페이스를 지정하고 "Create App"을 클릭합니다. 참고로 bot의 이름은 언제든 수정할 수 있습니다. 이후 "Bots"을 클릭합니다. 2. Bot 권한 부여 bot 생성 후 "OAuth & Permissions" 메뉴의 "Scopes..

etc

C-TAS에서 위협 IP를 자동으로 수집해 슬랙으로 전송하기 - (1) Selenium 설치

0. Selenium Selenium은 파싱 또는 크롤링을 막기 위한 수단이 적용된 사이트에서 간단하게 스크래핑 할 수 있도록 도와주는 도구 입니다. 사용자가 정의한 행위를 WebDriver API를 사용자 대신 수행하는 일종의 웹 브라우저라고 이해하면 좋을 것 같습니다. 1. Chrome 브라우저 버전 확인 Selenium이 사용 할 브라우저의 드라이버를 다운받아야 하는데요. 이를 위해 현재 내 PC에 설치된 Chrome의 버전을 확인하고 이에 맞는 드라이버를 설치해야 합니다. 이를 위해 Chrome을 실행한 후 오른쪽 상단 점 3개 → 도움말 → Chrome 정보에서 아래와 같은 형식의 빌드 버전을 확인합니다. 111.0.* 112.0.* 113.0.* 2. Chrome 드라이버 다운로드 해당 버전에..

etc

C-TAS에서 위협 IP를 자동으로 수집해 슬랙으로 전송하기 - (0) 계기

0. 예산도 없고 귀찮지만 일은 해야지 최근에 비정상적인 서비스 접근 요청을 어떻게 처리하고 예방할지에 대한 논의를 하게 되었습니다. 전문업체를 통해 관제 서비스를 받거나 고가의 TI를 구독하면 좋겠지만 비용 측면을 고려했을 때 여러모로 효율적인 선택은 아니라는 생각이 들었습니다. 아무튼 공격으로 의심되는 IP를 비롯해 잠재적인 위협 리스크를 어떻게 사전에 감소시킬지에 대한 고민이 시작됐는데요. 이때 고민스러웠던 지점이 "위협 IP를 어디서 수집하고" "차단을 적용할 DevOps팀에 어떻게 공유할지"였습니다. KISA에서 운영하는 위협정보공유 서비스인 C-TAS를 알고 있었기에 첫 번째 고민은 바로 해결했지만, 두 번째가 여전히 고민이었습니다. 자칫하면 매일 아침 C-TAS에 접속해서 위협 IP가 기록된..

Compliance

23.9.15. 시행 개인정보 보호법 개정 검토

0. 들어가며 21년 1월에 입법예고 되었던 개인정보 보호법(이하 "개보법") 전면 개정안이 올해 3.7.에 국무회의에서 의결되어 3.14.에 공포되었습니다. 입법예고부터 의결까지 2년 여가 걸린 개정안은 오는 9.15.부터 본격적인 시행을 앞두고 있습니다. 정보보호 담당자로서 실무적으로 어떤 변경사항이 있는지 짚어보기 위해 관련 내용을 확인해 보았습니다. 1. 개정안 요약 전면 개정이라는 표현에서 보듯이 많은 부분이 바뀌었는데요. 개정법 전문은 국가법령정보센터에서 확인할 수 있습니다. 개인적으로 개정법 중 실무자 입장에서 주목할 부분은 다음 5가지라고 생각이 됩니다. 개인정보 전송요구권 신설 온·오프라인 규제 일원화 개인정보 처리방침 평가제 도입 국외이전 요건 다양화 및 중지명령권 신설 과징금·벌칙 규..

etc

Windows10 WSL2 환경에 minikube 구축하기

0. minikube란? Minikube는 개발자가 로컬 머신에 Kubernetes 클러스터를 설정할 수 있는 오픈 소스 도구로서, 손쉽게 K8s를 구축할 수 있도록 지원하는 플랫폼입니다. Minikube를 사용하면 개발자가 본격적인 프로덕션 환경을 설정할 필요 없이 로컬에서 Kubernetes를 구축 및 운영할 수 있어서 테스트 및 스터디에 적합합니다. 또한 클라우드 또는 매니지드 환경에 구축할 필요 없이 로컬에 구성이 가능하므로 비용적인 부담이 발생하지 않습니다. Minikube 유사한 도구로는 K3s, K6s 등이 존재합니다. 1. WSL2 설치 1. 설치를 진행하기에 앞서 해당 글을 참고하여 WSL2 환경을 구성합니다. 2. 도커 설치 1. 공식 홈페이지를 통해 도커 데스크탑을 설치합니다. 2. ..

MR. ZERO
'분류 전체보기' 카테고리의 글 목록 (3 Page)