이론 설명
1. 인공지능과 데이터
- 코드, 런타임, 빌드, 배포, 테스트: 코드 자체에 대한 보안, DevOps, CI/CD, Container, MSA 보안 → CNAPP
- CNAPP: Cloud Native Application Protection Platform
2. 클라우드의 용어적 개념
① 테넌트: 공간, 격리된 가상 환경(마이크로 세그맨테이션) → 제로 트러스트, MSA 보안, API 보안의 핵심 개념
② 리소스: CPU/GPU/NPU, Disk(HDD, SSD) Memory(RAM, 하드 디스크), Network, 성능(초 당 처리 속도, 대역폭, 응답 속도) 지정
③ 인스턴스: 리소스의 집합(Pause, Closed → Running), 서버/스토리지/DB
④ 워크로드: 인스턴스의 집합(업무 시스템 단위)
→ 워크로드 기반의 취약점 진단, 워크로드 기반의 인프라 설계(아키텍처), 워크 로드 기반의 보안 자동화(CSPM)
- CSPM : Cloud Security Posture(상태) Management (보안 상태, 보안 태세 점검)
- ELK STACK : Beats → Kafka/RabbitMQ/Redis → Logstash → ElasticSearch → Kibana
3. 데이터
원래는 정형 데이터만 다루었으나 요즘에는 비정형/반정형 데이터도 많이 다루는 편
정형 데이터 중심의 정보보호 → 정형/비정형/반정형 중심의 정보보호로 확대
1) 정형 데이터
- 프로그래밍이 읽을 수 있으며 구조화, 표준화 된 데이터 (ex. Excel, DB)
- 정형데이터 보안: 레거시(Legacy) 보안 → 암호화, 접근 통제, 침입 탐지/차단, 취약점 진단, 보안 운영 등 → DBMS, 파일 스토리지, 공유 폴더에 저장
2) 비정형 데이터
- 프로그램이 읽을 수 없으며 비구조화, 비표준화된 데이터 (ex. 이미지, 영상, 음성)
- 읽을 수 있도록 가공해야 함 (=정형화)
- 비정형 데이터 보안: 저장 공간 변화됨(DB → Datawarehouse, DataLake, Datamart/DataCatalog, DataMesh), 빅데이터(Redis, Memcached, NoSQL, ELK, Snowflake), 분산 병렬 컴퓨팅 (데이터가 크므로, HaDoop, MapReduce, Apache, SPARK), Kafka, RabbitMQ, 엄청난 스토리지 비용 (확장성 예측 X) → 이론적으로 저장공간이 무한함(클라우드), API 보안
3) 반정형 데이터
- 일부는 읽고, 일부는 읽을 수 없는 데이터 (스키마, 데이터)(ex. 도면, API(JSON, XML), Log, GPS)
- 가공 필요 → 필터링, Pars(파싱), 누락, N/A, 공란, 중복, 이상치, 결측치, 표준화, 압축, 분할, 규제 준수(마스킹, 가명)
Focus. 정보, 데이터
4. 데이터 라벨링
품질, 성능, 컨텐츠 분석, 신뢰(책임 추적성), 책임(PKI) 확보 가능
- Metadata: 데이터 속성, 경로, 키워드, 품질, 성능, 데이터를 설명하는 데이터
- 데이터의 활용도를 높이기 위해, 학습 데이터 품질 관리를 위해, 보안 관리 목적을 할당하기 위해
- 인공지능 학습, 검증, 품질, 성능 -> 학습 데이터 품질 관리가 필요함
- Object Storage 사용: 파일/블록 스토리지 -> Object Metadata Custom(객체 수준, 보안 등급, 개인정보 포함 유므, 신용정보 해당 등)
** 최근 망분리 완화: 네트워크(도메인) 기반 망분리 -> 데이터 중심의 망분리 (MS 민감도 레이블을 이용하여 데이터 기반 분리가 가능)
Q&A
Q1. 해킹과 정보보호의 차이
1) 해킹
SW, HW, IP, 자원 등 모든 소프트웨어의 취약점을 통해
1) 의도하지 않은 동작을 유발하는 행위
2) 본인의 인증 권한을 escalation 하는 행위 (온라인, 오프라인을 구분하지 않음)
2) 정보보호
Process, 법적으로 보증됨
정보보호에 대한 효력을 인정받기 위해서는 PDCA, 지속 가능성 → 문서 승인, 사진 스냅샷 캡쳐, 음성 녹취 등 해야 함
Q2. 개인(오픈) vs 조직(상용)
보안에서 반드시 상용 SW/HW/어플라이언스를 사용해야 할까?
- 장비(솔루션, 제품): 1대, 1개(라이센스, 유지보수, 소프트웨어 포함된 전용 X)
- 어플라이언스(Applicance): 1식 (라이센서, 유지보수, 소프트웨어 포함된 전용 장비 O)
- 개인용은 조직적 성격이 결여되어 있음 → ex. 계정 관리, 중앙집중적 통제, Guest 차단, 권한 통제, 감사(Audit) 로깅, SSO 연동, 로그 보존년한 설정, 고정IP 접근 통제, 원격 유지보수, 조직도 연결, 승인(1차, 2차, 위임, 대결 등) 연동, 관리자(Admin) 페이지
인하우스 개발: 회사가 보유하고 있는 개발자를 통해서 개발
- C: 하드웨어 의존성, 로우, 컴파일 성능 저하
- C++, C#: 보안 개발자 (악성코드 엔진, 엔드포인트 보안 에이전트, 하드웨어 커널 데이터 핸들링 시, 메모리 악성코드), 커널에 대한 이해도를 높게 봄
- Java: 웹 개발, 하이, 컴파일, 전자 정부 프레임워크(공공)
- JavaScript, Node.js: 웹 개발, 컴파일 최소화, 프론트엔드, 서버리스, 확장 프로그램 3-Party
- Python: 보안, 모의 해킹, 취약점 진단, 인공지능, 머신러닝, 스크립트, 배치(Batch), 라이브러리
→ 영역에 따라 공부해야 할 언어도 달라짐
Q3. 해외(성능) vs 국내(인증)
- 암호 알고리즘 선택 시에는 New vs Lagacy 중 Lagacy를 선택해야 함
- 대한민국의 규제(사전규제, 규제/법 → 산업) vs 해외의 보안규제(사후규제, 산업발전 → 피해보상)
기타 사전 질문
Q1. 정보보호 학습 시 미리 보면 좋은 것들
- 정보보안 제품, 정보보호 통제 효과성, 정보보호 운영 방안
- 가이드, 안내서, 해설서, 메뉴얼, 기술 브로셔, 홈페이지 방문, 보안 뉴스 저널, 해킹 사고 결과 보고서, 과징금/과태료 부과 결과서 →
경력 없으면 읽을 것
- 법: 개인정보보호법, 정보통신망법, 신용정보법, 데이터산업진흥법, 위치정보법, 클라우드컴퓨팅법, 인공지능법, 전자금융거래법, 전자서명법, 전자문서법, 정부화기본법, 국가정보원법(하위 고시, 시행령, 시행규칙, 안내서, 해설) 등 → 도입된 법적 근거를 들어 설명할 수 있어야 함
Q2. AI가 보안에 어떻게 사용되는지
- 오감에 데이터, 데이터 라벨링(Metadata, Annotation)
- 머신러닝: 사람에 의해 학습, 라벨링, 알고리즘 선정 -> 학습, 데이터 통계 정확도 높음
데이터 풍부, 라벨링 O, 알고리즘 -> 악성코드 분석(패턴), IoCs
** IoCs: Idicator Of Compromise(공격 취약점, 위협 지표): Snort, YARA, Rule Sets
- 딥러닝: AI가 자가 학습, 기계 라벨링된 예측, 스스로 알고리즘 선정, 인공 신경망의 의존도가 큼 -> 통계 불분명
데이터 제한, 통계/확률 유의미한 발견, 제로데이 -> 무자각 인증, 구글 로그인, 캡쳐
토론 내용
1. 오전 토론
클라이언트 | 네트워크 | 서버(시스템) | 애플리케이션 | DB(데이터) | 클라우드에 대한 대표적인 보안 솔루션 3가지씩 찾아보고 발표
인프라보안
- 클라이언트 보안: 엔드포인트 → OS가 달린 모든 것들 (ex. PC, 복합기, 컨베이어벨트, 드론, 키오스크, 노트북, 자동차, 냉장고, 세탁기)
- 설치, 연결, 탐지, 모니터링 → 클라이언트 보안에 해당
- 네트워크 보안: 홈 네트워크(도어락, 월패드), AP(wifi), 랜선, 광 케이블, 해저 케이블, 저궤도 위성 통신망, GPS, 등대 통신 채널, 자율 주행 자동차 V2X 등
- 송수신, DNS, IP, Port, 패킷 → 네트워크 보안에 해당
- 애플리케이션 보안: 웹(웹앱, 모바일 웹), 앱(네이티브 앱, 클라우드 네이티브 앱, 반응형 앱) → 개발 플랫폼, 개발 언어, 개발 환경 의존성(Dependancy)이 있음
- 개발과 의존성이 크다보니 개발 보안, 시큐어 코딩이라고도 부름
- 코드, 런타임, 빌드 환경, 테스트, QA, 샌드박싱, 스테이징 단계 별 보안, 웹/앱 취약점, LLM 취약점, API 취약점
- 시스템 보안: OS(PC, 서버, 모바일, IoT, Custom), OS 특징 별 설정(Hardening)(운영체제 설정, 계정, 그룹, 암호화, 접근 통제 등)
- 데이터베이스 보안: RDB, NoSQL(Key Value, Store, Graph, Document 등), DBMS 보안 (DB와 Storage는 조금씩 다름)
- 보존 기한, 규제 준수
- 개인정보보호법, 법적인 이슈가 중요함
- 암호화(암호키 관리)
- 클라우드 보안: 퍼블릭, 프라이빗으로 나뉨
- 클라우드 컴퓨팅 보안, 클라우드 컴퓨팅 서비스 보안도 다름 -> 컴퓨팅은 프라이빗, 컴퓨팅 서비스(돈 주고 쓰며, 타인에게 제공)는 퍼블릭
→ 위의 요소들을 보고 어디에 뭐가 해당되는지 말할 수 있으면 좋을 듯함
🔗 참고
https://www.itscc.kr/main/mainKo.do
https://www.ksecurity.or.kr/user/bbs/kisis/85/512/bbsDataList.do
2. 오후 토론
OWASP API Security Top10 2023에 대해 조사하고, 본인이 이해할 수 있는 수준에서 가장 쉽게 설명 (+몰랐던 단어도 함께 작성)
새롭게 알게된 단어
-
SSRF: 서버에서 위조된 HTTP 요청을 발생시켜서 접근이 제한된 서버 내부 자원에 접근하여 외부로 데이터를 유출하거나 오동작을 유발하는 공격
ㄴ> 위조 HTTP 요청을 이용한 공격이라 CSRF와 유사하나, 공격자의 공격이 시작되는 지점이 서버 측인지, 클라이언트 측인지에 따라 형태가 구분됨
ㄴ> SSRF는 접근이 제한된 내부 환경에 추가적인 공격이 가능하므로 공격의 영향도가 더욱 높음
-
서드파티(Third Party)
하드웨어 개발자와 소프트웨어 개발자의 관계를 나타낼 때 주로 사용하며, 프로그래밍을 도와주는 라이브러리나 도구를 제공하는 외부 생산자(회사or개인)를 의미함
ㄴ> 중간다리 역할을 하며 개발자가 특정 기능을 구현하는데 필요한 자원이나 솔루션을 제공하는 것
-
객체 수준 권한(BOLA)
사용자가 자신에게 허용된 객체, 속성에 대해서만 접근하거나 수정할 있어야 하는데, 다른 사용자의 자원에도 접근하거나 수정할 수 있는 것을 의미
🔗 참고
https://www.lgcns.com/blog/cns-tech/security/54998/
참고자료
🔗 정보보호산업진흥포털 | 정보보호 제품 인증
https://www.ksecurity.or.kr/user/bbs/kisis/85/512/bbsDataList.do
🔗 IT보안인증사무국
https://www.itscc.kr/main/mainKo.do