$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

[국내논문] 바이너리 분석을 통한 UNIX 커널 기반 File System의 TOCTOU Race Condition 탐지
Detecting TOCTOU Race Condition on UNIX Kernel Based File System through Binary Analysis 원문보기

情報保護學會論文誌 = Journal of the Korea Institute of Information Security and Cryptology, v.31 no.4, 2021년, pp.701 - 713  

이석원 (한양대학교 컴퓨터공학과 바이오인공지능융합전공) ,  김문회 (한양대학교 컴퓨터공학과 바이오인공지능융합전공) ,  오희국 (한양대학교 컴퓨터공학과 바이오인공지능융합전공)

초록
AI-Helper 아이콘AI-Helper

Race Condition은 둘 이상의 프로세스가 하나의 공통 자원에 대해 입력이나 조작이 동시에 일어나 의도치 않은 결과를 가져오는 취약점이다. 해당 취약점은 서비스 거부 또는 권한 상승과 같은 문제를 초래할 수 있다. 소프트웨어에서 취약점이 발생하면 관련된 정보를 문서화하지만 종종 취약점의 발생 원인을 밝히지 않거나 소스코드를 공개하지 않는 경우가 있다. 이런 경우, 취약점을 탐지하기 위해서는 바이너리 레벨에서의 분석이 필요하다. 본 논문은 UNIX 커널기반 File System의 Time-Of-Check Time-Of-Use (TOCTOU) Race Condition 취약점을 바이너리 레벨에서 탐지하는 것을 목표로 한다. 지금까지 해당 취약점에 대해 정적/동적 분석 기법의 다양한 탐지 기법이 연구되었다. 기존의 정적 분석을 이용한 취약점 탐지 도구는 소스코드의 분석을 통해 탐지하며, 바이너리 레벨에서 수행한 연구는 현재 거의 전무하다. 본 논문은 바이너리 정적 분석 도구인 Binary Analysis Platform (BAP)를 통해 Control Flow Graph, Call Graph 기반의 File System의 TOCTOU Race Condition 탐지 방법을 제안한다.

Abstract AI-Helper 아이콘AI-Helper

Race Condition is a vulnerability in which two or more processes input or manipulate a common resource at the same time, resulting in unintended results. This vulnerability can lead to problems such as denial of service, elevation of privilege. When a vulnerability occurs in software, the relevant i...

Keyword

표/그림 (16)

AI 본문요약
AI-Helper 아이콘 AI-Helper

문제 정의

  • 본 논문에서는 정적 분석도구를 활용한 바이너리 분석을 통해 UNIX 커널 기반 File System의 TOCTOU Race Condition 탐지방법을 제안한다. 실제로 취약점을 포함한 소스코드의 바이너리 분석을 수행하였으며, 결과를 토대로 취약점을 유발하는 시그니처를 제안하였다.
  • 바이너리 레벨에서의정적 분석을 수행하는 BAP 의 확장 모듈인 CWE-Checker 또한 기존에 연구된 기법들과 비교하였을 때는 정확성과 Coverage 면에서는 완전하지 못하다. 본 논문에서는 단일함수 에서만 발생하는 취약점 외에도 서로 다른 자원을 참조하는 경우와 Inter-procedure 간 발생 가능한 취약점을 탐지하는 것을 목표로 한다.
  • 본 논문의 목표는 Linux 커널의 ELF 바이너리만을 대상으로 하는 것이 아닌, XNU 커널의 Mach-O 바이너리를 포함하여 UNIX 커널 기반의 File System을 대상으로 한 TOCTOU Race Condition 취약점을 탐지하는 것을 목표로 하고 있다. 취약점 탐지전략은 크게 두 가지의 경우로 나눠서 수행하고자 한다.
  • 본 논문에서는 새로운 유형의 취약점을 찾는 데 주를 둔 것이 아닌 기존의 알려진 취약 점 유형에 대해서 효율적으로 찾아내기 위해 동적 분석이 아닌 정적 분석 방식을 채택하게 되었으며, 소스코드가 없는 특수한 상황 하에 신속한 보안검증을 할 수 있는 바이너리 레벨의 분석을 통한 UNIX 커널 기반의 File System TOCTOU Race Condition 탐지방법을 제안하였다.

