웹 풀사이클 데브코스 TIL [Day 61] - 사내에서 오픈 소스 사용 시 주의 사항

JaeKyung Hwang·2024년 2월 19일
0
post-thumbnail

2024.02.19(월)

⚠️오픈 소스 소프트웨어의 보안 리스크

  • 오픈 소스 소프트웨어의 경우 소스코드가 공개되어 있으므로 취약점을 찾아 악용하기가 용이
  • 대부분의 오픈소스 소프트웨어는 다른 오픈소스 소프트웨어를 활용하여 개발되기 때문에 일단 취약점이나 버그가 발생하면 여러 오픈소스 소프트웨어에 영향을 미침
  • 오픈 소스 소프트웨어는 사후 지원・관리의무가 없어서 취약점 및 이슈 등이 발생하더라도 이를 그대로 방치하게 되는 경우가 많음

✅오픈 소스 소프트웨어 사용 단계 별 고려 사항

🔍개발 전

  1. 사전 기능 및 보안성 테스트
    • 오픈 소스의 기능, 보안성에 대한 사전 검토
    • 오픈 소스 이슈 현황 확인
    • 해당 오픈 소스 취약점 정보 확인
    • 기관(ex. RedHat)에 검토를 요청해서 신뢰성 검증
  2. 라이선스 검토
    • 코드 수정사항 발생 시 사용한 오픈 소스에 대한 라이선스 정리를 통한 컴플라이언스 준수 검토
    • 상호 충돌하는 라이선스 존재 여부 검토
    • 법무법인 및 사내 법무팀에게 자문 요청

🚀개발 중

  1. 취약점 최소화
    • 보안 부서와의 협업을 통해 개발이 완료되기 전에 인증, 리소스 사용이 큰 기능 등과 같은 중요 기능에 대한 취약점 최소화
  2. 대체 수단 확보
    • 중요 기능의 경우, 기능 실패 혹은 법적 이슈 발생 시에 기능을 장애 없이 수행하기 위한 대비책 마련
  3. 자체 대응 및 추가 개발 역량 확보
    • 중요 기능의 경우, 단순 사용 뿐 아니라 충분한 이해를 바탕으로 자체적인 커스터마이징 및 문제 해결 능력 확보

🔧개발 후

  1. 기능 및 보안성 테스트
    • 테스트 부서, 보안 부서 등에서 해당 프로젝트에 대한 기능 및 보안성을 검사
    • 배포 전, 오픈 소스 테스트 자동화 도구를 통해 기능 및 성능 점검
    • 오픈 소스 취약점 이슈 검토 및 자체적인 정적·동적 분석을 통한 보안성 확보
  2. 종속성 검사
    • 프로젝트에 사용된 외부 패키지 종속성 검사
    • 오픈 소스가 사용하는 오픈 소스 확인
    • 종속성 충돌 발생 시, 개발 팀과의 협의를 통해 빠른 문제해결
  3. 모니터링
    • 운영팀: 사용된 있는 오픈 소스 현황 관리
    • 보안팀: 사용된 있는 오픈 소스 취약점 정보 모니터링
  4. 보안패치
    • 사용한 오픈 소스의 보안 패치를 확인 및 적용하여 취약점 최소화

보통 회사별로 매뉴얼이 존재

profile
이것저것 관심 많은 개발자👩‍💻

0개의 댓글