KR101762859B1 - System and method for secure firmware update using callback - Google Patents

System and method for secure firmware update using callback Download PDF

Info

Publication number
KR101762859B1
KR101762859B1 KR1020160152412A KR20160152412A KR101762859B1 KR 101762859 B1 KR101762859 B1 KR 101762859B1 KR 1020160152412 A KR1020160152412 A KR 1020160152412A KR 20160152412 A KR20160152412 A KR 20160152412A KR 101762859 B1 KR101762859 B1 KR 101762859B1
Authority
KR
South Korea
Prior art keywords
firmware update
information
server
smart device
firmware
Prior art date
Application number
KR1020160152412A
Other languages
Korean (ko)
Inventor
남기효
Original Assignee
(주)유엠로직스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)유엠로직스 filed Critical (주)유엠로직스
Priority to KR1020160152412A priority Critical patent/KR101762859B1/en
Application granted granted Critical
Publication of KR101762859B1 publication Critical patent/KR101762859B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Abstract

The present invention relates to a system and a method for updating secure firmware to which a callback technique can be applied. More specifically, a callback technique is applied between a smart device including a communications means and multiple servers for managing firmware update data of the smart device. The system comprises: an input unit (100) for receiving inputted information of at least one server for managing firmware update data of a smart device; a safety verification unit (200) for determining firmware update safety by comparing and analyzing the information of a specific server for transmitting firmware update progress requesting information of the smart device and the information of the server inputted from the input unit (100) when the firmware update progress requesting information of the smart device is received from the specific server; and a security gateway unit (300) for receiving firmware update data to be progressed from the specific server for transmitting the firmware update progress requesting information of the smart device when the firmware update progress requesting information is determined to be safe in accordance with a result of the determination of firmware update safety of the safety verification unit (200).

Description

콜백 기법을 적용한 시큐어 펌웨어 업데이트 시스템 및 그 방법 {System and method for secure firmware update using callback}[0001] The present invention relates to a secure firmware update system employing a callback technique,

본 발명은 콜백 기법을 적용한 시큐어 펌웨어 업데이트 시스템 및 그 방법에 관한 것으로, 더욱 상세하게는 스마트 디바이스의 불법/악성 펌웨어 업데이트의 방지를 위해, 송신 서버의 안전성을 검증한 후, 콜백 기법을 토대로 검증된 송신 서버로부터만 펌웨어 업데이트 데이터를 전달받아, 스마트 디바이스의 펌웨어 업데이트를 수행함으로써, 펌웨어 업데이트를 안전하게 수행할 수 있는 콜백 기법을 적용한 시큐어 펌웨어 업데이트 시스템 및 그 방법에 관한 것이다.The present invention relates to a secure firmware update system and a method thereof applied to a callback technique, and more particularly, to a security firmware update system using a callback technique, and more particularly, And more particularly, to a secure firmware update system and a method thereof, which apply a callback technique that can securely perform firmware update by receiving firmware update data only from a transmission server and performing firmware update of a smart device.

최근 스마트홈 등의 유무선 인터넷 네트워크와 연결되는 스마트 디바이스가 증가하고 있으며, 이러한 스마트 디바이스는 원격 구동환경에서 구동하기 위한 펌웨어가 설치되어 있으며, 스마트 디바이스의 기기 제조사는 수시 또는 정기적으로 펌웨어의 업데이트를 수행하고 있다.Recently, smart devices connected to wired / wireless Internet networks such as smart home are increasing. Such smart devices have firmware for running in a remote driving environment, and device manufacturers of smart devices periodically or periodically update the firmware .

펌웨어라 하면, 일반적으로 롬(ROM, Read Only Memory)에 저장된 하드웨어를 제어하는 마이크로 프로그램을 의미하며, 프로그램이라는 관점에서 볼 경우, 소프트웨어와 동일하지만 하드웨어와 밀접한 관계를 가지고 있다는 점에서 일반 응용 소프트웨어와는 구분되고 있으며, 펌웨어는 소프트웨어와 하드웨어의 특성을 모드 가지고 있다고 보는 것이 일반적이다.Firmware refers to a microprogram that controls hardware stored in a ROM (Read Only Memory). In terms of programs, it is the same as software but has a close relationship with hardware. And it is common to see that the firmware has software and hardware characteristics as modes.

최근에는 스마트 디바이스의 하드웨어 변경 없이 펌웨어 업데이트를 통해서 스마트 디바이스에 새로운 기능을 추가할 수 있어, 점점 펌웨어 업데이트가 빈번하게 이루어지고 있으나, 그 이면을 보면 원격 구동환경에서 취약한 네트워크 보안으로 인해 스마트 디바이스의 비정상 동작을 위한 악성코드를 은닉한 펌웨어를 스마트 디바이스에 업데이트하는 것 역시 손쉽고 그리고 빈번하게 이루어지고 있다.In recent years, it has become possible to add new functions to a smart device through firmware update without changing the hardware of the smart device, and more and more firmware updates are frequently performed. However, It is also easy and frequent to update the firmware on the smart device that contains the malicious code for the operation.

이러한 악성 펌웨어 업데이트의 경우, 스마트 디바이스에 심각한 오류 및 각종 보안 위협이 가해진다는 점에서 반드시 방지해야 하는 기술이 요구된다.In the case of such a malicious firmware update, there is a serious problem that a serious error and various security threats are applied to the smart device.

특히, 스마트홈 등과 같이, 누구나 쉽게 접근할 수 있는 개방된 네트워크를 이용하는 스마트 디바이스의 경우, 외부의 사이버 공격에 매우 취약하며, 사이버 공격에 의한 물리적인 도난, 프라이버시 침해 뿐 아니라, 극단적으로 살인 등의 치명적인 사고가 발생할 수 있는 문제점이 있다.In particular, in the case of a smart device using an open network that can be easily accessed by anyone, such as a smart home, it is very vulnerable to external cyber attacks, and it is extremely vulnerable to cyber attacks such as physical theft and privacy violation, There is a problem that a fatal accident may occur.

이러한 펌웨어 업데이트에 보안성을 추가한 시큐어 펌웨어 업데이트를 위한 종래 기술로는 대표적으로 보안 플랫폼 모듈(TPM, Trusted Platform Module)과 행위기반 안전성 검사 등의 기술이 있다.Conventional technologies for secure firmware update with security added to the firmware update include technologies such as a Trusted Platform Module (TPM) and an action-based safety check.

보안 플랫폼 모듈의 경우, 송신자와 수신자 장비 각각의 하드웨어에 보안 플랫폼 모듈을 내장하여, 이를 통해서 펌웨어 정보를 등록한 후 펌웨어 업데이트시마다 인증을 통해 펌웨어의 안전성을 확인하는 방법이다. 하드웨어에 포함된 보안모듈을 통한 상호 인증을 제공하기 때문에 보안기술 측면에서 보면 가장 안전한 기술이지만, 이를 적용하기 위해서는 송신자와 수신자 양측의 기기 모두에 보안 플랫폼 모듈을 채택하여 하드웨어로 구현하고 있어야 적용이 가능하고, 특히, 스마트홈과 같이 다수의 스마트 디바이스를 구동해야하는 환경에서 펌웨어를 제공하는 모든 생산자들이 각각 보안 플랫폼 모듈을 적용해야 하는 것은 현실적으로 매우 어려울 뿐 아니라, 이를 위한 적용 비용 또한 만만치 않게 발생하고 있다.In the case of the security platform module, the security platform module is embedded in the hardware of each of the sender and the receiver equipment, the firmware information is registered through the security platform module, and the security of the firmware is verified through authentication after every firmware update. It is the most secure technology from the viewpoint of security technology because it provides mutual authentication through the security module included in the hardware. However, in order to apply this security platform module to both the sender and the receiver, In particular, it is very difficult to apply security platform modules to all producers providing firmware in an environment where a large number of smart devices such as a smart home must be driven. In addition, it is difficult to apply the security platform modules.

