Google, Microsoft, Rust 언어의 향상된 보안으로 도피처 확보

Google과 Microsoft는 Rust 언어의 더 나은 보안을 피난처로 삼습니다.

Fortanix가 2016년에 출시되었을 때 회사는 다음과 같은 결정을 내렸습니다. 보안 강점과 성능의 이점을 활용하기 위해 XNUMX년 된 Rust의 프로그래밍 언어를 채택하겠다고 약속했습니다.

XNUMX년 후, Rust에 대한 Fortanix의 노력은 성공적인 것으로 입증되었습니다. 회사는 Intel SGX(Software Guard Extensions)에 대한 지원을 구축했습니다. 이를 통해 사용자 데이터에 대한 보안 엔클레이브를 사용할 수 있으며 일부 종류의 취약성, 특히 메모리 안전 문제를 피할 수 있는 Rust 컴파일러의 기능을 활용할 수 있다고 부사장 Jethro Beekman이 밝혔습니다. 기술 담당 CISO와 데이터 보안 회사.

"그 잠재력을 실제로 본 일부 얼리 어답터가 있었고, 철저한 연구를 수행하고 이에 대한 실제 경험을 얻은 후에 우리는 기본적으로 올인하기로 결정했습니다."라고 그는 말합니다. "도구와 컴파일러는 실수를 피하는 데 정말 도움이 됩니다."

1.0 릴리스 이후 XNUMX년이 지났지만 Rust 언어 및 개발 플랫폼은 개발자와 기업 사이에서 계속해서 인기를 얻고 있습니다. 보안 코드에 집중. Rust의 값은 훨씬 낮지만 C 또는 C++보다 TIOBE 등급, 이 언어는 해마다 상당한 추가 사용자를 보이고 있습니다. Rust는 또한 다음과 같은 헌신적인 노력을 갖고 있습니다. 작년에 프로그래머 중 12%만이 이 기술을 사용했지만 거의 85%의 개발자는 이 언어를 계속 사용하기를 원하며, 이에 따르면 이 언어는 "가장 존경받는" 프로그래밍 언어입니다. Stack Overflow “2023년 개발자 설문조사”.

Rust 프로그래밍 언어의 성장을 보여주는 차트

