본문으로 건너뛰기

Full Stack JavaScript Developer | Half-time Open Sourcerer.

View All Authors

OWASP 2021 TOP 10

· 약 3분

OWASP 개요

  • Open Web Application Security Project
  • 소프트웨어의 보안 취약점을 분석하고 연구하는 비영리 단체

OWASP 2021 Top 10 취약점

1. 접근 권한 취약점

  • Broken Access Control
  • 사용자가 권한을 벗어나 행동할 수 없도록 정책 시행
  • 취약한 경우 모든 데이터를 무단으로 열람, 수정, 삭제 가능

2. 암호화 오류

  • Cryptographic Failures
  • 적절한 암호화가 없을시 민감 데이터 노출 가능

3. 인젝션

  • Injection
  • SQL, NoSQL, ORM, LDAP의 인젝션 취약점
  • 사용자 제공 데이터 조작을 위한 공격, XSS 포함

4. 안전하지 않은 설계

  • Insecure Design
  • 설계 단계에서 발생하는 보안 결함
  • 요구사항 및 리소스 관리, 보안 설계, 보안 개발 생명 주기

5. 보안 설정 오류

  • Security Misconfiguration
  • 어플리케이션 보안 설정이 누락되거나 클라우드 서비스 권한이 잘못된 경우

6. 취약하고 오래된 컴포넌트

  • Vulnerable and Outdated Components
  • 취약한 어플리케이션, 라이브러리, 프레임워크 등의 보안 위협

7. 식별 및 인증 오류

  • Identification and Authentication Failures
  • 취약한 인증에서 식별까지 포함된 보안 결함
  • 사용자 신원확인, 인증, 세션관리 취약점

8. 소프트웨어 및 데이터 무결성 오류

  • Software and Data Integrity Failures
  • 안전하지 않은 역직렬화가 병합된 항목으로, 어플리케이션이 신뢰할 수 없는 소스, 저장소, 라이브러리, 모듈에 의존하는 경우 발생

9. 보안 로깅 및 모니터링 오류

  • Security Logging and Monitoring Failures
  • 로깅으로 공격 발생 감지 및 대응까지 포함

10. 서버 측 요청 위조

  • Server-Side Request Forgery
  • 어플리케이션이 사용자 제공 URL의 유효성을 검사하지 않고 원격 리소스를 가져올 때 발생

참조

블로그 댓글 기능 비교

· 약 2분

개요

  • 데이터베이스가 필요 없으면서 블로그에 무료로 댓글을 붙힐 수 있는 기능이 필요했다.
  • Hexo 블로그 시스템에서는 Disqus를 사용했었지만, 형편없는 어드민 UX와 많은 트레킹 스크립트로 Gitalk 로 이사를 왔다.
  • Gitalk는 생각보다 괜찮았다. 하지만 Docusaurus 기반 블로그로 이전하게 되면서 문제가 발생했다.
    • 트리쉐이킹 없는 모듈을 호출해야했고, document.title 을 가지고오는 로직이 꼬이는지 가끔 댓글 타이틀을 잘못 가지고 왔다.
  • Docsly는 원하는 위치에 댓글을 다는 게 재밌어보였다.
    • 플로팅 푸터로 가운데에 댓글을 쓰는 기능이 들어간다. 그런데 powered by docsly 워터마크가 꽤 크게 노출되어 블로그가 docsly로 운영되는 듯한 느낌을 준다.
  • Giscus는 Github discussion 기반으로 코멘트를 남기는데 모든 기능을 다 만족했다.

기능 비교

구분DisqusGitalkDocslyGiscus
오픈소스OXO
업데이트지원~2022~20212024~2024~
리액트지원△ (Class)△ (Class)OO
데이터저장ClosedIssuesClosedDiscussions
워터마킹OXOX

결론

가치사슬

· 약 3분

가치사슬 개념

  • 고객에게 가치를 제공함에 있어 마진을 극대화하기 위한 일련의 활동, 기능, 프로세스
  • 경쟁 우위 확보, 비용 절감, 프로세스 개선, 전략적 의사결정 지원, 고객 가치 증대, 기술 혁신 도입

가치사슬의 구성도, 구성요소, 분석 절차

가치사슬 구성도

value-chain