행위기반 안전성 검사의 경우, 펌웨어 업데이트시 수신측 스마트 디바이스 또는 수신측 보안전용 장비에서 펌웨어 업데이트를 가상 실행함으로써 실제 펌웨어 업데이트의 안전성을 체크하고 업데이트 적용여부를 판단하여 수행하는 기술이다. 이 경우, 수신되는 펌웨어 업데이트의 안전성을 가상 행위기반으로 탐지하기 때문에, 기존 행위기반 탐지 기술이 갖는 부정확성의 문제가 그대로 계승되며, 다양한 스마트 디바이스를 대상으로 동시에 펌웨어 업데이트가 이루어질 경우, 스마트홈 구동의 장애가 발생하는 문제점이 있다.In the case of the behavior-based safety check, when the firmware is updated, the receiving smart device or the receiving-side security dedicated device performs the firmware update to check the security of the actual firmware update and determine whether the update is applied or not. In this case, since the security of the received firmware update is detected based on the virtual behavior, the problem of the inaccuracy inherent in the existing behavior-based detection technology is inherited, and when the firmware is updated simultaneously with various smart devices, There is a problem that a failure occurs.

이와 관련해서, 국내 공개 특허 제10-2009-0076712호("펌웨어 업그레이드 시스템")에서는 펌웨어 업그레이드 데이터를 저장하는 공유기를 이용하여, 디지털 기기들의 펌웨어 업그레이드를 푸쉬/풀 방식으로 수행함으로써, 펌웨어 업그레이드 데이터를 실제 업그레이드가 이루어질 단말과는 별도로 저장함으로써, 펌웨어 업그레이드를 안전하게 수행하는 시스템 및 방법을 개시하고 있다.In this regard, in Korean Patent Laid-Open No. 10-2009-0076712 ("FIRMWARE UPGRADE SYSTEM"), firmware upgrade of digital devices is performed in a push / pull manner using a router for storing firmware upgrade data, Is stored separately from the terminal to be actually upgraded, thereby safely performing a firmware upgrade.

국내공개특허 제10-2009-0076712호(공개일자 2009.07.13.)Korean Patent Laid-Open No. 10-2009-0076712 (Published on Jul. 13, 2009)

본 발명은 상기한 바와 같은 종래 기술의 문제점을 해결하기 위하여 안출된 것으로, 본 발명의 목적은 스마트 디바이스의 불법/악성 펌웨어 업데이트의 방지를 위해, 송신 서버의 안전성을 검증한 후, 콜백 기법을 토대로 검증된 송신 서버로부터만 펌웨어 업데이트 데이터를 전달받아, 스마트 디바이스의 펌웨어 업데이트를 수행함으로써, 시큐퍼 펌웨어 업데이트를 수행할 수 있는 콜백 기법을 적용한 시큐어 펌웨어 업데이트 시스템 및 그 방법을 제공하는 것이다.SUMMARY OF THE INVENTION The present invention has been made in order to solve the above-mentioned problems of the prior art, and an object of the present invention is to provide a smart device which can prevent illegal / malicious firmware update of a smart device, A secure firmware update system that applies a callback technique capable of performing secure firmware update by receiving firmware update data only from a verified transmission server and performing firmware update of a smart device, and a method thereof.

본 발명의 일 실시예에 따른 콜백 기법을 적용한 시큐어 펌웨어 업데이트 시스템은, 통신 수단을 포함하는 스마트 디바이스와 상기 스마트 디바이스의 펌웨어 업데이트 데이터를 관리하는 다수의 서버 간의 콜백 기법을 적용한 시큐어 펌웨어 업데이트 시스템에 있어서, 스마트 디바이스의 펌웨어 업데이트 데이터를 관리하는 적어도 하나의 서버의 정보를 입력받는 입력부(100), 특정 서버로부터 상기 스마트 디바이스의 펌웨어 업데이트 진행 요청 정보가 수신될 경우, 상기 스마트 디바이스의 펌웨어 업데이트 진행 요청 정보를 송신한 상기 특정 서버의 정보와 상기 입력부(100)에서 입력받은 상기 서버의 정보를 비교 분석하여, 펌웨어 업데이트 안전성을 판단하는 안전성 검증부(200) 및 상기 안전성 검증부(200)의 펌웨어 업데이트 안전성 판단 결과에 따라, 상기 특정 서버의 펌웨어 업데이트 진행 요청 정보가 안전하다고 판단될 경우, 상기 스마트 디바이스의 펌웨어 업데이트 진행 요청 정보를 송신한 상기 특정 서버로부터 진행하고자 하는 펌웨어 업데이트 데이터를 수신받는 보안 게이트웨이부(300)를 포함하는 것을 특징으로 한다.A secure firmware update system to which a callback technique according to an embodiment of the present invention is applied includes a secure firmware update system applying a callback technique between a smart device including communication means and a plurality of servers managing firmware update data of the smart device An input unit 100 for receiving information on at least one server for managing firmware update data of the smart device, and a controller for receiving firmware update progress request information of the smart device, A safety verification unit 200 that compares the information of the specific server that transmitted the authentication information with the information of the server received from the input unit 100 to determine the security of the firmware update, In the judgment result The security gateway unit 300 receives the firmware update data to be transmitted from the specific server that transmitted the firmware update progress request information of the smart device when it is determined that the firmware update progress request information of the specific server is secure .

더 나아가, 상기 입력부(100)는 입력받은 상기 스마트 디바이스의 펌웨어 업데이트 데이터를 관리하는 적어도 하나의 서버의 정보를 목록화하여 저장 및 관리하는 서버정보 데이터베이스부(110)를 더 포함하는 것을 특징으로 한다.Furthermore, the input unit 100 may further include a server information database unit 110 for listing, storing, and managing information of at least one server that manages firmware update data of the input smart device .

더 나아가, 상기 서버 정보는 펌웨어의 HW 버전 정보, 펌웨어의 SW 버전 정보, 서버 IP 정보 및 서버 URL 정보 중 적어도 어느 하나를 포함하는 것을 특징으로 한다.Further, the server information may include at least one of HW version information of the firmware, SW version information of the firmware, server IP information, and server URL information.

더 나아가, 상기 안전성 검증부(200)는 상기 특정 서버로부터 상기 스마트 디바이스의 펌웨어 업데이트 진행 요청 정보가 수신되는 정보 수신부(210), 상기 스마트 디바이스의 펌웨어 업데이트 진행 요청 정보를 송신한 상기 특정 서버의 정보를 추출하는 정보 추출부(220) 및 상기 입력부(100)에서 입력받은 상기 서버의 정보와 상기 정보 추출부(220)에서 추출한 상기 특정 서버의 정보를 비교 분석하여, 펌웨어 업데이트 안전성을 판단하는 비교 분석부(230)를 포함하는 것을 특징으로 한다.Furthermore, the safety verification unit 200 may include an information receiving unit 210 receiving the firmware update progress request information of the smart device from the specific server, information of the specific server that transmitted the firmware update progress request information of the smart device, The information extracting unit 220 for extracting the information of the specific server extracted by the information extracting unit 220 and the information of the server received from the input unit 100 and the information of the specific server extracted by the information extracting unit 220, (230). ≪ IMAGE >

더 나아가, 상기 보안 게이트웨이부(300)는 상기 안전성 검증부(200)의 펌웨어 업데이트 안전성 판단 결과에 따라, 상기 특정 서버의 펌웨어 업데이트 진행 요청 정보가 안전하다고 판단될 경우, 상기 특정 서버로의 콜백 접속을 수행하며, 진행하고자 하는 펌웨어 업데이트 데이터를 수신받는 업데이트 통신부(310), 상기 업데이트 통신부(310)에서 수신받은 상기 펌웨어 업데이트 데이터를 상기 스마트 디바이스로 전달하는 데이터 전달부(320) 및 상기 업데이트 통신부(310)에서 수신받아 업데이트가 진행된 펌웨어 정보를 데이터베이스화하여 저장 및 관리하는 업데이트정보 데이터베이스부(330)를 포함하며, 상기 업데이트정보 데이터베이스부(330)는 상기 안전성 검증부(200)의 펌웨어 업데이트 안전성 판단 결과에 따라, 상기 특정 서버의 펌웨어 업데이트 진행 요청 정보가 안전하지 않다고 판단될 경우, 안전하지 않다고 판단된 상기 특정 서버의 정보를 별도로 데이터베이스화하여 저장 및 관리하는 것을 특징으로 한다.If the security gateway unit 300 determines that the firmware update process request information of the specific server is safe according to a result of the firmware update safety determination of the safety verification unit 200, A data transfer unit 320 for transferring the firmware update data received from the update communication unit 310 to the smart device, and an update communication unit 320 for transferring the firmware update data received from the update communication unit 310 to the smart device, The update information database unit 330 receives firmware update information received from the firmware update unit 310 and stores and manages the updated firmware information in a database. According to the result, the firmware update update of the specific server If determined that the requested information is not secure, and a judgment as unsafe information of the specific server separately it databasing characterized in that the storage and management.

