권영진 교수팀, 구글 어워드 수상...‘실제 CPU 없이 버그 잡는다’
최신 CPU는 구조가 복잡해 여러 작업을 동시에 처리하는 과정에서 명령 순서가 뒤섞이는 ‘동시성 버그’가 발생할 수 있으며, 이는 보안 문제로까지 이어질 수 있음에도 기존 방식으로는 발견이 매우 어려웠다. 우리 대학 연구진은 실제 칩 없이도 CPU 내부 동작을 가상 환경에서 정밀하게 재현해 버그를 자동 탐지하는 기술을 세계 최초 수준으로 개발했으며, 이를 통해 최신 리눅스 커널에서 새로운 버그 11건을 찾아 수정하는 데 성공했다.
우리 대학은 전산학부 권영진 교수 연구팀이 구글이 수여하는 ‘Research Scholar Award’(시스템 분야)를 수상했다고 21일 밝혔다.
Google Research Scholar Award는 인공지능, 시스템, 보안, 데이터 관리 등 다양한 분야에서 혁신적 연구를 수행하는 신진 교수(Early-Career Professors)를 지원하기 위해 2020년부터 시행된 글로벌 연구 지원 프로그램이다.
구글 리서치 연구진이 직접 심사하며, 전 세계 수백 명 중 극소수만 선정되는 매우 경쟁적인 프로그램으로 알려져 있다. 특히 이 상은 AI·컴퓨터 시스템 분야에서 세계적으로 가장 권위 있는 산업계 연구 지원 프로그램 중 하나로 인정받고 있으며, 국내 수상 사례도 드물다.
■ 최신 Apple M3·ARM 서버에서 발생하는 동시성 버그 탐지 기술 개발
권 교수팀은 Apple M3(애플의 최신 세대 컴퓨터 프로세서 칩)와 같은 최신 ARM(전력을 적게 쓰고 효율이 높은 CPU 설계 방식) 기반 서버에서 발생하는 동시성 버그(concurrency bug)를 자동으로 탐지하는 기술을 개발했다.
동시성 버그란 CPU가 여러 작업을 동시에 처리하는 과정에서 작업 순서가 꼬여 발생하는 오류로 컴퓨터가 갑자기 멈추거나 해커가 시스템을 공격하는 통로가 될 수 있는 심각한 보안 취약점이다. 그러나 기존 테스트 방식만으로는 이러한 오류를 찾아내기 매우 어려웠다.
■ 실제 CPU 없이도 CPU 내부 동작을 재현해 버그를 자동 탐지
권 교수팀의 핵심 성과는 ‘실제 칩 없이도 CPU 내부 동작을 가상 환경에서 그대로 재현하는 기술’이다. 이 기술을 활용하면 CPU를 분해하거나 실제 칩을 사용하지 않아도 명령이 어떤 순서로 실행되는지, 어디에서 문제가 생기는지 소프트웨어만으로 정밀하게 분석할 수 있다.
이 시스템을 기반으로 리눅스 운영체제를 구동해 자동으로 버그를 탐지한 결과, 연구팀은 최신 리눅스 커널*에서 신규 버그 11개를 발견했고 이를 개발자 커뮤니티에 보고해 모두 수정되었다.
*리눅스 커널(Linux kernel): 전 세계 서버·슈퍼컴퓨터·스마트폰(안드로이드)의 기반이 되는 핵심 운영체제 엔진으로 CPU·메모리·저장장치를 모두 관리하는 시스템의 ‘심장’ 역할을 담당함
구글은 이 기술을 ‘자사 인프라에도 매우 중요한 기술’로 평가하며 해당 Award를 수여했다.
이번 기술은 리눅스뿐 아니라 안드로이드, 윈도우 등 여러 운영체제에도 적용 가능한 범용성을 지닌 것으로 평가되며, 연구팀은 소프트웨어를 오픈소스(GitHub)로 공개해 학계·산업계 누구나 활용할 수 있도록 했다.
권영진 교수는 “이번 수상은 KAIST 시스템 연구의 국제적 경쟁력을 입증한 것”이라며 “앞으로도 안전하고 신뢰성 높은 컴퓨팅 환경 구축을 위한 연구를 지속하겠다”고 말했다.
※ Google Scholar Award 수상 페이지: https://research.google/programs-and-events/research-scholar-program/recipients/
GitHub(기술 오픈소스): https://github.com/casys-kaist/ozz
권영진·신인식 교수팀, 세계 최고 학회 아시아 최초 최우수논문상 2회 수상
우리 대학 전산학부 권영진⦁신인식 교수 연구팀이 서울대 이병영 교수와 협력하여 세계 최대 컴퓨터 학회 ACM(Association for Computing Machinery)의 운영체제 분야 최고 학회인 ACM 운영체제 원리 심포지움(Symposium on Operating Systems Principles, SOSP)에서 아시아 최초 최우수 논문상을 2회 수상했다고 29일 밝혔다.
연구팀은 세계 최초로 애플(Apple)의 프로세서를 탑재한 모든 장치를 비롯해 실제 물리적인 현대 고성능 프로세서(CPU) 없이도 운영체제 시스템을 해킹하거나 중단시킬 수 있는 동시성 버그를 탐지하는 기술을 개발했다.
ACM SOSP는 컴퓨터 시스템 분야 세계 최고 권위의 학술대회로, 지난 30년간 국내에서 단 4편의 논문만 게재될 정도로 높은 기준을 요구한다. 이번 최우수 논문상 수상은 국내 운영체제 연구 역량이 세계적 수준에 도달했음을 보여주는 중요한 성과다.
특히, 권영진 교수는 2021년에 ACM SOSP에서 아시아 학교에서는 최초로 최우수 논문상을 수상하였으며, 이번 수상을 포함해 ACM SOSP에서 최우수 논문상을 두 차례 수상하며 연구의 탁월성을 다시 한번 입증했다.
KAIST 정대룡 박사, 최예원 박사과정, 서울대 이병영 교수와 함께 구성된 권영진⦁신인식 교수 연구팀은 애플(Apple)의 M3 프로세서를 탑재한 모든 장치를 비롯해 실제 물리적인 CPU 없이도 비순차적 실행에 의한 동시성 버그*를 발견하고 그 원인을 규명하도록 돕는 운영체제 버그 탐지 프레임워크를 개발했다.
*비순차적 실행에 의한 동시성 버그: 전문 개발자가 몇 년이 지나도 찾지 못할 정도로 개발자의 직관이나 단순 테스팅을 통해 발견하기는 매우 어려운 버그임. 이러한 버그를 공격자가 악용할 경우 시스템이 해킹당하거나 작동을 멈출 수 있는 결과를 초래할 수 있음
권영진⦁신인식 교수팀은 실제 물리적인 CPU 없이도 정확하고 빠르게 소프트웨어만으로 에뮬레이션*하는 방법을 고안해 리눅스 커널 운영체제를 에뮬레이션 환경에서 구동할 수 있도록 하는 기법을 개발했다.
*에뮬레이션: 하드웨어에 수행되는 작업을 소프트웨어를 활용해 처리함
또한 연구팀은 퍼징(fuzzing)기법*을 활용하여 범용 운영체제인 리눅스 커널에서 11개의 새로운 버그를 발견하여 보고하였고, 리눅스 커널 개발자들에게 보안 패치를 제공하였다.
*퍼징기법: 입력값을 무작위로 대입하여 그 과정에서 발생하는 버그나 에러를 발견하는 기법
발견된 버그들은 암호화된 네트워크에 사용하는 TLS 코드를 비롯해 보안에 위협이 되는 중요한 커널 요소에서 곳곳에서 발견됐다.
연구팀이 개발한 기술은 리눅스뿐만 아니라 핸드폰에 사용되는 안드로이드 운영체제나 윈도우에도 적용할 수 있는 기술로, 앞으로 그 응용 사례가 계속 확대될 전망이다. 연구 결과물은 오픈소스로 공개돼 있다.
https://github.com/casys-kaist/ozz
권영진 교수는 “오랜 기간 앞을 모르는 결과를 위해 시행착오를 감수하고 끈기있게 연구를 진행한 학생 연구원의 의지에 감사하며, 훌륭한 조언을 아끼지 않았던 동료 교수님께 다시 한번 감사드린다”라고 수상 소감을 밝혔다.
한편 이번 연구는 한국연구재단, 정보통신기획평가원, 한국과학기술정보연구원, K-Startup, 그리고 삼성전자의 지원을 받아 수행됐다.
전산학부 권영진 교수 연구팀, 최우수 시스템 국제학회 SOSP 2021에 국내 최초 논문 게재, 최우수논문상 수상
우리 대학 전산학부 김종율 박사과정(제1 저자), 장인수 석사 졸업생, 임재성 박사과정과 the University of Texas at Austin, KTH, KAUST 연구진으로 구성된 전산학부 CASYS 연구실 권영진 교수 연구팀이 올해 시스템 분야 최고학회인 SOSP(ACM Symposium on Operating Systems Principles)에 국내에서 최초로 논문을 게재했으며, 동시에 최우수논문상(Best Paper Award)을 수상했다.
SOSP는 매 2년마다 열리는 운영체제 시스템 분야 최고의 학회 (채택율 15% 이하)로 우리 대학 권영진 교수 연구팀과 성균관대 엄영익 교수 연구팀이 2021년 각각 국내에서 최초로 논문을 게재하였다.
권영진 교수 연구팀은 “Smart 네트워크 장치를 이용하여 분산파일 시스템의 성능 및 가용성을 높이는 연구”를 통해 클라우드 환경에서 사용자 데이터를 빠르게 저장하고 시스템 장애 시에도 지속가능한 서비스를 제공하는 분산파일 시스템을 설계/구현하였다. 스마트 네트워크 장치는 기존에 데이터만 주고 받을 수 있는 네트워크 장치에 연산장치의 기능이 탑재된 차세대 클라우드향 네트워크 장치이다. 기존의 서버에 보다 자원효율적이지만 성능은 느린 연산 기능을 제공하는데, 권영진 교수 연구팀은 스마트 네트워크 장치에서 동작할 수 있는 LineFS라 불리우는 클라우드향 분산 파일시스템을 구축했다. LineFS는 느린 Smart 네트워크 장치를 사용하면서도 기존의 분산 파일 시스템보다 빠른 성능을 낼 수 있도록 설계 되었으며, 호스트 운영체제가 멈추더라도 Smart 네트워크 장치 만으로도 구동이 가능한 고가용성 분산 파일시스템이다.
LineFS는 2020년 OSDI (SOSP와 더불어 최고의 시스템 학회)에 동일 연구팀이 게재했던 Assise 분산 파일시스템에 대한 후속 연구로 진행됐다. 이 연구 결과물은 권영진 교수가 박사과정 동안 진행했던 Strata 파일시스템에 대한 연구를 기반으로 시작됐다. 권영진 교수의 Strata 파일시스템은 2017년 SOSP에 게재됐다.
이번 연구를 진행한 김종율 박사과정은 권영진 교수 연구실에서 고성능 비휘발성 메모리를 활용한 분산 파일 시스템 연구를 계속해왔으며, ACM SoCC, USENIX OSDI, ACM SOSP와 같은 유수의 국제학회에 논문을 출판하고 있다.
관련 해외 언론보도: https://cemse.kaust.edu.sa/cs/news/kaust-collaborative-research-wins-acm-sosp-2021-best-paper-award