Kubernetes 배포를 위한 클라우드 환경 구축
·
project/resistance
resistance 게임 프로젝트의 MSA 서버도 k8s 환경에서 배포하고자 한다.​내가 개발한 서비스를 실제 운영 환경에서 직접 관리하고 유지보수할 능력은 있어야 한다고 생각했기에, kubernetes에 대해 공부해봤다.​정확한 기간은 가격 정책 모니터링을 해야 알겠지만 목표는 일단 일주일동안 풀가동해서 모니터링하고 분석해보기​​​Terraform을 이용한 EKS 리소스 설치IaC(Infrastructure as Code)는 말 그대로 개발자들에게 친숙한 코드로 Infrastructure를 다루겠다는 소리다.​수동적인 프로세스로 관리하던 시스템과 인프라를 소프트웨어 개발과 유사한 방식으로 정의해서 쉽게 관리할 수 있다.이 IaC의 도구로, Terraform이 가장 널리 사용되고 있고 Terraform ..
웹서버 마이그레이션, MSA 설계하기
·
project/resistance
기존의 Flask로 간단하게 구현한 프로토타입 백엔드는 Http 통신으로 계정과 게임 데이터를 불러오거나, 환율 혹은 공지사항, 이벤트 등의 실시간 변동 사항을 적용하는 시스템을 구현했었다.그러나 점점 볼륨이 커지니까 관리하기가 어려웠고, 공부중인 기술과 아키텍처의 경험도 얻을 겸 MSA로 마이그레이션을 시도했다. k8s로 인기를 얻게된 MSA는 굉장히 어렵고 복잡한 구조로 이해하기 위한 제반 지식이 필요하지만, 나의 경험을 녹아내기 위해 필요한 개념들만 간략하게 소개하면서 진행하겠다.​​MSA(Mircro Service Architecture)란?https://kr.tmaxsoft.com/info/storyTView.do?seq=345작고, 독립적으로 배포가 가능한 각각의 기능을 수행하는 서비스(mir..
환율 변동과 환전 시스템 구현 (Redis 캐싱으로 성능 개선)
·
project/resistance
새로 추가한 시스템은 환율 시스템​게임중에 얻는 리소스 아이템중에 뭐 청나라에서 유입된 마재은이나 달러, 파운드화를 환전하는 시스템을 구현했음.​은전을 사용하면 사라지면서 폭죽과 함께 이쁘게 얼마 환전했는지 알려줌. 근데 웹서버가 닫혀있는 상태면 환전 자체가 되지 않음...​위 사진은 웹서버에서의 관리자 페이지. 실시간으로 환율을 통제하고 확인함ㅇㅇ 각 재화마다 다른 변동비를 가지고 있으며 정각을 기준으로 매일마다 크거나 작게 변동이 생김.​실시간으로 화폐 환율을 볼 수 있는 패널을 제공해서 보고 비싼 녀석 팔 수 있도록 의도했슴컴맹이라 이쁜 이펙트랑 이런거 스샷 못찍어서 그냥 로그창 보여주는걸로 만족ㅠㅠㅠ​​나중에는 은화를 불법으로 찍어내는 등 근대경제사에 있어서 흥미로운 조선의 혐성질에 대해서 이야기..
2024 사이버 시큐리티 해커톤 수상 회고
·
project/SIEMple
9월 10일부터 12일까지 벡스코에서 열린 사이버 시큐리티 해커톤에 참가했다. 서류 심사로 예선 보고 30팀을 골라서 본선에 진출하는데, 벡스코 별관 3층에서 갇혔다.​자유 주제와 선택 주제로 참가 단위를 골라야하는데, 우리는 KUCIS 프로젝트로 준비하던 클라우드 SIEM 솔루션, 심플(SIEMple)을 그대로 들고 자유로 참가했다.​클라우드 상에서 배포되는 서비스에 대해서 웹, 클라우드 기반 보안 취약점을 검출하거나, 로그 데이터를 모니터링하면서 원하는 필드로 검색해 시각화하는 보안 제품이다.​권장사항으로 AWS WAF와 함께 사용했을때 시너지를 낼 수 있도록 추가적인 플러그인을 제공하고 있어서 직접 검출할 수 있는 취약점 수가 아직 적은 단점을 보완하고자 했음.​​​행사장 안에서 입을 티셔츠도 사전..
취약점 검출의 구현 프로세스와 가용성 유지를 위한 시도
·
project/SIEMple
일찍이 시원 포럼 세미나에 참가해서 기업의 보안 체계와 대응은 Splunk 에서 책임진다고 들었다. 이거간다고 버스타고 난리났다.1번빠따구리 ​Splunk는 ELK 역할을 같이 수행한다는 점에서 우리의 보안 솔루션의 상위 호환(...)이라는 느낌을 받았다. 하지만 굉장한 비용때문에 체급 있는 기업에서만 쓰이고 있다고 한다. ​그렇다면 무거운 비용을 감당할 수 없는 기업들을 대상으로 하는 수요가 많지 않을까.​​클라우드상의 웹서비스 취약점 검출 로직간단하게 SQL Injection 취약점에 대해서 소개하고, 제품에서 어떻게 검출하도록 하는지 프로세스를 소개하겠다. ​SQL prepared statement와 statement의 차이점SQL문장을 미리 컴파일하고 실행 시간동안 인수 값을 위한 공간을 확보할 ..
으악 OpenSearch 비용이 왜이래
·
project/SIEMple
솔루션의 이름은 심플(SIEMple)로 정해졌다. 클라우드 상에서 배포되는 서비스들에 대하여 더 쉽고 편리하게 이용할 수 있는 클라우드 SIEM 솔루션이라는 의미   3일에 11만 4천원..ㅋㅋㅋㅋㅋ 생각해둔 예산의 1/3을 날려먹었다. ​OpenSearch 도메인에 들어가서 비용 부분을 아예 제했다. 클러스터 구성 편집에 들어가서, HA는 옆집 강아지 뽀삐 영양간식으로 줘버리고 대기 없는 도메인을 선택했다.​가용 영역 1-AZ를 선택하고, 인스턴스 유형도 프리티어로 제공되는 t3.small.searh로 구성했다.아, 참고로 전용 프라이머리 노드 활성화에 따로 비용이 든다. EBS는 노드당 10GiB로 해두자.​결코 더이상의 비용을 용납하지 않겠다​https://aws.amazon.com/ko/opens..
Global Region 의심 이벤트 수집과 OpenSearch 설정
·
project/SIEMple
개발팀의 초기 목표는 우선 Global Region에 대한 의심 이벤트를 수집하는 필터 구현과 WAF의 보안 이벤트를 검출하는 것이다. 그를 위해서 CloudTrail에서의 이벤트 로그를 Cloudwatch로 보내고, 얘를 OpenSearch Service로 수집하는 과정이 선행되어야 한다. ​ 도메인 영역에서 액세스 정책을 수정하고, 보안 설정을 위해서 도메인 수준 액세스 정책을 구성해야한다. IAM > 보안 자격 증명 > 내 보안 자격 증명 들어가면 사용자 ARN 있음​ 오류 : not authorized to perform: iam:CreateServiceLinkedRole (해결)indices.query.bool.max_clause_count is not a valid query count val..
2024년도 KUCIS 프로젝트 - 클라우드 SIEM 솔루션
·
project/SIEMple
학과 동아리에서 2024 대학정보보호동아리(KUCIS)에 선정되었고, 클라우드 보안 솔루션으로 프로젝트를 준비하고 있다.​특히나 고객층으로 생각하는 타겟은 학부생 혹은 소규모 스타트업 서비스 기업들 현실적인 이유로 보안 측면을 고려하기 어려운 사람들에게 쉽게 적용할 수 있는 클라우드 상의 보안 솔루션이 있다면 충분히 수요가 있다고 판단했다.​SIEM(Security Information and Event Management)이란?SIEM(Security Information and Event Management)은 소프트웨어 전체 범위에서 로그를 수집, 저장 및 분석한다. 종합적인 보안 보고 및 규제 준수 관리와 함께 신속한 공격 탐지, 차단 및 대응을 위해서 보안 위협을 실시간으로 모니터링하는 소프트웨..
마녀의 탑 출시
·
project/Witch's Tower
홍보나 광고같은 퍼블리싱쪽 알아보느라 내부 테스트를 먼저 거치고 업데이트를 조금 진행했었다. ​기술적으로 어려울 것도 없었고, 한달 남짓한 휴가 기간중에 출시까지 해봤다는 의의로 남겨뒀다. ​ 마녀의 탑 - Witch's Tower서비스 출시까지의 개발 프로세스를 경험하기 위해 군 휴가중 개발한 게임 프로젝트프로젝트명 : 마녀의 탑장르 : 액션엔진 : Unity3d​ 구현한 내용로그라이크 게임 플레이Google Admob 리워드형 광고 기능사용되는 게임 데이터는 기기 내에 저장​PlayStore 링크 - 우선 난 아이폰이라 못한다https://play.google.com/store/apps/details?id=com.nams.witchsTower 구글 정책 변경으로 개발자 업데이트를 진행해야했는데, 안해..
Unity에서 Google Admob 빌드 오류와 해결 방법 모음
·
project/Witch's Tower
23.1.29 갑자기 앱스토어 출시가 하고싶어서 프로젝트를 시작함. 애드몹 최신 버전으로 별 어려움 없이 잘 진행하다가 빌드시 오류가 나옴.​1. 처음에는 unity ID 가 등록 안돼서 나온 오류. Services -> General Setting 에서 Project ID를 reLink하거나, 등록해줘야함.​2. 애드몹 설치 후 빌드시 오류. java.lang.UnsupportedOperationException: This feature requires ASM7 구글 공식 깃허브 커뮤니티에서는 Gradle을 다시 깔라는데.. 프로그램 재설치같은 부분 정말 싫어함. Gradle은 빌드 자동화 시스템인데 유니티에 기본 내장되어 있다고 함.​https://gradle.org/releases/ Gradle |..