Offcanvas

CIO / CSO / 개발자 / 보안 / 비즈니스|경제 / 애플리케이션

백악관, 'C'와 'C++' 사용 중단 촉구··· 전문가들 "시의적절한 권고"

2024.02.28 Grant Gross  |  InfoWorld
바이든 행정부가 버퍼 오버플로 및 기타 메모리 액세스 취약성을 유발하는 프로그래밍 언어에서 벗어날 것을 촉구했다.
 
Image Credit : Getty Images Bank

소프트웨어 개발자들이 C와 C++와 같은 취약한 프로그래밍 언어의 사용을 중단하라고 조 바이든 미국 대통령의 행정부가 촉구했다. 대신 메모리 안전 프로그래밍 언어(memory-safe programming languages )를 사용하라는 권고다.

백악관 국가사이버책임자실(ONCD)은 26일 발표한 보고서에서 개발자들에게 메모리 안전 취약점이 없는 프로그래밍 언어를 사용하여 사이버 공격의 위험을 줄여야 한다고 주문했다. 백악관은 보도자료를 통해 기술 기업들이 메모리 안전 프로그래밍 언어를 채택함으로써 "모든 종류의 취약점이 디지털 생태계에 유입되는 것을 방지할 수 있다"라고 밝혔다.

메모리 안전 프로그래밍 언어는 버퍼 오버플로, 범위를 벗어난 읽기, 메모리 누수 등 메모리 액세스와 관련된 소프트웨어 버그 및 취약성으로부터 안전한 프로그래밍 언어를 의미한다. 마이크소프트와 구글의 최근 연구에 따르면 전체 보안 취약점의 약 70%가 메모리 안전 문제로 인해 발생하는 것으로 나타났다.

국가 사이버 책임자인 해리 코커는 백악관 보도 자료에서 "정부는 사이버 공간의 공격 표면을 줄이고 모든 종류의 보안 버그가 디지털 생태계에 유입되는 것을 방지할 책임을 가진다. 이는 메모리 안전 프로그래밍 언어로 전환해야 하는 어려운 문제를 해결해야 한다는 것을 의미한다"라고 전했다.
 
미국 사이버 보안 및 인프라 보안국도 9월 블로그 게시물에서 개발자들에게 메모리 안전 프로그래밍 언어를 사용할 것을 촉구했다. CISA, FBI, 미국 국가안보국 및 동맹국 기관들도 12월에 ‘메모리 안전 로드맵 사례’ 보고서를 발표했다.

19쪽 분량의 이 새로운 보고서에서는 메모리 안전 취약점이 있는 프로그래밍 언어의 두 가지 예로 C와 C++를 제시했다. 안전하다고 판단되는 프로그래밍 언어의 예로는 러스트를 언급했다. 참고로 2022년 11월에 발표된 NSA 사이버 보안 정보 시트는 메모리 안전성을 고려한 프로그래밍 언어로 러스트와 함께 C#, 고, 자바, 루비, 스위프트를 명시한 바 있다.

스태티스타에 따르면 2023년 기준 전체 프로그래머의 약 22%는 C++를, 19%는 C를 사용하고 있었다. 자바스크립트, 파이썬, 자바 등에 비해 인기가 낮다. 하지만 티오베 프로그래밍 커뮤니티 지수에 따르면 파이썬이 가장 인기 있었고 그 다음으로 C, C++, 자바가 뒤를 이었다.

책임의 전환
백악관 보도자료에 따르면 새 보고서의 목표 중 하나는 사이버 보안의 책임을 개인과 소규모 기업에서 "끊임없이 진화하는 위협을 관리할 능력이 있는" 대기업, 기술 기업, 미국 정부로 전환하는 것이다.

ONCD는 기술 기업, 학계 및 기타 조직을 포함한 민간 부문과 협력해 보고서의 권장 사항을 개발했다고 밝혔다. ONCD는 8월에 이 주제에 대한 대중의 의견을 요청했다. 이후 이 기관은 HP, 액센츄어, 팔란티어 등 여러 기술 기업으로부터 이 이니셔티브를 지지하는 의견을 확보했다. 다른 소프트웨어 보안 전문가들도 이 보고서를 호평했다.

워싱턴 대학교의 컴퓨터 과학 교수인 댄 그로스먼은 ONCD 보고서가 유용하고 시의적절하다고 말했다. 그는 "C와 C++의 위험성은 수십 년 동안 널리 사용돼 왔지만, 이제는 실용적이고 성숙한 대안이 나왔다. 백악관이 메모리 안전을 추진하기에 좋은 시기"라고 말했다.

"이제 변화할 시간"
그는 이어 "메모리 안전 허점을 악용하는 공격자들의 위협이 정교해졌기 때문에 변화가 필요하다"라고 덧붙였다.

그로스먼 교수에 따르면 정부, 업계, 학계가 참여하는 메모리 안전에 대한 논의는 의미 있는 변화로 이어질 수 있다. 그는 "당연히 연방 정부의 많은 부처는 소프트웨어의 주요 제작자이자 공급업체이며, 향후 시스템 변경이나 새로운 시스템의 우선순위를 결정할 때 이러한 관점을 활용할 수 있다"라고 말했다.

그러나 특히 임베디드 시스템에서 C와 C++에서 벗어나는 것은 하루아침에 이루어지지 않을 가능성이 크다는 평가다. 그는 "다행히 시스템 소프트웨어, 특히 러스트와 같은 다른 언어의 사용은 이미 크게 증가했다. 많은 사람들이 C와 C++ 활용이 그저 중단되기보다는 대안을 향한 진화가 가속화될 것으로 예상하고 있다"라고 전했다.

인터넷 보안 연구 그룹의 전무이사이자 공동 설립자인 조쉬 아스는 C와 C++에서 벗어나는 것은 "길고 어려운 과정"이 될 것이라고 전망했다. 그는 "사람들이 생각하는 방식을 바꾸려면 지속적인 노력이 필요하다. 이번과 같은 커뮤니케이션은 사람들의 마음속에 안전에 대한 문제를 새롭게 인식시키는 데 도움이 된다"라고 평했다.

아울러 이러한 변화가 일어나기 위해서는 정부와 민간 부문이 협력하여 보안 코드를 우선순위로 삼아야 한다고 그는 덧붙였다.

아스는 "궁극적으로 새로운 코드를 작성하고 배포해야 하지만 이를 위해서는 리소스가 필요하고 정부에서 민간 부문에 이르기까지 모든 수준의 리더들이 이를 우선순위로 삼아야 한다. 업계의 리더들이 이 문제를 인식해야 하며, 이 문제 해결을 최우선 과제로 삼으면 지원을 받을 수 있다는 사실을 알아야 한다"라고 말했다. ciokr@idg.co.kr
CIO Korea 뉴스레터 및 IT 트랜드 보고서 무료 구독하기
Sponsored
추천 테크라이브러리

회사명:한국IDG 제호: CIO Korea 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아01641 등록발행일자 : 2011년 05월 27일

발행인 : 박형미 편집인 : 천신응 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.