본 발명의 일 실시예에 따른 콜백 기법을 적용한 시큐어 펌웨어 업데이트 방법은, 통신 수단을 포함하는 스마트 디바이스와 상기 스마트 디바이스의 펌웨어 업데이트 데이터를 관리하는 서버 간의 콜백 기법을 적용한 시큐어 펌웨어 업데이트 방법에 있어서, 스마트 디바이스의 펌웨어 업데이트를 관리하는 서버의 정보를 입력받아 목록화하는 안전 목록 설정 단계(S100), 특정 서버로부터 상기 스마트 디바이스의 펌웨어 업데이트 진행 요청 정보가 수신되는 펌웨어 업데이트 요청 단계(S200), 상기 안전 목록 설정 단계(S100)에서 입력받은 상기 서버의 정보와, 상기 펌웨어 업데이트 요청 단계(S200)에서 상기 스마트 디바이스의 펌웨어 업데이트 진행 요청 정보를 송신한 상기 특정 서버의 정보를 비교 분석하여, 펌웨어 업데이트 안전성을 판단하는 안전성 검증 단계(S300), 상기 안전성 검증 단계(S300)의 판단 결과에 따라, 상기 특정 서버의 펌웨어 업데이트 진행 요청 정보가 안전하다고 판단될 경우, 상기 특정 서버로의 콜백 접속을 수행하는 콜백 접속 단계(S400) 및 상기 특정 서버에서 진행하고자 하는 펌웨어 업데이트 데이터를 수신받아, 상기 스마트 디바이스의 펌웨어 업데이트를 실행하는 업데이트 단계(S500)로 이루어지는 것을 특징으로 한다.A secure firmware update method using a callback technique according to an embodiment of the present invention is a secure firmware update method applying a callback technique between a smart device including communication means and a server managing firmware update data of the smart device, A safety list setting step (S100) of receiving and cataloging information of a server managing firmware update of a device, a firmware update requesting step (S200) of receiving firmware update progress request information of the smart device from a specific server, The information of the server inputted in the setting step S100 and the information of the specific server which transmitted the firmware update progress request information of the smart device in the firmware update request step S200 are compared and analyzed to determine the firmware update safety Safety A callback access step S400 for performing a callback connection to the specific server when it is determined that the firmware update progress request information of the specific server is safe according to the determination result of the safety verification step S300, And an update step (S500) of receiving firmware update data to be executed in the specific server and executing firmware update of the smart device.

더 나아가, 상기 서버 정보는 펌웨어의 HW 버전 정보, 펌웨어의 SW 버전 정보, 서버 IP 정보 및 서버 URL 정보 중 적어도 어느 하나를 포함하는 것을 특징으로 한다.Further, the server information may include at least one of HW version information of the firmware, SW version information of the firmware, server IP information, and server URL information.

더 나아가, 상기 안전성 검증 단계(S300)는 상기 펌웨어 업데이트 요청 단계(S200)에서 상기 스마트 디바이스의 펌웨어 업데이트 진행 요청 정보를 송신한 상기 특정 서버에 대한 서버 정보를 추출하며, 추출한 상기 특정 서버의 정보와 상기 안전 목록 설정 단계(S100)에서 입력받은 상기 서버의 정보를 비교 분석하여, 펌웨어 업데이트 안전성을 판단하는 것을 특징으로 한다.In addition, the safety verification step (S300) extracts server information for the specific server that transmitted the firmware update progress request information of the smart device in the firmware update request step (S200), and extracts information of the extracted specific server The security information updating unit compares the information of the server received in the security list setting step S100 to determine the firmware update safety.

상기와 같은 구성에 의한 본 발명의 콜백 기법을 적용한 시큐어 펌웨어 업데이트 시스템 및 그 방법은 스마트 디바이스의 불법/악성 펌웨어 업데이트의 방지를 위해, 송신 서버의 안전성을 검증한 후, 콜백 기법을 토대로 검증된 송신 서버로부터만 펌웨어 업데이트 데이터를 전달받아, 스마트 디바이스의 펌웨어 업데이트를 수행함으로써, 펌웨어 업데이트를 안전하게 수행할 수 있는 장점이 있다.The secure firmware update system and method using the callback technique according to the present invention constructed as described above can verify the safety of the transmission server in order to prevent illegal / malicious firmware update of the smart device, The firmware update data is received only from the server and the firmware update of the smart device is performed, so that the firmware update can be performed safely.

즉, 다수의 스마트 디바이스 별 펌웨어 업데이트를 수행할 수 있는 제조사별 펌웨어 업데이트 서버의 IP 주소 등을 사전에 등록하여 목록화하고, 펌웨어 업데이트 진행이 이루어지기 전에, 펌웨어 업데이트를 진행하고자 하는 서버의 정보를 확인하여 안전성 검증을 수행하며, 스마트 디바이스의 보안 게이트웨이가 직접 펌웨어 업데이트를 진행하고자 하는 서버로 콜백 접속하여 펌웨어 업데이트 데이터를 전달받아 실제 펌웨어 업데이트를 수행하기 때문에, 개방된 네트워크라고 하더라도 충분히 악성 펌웨어 업데이트 등의 사이버 공격을 차단할 수 있는 효과가 있다.That is, the IP address of the firmware update server for each manufacturer, which can perform firmware update for each of a plurality of smart devices, is registered and cataloged in advance, and information about the server to which the firmware update is to be performed And the security gateway of the smart device performs callback access to the server to directly perform the firmware update and receives the firmware update data to perform the actual firmware update. Therefore, even if the open network is malicious firmware update It is possible to block the cyber attack of the user.

도 1은 본 발명의 일 실시예에 따른 콜백 기법을 적용한 시큐어 펌웨어 업데이트 시스템을 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 콜백 기법을 적용한 시큐어 펌웨어 업데이트 방법을 나타낸 순서도이다.
1 is a diagram illustrating a secure firmware update system to which a callback technique according to an embodiment of the present invention is applied.
2 is a flowchart illustrating a secure firmware update method using a callback technique according to an embodiment of the present invention.

이하 첨부한 도면들을 참조하여 본 발명의 콜백 기법을 적용한 시큐어 펌웨어 업데이트 시스템 및 그 방법을 상세히 설명한다. 다음에 소개되는 도면들은 당업자에게 본 발명의 사상이 충분히 전달될 수 있도록 하기 위해 예로서 제공되는 것이다. 따라서, 본 발명은 이하 제시되는 도면들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 또한, 명세서 전반에 걸쳐서 동일한 참조번호들은 동일한 구성요소들을 나타낸다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, a secure firmware update system and a method thereof according to the present invention will be described in detail with reference to the accompanying drawings. The following drawings are provided by way of example so that those skilled in the art can fully understand the spirit of the present invention. Therefore, the present invention is not limited to the following drawings, but may be embodied in other forms. In addition, like reference numerals designate like elements throughout the specification.

이 때, 사용되는 기술 용어 및 과학 용어에 있어서 다른 정의가 없다면, 이 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 통상적으로 이해하고 있는 의미를 가지며, 하기의 설명 및 첨부 도면에서 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 설명은 생략한다.In this case, unless otherwise defined, technical terms and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. In the following description and the accompanying drawings, A description of known functions and configurations that may unnecessarily obscure the description of the present invention will be omitted.

더불어, 시스템은 필요한 기능을 수행하기 위하여 조직화되고 규칙적으로 상호 작용하는 장치, 기구 및 수단 등을 포함하는 구성 요소들의 집합을 의미한다.In addition, a system refers to a collection of components, including devices, mechanisms, and means that are organized and regularly interact to perform the required function.

본 발명의 콜백 기법을 적용한 시큐어 펌웨어 업데이트 시스템 및 그 방법은 불법적인 송신자로부터의 악성 펌웨어 업데이트를 방지하기 위한 것으로,The secure firmware update system and method using the callback technique of the present invention is for preventing malicious firmware update from an illegal sender,

