uC/OS-II 운영체제의 보안 개선을 위한 자체 코드 무결성 검증 기법

uC/OS-II는 실시간성을 지원하는 선점형 멀티태스크 임베디드 운영체제다. 본 논문에서는 uC/OS-II 운영체제의 보안을 개선하기 위해, 두 가지의 코드 무결성 검증 기법을 제안한다. 첫 번째는, 전체 실행코드 무결성 검증 기법으로 운영체제(펌웨어)의 텍스트 영역 전체에 대한 위변조 여부를 주기적으로 확인한다. 이 기법은 전체 코드의 무결성을 보장하여 안전하지만 계산 오버헤드가 크다. 두 번째는, 경량화된 실행코드 무결성 검증 기법으로 운영체제 텍스트 영역 내의 일부 함수들을 무작위로 선정하여, 선정된 함수들의 위변조 여부를 주...

Full description

Saved in:
Bibliographic Details
Published in정보과학회 컴퓨팅의 실제 논문지 Vol. 25; no. 7; pp. 335 - 343
Main Authors 한승재(Seungjae Han), 김규식(Gyoosik Kim), 조성제(Seong-je Cho)
Format Journal Article
LanguageKorean
Published Korean Institute of Information Scientists and Engineers 01.07.2019
한국정보과학회
Subjects
Online AccessGet full text
ISSN2383-6318
2383-6326
DOI10.5626/KTCP.2019.25.7.335

Cover

Loading…
Abstract uC/OS-II는 실시간성을 지원하는 선점형 멀티태스크 임베디드 운영체제다. 본 논문에서는 uC/OS-II 운영체제의 보안을 개선하기 위해, 두 가지의 코드 무결성 검증 기법을 제안한다. 첫 번째는, 전체 실행코드 무결성 검증 기법으로 운영체제(펌웨어)의 텍스트 영역 전체에 대한 위변조 여부를 주기적으로 확인한다. 이 기법은 전체 코드의 무결성을 보장하여 안전하지만 계산 오버헤드가 크다. 두 번째는, 경량화된 실행코드 무결성 검증 기법으로 운영체제 텍스트 영역 내의 일부 함수들을 무작위로 선정하여, 선정된 함수들의 위변조 여부를 주기적으로 확인한다. 이 기법은 실행코드의 일부만 검증하는 대신 실행 오버헤드가 적다. 두 기법 모두 MD5와 같은 암호학적 해시 알고리즘을 사용하여 기존 체크섬 기반 검증기법보다 안전도를 높였다. 또한 외부 시스템의 도움 없이, 임베디드 시스템 내부에 구현하여 자체적으로 운영된다. 실제 임베디드 보드에 uC/OS-II 를 설치한 후, 제안한 두 기법을 주기 태스크로 구현하고 평가하여 유효성을 검증하였다. The uC/OS-II is a real-time and preemptive multitasking embedded operating system. In this paper, we propose two techniques for code integrity verification to improve the security of uC/OS-II operating system (OS). In order to verify the OS integrity, the first technique periodically evaluated whether or not the entire text area of the OS was illegally altered. This technique ensures the integrity of the entire code, however, it incurs a high computational overhead. The second technique is a lightweight one for verifying the integrity of execution code. It randomly selects specific functions in the OS text area and periodically evaluates whether or not the selected functions are altered. This technique requires limited execution overhead since it validates only a portion of the execution code. Both techniques use a cryptographic hash algorithm such as MD5, which is more secure than checksum-based integrity checks. Our proposed techniques are implemented on an embedded system and operate independently without the help of any external system. Following installation of uC/OS-II OS on a real embedded board, we implemented the two techniques as periodic tasks in the OS and demonstrated their effectiveness. KCI Citation Count: 0
AbstractList uC/OS-II는 실시간성을 지원하는 선점형 멀티태스크 임베디드 운영체제다. 본 논문에서는 uC/OS-II 운영체제의 보안을 개선하기 위해, 두 가지의 코드 무결성 검증 기법을 제안한다. 첫 번째는, 전체 실행코드 무결성 검증 기법으로 운영체제(펌웨어)의 텍스트 영역 전체에 대한 위변조 여부를 주기적으로 확인한다. 이 기법은 전체 코드의 무결성을 보장하여 안전하지만 계산 오버헤드가 크다. 두 번째는, 경량화된 실행코드 무결성 검증 기법으로 운영체제 텍스트 영역 내의 일부 함수들을 무작위로 선정하여, 선정된 함수들의 위변조 여부를 주기적으로 확인한다. 이 기법은 실행코드의 일부만 검증하는 대신 실행 오버헤드가 적다. 두 기법 모두 MD5와 같은 암호학적 해시 알고리즘을 사용하여 기존 체크섬 기반 검증기법보다 안전도를 높였다. 또한 외부 시스템의 도움 없이, 임베디드 시스템 내부에 구현하여 자체적으로 운영된다. 실제 임베디드 보드에 uC/OS-II 를 설치한 후, 제안한 두 기법을 주기 태스크로 구현하고 평가하여 유효성을 검증하였다. The uC/OS-II is a real-time and preemptive multitasking embedded operating system. In this paper, we propose two techniques for code integrity verification to improve the security of uC/OS-II operating system (OS). In order to verify the OS integrity, the first technique periodically evaluated whether or not the entire text area of the OS was illegally altered. This technique ensures the integrity of the entire code, however, it incurs a high computational overhead. The second technique is a lightweight one for verifying the integrity of execution code. It randomly selects specific functions in the OS text area and periodically evaluates whether or not the selected functions are altered. This technique requires limited execution overhead since it validates only a portion of the execution code. Both techniques use a cryptographic hash algorithm such as MD5, which is more secure than checksum-based integrity checks. Our proposed techniques are implemented on an embedded system and operate independently without the help of any external system. Following installation of uC/OS-II OS on a real embedded board, we implemented the two techniques as periodic tasks in the OS and demonstrated their effectiveness. KCI Citation Count: 0
Author 조성제(Seong-je Cho)
한승재(Seungjae Han)
김규식(Gyoosik Kim)
Author_xml – sequence: 1
  fullname: 한승재(Seungjae Han)
