Kant's IT/Issue on IT&Security

구글의 메모리 안전성 강화 전략

Kant Jo 2024. 11. 23. 21:34

Safer with Google: Advancing Memory Safety

 

Safer with Google: Advancing Memory Safety

Posted by Alex Rebert, Security Foundations, and Chandler Carruth, Jen Engel, Andy Qin, Core Developers Error-prone interactions between ...

security.googleblog.com

 

  • 메모리 안전성의 중요성
    • 소프트웨어와 메모리 간 에러 유발 상호작용은 치명적인 취약점의 주요 원인으로 알려져 있음
    • 구글 내부 분석에 따르면 제로데이 익스플로잇의 75%가 메모리 안전성 취약점에 기인
    • 구글은 Secure by Design 접근법을 통해 개발 수명 주기 전반에 걸쳐 보안을 통합하고 있으며, 이를 통해 사용자에게 안전한 디지털 환경을 제공하고자 함
  • 구글의 메모리 안전성 향상 여정
    • JavaPython 같은 메모리 안전 언어의 조기 채택과 Go 언어 개발을 통해 메모리 안전성 확보
    • C++와 같은 메모리 비안전 언어의 사용으로 발생하는 위험성을 인지하고 SanitizerFuzzer와 같은 도구를 개발해 취약점을 발견하고 해결하는 방법을 전 세계 개발자와 공유
    • OSS-Fuzz를 통해 오픈 소스 프로젝트에 지속적인 퍼징 테스트를 제공, 8,800건 이상의 취약점이 해결됨
  • 미래 전략: 메모리 안전성 확보를 위한 이중 접근법
    • 메모리 안전 언어로의 전환
      • 메모리 안전 언어 채택을 통해 메모리 관련 에러를 근본적으로 줄임
      • Rust 사용을 확장해 서버, 애플리케이션, 임베디드 환경으로 적용 범위 확대
      • Carbon 언어와의 상호 운용성 개선을 통해 C++ 코드베이스의 전환을 가속화
      • Android와 같은 중요한 플랫폼에서 메모리 안전성 적용으로 취약점의 급격한 감소를 실현
    • 메모리 비안전 코드에 대한 위험 감소 및 억제
      • C++ 코드 강화: 경계 검사를 통한 취약점 제거 및 취약점의 위험 완화
      • Chrome 브라우저의 MiraclePtr 기술을 통해 57%의 use-after-free 취약점 완화
      • 격리 기법을 통한 소프트웨어 인프라 강화 및 sandboxing과 권한 축소를 통해 취약점 발생 시 영향을 제한
      • 버그 탐지 툴 및 머신러닝 기반 퍼징을 도입해 지속적인 취약점 탐지 및 방지
  • 하드웨어 기반 메모리 안전성 연구
    • 메모리 태깅 확장(Memory Tagging Extension, MTE)과 같은 하드웨어 기반 메모리 보호 기술의 구현을 통해 메모리 안전성을 강화
    • CHERI 아키텍처와 같은 혁신적인 연구를 통해 메모리 보호와 안전 제어를 더욱 세분화하여 보안성을 높임
  • 향후 계획
    • 메모리 안전성의 대규모 달성을 위해 지속적인 투자와 혁신이 필요하며, 이를 통해 디지털 생태계의 전반적인 안전성을 높일 것으로 기대
    • 앞으로도 메모리 안전성 전략의 구체적인 측면에 대한 심층적인 연구를 지속 발표할 예정