스마트홈 등의 개방된 네트워크를 이용하는 스마트 디바이스에 대해, 펌웨어 업데이트에 안전한 송신 서버 정보들을 사전에 등록하여 목록화하고, 펌웨어 업데이트 요청시 사전에 목록화한 송신 서버 목록과 비교하여 안전성을 검증한 후, 해당하는 펌웨어 업데이트의 송신 서버에 직접 접속하여, 펌웨어 업데이트 실행함으로써, 악성 펌웨어 업데이트를 정확도 높게 차단할 수 있다.For smart devices using an open network such as a smart home, secure transmission server information for firmware update is registered in advance and cataloged. When the firmware update request is made, the safety is verified by comparing with the transmission server list cataloged in advance , The malicious firmware update can be blocked with high accuracy by directly connecting to the transmission server of the corresponding firmware update and executing the firmware update.

여기서, 콜백(callback) 기법이란, 성공적인 연결 후 보안확인 등의 이유로 연결을 끊은 다음 재호출을 하는 보안 기능이다. 즉, 본 발명의 일 실시예에 따르면, 펌웨어 업데이트를 수행하기 위해 송신 서버가 스마트 디바이스에 개방된 네트워크를 이용하여 접속할 경우, 일부러 그 접속을 차단하여 송신 서버의 안전성 검증을 수행한 후, 송신 서버에 접속을 시도(수행/재호출)하여 펌웨어 업데이트가 이루어질 수 있도록 하는 것을 의미한다.Here, the callback technique is a security function that disconnects after a successful connection, such as security check, and re-calls. That is, according to an embodiment of the present invention, when a transmission server accesses a smart device through a network that is open to perform a firmware update, it deliberately blocks the connection to perform security verification of the transmission server, (Execute / re-invoke) the firmware to be updated.

도 1은 본 발명의 일 실시예에 따른 콜백 기법을 적용한 시큐어 업데이트 시스템을 나타낸 도면으로, 도 1을 참조로 하여 본 발명의 일 실시예에 따른 콜백 기법을 적용한 시큐어 업데이트 시스템을 상세히 설명한다.FIG. 1 is a diagram illustrating a secure update system to which a callback technique according to an embodiment of the present invention is applied. Referring to FIG. 1, a secure update system to which a callback technique according to an embodiment of the present invention is applied will be described in detail.

본 발명의 일 실시예에 따른 콜백 기법을 적용한 시큐어 업데이트 시스템은 개방된 네트워크로의 통신 수단을 포함하는 다수의 스마트 디바이스와 상기 스마트 디바이스의 펌웨어 업데이트 데이터를 관리하는 다수의 서버 간의 콜백 기법을 적용한 시큐어 펌웨어 업데이트 시스템에 관한 것으로서, 도 1에 도시된 바와 같이, 입력부(100), 안전성 검증부(200) 및 보안 게이트웨이부(300)를 포함하여 구성되는 것이 바람직하다.The secure update system to which the callback technique according to an embodiment of the present invention is applied includes a secure server that applies a callback technique between a plurality of smart devices including communication means to an open network and a plurality of servers that manage firmware update data of the smart device The firmware updating system is preferably configured to include an input unit 100, a security verification unit 200, and a security gateway unit 300, as shown in FIG.

이 때, 상기 스마트 디바이스는 통신수단, 펌웨어 업데이트 데이터를 저장하는 메모리부 및 펌웨어 업데이트 데이터를 실행하는 프로세서인 업데이트부를 포함하여 구성되는 것이 바람직하며, 하나의 스마트 디바이스에는 다양한 펌웨어가 포함되어 있기 때문에, 하나의 스마트 디바이스라 하더라도 다수의 서버와 연결될 수 있으며, 스마트홈 등은 다수의 스마트 디바이스로 이루어져 홈 네트워크 시스템이 이루어지기 때문에, 도 1과 같이, 다수의 스마트 디바이스와 다수의 서버를 포함하는 것이 바람직하다.In this case, the smart device preferably includes a communication unit, a memory unit for storing firmware update data, and an update unit, which is a processor for executing firmware update data. Since one smart device includes various firmware, As shown in FIG. 1, it is preferable to include a plurality of smart devices and a plurality of servers, since a smart home may be connected to a plurality of servers even if one smart device is used. Do.

상기 서버는 상기 스마트 디바이스의 제조사에서 관리하는 서버인 것이 바람직하며, 수시 또는 정기적으로 스마트 디바이스에 설치되어 있는 펌웨어 업데이트를 위한 데이터를 전달받아 스마트 디바이스의 펌웨어 업데이트를 수행하는 것이 상기 서버의 역할이다.Preferably, the server is a server managed by the manufacturer of the smart device, and the server performs the firmware update of the smart device by receiving data for firmware update installed in the smart device at any time or periodically.

각 구성에 대해서 자세히 알아보자면,To learn more about each configuration,

상기 입력부(100)는 상기 스마트 디바이스의 펌웨어 업데이트 데이터를 관리하는 적어도 하나의 서버의 정보를 입력받을 수 있으며, 서버정보 데이터베이스부(110)를 통해서 입력받은 상기 서버의 정보를 목록화하여 저장 및 관리하는 것이 바람직하다.The input unit 100 may receive information of at least one server that manages firmware update data of the smart device. The input unit 100 may list the information of the server received through the server information database unit 110, .

즉, 상기 스마트 디바이스의 제조사는 스마트 디바이스의 펌웨어 업데이트를 수행하는 서버에 대한 정보를 상기 입력부(100)를 통해서 입력하는 것이 바람직하며, 이 때 입력하는 서버 정보로는 펌웨어의 HW 버전 정보, 펌웨어의 SW 버전 정보, 서버 IP 정보 및 서버 URL 정보 중 적어도 어느 하나를 포함하는 것이 바람직하다. 특히, 서버 IP 정보는 반드시 포함하고 있는 것이 바람직하며, 추후에 상기 서버가 스마트 디바이스의 펌웨어 업데이트를 위해 개방된 네트워크를 통해 상기 스마트 디바이스로 펌웨어 업데이트 데이터를 전송을 원할 경우, 전송하기 앞서서 입력받은 정보를 토대로 안전성 여부를 검증받게 된다.That is, it is preferable that the manufacturer of the smart device inputs information on the server performing the firmware update of the smart device via the input unit 100. The input server information includes the HW version information of the firmware, SW version information, server IP information, and server URL information. In particular, it is preferable that the server IP information be included. If the server desires to transmit firmware update data to the smart device through a network opened for updating the firmware of the smart device in the future, Based on the results of this study.

상기 안전성 검증부(200)는 특정 서버로부터 상기 스마트 디바이스의 펌웨어 업데이트 진행 요청 정보가 수신될 경우, 상기 스마트 디바이스의 펌웨어 업데이트 진행 요청 정보를 송신한 상기 특정 서버의 정보와, 상기 입력부(100)를 통해서 입력받은 상기 서버의 정보를 비교 분석하여, 상기 특정 서버를 통한 펌웨어 업데이트 안전성을 판단할 수 있다.When the firmware update progress request information of the smart device is received from the specific server, the safety verification unit 200 checks the information of the specific server that transmitted the firmware update progress request information of the smart device, It is possible to determine the security of firmware update through the specific server by comparing and analyzing information of the server received through the server.

이 때, 상기 특정 서버란, 상기 스마트 디바이스에 설치되어 있는 다양한 펌웨어를 관리하는 다수의 서버 중 펌웨어 업데이트를 수행하고자 하는 서버를 의미하며, 본 발명의 일 실시예에 따른 특정 서버는 하나의 서버를 의미하지만, 이는 본 발명의 일 실시예에 불과하며, 상황에 따라서 다수의 서버에서 동시다발적으로 또는 순차적으로 펌웨어 업데이트를 수행하고자 하여 상기 스마트 디바이스로의 데이터 전송을 요청할 수도 있다.In this case, the specific server refers to a server that performs firmware update among a plurality of servers that manage various firmware installed in the smart device, and the specific server according to an exemplary embodiment of the present invention includes one server However, it is only an embodiment of the present invention, and it may request data transmission to the smart device to perform firmware update concurrently or sequentially in a plurality of servers according to the situation.

상기 안전성 검증부(200)는 도 1에 도시된 바와 같이, 정보 수신부(210), 정보 추출부(220) 및 비교 분석부(230)를 포함하여 구성될 수 있다.The safety verification unit 200 may include an information receiving unit 210, an information extraction unit 220, and a comparison and analysis unit 230, as shown in FIG.

