ETC/Project

[프로젝트] SW 공급망 보안 개선을 위한 SBOM 무결성 검증 시스템

techrybbit 2024. 7. 25. 17:32

1. 프로젝트 개요

  • 목적: SBOM(소프트웨어 구성 명세서)의 무결성을 블록체인을 통해 검증 및 관리
  • 배경: Log4Shell 사태 등 오픈소스 취약점이 발생해도, 기존 시스템에선 SBOM의 최신화와 무결성 확인이 어려움
  • 성과: Flask로 구현한 SBOM 자동 생성 기능 및 블록체인 기반 무결성 검증 페이지 완성

 

 

2. 프로젝트 소개

  • 문제점: SBOM 문서를 단순히 수작업 또는 기존 저장소에만 보관할 경우, 위·변조가 가능하고 최신 상태를 유지하기 어려움
  • 해결책: SBOM 데이터를 블록체인 네트워크에 등록하여 수정 이력 추적 및 무결성 검증
  • 비즈니스적 가치:
    • 신속 대응: 보안 취약점(예: Log4Shell) 발견 시, 해당 라이브러리 사용 여부를 즉각 파악
    • 투명성 확보: 블록체인을 통한 ‘변경 불가능’한 이력 관리로 기업 신뢰도 상승

 

 

3. 기술스택

  • Backend: Flask
  • Database: MySQL
  • ETC: Notion, Git/Github

 

4. 결과물

캡스톤디자인2_종합설계최종보고서.pdf
2.45MB

 

5. 프로젝트 회고 및 개선 사항

목표 구체화의 중요성

  • 발생 문제: 초기 목표가 모호해 프로젝트 전체 목표 달성률을 측정하기 어려웠음
  • 개선 방안:
    • 정량화: “SBOM 문서 무결성 검증 성공률 95% 이상” 등 수치 목표 설정
    • 분할 목표: 팀원별 역할과 구체적인 산출물을 명확히 구분해 책임 소재를 분명히 하기

 

커뮤니케이션 및 기술 이해도 차이

  • 발생 문제: 블록체인 기술에 대한 공통 이해가 부족해 중도 합류 및 파트 통합 시 어려움 발생
  • 개선 방안:
    • 공통 스터디 진행: 블록체인 기초부터 각 모듈 이해까지, 주간·격주 단위 학습 세션 운영
    • 정기 피드백 루프: 주간 회의에서 진행 상황 공유, 신속한 결정과 수정이 가능하도록 의사소통 활성화

 

소프트웨어 설계 및 문서화

  • 발생 문제: 복잡한 구조를 제대로 문서화하지 않아 팀원 간 이해도 편차 발생
  • 개선 방안:
    • 아키텍처 다이어그램: CI/CD 파이프라인, 데이터 흐름, 블록체인 노드 구성 등을 시각적으로 표현
    • 설계 문서 표준화: 필요 문서 목록(요구사항 명세서, ERD, API 명세 등)을 정하고 일정한 템플릿 사용

 

프로젝트 관리 도구 활용

  • 발생 문제: 역할 배분은 했으나 진행 추적이 어려워 지연을 빨리 파악 못 함
  • 개선 방안:
    • 간트 차트·칸반 보드 도입: 주간 단위로 진행 상황 추적, 지연 시 바로 리소스 재배분
    • 프로세스 자동화: 빌드 상태, 테스트 통과 여부 등을 CI/CD 시스템에서 자동 보고
728x90