어떤 개발자들은 교묘한 코드를 만드는 것을 좋아하고, 다른 이들은 이상한 코드 베이스나 승인되지 않은 서비스를 사용하기도 해. 이 모든 것이 비즈니스와 사용자를 보호하려는 사이버 보안팀과의 끊임없는 갈등을 만들어내지. 여기 기능과 보안 사이의 적절한 균형을 통해 둘 다 비교적 평화롭게 공존할 수 있는 방법이 있어.
개발자들이 Windows나 Linux 애플리케이션, 모바일 앱, 클라우드 서비스, 챗봇, 도커 유틸리티 또는 프로그레시브 웹 앱을 구축하든 상관없이, 종종 알게 모르게 큰 위험을 감수하고 있어.
사이버 보안팀은 애플리케이션이나 관련 서비스에서 단 하나의 약점만으로도 비즈니스나 고객이 해커와 그들의 자동화된 도구 군대에 취약해질 수 있다는 것을 알고 있어.
코딩 팀의 이력과 상관없이 위험은 발생할 수 있어. 뛰어난 개발자부터 갓 졸업한 신입까지, 포트 참조 하나를 놓치거나, 내부 규칙 하나를 무시하거나, 문제를 해결하는 데 의심스러운 코드 조각 하나를 빌려 쓰는 것이 비즈니스에 큰 혼란을 초래할 수 있지.
코딩 친구가 되어보자
양쪽 모두 압박을 받고 있어. 비즈니스 리더들은 개발자들이 어제 당장 사용할 수 있거나 판매할 수 있는 앱과 도구를 만들어내기를 원해. 동시에 사이버 보안팀은 방화벽 너머의 어둠의 군대로부터 모두를 보호하면서도 최대한 눈에 띄지 않고 마찰 없이 업무를 수행해야 하는 임무를 맡고 있지.
성공의 핵심은 명확한 메시지와 각 프로젝트에 대한 잘 정의된 계획이야. 보안은 모든 프로젝트가 거쳐야 하는 품질 체크리스트의 동등한 부분이 되어야 해. 많은 코드 개발사들이 모듈화되고 목표 기반의 마일스톤이 프로젝트 수명 주기를 표시하는 DevOps 모델로 전환하고 있어.
애자일 개발과 함께, 이들은 프로젝트를 신속하게 진행하는 데 도움을 주지만, 품질, 목표 달성 및 기능 관리를 위한 구조적으로 정의된 프로세스 내에서 이루어져. 여기에 보안을 추가하면, 기업은 모든 회사 보안 요구 사항을 충족하고 무결성을 테스트하며 모든 산업 또는 정부 표준을 충족하는 앱을 개발할 수 있어.
이를 달성하려면 보안 책임자와 개발팀 모두 ‘보안은 품질이다’라는 메시지를 강조하며 같은 생각을 해야 해. 보안 검사, 코드 유효성 검사 및 모든 개발자에 대한 취약점 교육을 구축하고, 완료까지 정기적인 점검을 통해 애플리케이션의 안전한 결과가 보장될 수 있어.
모든 비즈니스에 보안 마스터가 필요해
대기업에서 점점 더 흔해지는 역할은 최고 디지털/정보 보안 책임자(또는 유사한 직책)야. 어떤 소규모 비즈니스에서든 적절한 자격을 갖춘 사람이 그 역할을 맡아 보안 솔루션, 위험 및 결함의 보고, 분류 및 관리를 담당해야 해.
이 사람은 개발팀이 비즈니스의 보안 요구 사항에 부합하도록 이끄는 이상적인 중심점이야. 이 사람은 개발팀의 일원일 수도 있으며, 향후 문제에 대한 책임이 있으므로 팀의 노력을 더 잘 감독할 가능성이 있어. 둘 사이의 강력한 유대감을 구축하기 위해 개발 프로젝트를 시작할 때 팀은 보안팀이 정한 기본 규칙을 따라야 해.
코딩의 규칙
보안의 필요성, 보안을 무시했을 때 발생하는 일, 그리고 해킹으로 이어지는 코딩 기술의 주요 및 사소한 결함을 강조하는 교육 수업이나 날들은 개발자들이 위험을 인지하고 문제를 파악하는 데 도움이 될 거야.
코드 바운티와 보상은 개발자들이 프로젝트 코드 베이스 전반의 결함을 발견하도록 장려하는 데 도움이 될 수 있으며, 모든 비즈니스는 해킹, 결함 및 해커가 네이티브 코드에 접근할 수 있는 다른 방법을 발견하는 데 대한 전사적 교육을 제공해야 해.
이러한 지침과 “빌려온” 코드, 외부 서비스 사용 및 기타 잠재적 약점에 대한 강력한 규칙은 모든 비즈니스가 더 강력하고 안전한 애플리케이션을 개발하도록 도울 거야.