SW 개발 환경이 다양해지면서, 여러 언어를 함께 사용하여 구현하는 다중언어 프로그램 개발이 보편화 되고 있다. 다중언어 프로그램은 서로 다른 언어의 특성을
함께 사용할 수 있다는 장점을 갖는 동시에, 언어 사이의 상호작용에서 예상치 못한 다양한 형태의 결함이 발생할 수 있고 이러한 결함이 보안 취약점으로 이어질
수 있다는 위험이 존재한다.
프로그램의 결함 및 보안 취약점을 사전에 탐지하는 정적분석 기법이 단일언어 프로그램을 대상으로 널리 사용되어 왔으나, 정적분석
기법은 프로그램의 구현 언어에 의존적이기 때문에 다중언어 프로그램을 대상으로는 적용이 제한된다. 본 세미나에서는 다중언어 프로그램, 특히 널리 활용되는
다중언어 안드로이드 앱에서 발생 가능한 결함 및 보안 취약점을 소개하고, 이를 탐지하는 정적분석 연구에 대해 소개한다.
2020.09 ~ 현재: 충남대학교 컴퓨터융합학부 조교수
2020.02 ~ 2020.08: 구글 Visiting Faculty Researcher
2014.03 ~ 2020.02: 한국과학기술원 박사과정 (지도교수: 류석영)
2012.02 ~ 2014.02: 한국과학기술원 석사과정 (지도교수: 한태숙)
2006.03 ~ 2012.02: 아주대학교 학사
자가-적응 소프트웨어(Self-adaptive software)는 요구사항에 따라 소프트웨어의 구조나 행동을 실행시간에 변화시키며 상황에 맞게
적응(adapt)하는 소프트웨어를 말한다. 본 연구는 자가-적응 소프트웨어의 프레임워크에 대한 연구로 크게 두 가지 특징을 갖고 있다.
2020.09 ~ 현재: 조교수, 소프트웨어학과, 충북대학교
2018.09 ~ 2020.08: 박사후연구원, 정보보호학과, 세종대학교
2017.09 ~ 2020.08: 외래교수, 컴퓨터공학과, 서울사이버대학교
2012.03 ~ 2018.08: 박사, 컴퓨터학과, 고려대학교
2006.03 ~ 2012.02: 학사, 컴퓨터정보학과, 고려대학교
소프트웨어 테스팅은 소프트웨어 품질을 향상시키는데 아주 중요한 역할을 하고 있다.
하지만 소프트웨어 크기와 복잡도가 기하급수적으로 증가하고 있기 때문에,
개발자가 버그를 찾기 위한 효과적인 소프트웨어 테스트를 작성하는데 어려움을 겪고 있다.
반면, 컴퓨팅 파워는 하드웨어 성능과 클라우드 컴퓨팅 기술의 발전에
힘입어 날이 갈수록 비용이 저렴해지고 있다.
따라서, 컴퓨팅 파워를 활용하여 소프트웨어를 과학적이고 체계적인 방법으로 자동으로 테스트하기 위한 연구가
필요하다.
본 발표에서는 최신 소프트웨어 테스트 자동 생성 기술인 CONBRIO와 FOCAL을 소개한다. CONBRIO는 크고 복잡한 소프트웨어의 테스트를 자동 생성하기
위해 소프트웨어를 구성하는 각 함수의 유닛 테스트를 자동으로 생성한다. 하지만 각 유닛은 전체 프로그램의 문맥 정보를 잃기 때문에 문맥 정보 부족으로 인한
거짓 경보가 발생할 수 있다. 이런 거짓 경보를 제거하기 위해 FOCAL은 유닛 테스트 실행 정보를 활용하여 시스템 레벨에서 버그를 재현할 수 있는 시스템
테스트를 자동으로 생성한다. CONBRIO와 FOCAL은 기존 벤치마크에서 효과적으로 버그를 찾았을 뿐 아니라 libpcre, libxml2와 같은 오픈 소스
프로젝트의 새로운 버그도 효과적으로 찾을 수 있었다.
2020 ~ 현재: 한양대학교 컴퓨터소프트웨어학부 조교수
2018 ~ 2020: KAIST 전산학부 연구조교수
2017 ~ 2018: KAIST 정보전자연구소 연수연구원
2007 ~ 2017: KAIST 전산학부 박사
2003 ~ 2017: KAIST 전산학부 학사
With the recent development of mobile devices, end-users' dependency on mobile devices has increased. At the same time, security threats are becoming more prevalent, and the importance of end-user security is increasing. In this talk. I will introduce my representative research related to 'Automated Mobile Security Solutions for End-users'. SEALANT (ICSE 2017) is a technique that combines static analysis of app code, which infers vulnerable communication channels, with runtime monitoring of inter-app communication through those channels, which helps to prevent attacks. SCUTUM is a technique that automatically detects event-based MOM systems' vulnerabilities that expose the system to event attacks. Fusion Learning for Fingerprint Anti-Spoofing is a robust fingerprint anti-spoofing technique that supports high detection accuracy, generalization performance, and lightweight models.
-Assistant Professor, Department of Information Security, Seoul Women’s University
-Staff Researcher, AI&SW Center, Samsung Advanced Institute of Technology
-Ph.D., Computer Science, University of Southern California
-B.S. & M.E., Computer Science, Korea University