가치사슬 구성요소

구분활동내용
주요활동생산활동원재료를 제품으로 변환하는 과정
-물류활동원재료, 자재 수급, 저장, 제품, 고객 전달 과정
-고객관리제품 마케팅, 판매, 고객 지원
지원활동기업 인프라회사 전반 경영, 재무, 법무 등
-인적자원 관리직원 채용, 교육, 보상 등
-연구 개발제품과 프로세스 연구 및 지속적 개선
-조달자재와 서비스의 구매
  • 전체 가치사슬 내 자산관리를 위해 ERP 활용

가치사슬 분석 절차

ERP, SCM, MES, CRM 비교

구분ERPMESSCMCRM
목적전사지원생산관리물류/공급망관리고객관리
대상전사활동공정유통고객
활동전사자원통합통합 생산공급망 최적화마케팅, 서비스
가치사슬주요+보조주요주요주요
신기술DX디지털트윈빅데이터O2O

가치사슬 추가적인 고려사항

  • 최신 기술동향 파악하여 가치사슬에 통합하여 기업 경쟁력 및 효율성 강화

참조

ISMS-P

· 약 3분

ISMS-P 개요

ISMS-P 개념

  • 정보보호 및 개인정보보호를 위한 일련의 조치와 활동이 인증기준에 적합한지 인증하는 제도

ISMS-P 법적 근거

  • 정보통신망법 제 47조
  • 개인정보 보호법 제 32조 2

ISMS-P 인증 체계 및 기준

ISMS-P 인증 체계

  • 정책기관: 과기정통부, 개인정보보호위원회
  • 인증기관: 한국인터넷진흥원(KISA), 금융보안원(FSI)
  • 심사기관: 한국정보통신진흥협회(KAIT), 한국정보통신기술협회(TTA), 개인정보보호협회(OPA), 차세대정보보안인증원(NISC)

ISMS-P 인증 기준

1. 관리체계 수립 및 운영

  • 관리체계 기반마련
  • 위험관리
  • 관리체계 점검 및 개선
  • 관리체계 운영

2. 보호대책 요구사항

  • 정책, 조직, 자산관리
  • 인적보안
  • 외부자보안
  • 물리보안
  • 인증 및 권한관리
  • 접근통제
  • 암호화
  • 정보시스템 도입 및 개발 보안
  • 시스템 및 서비스 운영 관리
  • 시스템 및 서비스 보안 관리
  • 사고 예방 및 대응
  • 재해복구

3. 개인정보 처리단계별 요구사항

  • 개인정보 수집 시 보호 조치
  • 개인정보 보유 및 이용 시 보호조치
  • 개인정보 제공 시 보호조치
  • 개인정보 파기 시 보호조치
  • 정보주체 권리 보호

고려사항

  • 매출 300억 이하 중소기업, 매출 300억 이상 중요 통신인프라가 없는 중견기업의 경우 간소화 인증으로 인증 비용 40% 절감 가능

참조

가트너 10대 전략 기술 트렌드 2024

· 약 5분

가트너 10대 전략기술 개요

트리즘, 위협관리, 지속가능 기술 플랫폼엔지니어링, AI증강개발, 산업클라우드 지능형앱, 생성형AI 보편화, 증강-연결인력 기계고객

가트너 10대 전략기술 구성

구분내용비고
빌더의 부상AI 기술로 빌더의 성장과 가치 고도화플랫폼 엔지니어링, AI 증강 개발, 산업 클라우드 플랫폼 등
투자보호AI 기술로 투자자 보호AI 신뢰 리스크 보안 관리, 상시 위협 노출 관리
가치 전달지능형 자동화로 고객 가치 전달기계 고객, 증강 연결 인력

가트너 10대 전략기술 상세

1. AI TRiSM

  • AI Trust, Risk and Security Management
  • AI 모델 거버넌스, 신뢰성, 공정성, 견고성, 효능 및 데이터 보호 정책과 도구들을 준비한 상태에서 운영

2. 지속적인 위협 노출 관리

  • CTEM: Continuous Threat Exposure Management
  • 기업의 보안 위협을 지속적으로 평가하고 관리
  • 선제적 정보보안 대책