가설 설정

  • 이전의 연구에서 TOCTOU Race Condition을 탐지하기 위해 사용된 정적 분석 기법들은 Linux 환경을 기반으로 하며, 소스코드가 있다는 가정 하에 수행되었다. 따라서 동일한 UNIX 커널 기반의 운영체제인 Linux나 XNU라도 서로 다른 결과가 나올 수 있으며, 소스코드가 없는 경우에는 적용하기 어렵다는 단점이 있다.
본문요약 정보가 도움이 되었나요?

참고문헌 (20)

  1. SPRi, "Global Software Market Stat," https://stat.spri.kr/posts/view/22299?codestat_sw_market_global, last accessed Feb. 2021. 

  2. MITRE CVE, "Common Vulnerability and Exposure", https://cve.mitre.org/, last accessed Feb. 2021. 

  3. MITRE CWE, "7PK - Time and State," https://cwe.mitre.org/data/definitions/361.html, last accessed Feb. 2021. 

  4. NIST National Vulnerability Database, "CVE-2020-3957," https://nvd.nist. gov/vuln/detail/CVE-2020-3957, last accessed Feb. 2021. 

  5. Github, "CWE Checker," https://github.com/fkie-cad/cwe_checker, last accessed Feb. 2021. 

  6. Wikipedia, "Executable and Linkable Format,"https://en.wikipedia.org/wiki/Executable_and_Linkable_Format, last accessed Feb. 2021. 

  7. Github, "Mach-O Format," https://github.com/aidansteele/osx-abi-macho-file-format-reference, last accessed Feb. 2021. 

  8. Wikipedia, "Intermediate Representation," https://en.wikipedia.org/wiki/Intermediate_representation, last accessed Feb. 2021. 

  9. Hex-rays, "IDA Pro Decompiler," https://www.hex-rays.com/products/idahome/, last accessed Feb. 2021. 

  10. Wang, Fish, and Yan Shoshitaishvili. "Angr-the next generation of binary analysis," IEEE Cybersecurity Development (SecDev), pp.8-9, 2017. 

  11. Github, "Angr," https://github.com/angr/angr, last accessed Feb. 2021. 

  12. Brumley, David, et al. "BAP: A binary analysis platform," International Conference on Computer Aided Verification, pp.463-469, 2011. 

  13. Github, "Binary Analysis Platform," https://github.com/BinaryAnalysisPlatform/bap, last accessed Feb. 2021. 

  14. Github, "Radare2," https://github.com/radareorg/radare2, last accessed Feb. 2021. 

  15. Bishop, Matt, and Michael Dilger. "Checking for race conditions in file accesses," Computing systems, vol. 9, no. 2, pp.131-152, 1996 

  16. Chen, Hao, and David Wagner. "MOPS: an infrastructure for examining security properties of software," Proceedings of the 9th ACM Conference on Computer and Communications Security, pp.235-244, 2002. 

  17. Chess, Brian V. "Improving computer security using extended static checking," Proceedings 2002 IEEE Symposium on Security and Privacy, pp.160-173, 2002. 

  18. Dijkstra, Edsger W. "Guarded commands, nondeterminacy and formal derivation of programs," Communications of the ACM, vol. 18, no. 8, pp.453-457, Aug. 1975. 

  19. Wei, Jinpeng, and Calton Pu. "TOCTTOU Vulnerabilities in UNIX-Style File Systems: An Anatomical Study," Proceedings of the 4th USENIX Conference on File and Storage Technologies (FAST), pp.155-167, 2005. 

  20. NIST SARD, "Juliet Test Suite," https://samate.nist.gov/SARD/testsuite.php, last accessed Feb. 2021. 

저자의 다른 논문 :

활용도 분석정보

상세보기
다운로드
내보내기

활용도 Top5 논문

해당 논문의 주제분야에서 활용도가 높은 상위 5개 콘텐츠를 보여줍니다.
더보기 버튼을 클릭하시면 더 많은 관련자료를 살펴볼 수 있습니다.

관련 콘텐츠

오픈액세스(OA) 유형

FREE

Free Access. 출판사/학술단체 등이 허락한 무료 공개 사이트를 통해 자유로운 이용이 가능한 논문

이 논문과 함께 이용한 콘텐츠

저작권 관리 안내
섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로