상기 정보 수신부(210)는 상기 특정 서버로부터 상기 스마트 디바이스의 펌웨어 업데이트 진행 요청 정보가 수신되는 것을 감지할 수 있다. 즉, 상기 특정 서버가 상기 스마트 디바이스가 접속하고 있는 개방된 네트워크를 통해, 상기 스마트 디바이스의 펌웨어 업데이트 진행을 위한 펌웨어 업데이트 데이터를 전송하고자 하는 것을 감지할 수 있다.The information receiving unit 210 may detect that the firmware update progress request information of the smart device is received from the specific server. That is, the specific server can detect, through the open network to which the smart device is connected, that it wants to transmit firmware update data for firmware update progress of the smart device.

상기 정보 추출부(220)는 상기 정보 수신부(210)에서 감지한 상기 특정 서버의 정보를 추출할 수 있다. 다시 말하자면, 상기 정보 추출부(220)는 상기 스마트 디바이스의 펌웨어 업데이트 진행 요청 정보를 송신한 상기 특정 서버의 정보를 추출할 수 있으며, 이 때, 추출하는 상기 특정 서버의 정보로는 펌웨어의 HW 버전 정보, 펌웨어의 SW 버전 정보, 서버 IP 정보 및 서버 URL 정보 중 적어도 어느 하나를 포함하는 것이 바람직하다. 특히, 서버 IP 정보는 반드시 포함하고 있는 것이 바람직하다.The information extracting unit 220 may extract the information of the specific server detected by the information receiving unit 210. In other words, the information extracting unit 220 can extract the information of the specific server that has transmitted the firmware update progress request information of the smart device. At this time, as the information of the specific server to extract, the HW version of the firmware Information of the firmware, SW version information of the firmware, server IP information, and server URL information. In particular, the server IP information should preferably be included.

상기 비교 분석부(230)는 상기 서버정보 데이터베이스부(110)에서 목록화하여 저장 및 관리하고 있는 상기 서버의 정보와, 상기 정보 추출부(220)에서 추출한 상기 특정 서버의 정보를 비교 분석하여, 펌웨어 업데이트 안전성을 판단할 수 있다.The comparison and analysis unit 230 compares the information of the server listed and stored and managed in the server information database unit 110 with the information of the specific server extracted by the information extraction unit 220, Firmware update safety can be judged.

비교 분석하는 방법으로는, 상기 서버정보 데이터베이스부(110)에서 목록화하여 저장 및 관리하고 있는 상기 서버의 정보에 상기 특정 서버의 정보가 포함되어 있는지를 비교하여, 상기 서버의 정보에 상기 특정 서버의 정보가 포함되어 있는지 여부를 판단하는 방법이 가장 기본적이며, 이 외에도 다양한 방법을 통해서 악성 펌웨어 업데이트 데이터를 전송하고자 하는 특정 서버를 구분할 수 있다.As a comparative analysis method, it is possible to compare whether information of the specific server is included in the information of the server which is cataloged, stored and managed in the server information database unit 110, Of the malicious firmware update data is the most basic. In addition, it is possible to identify a specific server to which malicious firmware update data is to be transmitted through various methods.

특히, 상기 서버의 정보에 상기 특정 서버의 정보가 포함되어 있지 않을 경우, 악성 펌웨어 업데이트 데이터를 전송하고자 하는 특정 서버인 것으로 판단하는 것이 바람직하다.In particular, when information on the specific server is not included in the information of the server, it is preferable that the malicious firmware update data is determined to be a specific server to which malicious firmware update data is to be transmitted.

또한, 상기 스마트 디바이스의 사용자가 특정 펌웨어에 대해서 업데이트를 거부 설정하였을 경우, 상기 서버정보 데이터베이스부(110)에서 거부 설정한 펌웨어 업데이트 데이터를 관리하는 서버의 목록을 삭제함으로써, 펌웨어 업데이트가 이루어지지 않도록 차단할 수 있다.In addition, when the user of the smart device sets the refusal of the update for the specific firmware, the list of the servers managing the firmware update data set by the server information database unit 110 is deleted so that the firmware update is not performed Can be blocked.

상기 보안 게이트웨이부(300)는 상기 안전성 검증부(200)의 펌웨어 업데이트 안전성 판단 결과에 따라, 상기 특정 서버의 펌웨어 업데이트 진행 요청 정보가 안전하다고 판단될 경우, 상기 스마트 디바이스의 펌웨어 업데이트 진행 요청 정보를 송신한 상기 특정 서버로부터 진행하고자 하는 펌웨어 업데이트 데이터를 수신받을 수 있다.If the security gateway unit 300 determines that the firmware update process request information of the specific server is safe according to the security update determination result of the safety verification unit 200, And receive the firmware update data to be transmitted from the specific server that has transmitted the data.

상기 보안 게이트웨이부(300)는 도 1에 도시된 바와 같이, 업데이트 통신부(310), 데이터 전달부(320) 및 업데이트정보 데이터베이스부(330)를 포함하여 구성될 수 있다.The security gateway unit 300 may include an update communication unit 310, a data transfer unit 320, and an update information database unit 330, as shown in FIG.