3. 지속가능한 기술

  • Sustainable Technology
  • ESG, 생태 균형, 인권 존중
  • 재생에너지, 추적성, 효율성

4. 플랫폼 엔지니어링

  • Platform Engineering
  • SW 제공, 수명주기 관리 위한 내부고객용 플랫폼 구축 및 운영

5. AI 증강 개발

  • AI-Augmented Development
  • 개발, 테스트시 생셩형 AI, 머신러닝과 같은 AI 적용 개발 도구 활용

6. 산업 클라우드 플랫폼

  • ICP: Industry Cloud Platform
  • 특정 산업 분야에 맞춤형 솔루션을 제공하는 전문 클라우드 플랫폼

7. 지능형 애플리케이션

  • Intelligent applications
  • AI를 기반으로 사람과 기계에 자율적으로 반응할 수 있는 프로그램

8. 보편화된 생성형 AI

  • Democratized Generative AI
  • 사전 학습모델, 클라우드 컴퓨팅, 오픈소스의 결합으로 생성형 AI가 보편화되면서 전 세계 사람들이 모델에 접근 가능

9. 증강-연결된 인력

  • Augmented-Connected Workforce
  • 회사로부터 디지털 도구로 모니터링 및 업무를 하는 노동자

10. 기계 고객

  • Machine Customers, Custobot
  • 기계가 인간을 대신해서 자율적으로 제품이나 서비스 주문 및 결제

AI TRiSM

1-1. 설명 가능성, 모델 모니터링

  • xAI, Explainability / Model Monitoring
  • AI 알고리즘의 설명 가능성 확보하고 신뢰할 수 있게 하는 것
  • AI 모델 성능 모니터링으로 프로세스 효율적 개선 가능

1-2. 모델옵스

  • ModelOps
  • AI 모델의 재조정, 재학습, 재구축 지원
  • AI 기반 시스템 개발, 운영, 유지보수의 무중단 프로세스
  • AI 거버넌스와 라이프사이클 관리

1-3. AI 어플리케이션 보안

  • AI Application Security
  • AI 적대적 공격 방어 및 위협 탐지, 안정적 프로세스 보장

1-4. 개인정보보호

  • Privacy
  • 데이터 보호, GDPR 준수
  • 개인정보 비식별화를 넘어 합성 데이터, 허위 데이터 사용

참조

개인정보 보호법 2차 시행령 개정사항

· 약 4분

법적 근거

개인정보 보호법 및 시행령 2차 개정사항 안내서 및 현장설명회 자료

주요 변경사항

보호수준평가, CPO 자격요건, 손해배상책임 대상, 국외 개인정보 처리방침

구분기존내용변경내용
공공기관 개인정보 보호수준 평가진단 결과의 법적 근거 미비, 평가 절차와 대상 선정 기준 부재평가 절차와 기준 명확화, 법적 근거 신설, 결과 공개 및 연간 평가 실시
개인정보 보호책임자 제도 개선CPO 자격 요건과 협의회 부재CPO 자격 요건 강화, CPO 협의회 신설로 협력 강화
완전자동화 결정에 대한 정보주체의 권리AI 결정에 대한 정보주체 권리 미규정AI 결정에 대해 설명 요구 및 권리 거부 가능 근거 마련
손해배상책임 보장 의무대상 확대손해배상책임 이행 의무 대상 제한적의무 대상을 모든 개인정보처리자로 확대, 매출액 및 보유량 기준 정비
고유식별정보의 관리실태 정기조사불규칙적 조사로 관리 미흡관리실태 정기조사 주기 3년으로 명확화, 관리 강화
국외 수집·이전 개인정보 처리방침 공개국외 이전 개인정보 처리방침 비공개국외에서 수집하거나 이전하는 개인정보 처리방침 공개 의무화

CPO

실무4년, 박사2년, 개인정보 거버넌스