– sequence: 2
  fullname: 김규식(Gyoosik Kim)
– sequence: 3
  fullname: 조성제(Seong-je Cho)
BackLink https://www.kci.go.kr/kciportal/ci/sereArticleSearch/ciSereArtiView.kci?sereArticleSearchBean.artiId=ART002487293$$DAccess content in National Research Foundation of Korea (NRF)
BookMark eNo9jL1OwlAARm8MJiLyAk53cXBouT-9Px1JRW0kYoS4NqW0pkGLgTC4adLB0URJiCmGyckBawcXX6i9voOoxOmc4XzfJihFg8gHYBsjnXHCa0cd60QnCJs6YbrQKWVroEyopBqnhJf-HcsNUB2Nwi4iWBJDmrgMzsZWrdXWbBuqp0xNb1WaqXmiZlNYvGdqcgfzRaLiuZrFUCXx1ySB6vl-GUH1-Vg8JLB4zfJ0oeI3mKc36mUG849FkU62wHrgXoz86ooV0N5vdKxDrdk6sK16U4u4QTTpCUIYFphxibEwmAg4p8jjBhIedX2zy6kUBAVmz0MBpy4VhPqia_SWa4poBez-vUbDwOl7oTNww1-eD5z-0KmfdmyHSSYo-Wl3Vu14GF76vdB1rpbiDq-d49ZeA0nBkDAJ_QaAQ3fp
ContentType Journal Article
DBID DBRKI
TDB
ACYCR
DOI 10.5626/KTCP.2019.25.7.335
DatabaseName DBPIA - 디비피아
Nurimedia DBPIA Journals
Korean Citation Index
DatabaseTitleList
DeliveryMethod fulltext_linktorsrc
DocumentTitleAlternate A Self-Code Integrity Verification Technique for Improving the Security of uC/OS-II Operating System
DocumentTitle_FL A Self-Code Integrity Verification Technique for Improving the Security of uC/OS-II Operating System
EISSN 2383-6326
EndPage 343
ExternalDocumentID oai_kci_go_kr_ARTI_5857320
NODE08750792
GroupedDBID .UV
ALMA_UNASSIGNED_HOLDINGS
DBRKI
TDB
ACYCR
ID FETCH-LOGICAL-n642-8c7225171568117457f6630c6407c3ae9b638720f9dc0f63a3723e7b4d642303
ISSN 2383-6318
IngestDate Sun Mar 09 07:55:14 EDT 2025
Thu Feb 06 13:30:13 EST 2025
IsPeerReviewed false
IsScholarly false
Issue 7
Keywords periodic task
임베디드 운영체제
암호학적 해시 알고리즘
code integrity verification
cryptographic hash algorithm
uC/OS-II
코드 무결성 검증
주기 태스크
embedded operating system
Language Korean
LinkModel OpenURL
MergedId FETCHMERGED-LOGICAL-n642-8c7225171568117457f6630c6407c3ae9b638720f9dc0f63a3723e7b4d642303
PageCount 9
ParticipantIDs nrf_kci_oai_kci_go_kr_ARTI_5857320
nurimedia_primary_NODE08750792
PublicationCentury 2000
PublicationDate 2019-07
PublicationDateYYYYMMDD 2019-07-01
PublicationDate_xml – month: 07
  year: 2019
  text: 2019-07
