Kant's IT/Issue on IT&Security

레거시 코드에 대한 겸손한 시선과 발전적 접근

Kant Jo 2024. 10. 10. 08:25

레거시 코드를 바라보는 겸손한 시선 "나쁜 코드도 돌아가면 성공이다"

 

레거시 코드를 바라보는 겸손한 시선 "나쁜 코드도 돌아가면 성공이다"

'모든 코드는 레거시 코드'라는 말을 들어본 사람이 있을 것이다. 이 명제는 유용한 원칙인 반면 인정하고 싶지 않은 사실이기도 하다.모든 코

www.itworld.co.kr

 

  • 레거시 코드의 보안 위험성
    • 레거시 코드는 시간이 지남에 따라 취약점이 발견될 가능성이 높음
    • 오래된 코드는 보안 패치가 제대로 적용되지 않거나 보안 표준에 맞지 않는 경우가 많음
    • 코드 유지관리자는 취약한 구조를 개선하고 보안을 강화해야 할 책임이 있음
  • 레거시 코드의 보안 관리
    • 보안 점검을 통해 기존 코드의 취약점을 지속적으로 발견하고 수정해야 함
    • 코드를 재작성하기보다는 보안 패치업데이트를 통해 유지보수하는 것이 더 현실적일 수 있음
    • 새로운 보안 위협에 대응하기 위해 데브섹옵스(DevSecOps) 방식의 통합 보안 프로세스를 적용해야 함
  • 거인의 어깨 위에서 발전한 보안
    • 과거의 보안 원칙은 시간이 지나며 발전했으며, 객체 지향 프로그래밍(OOP)과 SOLID 원칙 등의 개념은 보안성을 강화하는 데 기여함
    • 의존성 주입(Dependency Injection)과 같은 개념은 코드를 모듈화하고 외부 침입으로부터 보호하는 데 도움을 줌
    • 테스트 중심 개발(TDD)을 통해 코드 작성 시 보안을 고려하는 것이 중요해짐
  • 재작성보다 중요한 보안 유지
    • 레거시 코드의 보안 문제는 코드를 다시 작성하는 것보다 취약점을 수정하고 보안 업데이트를 적용하는 것이 더 효과적일 수 있음
    • 완전히 새로운 시스템을 구축하는 것보다 기존 코드의 보안 강화에 초점을 맞춰야 함
  • 미래의 보안 대비
    • 현재의 코드도 미래에는 레거시 코드가 될 수 있으며, 이에 대비한 보안 프로세스가 필수적임
    • 정보보호 담당자는 코드 작성 시 미래의 보안 위협을 고려하고, 이를 해결할 수 있는 지속적인 보안 체계를 마련해야 함