구분기존 요건개정 요건
자격 요건명확히 정의되지 않음개인정보보호, 정보보호, 정보기술 경력 합쳐 총 4년 이상,
개인정보보호 경력은 최소 2년 이상 필요
학위 인정학위 취득에 따른 경력 인정 규정 없음- 박사학위: 개인정보보호 경력 2년 인정
- 석사학위: 개인정보보호 경력 1년 인정
- 학사학위: 개인정보보호 경력 6개월 인정
업무 범위일반적인 개인정보 보호 업무- 개인정보 보호 계획 수립 및 시행
- 개인정보 처리 실태 조사 및 개선
- 불만 처리 및 피해 구제
- 내부 통제 시스템 구축
- 개인정보 보호 교육 계획 수립 및 시행
독립성 보장독립성 보장에 대한 명확한 규정 없음개인정보처리자는 CPO가 업무를 독립적으로 수행할 수 있도록 지원, 업무 수행 중 불이익 주지 않아야 함

요구 공학

· 약 2분

스텝

https://ieeexplore.ieee.org/document/1605174

  1. Mission & Scope: 미션과 스코프 식별
  2. Stakeholders: 이해관계자 실별
  3. Goals: 목표 식별
  4. Goal Conflicts: 상이한 이해관게자 간의 목표 절충
  5. Scenarios: 요구사항을 시나리오 형태로 기술
  6. Shall Statement: 해야한다 형태로 기술
  7. Justification: 특정 기능이 포함되어야 하는 이유를 정확히 설명
  8. Assumptions: 비기능 요구사항과 각종 제약사항 분석
  9. Agreed Priorities: 핵심 기능과 기타 요구사항 분리
  10. Acceptance Criteria: 요구사항이 제대로 구현되었는지를 판단하는 기준 정의

위험요인

  • Overlooking a crucial requirements
  • Inadequate Customer representation
  • Modeling only functional requirements: 비기능 요구사항, 예외 시나리오 파악 필요
  • Not inspecting requirements
  • Attempting to perfect requirements before beginning construction: 완벽한 요구사항 도출, 분석은 현실적으로 불가능.
  • Representing requirements in the form of designs: 설계how가 아닌 요구사항을 실현할what에 대해 집중.

어려움

  • Incomplete or hidden requirements
  • Poor communication between the team and customer
  • Underspecifided requirements
  • Poor communication within the team

피하기 위해 Terminology, Abbreviation 등 기술적 용어와 약자를 우선 정의. 자연어 명세를 피하기 위해 각종 UML 다이어그램 활용.

UML

  • Class Diagram
  • Sequence
  • Activity
  • State Machine
  • Use Case

위 순서대로 잘 그리면 된다.

애자일 개발 방법론

· 약 3분

방법론

  • 스크럼
  • 애자일 기법은 비교적 소수의 인원이 (5~10명의 개발자) 동기부여되어있고 유기적으로 협력할 준비가 되어있는 개발팀이 소프트웨어의 개발생산성을 극대화하기 위해 고안된 것.

테크닉

  1. 데일리 스탠드업
  2. 스프린트, 이터레이션 플래닝
  3. 회고
  4. 스프린트, 이터레이션 리뷰
  5. Short iterations
  6. 플래닝 포커, team estimation
  7. 칸반
  8. 릴리즈 플래닝
  9. 프로덕트 오너, dedicated customer
  10. Single team (dev + test)

데일리 스탠드업 미팅은 XP 에서 왔으나 86% 이상 사용.

데일리 스탠드업 미팅

AGILE GLOSSARY: Three Questions

  • Q1 What have you completed since the last meeting.
  • Q2 What do you plan to complete by the next meeting?
  • Q3 What is getting in your way?

목적

  • 본인이 하고 있는 일이나 해야할 일에 대해 팀원을 이해시키거나 기여를 홍보하는 자리가 아니다.
  • 시급한 일이 있는지 팀원들과 함께 확인하는 목적.

개선점

팀의 긍정적인 협력관계가 깨지지 않게, 내성적인 개발자들이 심리적 부담을 느끼지 않게 하는 방법

  • Q1 생략하고 간단한 텍스트 보고
  • 데일리 스탠드업 미팅의 진행자를 팀원이 돌아가면서 하는 방법
  • 데일리 스탠드업을 아침이 아니라 점심 전에하여 업무 방해를 줄이고, 이슈가 있을 시 오후에 회의가 이어지게 하는 방법

페어프로그래밍

The Effectiveness of Pair Programming: Software Professionals' Perceptions

  • 페어프로그래밍은 주니어-시니어 조합이 최고.
  • 소프트웨어의 복잡도가 Medium - High 인 경우 더 효과적.