Rust 채택은 계속해서 기하급수적으로 증가하고 있습니다. 출처: Lib.rs (https://lib.rs/stats)

예를 들어, 마이크로소프트는 버그 종류를 제거하기 위한 노력의 일환으로 러스트(Rust)를 사용해 커널의 일부를 재작성하고 있다고 마이크로소프트의 엔터프라이즈 및 OS 보안 담당 부사장인 데이비드 웨스턴(David Weston)이 지난 5월 이스라엘 블루햇(BlueHat Israel)에서 말했다. 이 회사는 글꼴 구문 분석을 메모리 안전 기능으로 전환하기 위해 Rust에서 DWriteCore를 만들었으며 현재 Rust에서 그래픽 드라이버 인터페이스(GDI)의 일부 작성을 실험하는 작업을 진행하고 있습니다. 회사는 코드의 초기 버전에서 성능이 15~XNUMX% 향상되는 것을 확인했습니다.

"나는 우리가 Windows의 Rust에 대한 크롤링 단계에 있다고 말하고 싶습니다."라고 Weston은 말했습니다. 그의 프레젠테이션을 녹화한 비디오. “우리는 도구 체인을 실험하고 있습니다. 우리는 코드 생성을 살펴보고 이것이 Rust를 배우는 데 드는 비용만큼 가치가 있는지 알아내려고 노력하고 있습니다.”

그러나 Rust Foundation의 후원자인 Microsoft는 이 언어에 전념했습니다. "실제로 커널에서 Rust를 사용하여 Windows를 부팅하게 될 것입니다."라고 Weston은 말합니다.

Google, 1Password 및 기타 온보드

Google은 Rust의 주요 후원자이기도 합니다. 회사는 C 및 C++에서 Rust, Kotlin(함수형 프로그래밍 언어), Java로의 전환으로 인해 Android의 메모리 안전 취약점 비율이 감소했다고 생각합니다. 2022년에는 버퍼 오버런 등 메모리 안전 취약점이 Android 전체 취약점의 절반 미만을 차지함.

Google의 Android 프로그래밍 언어 엔지니어링 이사이자 Rust Foundation 이사회 의장인 Lars Bergstrom은 "일반적으로 새로운 C 또는 C++ 코드 작성을 고려 중인 모든 곳에서 Rust를 사용하는 것이 좋습니다."라고 말합니다. "그래서 Rust는 기본 시스템과 메모리와 같은 리소스에 대한 엄격한 제어가 필요한 경우에 종종 좋은 선택입니다."

국가안보국 또한 추천 개발자들은 보안이 중요한 코드에 대해 C 및 C++의 대안을 찾고 있습니다. 개발자가 실수하지 않는 것에 너무 많이 의존.

Fortanix는 Rust를 광범위하게 사용하기로 약속했지만 다른 회사에서는 코드베이스에 언어를 도입하는 방법에 대해 더 전술적입니다. 사용자의 비밀번호 저장소를 보호하기 위해 견고한 보안이 필요한 비밀번호 및 ID 관리 회사 1Password는 핵심 데이터 보안 구성 요소를 위한 개발 플랫폼으로 Rust를 채택했으며, 다양한 운영 체제의 프런트엔드 인터페이스에 다른 언어를 사용했습니다. 블로그 게시물에 명시된 회사.

마이크로소프트도 비슷한 상황에 처해 있으며 코드베이스의 상당 부분을 Rust로 다시 작성하지 않을 것이라고 Weston은 말했습니다.

그는 BlueHat Israel 컨퍼런스에서 참석자들에게 "말하기 싫습니다. 저는 Rust 팬을 알고 있습니다. 아마도 Rust로 Windows를 다시 작성하는 일은 조만간 일어나지 않을 것입니다"라고 말했습니다. "우리는 Rust를 좋아하지만 더 많은 네이티브 코드를 보호하는 전략도 필요합니다."

학습 곡선이 그리 가파르지 않음

Rust 재단은 임베디드 및 연결 장치 회사(특히 자동차, 산업, 항공우주 응용 프로그램)에서 많은 채택을 보았을 뿐만 아니라 또 다른 새로운 플랫폼인 WebAssembly에서 웹 및 클라우드 응용 프로그램을 만드는 데도 많이 사용되었습니다. 러스트 재단의 CEO.

“이런 종류의 조직은 대규모 기술 조직 외부에서 Rust의 잠재력을 실제로 본 최초의 조직 중 하나입니다. 보안 때문만이 아니라 속도와 성능 때문에" 그녀는 말한다. “메모리 안전성 덕분에 그 수준의 보안을 얻을 수 있지만 성능 측면에서는 아무 것도 잃지 않습니다.”

Fortanix가 시작되었을 때 모든 프로그래머는 Rust를 배워야 했습니다. 언어는 배우기 어렵다는 것이 일반적인 통념이지만, Rust를 배우는 프로그래머 중 XNUMX분의 XNUMX 이상이 XNUMX개월 안에 프로젝트에 기여할 수 있다는 자신감을 갖고 있다고 말했습니다. Google의 내부 프로그래머 설문조사.

새로운 프로그래머들이 Rust를 빠르게 선택하는 반면, 컴파일러는 많은 사람들이 원하는 것보다 계속해서 느린 것으로 조사 결과도 밝혀졌습니다.

보안 코딩 교육 회사인 Security Journey의 수석 보안 엔지니어인 Michael Erquitt는 언어에 약간의 조정이 필요하다고 인정합니다. 또한 프로그래머는 어떤 기능과 응용 프로그램이 언어의 이점을 얻을 수 있는지에 대한 자신의 감각을 개발해야 합니다.

"프로그래밍 언어와 도구를 선택할 때 항상 본질적인 절충안이 있습니다." 에르퀴트 말한다. "현대 프로그래밍 언어인 Rust는 광범위한 프로젝트에 사용될 수 있지만 궁극적으로 선택은 프로젝트의 기능/고객 요구 사항을 가장 잘 충족시키는 것이 무엇인지에 따라 결정됩니다."

타임 스탬프 :

더보기 어두운 독서