한국과학기술원(KAIST·총장 신성철)이 안드로이드 어플리케이션(앱)에 발생할 수 있는 전산오류를 사전에 방지해주는 분석도구를 개발했다. 앱 이종언어 사이의 동작을 분석해 스마트폰 솔루션의 보안성을 대폭 높여주는 기술이다.
류석영 KAIST 전산학부 교수는 배소라·이성호 박사과정과 함께 안드로이드를 운영체계(OS)로 사용하는 이종언어 사이의 동작 방식에서 결함을 검출해 보안 취약점을 찾아내는 수학 모델을 개발했다고 2일 밝혔다.
안드로이드 앱은 여러가지 전산 언어로 구현한다. 언어 간 상호작용으로 동작하는데, 이런 상호작용 과정을 해석하기 어려워 오류나 보안 취약점이 발생하기도 한다.
연구팀은 각 언어가 소통하는 기본 원리를 수학 모델로 정의했다. 기본 원리를 파악하기 위해 자바와 자바 스크립트 언어 상호작용을 면밀하게 분석·정의했다. 정의한 수학 모델은 안드로이드 OS가 사용하는 모든 언어 사이 상호작용에 대응하도록 확장할 수 있어 앱 구동 시 여러 가지 소통 상황에 모두 대응할 수 있다.
연구팀은 전산오류 탐지를 위해 소프트웨어(SW) 설계·구현 환경인 프레임 워크를 공개소스로 개발했다.
류박사 연구팀은 안드로이드 결함 검출기인 '하이브리드로이드'를 개발한 바 있다. 이를 발전·심화시킨 것이 이번 성과로 이어졌다. 하이브리드로이드는 자바와 자바 스크립트 언어 간 소통을 78개 규칙과 과정으로 규명했으나, 전체 상호작용을 모두 알지는 못했다. 이번 연구에서는 하이브리드로이드의 오탐율을 크게 낮추면서도 분석 속도를 평균 15배 이상 향상시켰다.
이번 성과는 다양한 이종 언어를 병용하는 핀테크나 뱅킹 앱 분야 보안성 향상에도 활용할 수 있다.
류석영 교수는 “새로 개발한 수학모델을 활용하면 안드로이드 OS에서 발생하는 다양한 오류와 보안 취약점을 방지할 수 있다”면서 “관련 논문은 SW 공학분야 최고 권위학회인 'ICSE 2019'에 채택될 만큼 학계 반향도 크다”고 설명했다.
대전=김영준기자 kyj85@etnews.com