상기 업데이트 통신부(310)는 상기 안전성 검증부(200)의 펌웨어 업데이트 안전성 판단 결과에 따라, 상기 특정 서버의 펌웨어 업데이트 진행 요청 정보가 안전하다고 판단될 경우, 상기 특정 서버로의 접속을 수행하게 된다.If the firmware update progress request information of the specific server is determined to be safe, the update communication unit 310 performs a connection to the specific server according to a result of the firmware update safety determination of the safety verification unit 200. [

이 때, 상기 업데이트 통신부(310)를 통한 상기 특정 서버로의 접속을 콜백 접속이라고 하는 것이 바람직하며, 펌웨어 업데이트의 경우, 서버에서 일방적으로 펌웨어 업데이트 데이터를 전송하여 이를 수신측 디바이스에서 실행하는 것이 일반적이나, 본 발명의 일 실시예의 경우, 상기 업데이트 통신부(310)를 통해 직접 상기 특정 서버로의 콜백 접속을 수행하여, 상기 특정 서버가 진행하고자 하는 펌웨어 업데이트 데이터를 다운로드받게 된다.In this case, it is preferable that the connection to the specific server via the update communication unit 310 is called a callback connection. In the case of firmware update, it is general that the server unilaterally transmits firmware update data and executes it on the receiving- However, in an embodiment of the present invention, a callback connection to the specific server is directly performed through the update communication unit 310 to download the firmware update data to be executed by the specific server.

즉, 상기 업데이트 통신부(310)는 상기 특정 서버로의 콜백 접속을 수행하여, 상기 특정 서버에서 진행하고자 하는 펌웨어 업데이트 데이터를 수신받을 수 있다.That is, the update communication unit 310 may perform a callback connection to the specific server and receive firmware update data to be processed in the specific server.

상기 데이터 전달부(320)는 상기 업데이트 통신부(310)를 통해서 수신받은 상기 특정 서버의 펌웨어 업데이트 데이터를 상기 스마트 디바이스로 전달하여, 상기 스마트 디바이스의 업데이트부에서 펌웨어 업데이트가 수행되도록 할 수 있다.The data transfer unit 320 may transmit the firmware update data of the specific server received through the update communication unit 310 to the smart device so that the firmware update unit of the smart device can update the firmware.

상기 업데이트정보 데이터베이스부(330)는 상기 업데이트 통신부(310)에서 수신받아, 실제 업데이트가 진행된 펌웨어 정보를 데이터베이스화하여 저장 및 관리할 수 있으며, 이를 토대로 어떠한 특정 서버에서 관리하는 펌웨어가 언제 어떤 버전으로 업데이트되었는지 손쉽게 확인할 수 있다.The update information database unit 330 can store and manage the firmware information that is received from the update communication unit 310 and that has been actually updated in a database and can store and manage the firmware information. You can easily check if it has been updated.

또한, 상기 업데이트정보 데이터베이스부(330)는 상기 안전성 검증부(200)의 펌웨어 업데이트 안전성 판단 결과에 따라, 상기 특정 서버의 펌웨어 업데이트 진행 요청 정보가 안전하지 않다고 판단될 경우, 안전하지 않다고 판단된 상기 특정 서버의 정보를 별도로 데이터베이스화하여 저장 및 관리할 수 있다.If it is determined that the firmware update process request information of the specific server is not secure according to the firmware update safety determination result of the safety verification unit 200, The information of a specific server can be separately stored and managed in a database.

이를 통해서, 추후에 어떠한 특정 서버가 악성 공격자인지 용이하게 파악할 수 있으며, 실제 상기 스마트 디바이스로 악성 펌웨어 업데이트를 통한 사이버 공격이 이루어졌는지도 확인할 수 있어, 보안 업그레이드 기술의 지속적인 향상에 큰 도움이 된다.Through this, it is possible to easily identify which specific server is a malicious attacker in the future, and it is also possible to confirm whether or not a cyber attack has been performed through malicious firmware update with the smart device in fact, which is a great help for the continuous improvement of security upgrade technology.

도 2는 본 발명의 일 실시예에 따른 콜백 기법을 적용한 시큐어 펌웨어 업데이트 방법를 나타낸 순서도이며, 도 2를 참조로 하여 본 발명의 일 실시예에 따른 콜백 기법을 적용한 시큐어 업데이트 방법을 상세히 설명한다.FIG. 2 is a flowchart illustrating a secure firmware update method using a callback technique according to an embodiment of the present invention. Referring to FIG. 2, a secure update method using a callback technique according to an embodiment of the present invention will be described in detail.

본 발명의 일 실시예에 따른 콜백 기법을 적용한 시큐어 업데이트 방법은 개방된 네트워크로의 통신 수단을 포함하는 다수의 스마트 디바이스와 상기 스마트 디바이스의 펌웨어 업데이트 데이터를 관리하는 다수의 서버 간의 콜백 기법을 적용한 시큐어 펌웨어 업데이트 방법에 관한 것으로서, 도 2에 도시된 바와 같이, 안전 목록 설정 단계(S100), 펌웨어 업데이트 요청 단계(S200), 안전성 검증 단계(S300), 콜백 접속 단계(S400) 및 업데이트 단계(S500)로 이루어지는 것이 바람직하다.A secure update method using a callback technique according to an embodiment of the present invention is a secure update method using a callback technique between a plurality of smart devices including communication means to an open network and a plurality of servers managing firmware update data of the smart device The firmware update request step S200, the safety verification step S300, the callback connection step S400, and the update step S500, as shown in FIG. 2, .

각 단계에 대해서 자세히 알아보자면,To learn more about each step,

상기 안전 목록 설정 단계(S100)는 상기 스마트 디바이스의 펌웨어 업데이트를 관리하는 서버의 정보를 입력받아, 목록화하여 저장 및 관리할 수 있다.The security list setting step S100 may receive information on a server managing firmware update of the smart device, list, store and manage the information.

상기 안전 목록 설정 단계(S100)는 상기 스마트 디바이스의 펌웨어 업데이트를 관리하는 제조사로부터 상기 스마트 디바이스의 펌웨어 업데이트 데이터를 관리하는 서버의 정보를 입력받을 수 있으며, 이 때 입력하는 서버 정보로는 펌웨어의 HW 버전 정보, 펌웨어의 SW 버전 정보, 서버 IP 정보 및 서버 URL 정보 중 적어도 어느 하나를 포함하는 것이 바람직하다. 특히, 서버 IP 정보는 반드시 포함하고 있는 것이 바람직하다.The security list setting step S100 may receive information on a server managing firmware update data of the smart device from a manufacturer managing firmware update of the smart device, Version information, SW version information of the firmware, server IP information, and server URL information. In particular, the server IP information should preferably be included.

상기 펌웨어 업데이트 요청 단계(S200)는 특정 서버로부터 상기 스마트 디바이스의 펌웨어 업데이트 진행 요청 정보가 수신되게 된다.In the firmware update request step (S200), the firmware update progress request information of the smart device is received from the specific server.

상기 안전성 검증 단계(S300)는 상기 안전 목록 설정 단계(S100)에서 입력받은 상기 서버의 정보와, 상기 펌웨어 업데이트 요청 단계(S200)에서 상기 스마트 디바이스의 펌웨어 업데이트 진행 요청 정보를 송신한 상기 특정 서버의 정보를 비교 분석하여, 상기 스마트 디바이스의 펌웨어 업데이트 안전성을 판단할 수 있다.The safety verification step S300 may include checking the server information received in the security list setting step S100 and the firmware update request information of the smart server in the firmware update request step S200 Information can be compared and analyzed to determine the security update of the firmware of the smart device.

이를 위해, 상기 펌웨어 업데이트 요청 단계(S200)에서, 상기 특정 서버로부터 상기 스마트 디바이스의 펌웨어 업데이트 진행 요청 정보가 수신될 경우, 상기 스마트 디바이스의 펌웨어 업데이트 진행 요청 정보를 송신한 상기 특정 서버의 정보를 추출하여 이용할 수 있다. 이 때, 추출하는 상기 특정 서버의 정보로는 펌웨어의 HW 버전 정보, 펌웨어의 SW 버전 정보, 서버 IP 정보 및 서버 URL 정보 중 적어도 어느 하나를 포함하는 것이 바람직하다. 특히, 서버 IP 정보는 반드시 포함하고 있는 것이 바람직하다.To this end, in the firmware update request step (S200), when the firmware update progress request information of the smart device is received from the specific server, the information of the specific server that transmitted the firmware update progress request information of the smart device is extracted . At this time, the information of the specific server to be extracted preferably includes at least one of HW version information of the firmware, SW version information of the firmware, server IP information, and server URL information. In particular, the server IP information should preferably be included.

상기 안전성 검증 단계(S300)는 상기 안전 목록 설정 단계(S100)에서 입력받아 목록화하여 저장 및 관리하고 있는 상기 서버의 정보와 추출한 상기 특정 서버의 정보를 비교 분석하며, 상기 서버의 정보에 상기 특정 서버의 정보가 포함되어 있는지를 비교하여, 상기 서버의 정보에 상기 특정 서버의 정보가 포함되어 있는지 여부를 판단하는 방법이 가장 기본적이며, 이 외에도 다양한 방법을 통해서 악성 펌웨어 업데이트 데이터를 전송하고자 하는 특정 서버를 구분할 수 있다.The safety verification step S300 compares and analyzes the information of the server received and stored in the list and stored and managed in the safety list setting step S100 with the extracted information of the specific server, A method for determining whether or not the information of the specific server is included in the information of the server is compared with the information of the server and the malicious firmware update data is transmitted through various methods Servers can be distinguished.

특히, 상기 서버의 정보에 상기 특정 서버의 정보가 포함되어 있지 않을 경우, 악성 펌웨어 업데이트 데이터를 전송하고자 하는 특정 서버인 것으로 판단하는 것이 바람직하다.In particular, when information on the specific server is not included in the information of the server, it is preferable that the malicious firmware update data is determined to be a specific server to which malicious firmware update data is to be transmitted.

상기 콜백 접속 단계(S400)는 상기 안전성 검증 단계(S300)의 판단 결과에 따라, 상기 특정 서버의 펌웨어 업데이트 진행 요청 정보가 안전하다고 판단될 경우, 상기 특정 서버로의 콜백 접속을 수행할 수 있다.The callback connection step S400 may perform a callback connection to the specific server when it is determined that the firmware update progress request information of the specific server is secure according to a result of the safety verification step S300.

상기 업데이트 단계(S500)는 상기 콜백 접속 단계(S400)를 통해서 상기 특정 서버에서 진행하고자 하는 펌웨어 업데이트 데이터를 다운로드받아, 상기 스마트 디바이스의 펌웨어 업데이트를 실행할 수 있다.The updating step S500 may download the firmware update data to be executed in the specific server through the callback access step S400, and update the firmware of the smart device.

즉, 상기 콜백 접속 단계(S400)에서 상기 특정 서버로의 콜백 접속을 수행하여, 상기 특정 서버에서 진행하고자 하는 펌웨어 업데이트 데이터를 수신받을 수 있으며, 수신받은 펌웨어 업데이트 데이터를 이용하여 상기 업데이트 단계(S500)에서 상기 스마트 디바이스의 업데이트부에서 펌웨어 업데이트가 수행되도록 할 수 있다.That is, in the callback access step (S400), a callback connection to the specific server is performed to receive the firmware update data to be executed in the specific server, and the update step S500 The firmware update may be performed in the updating unit of the smart device.

즉, 다시 말하자면, 본 발명의 일 실시예에 따른 콜백 기법을 적용한 시큐어 펌웨어 업데이트 시스템 및 그 방법은, 스마트홈 등의 개방된 네트워크를 이용하는 스마트 디바이스에 대해, 펌웨어 업데이트에 안전한 송신 서버 정보들을 사전에 등록받아 목록화하고, 특정 서버에서 펌웨어 업데이트 요청시 사전에 목록화한 송신 서버 목록과 비교하여 펌웨어 업데이트의 안전성을 검증한 후, 해당하는 펌웨어 업데이트의 송신 서버에 직접 접속하여, 펌웨어 업데이트 데이터를 다운로드받아 펌웨어 업데이트를 실행함으로써, 악성 펌웨어 업데이트를 정확도 높게 차단할 수 있다.That is, in other words, the secure firmware update system and the method using the callback technique according to an embodiment of the present invention can prevent the smart device using an open network such as a smart home, And checks the safety of the firmware update by comparing it with a list of transmission servers cataloged in advance in the firmware update request at a specific server and then directly accesses the transmission server of the corresponding firmware update to download the firmware update data By executing the firmware update, malicious firmware update can be prevented with high accuracy.

이상과 같이 본 발명에서는 구체적인 구성 소자 등과 같은 특정 사항들과 한정된 실시예 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것 일 뿐, 본 발명은 상기의 일 실시예에 한정되는 것이 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, And various modifications and changes may be made thereto by those skilled in the art to which the present invention pertains.

따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허 청구 범위뿐 아니라 이 특허 청구 범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Accordingly, the spirit of the present invention should not be construed as being limited to the embodiments described, and all of the equivalents or equivalents of the claims, as well as the following claims, belong to the scope of the present invention .

100 : 입력부
110 : 서버정보 데이터베이스부
200 : 안전성 검증부
210 : 정보 수신부 220 : 정보 추출부
230 : 비교 분석부
300 : 보안 게이트웨이부
310 : 업데이트 통신부 320 : 데이터 전달부
330 : 업데이트정보 데이터베이스부
100: Input unit
110: Server information database part
200: Safety Verification Department
210: Information receiving unit 220: Information extracting unit
230:
300: security gateway section
310: update communication unit 320:
330: Update information database part

Claims (8)

통신 수단을 포함하여 개방된 네트워크를 이용하는 스마트 디바이스와 상기 스마트 디바이스의 개방된 네트워크를 통해 접속하며, 상기 스마트 디바이스의 펌웨어 업데이트 데이터를 관리하는 다수의 서버 간의 콜백 기법을 적용한 시큐어 펌웨어 업데이트 시스템에 있어서,
스마트 디바이스의 펌웨어 업데이트 데이터를 관리하는 적어도 하나의 서버의 정보를 입력받는 입력부(100);
특정 서버로부터 상기 스마트 디바이스의 펌웨어 업데이트 데이터가 수신될 경우,
상기 특정 서버와 상기 스마트 디바이스 간의 네트워크 접속을 차단한 후, 상기 스마트 디바이스의 펌웨어 업데이트 데이터를 송신한 상기 특정 서버의 정보를 추출하여, 상기 특정 서버의 정보와 상기 입력부(100)에서 입력받은 상기 서버의 정보를 비교 분석하여, 펌웨어 업데이트 안전성을 판단하는 안전성 검증부(200); 및
상기 안전성 검증부(200)의 펌웨어 업데이트 안전성 판단 결과에 따라,
상기 특정 서버의 펌웨어 업데이트 데이터가 안전하다고 판단될 경우, 콜백 기법을 적용하여 상기 특정 서버와 상기 스마트 디바이스 간의 네트워크 접속을 재개한 후, 상기 특정 서버로부터 진행하고자 하는 펌웨어 업데이트 데이터를 재수신받는 보안 게이트웨이부(300);
를 포함하는 것을 특징으로 하는 콜백 기법을 적용한 시큐어 펌웨어 업데이트 시스템.
1. A secure firmware update system that connects a smart device using an open network including a communication unit with an open network of the smart device and applies a callback technique between a plurality of servers managing firmware update data of the smart device,
An input unit (100) for receiving information of at least one server managing firmware update data of the smart device;
When firmware update data of the smart device is received from a specific server,
After the network connection between the specific server and the smart device is disconnected, information of the specific server that transmitted the firmware update data of the smart device is extracted, and the information of the specific server and the information of the server A safety verification unit 200 for comparing and analyzing the information of the firmware update to determine the firmware update safety; And
In accordance with a result of the safety update of the firmware of the safety verification unit 200,
When the firmware update data of the specific server is determined to be safe, a callback technique is applied to resume network connection between the specific server and the smart device, and then the security gateway (300);
And a secure firmware update system to which the callback technique is applied.
제 1항에 있어서,
상기 입력부(100)는
입력받은 상기 스마트 디바이스의 펌웨어 업데이트 데이터를 관리하는 적어도 하나의 서버의 정보를 목록화하여 저장 및 관리하는 서버정보 데이터베이스부(110);
를 더 포함하는 것을 특징으로 하는 콜백 기법을 적용한 시큐어 펌웨어 업데이트 시스템.
The method according to claim 1,
The input unit 100
A server information database (110) for listing, storing, and managing information of at least one server managing firmware update data of the input smart device;
The secure firmware update system according to claim 1, further comprising a callback method.
제 2항에 있어서,
상기 서버 정보는
펌웨어의 HW 버전 정보, 펌웨어의 SW 버전 정보, 서버 IP 정보 및 서버 URL 정보 중 적어도 어느 하나를 포함하는 것을 특징으로 하는 콜백 기법을 적용한 시큐어 펌웨어 업데이트 시스템.
3. The method of claim 2,
The server information
Wherein the firmware update information includes at least one of HW version information of the firmware, SW version information of the firmware, server IP information, and server URL information.
제 1항에 있어서,
상기 안전성 검증부(200)는
상기 특정 서버로부터 상기 스마트 디바이스의 펌웨어 업데이트 데이터가 수신되는 정보 수신부(210);
상기 스마트 디바이스의 펌웨어 업데이트 데이터를 송신한 상기 특정 서버의 정보를 추출하는 정보 추출부(220); 및
상기 입력부(100)에서 입력받은 상기 서버의 정보와 상기 정보 추출부(220)에서 추출한 상기 특정 서버의 정보를 비교 분석하여, 펌웨어 업데이트 안전성을 판단하는 비교 분석부(230);
를 포함하는 것을 특징으로 하는 콜백 기법을 적용한 시큐어 펌웨어 업데이트 시스템.
The method according to claim 1,
The safety verification unit 200
An information receiving unit 210 receiving firmware update data of the smart device from the specific server;
An information extraction unit (220) for extracting information of the specific server that transmitted the firmware update data of the smart device; And
A comparison and analysis unit 230 for comparing the information of the server received from the input unit 100 with the information of the specific server extracted by the information extraction unit 220 to determine the firmware update safety;
And a secure firmware update system to which the callback technique is applied.
제 1항에 있어서,
상기 보안 게이트웨이부(300)는
상기 안전성 검증부(200)의 펌웨어 업데이트 안전성 판단 결과에 따라, 상기 특정 서버의 펌웨어 업데이트 데이터가 안전하다고 판단될 경우, 콜백 기법을 적용하여 상기 특정 서버와 상기 스마트 디바이스 간의 네트워크 접속을 재연결하여 상기 특정 서버로의 콜백 접속을 수행하며, 진행하고자 하는 펌웨어 업데이트 데이터를 재수신받는 업데이트 통신부(310);
상기 업데이트 통신부(310)에서 수신받은 상기 펌웨어 업데이트 데이터를 상기 스마트 디바이스로 전달하는 데이터 전달부(320); 및
상기 업데이트 통신부(310)에서 수신받아 업데이트가 진행된 펌웨어 정보를 데이터베이스화하여 저장 및 관리하는 업데이트정보 데이터베이스부(330);
를 포함하며,
상기 업데이트정보 데이터베이스부(330)는
상기 안전성 검증부(200)의 펌웨어 업데이트 안전성 판단 결과에 따라, 상기 특정 서버의 펌웨어 업데이트 데이터가 안전하지 않다고 판단될 경우,
안전하지 않다고 판단된 상기 특정 서버의 정보를 별도로 데이터베이스화하여 저장 및 관리하는 것을 특징으로 하는 콜백 기법을 적용한 시큐어 펌웨어 업데이트 시스템.
The method according to claim 1,
The security gateway unit 300
If it is determined that the firmware update data of the specific server is safe according to a result of the firmware update safety determination of the safety verification unit 200, the network connection between the specific server and the smart device is reconnected by applying a callback technique, An update communication unit 310 for performing a callback connection to a specific server and re-receiving firmware update data to be processed;
A data transfer unit 320 for transferring the firmware update data received from the update communication unit 310 to the smart device; And
An update information database unit 330 for storing and managing the updated firmware information received from the update communication unit 310 in a database;
/ RTI >
The update information database unit 330
If it is determined that the firmware update data of the specific server is not safe according to the result of the firmware update safety determination of the safety verification unit 200,
And the information of the specific server determined to be unsafe is separately stored in a database and stored and managed.
통신 수단을 포함하여 개방된 네트워크를 이용하는 스마트 디바이스와 상기 스마트 디바이스의 개방된 네트워크를 통해 접속하며, 상기 스마트 디바이스의 펌웨어 업데이트 데이터를 관리하는 서버 간의 콜백 기법을 적용한 시큐어 펌웨어 업데이트 방법에 있어서,
스마트 디바이스의 펌웨어 업데이트를 관리하는 서버의 정보를 입력받아 목록화하는 안전 목록 설정 단계(S100);
특정 서버로부터 상기 스마트 디바이스의 펌웨어 업데이트 데이터가 수신되는 펌웨어 업데이트 요청 단계(S200);
상기 안전 목록 설정 단계(S100)에서 입력받은 상기 서버의 정보와, 상기 펌웨어 업데이트 요청 단계(S200)에서 상기 스마트 디바이스의 펌웨어 업데이트 데이터를 송신한 상기 특정 서버의 정보를 비교 분석하여, 펌웨어 업데이트 안전성을 판단하는 안전성 검증 단계(S300);
상기 안전성 검증 단계(S300)의 판단 결과에 따라,
상기 특정 서버의 펌웨어 업데이트 데이터가 안전하다고 판단될 경우, 콜백 기법을 적용하여 상기 특정 서버와 상기 스마트 디바이스 간의 네트워크 접속을 재개하여 상기 특정 서버로의 콜백 접속을 수행하는 콜백 접속 단계(S400); 및
상기 특정 서버로부터 진행하고자 하는 펌웨어 업데이트 데이터를 재수신받아, 상기 스마트 디바이스의 펌웨어 업데이트를 실행하는 업데이트 단계(S500);
로 이루어지며,
상기 콜백 기법을 적용한 시큐어 펌웨어 업데이트 방법은
상기 안전성 검증 단계(S300)를 수행하기 전에,
상기 펌웨어 업데이트 요청 단계(S200)에 의해 상기 특정 서버로부터 상기 스마트 디바이스의 펌웨어 업데이트 데이터가 수신될 경우, 상기 특정 서버와 상기 스마트 디바이스 간의 네트워크 접속을 차단한 후, 상기 안전성 검증 단계(S300)를 수행하도록 하는 것을 특징으로 하는 콜백 기법을 적용한 시큐어 펌웨어 업데이트 방법.
A secure firmware update method using a callback method between a smart device using an open network including a communication unit and a server connected through an open network of the smart device and managing firmware update data of the smart device,
A safety list setting step (S100) of receiving and cataloging information of a server managing firmware update of the smart device;
A firmware update request step (S200) of receiving firmware update data of the smart device from a specific server;
The information of the server received in the security list setting step S100 and the information of the specific server that transmitted the firmware update data of the smart device in the firmware update request step S200 are compared and analyzed to determine the firmware update safety A safety verification step (S300) for judging;
According to the determination result of the safety verification step (S300)
A callback connection step (S400) of performing a callback connection to the specific server by resuming network connection between the specific server and the smart device by applying a callback technique when the firmware update data of the specific server is determined to be secure; And
An update step (S500) of re-receiving firmware update data to be executed from the specific server and executing firmware update of the smart device;
Lt; / RTI >
The secure firmware update method using the callback technique
Before performing the safety verification step S300,
If the firmware update data of the smart device is received from the specific server by the firmware update request step (S200), the network connection between the specific server and the smart device is blocked, and then the security verification step (S300) is performed The secure firmware update method applying the callback technique.
제 6항에 있어서,
상기 서버의 정보는
펌웨어의 HW 버전 정보, 펌웨어의 SW 버전 정보, 서버 IP 정보 및 서버 URL 정보 중 적어도 어느 하나를 포함하는 것을 특징으로 하는 콜백 기법을 적용한 시큐어 펌웨어 업데이트 방법.
The method according to claim 6,
The information of the server
Wherein the firmware update information includes at least one of HW version information of the firmware, SW version information of the firmware, server IP information, and server URL information.
제 6항에 있어서,
상기 안전성 검증 단계(S300)는
상기 펌웨어 업데이트 요청 단계(S200)에서 상기 스마트 디바이스의 펌웨어 업데이트 데이터를 송신한 상기 특정 서버에 대한 서버 정보를 추출하며,
추출한 상기 특정 서버의 정보와 상기 안전 목록 설정 단계(S100)에서 입력받은 상기 서버의 정보를 비교 분석하여, 펌웨어 업데이트 안전성을 판단하는 것을 특징으로 하는 콜백 기법을 적용한 시큐어 펌웨어 업데이트 방법.
The method according to claim 6,
In the safety verification step S300,
Extracts server information for the specific server that transmitted the firmware update data of the smart device in the firmware update request step (S200)
And comparing the extracted information of the specific server with information of the server inputted in the safety list setting step (S100) to determine the security of the firmware update.
KR1020160152412A 2016-11-16 2016-11-16 System and method for secure firmware update using callback KR101762859B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160152412A KR101762859B1 (en) 2016-11-16 2016-11-16 System and method for secure firmware update using callback

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160152412A KR101762859B1 (en) 2016-11-16 2016-11-16 System and method for secure firmware update using callback

Publications (1)

Publication Number Publication Date
KR101762859B1 true KR101762859B1 (en) 2017-08-04

Family

ID=59654336

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160152412A KR101762859B1 (en) 2016-11-16 2016-11-16 System and method for secure firmware update using callback

Country Status (1)

Country Link
KR (1) KR101762859B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190061679A (en) 2017-11-28 2019-06-05 (주)유엠로직스 A forgery detection system of a firmware based on a reputation analysis and a method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100759604B1 (en) * 2006-01-23 2007-09-17 주식회사 팬택앤큐리텔 System and Method for protection to receive abnormal update packets on the Firmware Over The Air

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100759604B1 (en) * 2006-01-23 2007-09-17 주식회사 팬택앤큐리텔 System and Method for protection to receive abnormal update packets on the Firmware Over The Air

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190061679A (en) 2017-11-28 2019-06-05 (주)유엠로직스 A forgery detection system of a firmware based on a reputation analysis and a method

Similar Documents

Publication Publication Date Title
US9319429B2 (en) Network quarantine system, network quarantine method and program therefor
CN107426174B (en) Access control method of trusted execution environment
CN100530207C (en) Distributed filesystem network security extension
US20100031308A1 (en) Safe and secure program execution framework
US9608973B2 (en) Security management system including multiple relay servers and security management method
US11652840B1 (en) System for evaluating and improving the security status of a local network
KR102379720B1 (en) System for controlling data flow in virtualization terminal and method of the same
CN107222508B (en) Security access control method, device and system
CN101299760B (en) Information safety processing method and system, communication equipment
CN113542339A (en) Electric power Internet of things safety protection design method
CN106548096B (en) Data transmission method and device
KR101762859B1 (en) System and method for secure firmware update using callback
KR101436404B1 (en) User authenticating method and apparatus
CN102158480A (en) Method, system and device for controlling system service recovery
JP6888445B2 (en) How to install secure elements, computer programs, devices, servers and trusted applications
US20080060063A1 (en) Methods and systems for preventing information theft
CN105100030B (en) Access control method, system and device
CN108664805B (en) Application program safety verification method and system
KR101900710B1 (en) Management method of trusted application download, management server, device and system using it
EP3832972B1 (en) Methods and systems for accessing a network
CN111143857B (en) Data sharing method, robot controller and storage medium
US10972469B2 (en) Protecting critical data and application execution from brute force attacks
CN108234399B (en) Interface communication method and terminal
KR101490227B1 (en) Method and apparatus for controlling traffic
CN115589337B (en) Network connection method and system

Legal Events

Date Code Title Description
GRNT Written decision to grant