PublicationDecade 2010
PublicationTitle 정보과학회 컴퓨팅의 실제 논문지
PublicationYear 2019
Publisher Korean Institute of Information Scientists and Engineers
한국정보과학회
Publisher_xml – name: Korean Institute of Information Scientists and Engineers
– name: 한국정보과학회
SSID ssib021824891
ssib044742771
ssib053377435
ssib019653237
Score 1.6918455
Snippet uC/OS-II는 실시간성을 지원하는 선점형 멀티태스크 임베디드 운영체제다. 본 논문에서는 uC/OS-II 운영체제의 보안을 개선하기 위해, 두 가지의 코드 무결성 검증 기법을 제안한다. 첫 번째는, 전체 실행코드 무결성 검증 기법으로 운영체제(펌웨어)의 텍스트 영역 전체에 대한...
SourceID nrf
nurimedia
SourceType Open Website
Publisher
StartPage 335
SubjectTerms 컴퓨터학
Title uC/OS-II 운영체제의 보안 개선을 위한 자체 코드 무결성 검증 기법
URI https://www.dbpia.co.kr/journal/articleDetail?nodeId=NODE08750792
https://www.kci.go.kr/kciportal/ci/sereArticleSearch/ciSereArtiView.kci?sereArticleSearchBean.artiId=ART002487293
Volume 25
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
ispartofPNX 정보과학회 컴퓨팅의 실제 논문지, 2019, 25(7), , pp.335-343
link http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnR3LbtNA0CrlABcEAsSzshA-RU5t7zq7e7SdQEvVFqkF9RbFzrq0kWIUmgMcEEg5cESCShVKUU-cOJSQAxd-hE9IzD8wu2s7LiDxuDjj2Znd8UzsnV17ZjTtdpthzGAeNEnIQxO3Wsik1LUAQnHEYh7bkQgUXl2rLT3A97bcrblT30pfLfX3wmr07LdxJf9jVcCBXUWU7D9YtugUEACDfeEIFobjX9m4HwDv-oa5vFwxGoHBPMPHEqDgIArAdzKMZxkskE11aAVq3_BRTu0aVKCAO6eiWHAocopV5xLbqAtyFihUw2BWMYxE-dCORe8MKSrf8AI5jieprKx3365kKCpRXg2GUigqqXzRpgpj5r5zfh1uSXpPAkEuF5OAZ1AloO9LorqQxqMCoDC6W9YDnIOIMx1JkYFE9Klkp7KNGLR4sVNoQbKDCCzTBpA7dIPD83O3xStLYm-ZzZgkobhcAEjO7QtJHHr3aZI82elUZHHrEg-MbJe1NrOlGCjpbpu7vBI8SnKmbP9GhoyV929Wkp545XLi05AsEk1NGTIuFm55lbI7z1JZ2skFpwuZNZRNY7yMU8kI8olORZhnNzQpzVpIZYzJHCCk8mb9PLeCoyy2eVY2g_vii0hWddwqqRasJ3KWr63XG6JUgkUYuEenHVjCibIqq88b-bNeJLJEpTxJopAAprO8TRgTDGzFOaxKYKEi6-UW16ti4IRci79KBb5itwcu5pluX9TJgIdtyW_cPK-dyxZ8uqfu3gvaXCe5qD3sB4vyvtXTd-P04GU6GqdHw_TwQJ9-Hqf7r_TJ8TAdHKWHAz0dDr7vD_X0_Wsg0tOvb6dvhvr043gyOk4Hn_TJ6EX64VCffDmejvYvaRt3GpvBkplVODG7sO43aUQckTLQFlkAbYJdEsMCwIrEy_UItTgLYXYE1cWsHVlxDbUQcRAnIW4DN_iel7X5btLlVzQdE8qtCHOCUBvHthtilzNu45blxKHddq9qt0AbzU600xT55MXvdtLs9Jqwal5uutQlyLGuaguFspqPVbKbZtmU1_5EcF07O_uL39Dm93p9fhOc9r1wQVr_B0PSwcg
linkProvider ISSN International Centre
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=uC%2FOS-II+%EC%9A%B4%EC%98%81%EC%B2%B4%EC%A0%9C%EC%9D%98+%EB%B3%B4%EC%95%88+%EA%B0%9C%EC%84%A0%EC%9D%84+%EC%9C%84%ED%95%9C+%EC%9E%90%EC%B2%B4+%EC%BD%94%EB%93%9C+%EB%AC%B4%EA%B2%B0%EC%84%B1+%EA%B2%80%EC%A6%9D+%EA%B8%B0%EB%B2%95&rft.jtitle=%EC%A0%95%EB%B3%B4%EA%B3%BC%ED%95%99%ED%9A%8C+%EC%BB%B4%ED%93%A8%ED%8C%85%EC%9D%98+%EC%8B%A4%EC%A0%9C+%EB%85%BC%EB%AC%B8%EC%A7%80&rft.au=%ED%95%9C%EC%8A%B9%EC%9E%AC%28Seungjae+Han%29&rft.au=%EA%B9%80%EA%B7%9C%EC%8B%9D%28Gyoosik+Kim%29&rft.au=%EC%A1%B0%EC%84%B1%EC%A0%9C%28Seong-je+Cho%29&rft.date=2019-07-01&rft.pub=Korean+Institute+of+Information+Scientists+and+Engineers&rft.issn=2383-6318&rft.eissn=2383-6326&rft.volume=25&rft.issue=7&rft.spage=335&rft.epage=343&rft_id=info:doi/10.5626%2FKTCP.2019.25.7.335&rft.externalDocID=NODE08750792
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=2383-6318&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=2383-6318&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=2383-6318&client=summon