애자일과 기존 방법론의 관행

Have Agile Techniques been the Silver Bullet for Software Development at Microsoft?

결론

  • Agile Smell 을 줄이기 위해 노력해야한다.

리먼(Lehman)의 소프트웨어 진화 법칙

· 약 4분

129

소프트웨어 진화 법칙 개요

소프트웨어 진화 법칙 개념

  • 대부분의 소프트웨어가 존재하는 동안 변경이 일반적이며, 지속적으로 유지되기 위해 준수해야하는 법칙
  • 품질관리와 변경관리의 중요성 강조, 유지보수 비용증가에 따른 관리전략 수립을 위해 필요

소프트웨어 진화 법칙 필요성

  • SW 변화의 특성을 이해하여 유지보수, 변경관리, 형산관리, 품질 통제의 중요 모델로 반영할 수 있으므로 효과적인 유지보수 및 변화관리 가능.

소프트웨어 진화 법칙 개념도, 핵심요소, 적용방안

소프트웨어 진화 법칙 개념도

소프트웨어 진화 법칙 핵심요소

구분법칙내용
완전유지관리조직적 안전성평균 유효한 글로벌 작업률은 제품 수명 기간동안 변하지 않음
-지속적인 성장사용자를 만족시키기 위해 기능적 성장 필요
적응유지관리지속적인 변화SW는 지속적으로 적응하고 변화해야함
-자기 규제시스템 진화는 제품의 배포와 프로세스 측정으로 자체 조절됨
-피드백 시스템진화 프로세스는 다중 레벨, 다중 에이전프 피드백 시스템이여야함
수리유지관리품질 저하변경이 엄격하게 유지 관리되고 적응하지 않으면 품질 감소
예방유지관리증가하는 복잡성시스템이 발전할 때 관리하지 않으면 복잡성 증가
-친숙도 보존사용자는 만족스러운 진화가 될 수 있게 내용과 행동을 숙달해야함
  • SW 변화 특성을 이해하고, 유지보수, 변경관리, 형상관리, 품질 통제의 중요 모델로 반영

소프트웨어 진화 법칙 적용방안

구분방안비고
요구사용자 요구 지속적 수집, 분석요구관리 툴
설계모듈화된 설계를 통한 변경 용이성컴포넌트화
구현변경관리 프로세스 통한 코드 관리VCS 활용
테스트자동화된 테스트 통한 품질 검증Continuous Test
배포점진적 배포를 통한 안정적 대응블루-그린 배포
유지보수지속적 모니터링과 피드백 수집, 개선CMS
폐기SW 수명 종료시 폐기 절차 수행데이터 마이그레이션

소프트웨어 진화법칙 추가적인 고려사항

  • 신기술 도입과 기존 기술의 진화를 지속적으로 모니터링하여 SW 기술 부채를 최소화하는 활동 필요

웹 3.0

· 약 2분

웹 3.0의 개요

개념

웹 2.0웹 3.0
참여소유(탈중앙화)
공유융합
개방개인화

시멘틱 웹 기반으로 웹 페이지의 내용을 이해하고, 개인 맞춤 정보를 제공하는 웹 기술

배경

  • 웹2.0의 글로벌 플랫폼 기업들에 데이터가 집중됨
  • 중앙집중화된 플랫폼이 멈출 시 일상 마비

핵심요소

요소기술비고
컨텐츠 소유권NFT디지털켄텐츠 소유권 주장 가능
탈중앙화블록체인중앙기관 없는 분산 원장
개인화서비스AI사용자 맞춤형 데이터 제공
확장된 미디어 인터페이스메타버스현실-가상 융합 공간 제공

변화

  • 탈중앙 자율조직 DAO 출현
  • 블록체인과 AI로 웹 구조 혁신
  • 웹 활동으로 코인, 토큰 보상

웹 3.0 발전 전망

구분전망비고
공공정부 투명성, 접근성 증대디지털 행정
기업비지니스모델 혁신, 데이터 주권 강화탈중앙화 플랫폼
민간개인 데이터 자율성 강화, 수익 창출프로슈머
  • 데이터 탈중앙화와 소유를 통해 사용자 경험 개선 및 요구 충족

참조