애초 ‘SW개발 초기 단계 테스트, 보안과 고품질 보장’ 장점 부각
“의사소통 단절, 도구 난립, 부서 간 사일로, 취약점 과부하” 등 단점
부서 간 갈등 유발도, “협업 기반의 보안 테스트 자동화 등 해결책”
[애플경제 이윤순 기자] 실현 불가능할 것같은 ‘시프트 레프트’(Shift Left) 방식이야말로 가장 완벽한 테스트 프랙티스로 알려지고 있다. 배포 후 사용자 단계가 아니라, 아예 개발 프로세스 초기 단계에서 미리 테스트, 검증함으로써 고품질의 소프트웨어를 개발할 수 있다는 얘기다. 그래서 이는 개발업계에선 하나의 ‘이상론적 가치’로 인식되고 있다. 그러나 실제 현장에선 실행 과정에서 문제가 많은 것으로 드러나고 있다.
“각종 툴 통합에도 어려움 커”
이로 인한 개발 지체는 그렇다 치더라도, 팀이나 부서 간의 협업과 소통 부족, 사일로 현상은 물론, 보안 측면에서도 오히려 취약점을 노출하고 있다는 목소리가 크다.
시프트 레프트 전략은 애초 소프트웨어 보안에 최적화된 기법으로도 주목을 받았다. 그러나 실제 현장에선 “의사소통의 단절과, 각종 (테스트) 도구 난립, 특히 취약점 과부하로 인해 심각한 문제가 생기고 있다”는 지적이 이어지고 있다.
최근 ‘국제인공지능대전’에 참가한 SW개발업체 숨고의 한 관계자는 “이미 많은 개발업체들이 소프트웨어 보안을 명분으로 ‘시프트 레프트’ 전략을 시도하고 있지만, 정작 개발자들로선 불만이 크다”고 했다. 그는 개인 의견임을 전제, “예를 들어 ‘오탐지율’이 늘어나고, AI 덕분에 빨라진 개발 속도, 그리고 각종 툴을 통합하는데 따른 어려움이 날로 커지고 있다”고 전했다. 애초 소프트웨어 개발 초기 단계에서 결함과 보안 문제를 조기에 발견, 쉽게 수정한다는 취지가 무색해지는 대목이다.
이는 공신력있는 해외 연구조사에서도 어느 정도 입증되고 있다. AI 보안 회사 ‘Pynt’ 연구에 따르면, 일단 조사 대상자의 절반 가까운 기업들이 소프트웨어 개발에 시프트 레프트 방식을 도입했고, 나머지 기업 상당수도 도입을 진행하고 있는 것으로 나타났다.
문제는 그런 방식을 실행하면서 불거진다. 많은 개발자들은 (개발 초기 단계이다보니) ‘취약점’이 너무나 많아서 당황스럽다는 반응이다. 또 다른 개발자들은 ‘시프트 레프트’의 가장 큰 문제점으로 ‘오탐지’를 꼽았고, 그 다음으로 통합 문제와 취약점 과부하가 뒤를 이었다.
“기대했던 만큼의 ‘보안 기능’도 별로”
Pynt의 최고경영자(CEO)인 츠비카 슈나이더는 ‘아이티프로’에 “이번 조사가 이러한 소프트웨어 개발 접근 방식(레프트 시프트)이 실제로 전반적인 위험을 감소시키는지, 아니면 단순히 복잡성을 증가시키는지에 대한 심각한 의문을 제기한다”며 회의적 입장을 보였다.
슈나이더는 “모두가 시프트-레프트 전략에 대해 이야기하지만, 기대했던 만큼의 보안 효과를 얻는 사람은 거의 없는 것 같다.”면서 “대부분의 기업이나 조직은 (시프트 레프트에 필요한) 도구를 갖추고 있지만, 여전히 잡음이나, 프로세스 마찰, 개발자의 저항으로 어려움을 겪고 있다.”고 했다.
그는 그럼에도 “AI는 소프트웨어 개발 및 배포 방식을 가속화하는 과정에서 철저한 보안을 필요로 하고 있다”고 레프트 시프트의 대중화를 설명했다.
기존 워크플로 네트워크와 시프트 레프트 툴과의 통합도 녹록지 않다는 지적이다. 즉, “레프트 시프트 자체가 기존 방식에서 벗어나다보니, 대부분의 기업들이 개발 워크플로에 이를 통합하는데 어려움을 겪고 있다”는 것이다.
현재 레프트 시스트를 위해 가장 많이 사용되는 도구는 정적(靜的) 애플리케이션 보안 테스트(SAST), 소프트웨어 구성 분석(SCA), 동적(動的) 애플리케이션 보안 테스트(DAST) 등이 대표적이다. 이들 도구는 앞서 조사 대상자의 약 3분의 1이 사용하고 있다는 설명이다.
또 많은 사용자들은 시프트 레프트가 기존의 개발 후반 단계(시프트 라이트)보다는 앱 코드의 버그 수정에 더 많이 주력하고 있다. 그 때문에 신속 진행을 추구하는 개발자와 보안 팀 간의 마찰도 심해지고 있다. 개발자는 기능적 향상을 우선시하며 보안은 부담으로 여기는 반면, 보안 팀은 결함이 신속하게 수정되기를 원한다.
개발팀 vs 보안팀, 속도와 보안 두고 ‘마찰’도
그래서 “시프트 라이트는 여러 팀 간의 광범위한 협력이 필요하지 않기 때문에 더 쉬운 반면, 시프트 레프트는 개발, 보안, 테스트 팀 간의 협업이 필요해 더욱 애로가 많을 수 밖에 없다”는 것이다. 그래서 “보안 책임자들은 효과적인 위험 관리를 유지하면서 보안 팀과 개발 팀 간의 마찰을 줄이기 위한 방식을 검토해야 할 것”이란 주문이다.
그래서 제시된 방안이 ‘보안 테스트 자동화’다. 즉 보안을 테스트 단계에 자동으로 통합하는 것을 비롯, 보안 팀과 개발 팀 간의 협업을 원칙으로 하는 것이다.
해당 설문 조사에 따르면 유럽은 시프트 레프트 방식을 도입하는 경향이 많다. 실제로 독일과 영국은 그 비율이 모두 52%에 달하는 것으로 나타났다. 반면에 미국의 개발자들은 아직 시프트 레프트에 소극적이어서, 이를 시행하는 업체가 전체 기업의 절반도 채 안되는 것으로 나타났다.
