WO2014090274A1 - Verfahren und datenverarbeitungsgerät zum schutz gegen die ausführung unautorisierter anwendungsprogramme - Google Patents

Verfahren und datenverarbeitungsgerät zum schutz gegen die ausführung unautorisierter anwendungsprogramme Download PDF

Info

Publication number
WO2014090274A1
WO2014090274A1 PCT/EP2012/074940 EP2012074940W WO2014090274A1 WO 2014090274 A1 WO2014090274 A1 WO 2014090274A1 EP 2012074940 W EP2012074940 W EP 2012074940W WO 2014090274 A1 WO2014090274 A1 WO 2014090274A1
Authority
WO
WIPO (PCT)
Prior art keywords
data processing
processing device
application
sta
application program
Prior art date
Application number
PCT/EP2012/074940
Other languages
English (en)
French (fr)
Inventor
Hendrik Gerlach
Original Assignee
Siemens Aktiengesellschaft
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 Siemens Aktiengesellschaft filed Critical Siemens Aktiengesellschaft
Priority to PCT/EP2012/074940 priority Critical patent/WO2014090274A1/de
Publication of WO2014090274A1 publication Critical patent/WO2014090274A1/de

Links

Classifications

    • 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/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/101Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
    • G06F21/1011Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities to devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/107License processing; Key processing
    • 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

Definitions

  • the invention relates to a method for protecting a data processing device against the execution of unauthorized program code according to the preamble of patent claim 1, and to a data processing device with protection against the execution of unauthorized program code according to the preamble of patent claim 11.
  • malware In the operation of data processing equipment, malicious programs, such as computer viruses or so-called “Trojans”, which are often referred to under the collective term “malware”, pose a serious threat to both data security and the functionality of data processing equipment and any applications and applications controlled thereby industrial processes.
  • Malware eg As additional processes go unnoticed and unauthorized on data processing devices to expire, even manipulated application programs pose a threat, ie those application programs that are indeed used intentionally, but have been manipulated in the meantime and unnoticed by third parties. All of these unwanted programs or programs, routines, code fragments, etc. introduced and executed on data processing devices in a manipulated manner are to be collectively referred to below as "unauthorized program code”.
  • the solution to the problem is based on the recognition that typical application programs have hitherto hardly been protected against manipulation of their own routines, for example the communication libraries or other software components, and thus enable attacks.
  • today widespread operating systems such as Windows and Linux are often the target of successful attacks / manipulations.
  • the operating system loader that is to say that component of the operating system which is used to transmit an application program from a server, mass memory or the like, is used for this purpose.
  • a method for protecting a data processing device against the execution of unauthorized program code, wherein the data processing device is equipped with an operating system, and wherein the operating system is equipped with routines for loading application programs into a working memory of the data processing device.
  • the operating system routines for loading the application programs into the main memory are replaced by a starter application, the starter application being loaded by a tamper-proof medium, and the starter application being loaded into the main memory of the application memory during the loading of an application program
  • Data processing device checks at least one signature of the application program, wherein in the case of missing or faulty signature loading and / or execution of the application program is interrupted or prevented.
  • This procedure can be used to ensure that application programs such as automation or engineering software are only loaded and started via the "starter application", so that the starter application has complete control over the has loading application programs.
  • the object is also achieved by a data processing device with protection against the execution of unauthorized program code, wherein the data processing device is equipped with an operating system, and wherein the operating system is equipped with routines for loading application programs into a working memory of the data processing device.
  • the data processing device is adapted to functionally replace the routines of the operating system for loading the application programs into the main memory by a starter application, wherein the starter application is stored on a tamper-proof medium, and wherein the starter application is set up in the During the loading of an application program into the main memory of the data processing device to check at least one signature of the application program, wherein the starter application is set up such that loading or / and execution of the application program is interrupted or prevented in the event of missing or incorrect signature.
  • An optical data carrier or a semiconductor-based read-only memory (“flash card” or the like) with activated write protection is advantageously used as the tamper-proof medium.
  • flash card or the like
  • the corresponding operating system's own routines and libraries are not completely replaced by the starter application, but the starter application replaces the original routines only with regard to loading and checking the signed and possibly encrypted application programs.
  • the original routines of the operating system may then continue to be used in this embodiment for loading "conventional" unsigned software.
  • the signature-certificates required for verifying the signature are also loaded by the tamper-proof medium or, alternatively, on another tamper-proof medium, so that interim manipulation of the signature certificates is made more difficult.
  • the aim of known computer viruses and other unauthorized applications and thus of unauthorized program code is to attack as many as possible of data processing devices, e.g. to spread. This is prevented or hampered by encrypting each authorized application program specifically for an authorized computing device and before loading it into memory
  • Data processing device is decrypted locally by the starter application.
  • TPM Trusted Platform Module
  • TPM module is permanently connected to the authorized data processing device.
  • TPM Identity Credential can be used, which is not normally intended for encryption of software.
  • this key is only accessible subject to conditions, which means that a user of a data processing device with a TPM module has to confirm the read-out of this key with a password, which puts another hurdle in the way of attackers or malware.
  • Security is further enhanced by using a secure transmission channel between the TPM module and the engineering system to transmit the public key to the deployed system, which means that the operating system and thus malware, the parts of the operating system or of
  • a suitable private key of the TPM module is used for decrypting the application program, in which case advantageously the use of the private key should also be enabled by a user of the data processing device, for example by entering a TPM password.
  • the single figure shows a schematic representation of an arrangement of a personal computer as a data processing device and a deployment system as a source for an authorized application program.
  • the personal computer PC has a RAM (Random Access Memory) and a hard disk HDD (Mass Storage), both of which components are shown in the figure.
  • the illustrated personal computer PC of a common hardware with all the usual (not shown here) components.
  • the DPL deployment system offers all applications that are necessary for the diverse tasks of an engineering system are, for example editors for system planning and program creation, visualization means and the like.
  • an encryption module VSM and a mass storage HDD eg hard disk
  • an authorized and intended for use on the personal computer PC application program is provided on the hard disk HDD of the deployment system DPL.
  • the application program may consist of a variety of individual routines, libraries, function blocks, or the like.
  • a typical approach of known malware is to exchange and share the communication library (e.g., in a DLL) of a user program of personal computers PC.
  • the malicious programs installed in this way work according to the "man-in-the-middle"
  • the operating system loader of the conventional operating system of the personal computer PC is functionally replaced by a starter application STA, which fulfills the same functionality but can not or only with difficulty be manipulated by loading from a tamper-resistant medium MSS.
  • a tamper-resistant medium MSS is shown outside the personal computer PC in the figure, a read-only medium (eg, a CD-ROM) would most likely be inside a PC case in reality.
  • the authorized application program (here: automation software) is started only via the starter application STA and thus transferred into the main memory RAM of the personal computer PC.
  • the original loading routines of the operating system for the loading of other programs can be used as long as it is ensured that the safety-critical application program can only be updated by inventively signed and possibly encrypted versions.
  • the mentioned starter application STA also includes the required libraries, which are necessary for the code of the application program to be executed
  • the starter application STA is loaded and started by an unchangeable medium MSS.
  • This may be a CD-ROM or DVD-ROM, or for example also a flash memory medium with activated write protection.
  • This provides a hardware-based protection against an unauthorized modification of the starter application STA or its program libraries.
  • the medium MSS with the starter application STA also has features that allow a source check, e.g. Holograms, seals, signatures or the like
  • the tamper-proof medium MSS can also advantageously be placed in a drive or port protected against access, for example behind a "seal".
  • the starter application STA is loaded only once, at a time when the personal computer PC can not yet be infected by "malware", ie in particular before activation of a network connection, and then remains in the memory RAM, which is provided for this by means of conventional methods with access protection.
  • the starter application STA loads only code signed by the manufacturer of the automation software, ie authorized application programs the memory.
  • the starter application carries out a signature check for each application program or program fragment to be loaded, with the necessary signature certificates also advantageously being provided by an unchangeable medium (here: the tamper-proof medium MSS).
  • MSS tamper-proof medium
  • the authorized application program could in a simple case also be loaded from the tamper-resistant medium MSS, this represents in practice a less practicable approach because any change in the authorized application program would necessitate a physical exchange of the tamper-resistant medium MSS.
  • the method described here makes it possible to transmit the application program via potentially insecure data channels, for example network connections or the Internet.
  • the deployment system DPL is provided, where the completed and signed application program, e.g. an engineering system that is present on a mass storage HDD. To use the application program this is transmitted via a network connection or by other means of transmission to the personal computer PC and stored there in a mass storage HDD (hard disk).
  • the starter application STA loads the application program from the hard disk HDD and checks the signature by comparison by means of a signature certificate, which was loaded by the tamper-proof medium MSS, and installed in the event of success, the application program in the RAM of the personal computer PC. Caching on an HDD of the personal computer PC makes sense, but the user program loaded from the deployment system DPL can also be loaded directly from the starter application STA into the memory of the personal computer PC. Also in this case, the signature verification is performed.
  • the authorized application program or at least relevant code parts become specific to the personal computer to be used PC encrypted; in the exemplary embodiment This is done by an encryption module VSM of the deployment system DPL.
  • VSM of the deployment system DPL.
  • a "malware" would not only have to overcome the signature check (unique solution for all computers to be infected), but also in the Owning the encryption keys for each individual PC system to be infected, carrying encrypted code for all systems to be infected or generating it dynamically, the starter application
  • a query directed to the retrieval of the application program request is sent to a software portal of an automation manufacturer of the personal computer PC ("target PC"), in the present embodiment, the deployment system DPL the target for this query message is.
  • target PC software portal of an automation manufacturer of the personal computer PC
  • the deployment system DPL the target for this query message is.
  • a public key is sent along whose private key (ie the private "counterpart") is firmly bound to the personal computer PC.
  • a per se known Trusted Platform module TPM is used for the provision of the key. This is identifiable and firmly connected to the personal computer PC, for example, by "soldering". So-called.
  • selungs module VSM encryption software
  • the authorized application program eg an engineering SW for PLC's - programmable logic controller
  • the public key is removed from the Query message encrypted and signed with the private key of the manufacturer of the automation program (application program such as the engineering SW for PLC's).
  • the encrypted and signed application program is then transferred to the "target platform”, ie the personal computer PC, where it is stored in the mass storage device HDD, or directly via the starter application STA after the described checks of the signature and the decryption loaded into memory.
  • the public key "TPM Identity Credential” is used directly for the encryption of the application program. This is normal
  • TPM Trusted Platform Modules
  • TPM password an appropriate password
  • the described "target-specific” encryption offers in addition to the manipulation protection by attackers or malware additionally the advantage that such encrypted software (encrypted, authorized application program) could indeed be copied, but nowhere else than on the specific personal computer PC can be executed (license protection ).
  • Systems requesting an encrypted copy of the application program can be identified by their TPM.
  • no attacker can get to the "plain text" of the authorized registration program, because this is not at all unencrypted on mass storage HDD of potentially accessible personal computers PC.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Storage Device Security (AREA)

Abstract

Verfahren zum Schutz eines Datenverarbeitungsgerätes (PC) gegen die Ausführung unautorisierter Anwendungsprogramme und ein entsprechend ausgestattetes Datenverarbeitungsgerät (PC), wobei das Datenverarbeitungsgerät mit einem Betriebssystem ausgestattet ist, und wobei das Betriebssystem mit Routinen zum Laden von Anwendungsprogrammen in einen Arbeitsspeicher (RAM) des Datenverarbeitungsgerätes (PC) ausgestattet ist. Dabei werden die Routinen des Betriebssystems zum Laden der Anwendungsprogramme in den Arbeitsspeicher (RAM) durch eine Starter-Applikation (STA) ersetzt oder ergänzt, wobei die Starter-Applikation (STA) von einem manipulationssicheren Medium (MSS) geladen wird, und wobei die Starter-Applikation (STA) im Zuge des Ladens eines Anwendungsprogramms in den Arbeitsspeicher (RAM) des Datenverarbeitungsgerätes (PC) zumindest eine Signatur des Anwendungsprogramms überprüft, wobei bei fehlender oder fehlerhafter Signatur ein Laden und/oder ein Ausführen des Anwendungsprogramms jeweils unterbrochen oder verhindert wird. Durch dieses Verfahren kann gewährleistet werden, dass Automatisierungs-Software nur noch über die "Starter-Applikation (STA)" gestartet wird, so dass die Starter-Applikation (STA) die vollständige Kontrolle über die zu ladenden Anwendungsprogramme hat. Durch das Bereitstellen der Starter-Applikation (STA) auf einem manipulationssicheren Datenträger oder einer manipulationssicheren Datenquelle kann eine Manipulation der Starter-Applikation (STA) verhindert werden, wobei alle anderen Betriebssystem-Komponenten weiterhin "Update-fähig" bleiben.

Description

Beschreibung
Verfahren und Datenverarbeitungsgerät zum Schutz gegen die Ausführung unautorisierter Anwendungsprogramme
Die Erfindung betrifft ein Verfahren zum Schutz eines Datenverarbeitungsgerätes gegen die Ausführung von unautorisiertem Programmcode gemäß dem Oberbegriff des Patentanspruchs 1, und ein Datenverarbeitungsgerät mit Schutz gegen die Ausführung von unautorisiertem Programmcode gemäß dem Oberbegriff des Patentanspruchs 11.
Beim Betrieb von Datenverarbeitungsgeräten stellen Schadpro- gramme, beispielsweise Computer-Viren oder sog. "Trojaner", die auch oft unter dem Sammelbegriff "Malware" bezeichnet werden, eine ernste Bedrohung sowohl der Datensicherheit als auch der Funktionalität der Datenverarbeitungsgeräte und etwaiger damit gesteuerter Anwendungen und industrieller Pro- zesse dar. Neben der "Malware", die z.B. als zusätzliche Prozesse unbemerkt und unerlaubt auf Datenverarbeitungsgeräten zum Ablauf kommen, stellen auch manipulierte Anwendungsprogramme eine Bedrohung dar, also solche Anwendungsprogramme, die zwar gewollt zum Einsatz kommen, aber zwischenzeitlich und unbemerkt von dritter Seite manipuliert wurden. Alle diese ungewollten oder in manipulierter Form auf Datenverarbeitungsgeräte eingebrachten und zur Ausführung gebrachten Programme, Routinen, Code-Fragmente etc. sollen im Folgenden zu- sammengefasst als "unautorisierter Programmcode" bezeichnet werden.
In Automatisierungsanlagen der industriellen Automatisierungsanordnungen werden heute oftmals zusätzlich zu oder anstelle proprietärer speicherprogrammierbarer Steuerungen standard-konforme Personal-Computer eingesetzt, die dabei unterschiedlichste Aufgaben erfüllen, beispielsweise im Engineering (Konfiguration und Programmerstellung für Automatisierungsanordnungen) , Inbetriebnahme, Diagnose, Bedienen- und Beobachten und schließlich auch in der PC-basierten Automatisierung. Zwischenzeitlich sind Computer-Viren bekannt geworden, die speziell eine Automatisierungs-Software bzw. Engineering-Systeme auf Personal-Computern angreifen, um Automa- tisierungsprogramme der damit programmierten speicherprogrammierbaren Steuerungen zu manipulieren.
Es hat sich dabei herausgestellt, dass sog. "generische
Schutzmaßnahmen", also der Einsatz spezieller "gehärteter" Betriebssysteme und von Antivirus-Programmen nicht mehr ausreichen, um aufwändig geplante Angriffe abzuwehren. Dies bedeutet, dass die heute allgemein in der Informationstechnik insbesondere für Personal-Computer üblichen Schutzmaßnahmen zwar im Automatisierungsumfeld angewendet werden, um die dort betriebenen Personal-Computer mit standardisierter Hardware zu schützen, aber nicht immer ausreichen. Auch modernere System wie "White-Listing" , bei der nur Anwendungsprogramme einer "Positiv-Liste" zum Einsatz kommen können, können nicht in jedem Fall ausreichend schützen. Fortgeschrittene Malware kann oft auch solche ebenfalls recht generischen Schutzsysteme umgehen .
Es ist also eine Aufgabe der vorliegenden Erfindung, Datenverarbeitungsgeräte noch besser gegen die Ausführung unauto- risierter Anwendungsprogramme zu schützen, insbesondere bei der Verwendung standardisierter Personal-Computer als Hardware und von Standard-Betriebssystemen als Plattform für die Ausführung der Anwendungsprogramme z.B. im industriellen Umfeld.
Die Lösung der Aufgabe beruht auf der Erkenntnis, dass typische Anwendungsprogramme bisher kaum gegen eine Manipulation der eigenen Routinen, beispielsweise der Kommunikationsbibliotheken oder anderer Software-Komponenten, geschützt sind und damit Angriffe ermöglichen. Trotz zahlreicher Schutzmaßnahmen sind auch heute weit verbreitete Betriebsysteme wie Windows und Linux oft Ziel erfolgreicher Angriffe/Manipulationen. Es ist daher ein Ziel der Erfindung, ein Verfahren und Software-Komponenten vorzuschlagen, die verhindern, dass eine Software-Konfiguration oder auch deren Teile unautorisiert verändert werden, ehe sie zur Ausführung in den Arbeitsspeicher des Personal-Computers geladen werden. Erfin- dungsgemäß wird dazu der Betriebssystemlader , also diejenige Komponente des Betriebssystems, die zur Übertragung eines Anwendungsprogramms von einem Server, Massenspeicher oder dgl . in den Arbeitsspeicher eines Datenverarbeitungsgerätes zuständig ist, durch eine unveränderbare, geprüfte Komponente ersetzt, die die gleiche Funktionalität erfüllt, aber von einer "Malware" nicht verändert werden kann. Eine solche Komponente soll im Folgenden mit dem Begriff "Starter-Applikation" bezeichnet werden. Die Lösung der Aufgabe sieht insbesondere den Einsatz eines Verfahrens gemäß dem Patentanspruch 1 und den Einsatz eines Datenverarbeitungsgerätes gemäß dem Patentanspruch 11 vor.
Dabei wird ein Verfahren zum Schutz eines Datenverarbeitungs- gerätes gegen die Ausführung von unautorisiertem Programmcode vorgeschlagen, wobei das Datenverarbeitungsgerät mit einem Betriebssystem ausgestattet ist, und wobei das Betriebssystem mit Routinen zum Laden von Anwendungsprogrammen in einen Arbeitsspeicher des Datenverarbeitungsgerätes ausgestattet ist. Dabei werden die Routinen des Betriebssystems zum Laden der Anwendungsprogramme in den Arbeitsspeicher durch eine Starter-Applikation ersetzt, wobei die Starter-Applikation von einem manipulationssicheren Medium geladen wird, und wobei die Starter-Applikation im Zuge des Ladens eines Anwendungs- Programms in den Arbeitsspeicher des Datenverarbeitungsgerätes zumindest eine Signatur des Anwendungsprogramms überprüft, wobei bei fehlender oder fehlerhafter Signatur ein Laden und/oder ein Ausführen des Anwendungsprogramms jeweils unterbrochen oder verhindert wird. Durch dieses Verfahren kann gewährleistet werden, dass Anwendungsprogramme wie z.B. Automatisierungs- oder Engineering-Software nur noch über die "Starter-Applikation" geladen und gestartet wird, so dass die Starter-Applikation die vollständige Kontrolle über die zu ladenden Anwendungsprogramme hat. Durch das Bereitstellen der Starter-Applikation auf einem manipulationssicheren Datenträger oder einer manipulationssicheren Datenquelle ("Medium") kann eine Manipulation der Starter-Applikation verhindert werden, wobei alle anderen Betriebssystem-Komponenten weiterhin "update- fähig" bleiben.
Die Aufgabe wird außerdem durch ein Datenverarbeitungsgerät mit Schutz gegen die Ausführung von unautorisiertem Programm- code gelöst, wobei das Datenverarbeitungsgerät mit einem Betriebssystem ausgestattet ist, und wobei das Betriebssystem mit Routinen zum Laden von Anwendungsprogrammen in einen Arbeitsspeicher des Datenverarbeitungsgerätes ausgestattet ist. Dabei ist das Datenverarbeitungsgerät dazu eingerichtet, die Routinen des Betriebssystems zum Laden der Anwendungsprogramme in den Arbeitsspeicher durch eine Starter-Applikation funktional zu ersetzen, wobei die Starter-Applikation auf einem manipulationssicheren Medium gespeichert ist, und wobei die Starter-Applikation dazu eingerichtet ist, im Zuge des Ladens eines Anwendungsprogramms in den Arbeitsspeicher des Datenverarbeitungsgerätes zumindest eine Signatur des Anwendungsprogramms zu überprüfen, wobei die Starter-Applikation derart eingerichtet ist, dass bei fehlender oder fehlerhafter Signatur ein Laden und/oder ein Ausführen des Anwendungspro- gramms jeweils unterbrochen oder verhindert wird. Durch ein solches Datenverarbeitungsgerät können die im Zuge des Verfahrens erläuterten Vorteile realisiert werden.
Vorteilhafte Ausgestaltungen des erfindungsgemäßen Verfahrens sind in den abhängigen Patentansprüchen angegeben. Die dabei beschriebenen Merkmale und deren Vorteile gelten sinngemäß auch für das erfindungsgemäße Datenverarbeitungsgerät. Die Merkmale der vorteilhaften Ausgestaltungen können sowohl einzeln, als auch in Kombination miteinander angewendet werden.
Vorteilhaft wird als das manipulationssichere Medium ein optischer Datenträger oder ein Halbleiter-basierter Festspeicher ("Flash-Karte" o.ä.) mit aktiviertem Schreibschutz ver- wendet. Dadurch ist es beispielsweise auch möglich, ein Standard-Betriebssystem wie im Stand der Technik zu laden ("Booten" ) , dann aber vorteilhaft vor Herstellung einer Netzwerkverbindung und somit vor einer Manipulationsmöglichkeit die Starter-Applikation von dem manipulationssicheren Medium zu laden und damit die entsprechenden betriebssystemeigenen Routinen und Bibliotheken zu ergänzen oder funktional zu ersetzen. Dazu werden die entsprechenden betriebssystemeigenen Routinen und Bibliotheken jedoch in einer Ausgestaltung nicht vollständig durch die Starter-Applikation ersetzt, sondern die Starter-Applikation ersetzt die originalen Routinen nur in Bezug auf das Laden und Kontrollieren der signierten und ggf. verschlüsselten Anwendungsprogramme. Die originalen Routinen des Betriebssystems können dann in dieser Ausgestaltung weiterhin zum Laden "konventioneller", nicht signierter Software verwendet werden.
Vorteilhaft werden von dem manipulationssicheren Medium oder alternativ auf einem weiteren manipulationssicheren Medium auch die zur Überprüfung der Signatur erforderlichen Signatur-Zertifikate geladen, so dass eine zwischenzeitliche Manipulation der Signatur-Zertifikate erschwert wird.
Ziel bekannter Computer-Viren und anderer unautorisierter An- Wendungsprogramme und damit von unautorisiertem Programmcode ist es, möglichst eine Vielzahl von Datenverarbeitungsgeräten anzugreifen, z.B. um sich zu verbreiten. Dies wird verhindert oder erschwert, indem jedes autorisierte Anwendungsprogramm spezifisch für ein autorisiertes Datenverarbeitungsgerät ver- schlüsselt und vor dem Laden in den Arbeitsspeicher dieses
Datenverarbeitungsgerätes durch die Starter-Applikation lokal entschlüsselt wird.
Vorteilhaft wird dabei zur Verschlüsselung ein öffentlicher Schlüssel eines TPM-Moduls (TPM = Trusted Platform Module) des Datenverarbeitungsgerätes abgerufen und von einem
"Deployment-System" , d.h. einer Einrichtung (z.B. ein "Software-Portal") zur Verteilung von Software, des Herstellers des Anwendungsprogramms oder einem funktionsähnlichen System zur Bereitstellung von Anwendungsprogrammen zur Verschlüsselung des Anwendungsprogramms jeweils verwendet. Dabei macht man sich zu Nutze, dass ein TPM-Modul fest mit dem autori- sierten Datenverarbeitungsgerät verbunden ist. Als öffentlicher Schlüssel kann z.B. das "TPM Identity Credential" verwendet werden, das normalerweise nicht zur Verschlüsselung von Software vorgesehen ist. Dieser Schlüssel ist aber aus Datenschutzgründen nur unter Auflagen zugänglich ist, was be- deutet, dass ein Benutzer eines Datenverarbeitungsgerätes mit TPM-Modul das Auslesen dieses Schlüssels mit einem Passwort bestätigen muss, was Angreifern bzw. Malware eine weitere Hürde in den Weg legt. Dabei wird die Sicherheit weiterhin erhöht, indem zur Übertragung des öffentlichen Schlüssels zu dem Deployrnent-System ein gesicherter Übertragungskanal zwischen dem TPM-Modul und dem Engineering-System verwendet wird, was bedeutet, dass das Betriebssystem und damit auch Malware, die Teile des Betriebssystems oder des
Netzwerkstacks unterwandert haben könnte, selbst keinen di- rekten Zugriff auf den Klartext des öffentlichen Schlüssels hat und somit die Verschlüsselung durch das Deployrnent-System nicht nachahmen kann.
Vorteilhaft wird dabei zur Entschlüsselung des Anwendungspro- gramms ein passender privater Schlüssel des TPM-Moduls verwendet, wobei auch hier vorteilhafter Weise die Verwendung des privaten Schlüssels jeweils von einem Benutzer des Datenverarbeitungsgerätes freigegeben werden soll, beispielsweise durch Eingabe eines TPM-Passwortes .
Durch die vorstehend beschriebene Verwendung der Schlüssel eines TPM-Moduls, die im Stand der Technik für die sicherer Identifizierung einer Hardware-Einheit vorgesehen sind, kann als Hardware-Plattform jeder Personal-Computer verwendet wer- den, welcher über ein solches standardisiertes TPM-Modul verfügt . Ein Ausführungsbeispiel für das erfindungsgemäße Verfahren wird nachfolgend anhand der Zeichnung erläutert. Damit soll gleichzeitig ein erfindungsgemäßes Datenverarbeitungsgerät erläutert werden.
Dabei zeigt die einzige Figur in schematischer Darstellung eine Anordnung aus einem Personal-Computer als Datenverarbeitungsgerät und einem Deployment-System als Quelle für ein autorisiertes Anwendungsprogramm.
Im Folgenden wird die Erfindung anhand eines für Automatisierungszwecke verwendeten Personal-Computers PC erläutert, der, wie in der Figur dargestellt, mit einem Deployment-System DPL mittels eines Datennetzwerks verknüpft ist. Abweichend von dieser vorteilhaften Ausgestaltung kann mittels des erfindungsgemäßen Verfahrens das als Personal-Computer PC ausgestaltete Datenverarbeitungsgerät auch mit einer andere Software-Quelle Daten- und Anwendungsprogramme austauschen, beispielsweise mit einem über das Internet erreichbaren Server. So sind beispielsweise Updates für gebräuchliche Engineering- Systeme, die hier als zu schützende Anwendungen betrachtet werden können, regelmäßig über das Internet von Servern der Hersteller zu beziehen. Der in der Figur dargestellte Personal-Computer PC (Datenverarbeitungsgerät) weist ein Trusted-Platform-Module TPM auf, wobei die Anwesenheit bzw. Verwendung des Trusted-Platform- Modules TPM eine vorteilhafte Ausgestaltung in Bezug auf die Verschlüsselung eines zu verwendenden Anwendungsprogramms darstellt, welche später erläutert wird. Der Personal- Computer PC weist einen Arbeitsspeicher RAM (Random-Access- Memory) und eine Festplatte HDD (Massenspeicher) auf, wobei beide genannten Komponenten in der Figur dargestellt sind. Darüber hinaus entspricht der dargestellte Personal-Computer PC einer gebräuchlichen Hardware mit allen üblichen (hier jedoch nicht dargestellten) Komponenten. Das Deployment-System DPL bietet beispielsweise alle Anwendungen an, die für die vielfältigen Aufgaben eines Engineering-Systems notwendig sind, beispielsweise Editoren zur Anlagenplanung und Programmerstellung, Visualisierungsmittel und dgl .
In der Figur sind als Komponenten des Deployment-Systems DPL nur ein Verschlüsselungsmodul VSM und ein Massenspeicher HDD (z.B. Festplatte) dargestellt, wobei angenommen wird, dass ein autorisiertes und zur Verwendung auf dem Personal- Computer PC vorgesehenes Anwendungsprogramm (wie z.B. eine Engineering-Software bzw. ein Engineering-System bzw. Teile davon) auf der Festplatte HDD des Deployment-Systems DPL bereitgestellt ist. Wie alle anderen besprochenen Software- Komponenten kann auch das Anwendungsprogramm aus einer Vielzahl einzelner Routinen, Bibliotheken, Funktionsblöcken oder dgl. bestehen.
Ein typischer Ansatz bekannter Schadsoftware (Malware) besteht darin, die Kommunikationsbibliothek (z.B. in einer DLL) eines Anwenderprogramms von Personal-Computern PC auszutauschen und mitzunutzen. Die derart installierten Schadprogram- me arbeiten beispielsweise nach dem "Man-in-the-Middle " -
Prinzip im Datenfluss zwischen einer Engineering-Software und beispielsweise einer Kommunikations-Bibliothek, die für die Kommunikation mit einer an dem Personal-Computer PC angeschlossenen speicherprogrammierbaren Steuerung zuständig ist. In der Figur ist jedoch ein vereinfachter Fall dargestellt, an dem keine "externe" speicherprogrammierbare Steuerung betroffen ist, sondern ein Engineering-System als Anwendungsprogramm auf dem Personal-Computer selbst ablaufen soll. Aufgrund der typischer Weise nicht vorhandenen gegenseitigen Authentifizierung von Software-Komponenten eines Personal- Computers PC konnte eine Manipulation bzw. ein Austausch der Kommunikations-Bibliotheken bislang kaum bemerkt werden. Im Folgenden wird geschildert, wie mit dem erfindungsgemäßen Verfahren verhindert wird, dass eine Software-Konfiguration oder deren Teile, also ein Anwendungsprogramm, manipulativ verändert werden, ehe diese zur Ausführung in den Arbeitsspeicher RAM des Personal-Computers PC geladen werden. Dazu wird in einem ersten Schritt der Betriebssystemlader des herkömmlichen Betriebssystems des Personal-Computers PC durch eine Starter-Applikation STA funktional ersetzt, welche die gleiche Funktionalität erfüllt, aber durch das Laden von einem manipulationssicheren Medium MSS nicht oder nur schwer manipuliert werden kann. Obwohl das manipulationssicheren Medium MSS in der Figur außerhalb des Personal-Computers PC dargestellt ist, würde sich ein schreibgeschützter Datenträ- ger (z.B. eine CD-ROM) in der Realität meist innerhalb eines PC-Gehäuses befinden.
Das autorisierte Anwendungsprogramm (hier: Automatisierungssoftware) wird nur noch über die Starter-Applikation STA ge- startet und somit in den Arbeitsspeicher RAM des Personal- Computers PC übertragen. In einer Ausgestaltung können die originalen Lade-Routinen des Betriebssystems für das Laden anderer Programme weiterverwendet werden, solange sichergestellt wird, dass das sicherheitskritische Anwendungsprogramm nur durch erfindungsgemäß signierte und ggf. verschlüsselte Versionen aktualisiert werden kann.
Die genannte Starter-Applikation STA umfasst dazu auch die benötigten Bibliotheken, die notwendig sind, um den auszufüh- renden Code des Anwendungsprogramms in einen vorgesehenen
Speicherbereich zu laden und diesen Speicherbereich vor Veränderung durch dritte Software zu schützen; die letztgenannte Funktion nutzt dazu Mittel, die von modernen Betriebssystemen ohnehin bereit gestellt werden. Da sich die Funktionalität der Starter-Applikation STA darüber hinaus im Wesentlichen auf das Laden des Anwendungsprogramms beschränkt, lassen sich diese Vorgänge relativ einfach außerhalb des Standard- Betriebssystems durchführen, und die dazu benötigten Routinen bzw. DLLs unterliegen kaum Änderungen innerhalb eines Sup- port-Zeitraums für ein Standard-Betriebssystem. Dies bedeutet, dass die Starter Applikation STA in der Regel während der "Lebensdauer" einer Betriebssystem-Installation nicht zwingend geändert bzw. "upgedated" werden muss . Die Starter- Applikation STA kann für die benötigte Funktionalität auch Kopien von originalen Bibliotheken des Betriebssystems umfassen, die jedoch durch die Speicherung auf dem manipulationssicheren Medium MSS vor einer Änderung durch Schadsoftware bzw. unautorisierte Zugriffe weitgehend geschützt sind.
Wie bereits beschrieben, wird die Starter-Applikation STA von einem unveränderbaren Medium MSS geladen und gestartet. Dies kann eine CD-ROM oder DVD-ROM sein, oder aber beispielsweise auch ein Flash-Speichermedium mit aktiviertem Schreibschutz . Damit besteht ein hardwarebasierter Schutz gegen eine unautorisierte Änderung der Starter-Applikation STA oder deren Programm-Bibliotheken. Vorteilhaft hat das Medium MSS mit der Starter-Applikation STA zudem Merkmale, die eine Herkunfts- prüfung erlauben, z.B. Hologramme, Siegel, Signaturen oder dgl . Das manipulationssichere Medium MSS kann darüber hinaus auch vorteilhaft in einem vor Zugriff geschützten Laufwerk oder Anschluss verbracht sein, beispielsweise hinter einer "Verplombung" . Um zu vermeiden, dass die Starter-Applikation bei ihrem Laden in den Arbeitsspeicher RAM durch manipulierte Laderoutinen des Betriebssystems ihrerseits manipuliert oder ersetzt wird, wird die Starter-Applikation STA nur einmal geladen, und zwar zu einem Zeitpunkt, zu dem der Personal- Computer PC noch nicht durch "Malware" infiziert sein kann, also insbesondere vor Aktivierung einer Netzwerkverbindung, und verbleibt danach im Speicher RAM, der dazu mittels üblicher Methoden mit einem Zugriffsschutz versehen wird.
Um den Missbrauch der nun geladenen Starter-Applikation zu vermeiden, also um zu vermeiden, dass "Malware" bzw. unautorisierte Programme darüber gestartet werden, lädt die Starter-Applikation STA nur vom Hersteller der Automatisierungs- Software signierten Code, also autorisierte Anwendungsprogramme, in den Speicher. Dazu führt die Starter-Applikation für jedes zu ladende Anwendungsprogramm bzw. Programm- Fragment eine Signaturprüfung durch, wobei die notwendigen Signatur-Zertifikate vorteilhaft ebenfalls von einem unveränderbaren Medium (hier: das manipulationssichere Medium MSS) geladen werden müssen, und nicht - wie üblich - aus einem Zertifikats-Speicher des Betriebssystems.
Obwohl das autorisierte Anwendungsprogramm in einem einfachen Fall ebenfalls von dem manipulationssicheren Medium MSS geladen werden könnte, stellt dies in der Praxis einen wenig praktikablen Ansatz dar, weil damit jede Änderung des autorisierten Anwendungsprogramms einen physischen Austausch des manipulationssicheren Mediums MSS bedingen würde. Durch das hier geschilderte Verfahren ist es vielmehr möglich, das Anwendungsprogramm auch über potentiell unsichere Datenkanäle, beispielsweise Netzwerkverbindungen oder das Internet, zu übertragen. Als Quelle für das zu ladenden Anwendungsprogramm ist im vorliegenden Ausführungsbeispiel das Deployment-System DPL vorgesehen, wo das fertig gestellte und signierte Anwendungsprogramm, z.B. ein Engineering-System, auf einem Massenspeicher HDD vorliegt. Zur Verwendung des Anwendungsprogramms wird dieses über eine Netzwerkverbindung oder mittels anderer Übertragungsmittel zu dem Personal-Computer PC übertragen und dort in einem Massenspeicher HDD (Festplatte) zwischengespeichert. Die Starter-Applikation STA lädt das Anwendungsprogramm von der Festplatte HDD und überprüft dabei die Signatur durch Vergleich mittels eines Signatur-Zertifikats, welches von dem manipulationssicheren Medium MSS geladen wurde, und installiert im Erfolgsfall das Anwendungsprogramm im Arbeitsspeicher RAM des Personal-Computers PC. Die Zwischenspeiche- rung auf einer HDD des Personal-Computers PC ist sinnvoll, aber das aus dem Deployment-System DPL geladene Anwenderprogramm kann von der Starterappplikation STA auch direkt in den Speicher des Personal-Computers PC geladen werden. Auch in diesem Fall wird die Signaturprüfung durchgeführt.
Zur weiteren Erhöhung der Sicherheit, insbesondere bei der Annahme, dass der Signatur-Mechanismus manipulativ unterwan- dert sein könnte oder Signaturschlüssel kompromittiert wurden o.ä., wird das autorisierte Anwendungsprogramm bzw. zumindest relevante Code-Teile spezifisch für den zu verwendenden Personal-Computer PC verschlüsselt; im Ausführungsbeispiel ge- schient dies durch ein Verschlüsselungs-Modul VSM des Deploy- ment-Systems DPL . Um unautorisierten Programmcode in das Anwenderprogramm (z.B. eine Engineering-SW) und damit in den Arbeitspeicher RAM des Personal-Computers PC einzuschleusen, müsste eine "Malware" nicht nur die Signaturprüfung überwinden (einmalige Lösung für alle zu infizierenden Rechner) , sondern zusätzlich in den Besitz der Verschlüsselungs- Schlüssel für jedes einzelne zu infizierende PC-System gelangen, für alle zu infizierenden Systeme verschlüsselten Code mitführen oder dynamisch erzeugen, die Starter-Applikation
STA dazu veranlassen, den so vorbereiten unautorisierten Programm-Code zu laden, und schließlich die beschriebene Signaturprüfung der Starter-Applikation STA umgehen. Im Folgenden wird geschildert, wie eine "maschinenspezifische" Verschlüsselung des Anwendungsprogramms erfolgen kann.
Dazu wird zuerst von dem Personal-Computer PC ("Ziel-PC") eine auf den Abruf des Anwendungsprogramms gerichtete Abfrage- meidung (Request) zu einem Software-Portal eines Automatisierungsherstellers gesendet, wobei im vorliegenden Ausführungsbeispiel das Deployment-System DPL das Ziel für diese Abfragemeldung ist. Dabei wird ein öffentlicher Schlüssel mitgesendet, dessen privater Schlüssel (also das private "Gegen- stück") fest an den Personal-Computer PC gebunden ist. Vorteilhaft wird für die Bereitstellung der Schlüssel ein an sich bekanntes Trusted-Platform-Modul TPM verwendet. Dieses ist identifizierbar und fest mit dem Personal-Computer PC verbunden, beispielsweise durch "Einlöten". Sog. "Man-in-the- Middle-Angriffe" (z.B. von bereits ablaufender Malware) werden bei der Schlüsselübertragung dadurch vermieden, dass das Deployment- System DPL nach Eingang der Abfragemeldung zunächst direkt mit dem Trusted-Platform-Module TPM als "vertrauenswürdige Plattform" kommuniziert und dabei dessen Iden- tität verifiziert, beispielsweise anhand des "TPM Identity
Credentials " . Dazu kann ein direkter, verschlüsselter Datenkanal zwischen dem Trusted-Plattform-Module TPM und dem
Deployment-System DPL bzw. dem darin angeordneten Verschlüs- selungs-Modul VSM (Verschlüsselungs-Software) aufgebaut werden .
Sobald die "Plattform" (Personal Computer PC) bzw. dessen Identifizierungsmodul (Modul TPM) als "vertrauenswürdig" erkannt sind, wird das autorisierte Anwendungsprogramm (z.B. eine Engineering-SW für PLC ' s - Programmable Logic Controller) mit dem öffentlichen Schlüssel aus der Abfragenachricht verschlüsselt und mit dem privaten Schlüssel des Herstellers des Automatisierungsprogramms (Anwendungsprogramms wie z.B. die Engineering-SW für PLC 's) signiert. Das verschlüsselte und signierte Anwendungsprogramm wird dann auf die "Ziel- Plattform", also den Personal-Computer PC, übertragen und dort im Massenspeicher HDD abgelegt, oder aber über die Star- ter-Applikation STA nach den beschriebenen Prüfungen der Signatur und der Entschlüsselung direkt in den Speicher geladen.
In einer vorteilhaften Variante wird der öffentliche Schlüssel " TPM-Identity Credential" direkt für die Verschlüsselung des Anwendungsprogramms verwendet. Dieser ist zwar normaler
Weise nicht dafür vorgesehen (sondern lediglich für Identifizierungszwecke) , bietet aber jedoch für Angreifer eine weitere Hürde, weil dieser genannte öffentliche Schlüssel (TPM- Identity Credential) aus Datenschutzgründen nur unter Aufla- gen zugänglich ist, was bedeutet, dass ein autorisierter Benutzer des Personal-Computers PC ( "TPM-Owner" ) mit Eingabe eines Passwortes der Übertragung zustimmen muss . Eine später aktivierte "Malware" kann ohne erneute Eingabe eines Passwortes nicht mehr an diesen öffentlichen Schlüssel gelangen und damit nicht mehr "dynamisch" ein unautorisiertes oder manipuliertes Anwendungsprogramm für dieses konkrete PC-System verschlüsseln. Die Starter-Applikation STA kann nun die derart verschlüsselte Software, also das autorisierte Anwendungsprogramm, laden, indem sie das Anwendungsprogramm über das
Trusted-Platform-Module TPM entschlüsselt. Auch dazu muss ein Benutzer ein entsprechendes Passwort ( " TPM-Passwort " ) eingeben . Die beschriebene "zielspezifische" Verschlüsselung bietet neben dem Manipulationsschutz durch Angreifer oder Malware zusätzlich den Vorteil, dass eine derart verschlüsselte Software (verschlüsseltes, autorisiertes Anwendungsprogramm) zwar kopiert werden könnte, aber nirgendwo anders als auf dem spezifischen Personal-Computer PC ausgeführt werden kann (Lizenzschutz). Systeme, die eine verschlüsselte Kopie des Anwenderprogramms anfordern, können anhand ihres TPMs identifiziert werden. Weiter ergibt sich der Vorteil, dass kein An- greifer an den "Klartext" des autorisierten Anmeldungsprogramms gelangen kann, weil dieses erst gar nicht unverschlüsselt auf Massenspeichern HDD von potentiell zugänglichen Personal-Computern PC vorliegt.

Claims

Patentansprüche
1. Verfahren zum Schutz eines Datenverarbeitungsgerätes (PC) gegen die Ausführung von unautorisiertem Programmcode, wobei das Datenverarbeitungsgerät (PC) mit einem Betriebssystem ausgestattet ist, und wobei das Betriebssystem mit Routinen zum Laden von Anwendungsprogrammen in einen Arbeitsspeicher (RAM) des Datenverarbeitungsgerätes (PC) ausgestattet ist,
dadurch gekennzeichnet,
- dass die Routinen des Betriebssystems zum Laden der Anwendungsprogramme in den Arbeitsspeicher (RAM) durch eine Starter-Applikation (STA) ergänzt oder funktional ersetzt werden, wobei die Starter-Applikation (STA) von einem mani- pulationssicheren Medium (MSS) geladen wird, und
- dass die Starter-Applikation (STA) im Zuge des Ladens eines Anwendungsprogramms in den Arbeitsspeicher (RAM) des Datenverarbeitungsgerätes (PC) zumindest eine Signatur des Anwendungsprogramms überprüft, wobei bei fehlender oder feh- lerhafter Signatur ein Laden und/oder ein Ausführen des Anwendungsprogramms jeweils unterbrochen oder verhindert wird .
2. Verfahren nach Patentanspruch 1,
dadurch gekennzeichnet,
dass als das manipulationssichere Medium (MSS) ein optischer Datenträger oder ein halbleiterbasierter Festspeicher mit aktiviertem Schreibschutz verwendet wird.
3. Verfahren nach einem der vorhergehenden Patentansprüche, dadurch gekennzeichnet,
dass von dem manipulationssicheren Medium (MSS) auch die zur Überprüfung der Signatur erforderlichen Signatur- Zertifikate geladen werden.
4. Verfahren nach einem der vorhergehenden Patentansprüche, dadurch gekennzeichnet,
dass jedes autorisierte Anwendungsprogramm spezifisch für ein autorisiertes Datenverarbeitungsgerät (PC) verschlüs- seit und vor dem Laden in den Arbeitsspeicher (RAM) dieses Datenverarbeitungsgerätes (PC) durch die Starter- Applikation (STA) entschlüsselt wird.
5. Verfahren nach Patentanspruch 4,
dadurch gekennzeichnet,
dass zur Verschlüsselung ein öffentlicher Schlüssel eines Trusted-Platform-Modules (TPM) des Datenverarbeitungsgerätes (PC) abgerufen und von einem Deployment-System (DPL) zur Verschlüsselung des Anwendungsprogramms jeweils verwen- det wird.
6. Verfahren nach Patentanspruch 5,
dadurch gekennzeichnet,
dass zur Übertragung des öffentlichen Schlüssels zu dem Deployment-System (DPL) ein gesicherter Übertragungskanal zwischen dem Trusted-Platform-Module (TPM) und dem Deployment-System (DPL) verwendet wird.
7. Verfahren nach einem der Patentansprüche 5 oder 6,
dadurch gekennzeichnet,
dass die Übertragung des öffentlichen Schlüssels von einem Benutzer des Datenverarbeitungsgerätes (PC) jeweils freigegeben wird.
. Verfahren nach einem der Patentansprüche 5 bis 7,
dadurch gekennzeichnet,
dass zur Entschlüsselung des Anwendungsprogramms ein priva ter Schlüssel des Trusted-Platform-Modules (TPM) verwendet wird .
9. Verfahren nach Patentanspruch 8,
dadurch gekennzeichnet,
dass die Verwendung des privaten Schlüssels jeweils von einem Benutzer des Datenverarbeitungsgerätes (PC) freigeben wird.
10. Verfahren nach einem der vorhergehenden Patentansprüche, dadurch gekennzeichnet,
dass als das Datenverarbeitungsgerät (PC) eine Standard-PC- Hardware verwendet wird und dass als das Anwendungsprogramm ein industrielles Automatisierungsprogramm oder eine Engin- neering-Software zur Erstellung, Inbetriebnahme oder Diagnose von industriellen Automatisierungsprogrammen verwendet wird .
11. Datenverarbeitungsgerät (PC) mit Schutz gegen die Ausführung von unautorisiertem Programmcode,
wobei das Datenverarbeitungsgerät (PC) mit einem Betriebssystem ausgestattet ist, und wobei das Betriebssystem mit Routinen zum Laden von Anwendungsprogrammen in einen Arbeitsspeicher (RAM) des Datenverarbeitungsgerätes (PC) ausgestattet ist,
dadurch gekennzeichnet,
- dass das Datenverarbeitungsgerät (PC) dazu eingerichtet ist, die Routinen des Betriebssystems zum Laden der Anwendungsprogramme in den Arbeitsspeicher (RAM) durch eine Starter-Applikation (STA) funktional zu ersetzen oder zu ergänzen, wobei die Starter-Applikation (STA) auf einem manipulationssicheren Medium (MSS) gespeichert ist, und
- dass die Starter-Applikation (STA) dazu eingerichtet ist, im Zuge des Ladens eines Anwendungsprogramms in den Arbeitsspeicher (RAM) des Datenverarbeitungsgerätes (PC) zumindest eine Signatur des Anwendungsprogramms zu überprüfen, wobei die Starter-Applikation (STA) derart eingerich- tet ist, dass bei fehlender oder fehlerhafter Signatur ein Laden und/oder ein Ausführen des Anwendungsprogramms jeweils unterbrochen oder verhindert wird.
PCT/EP2012/074940 2012-12-10 2012-12-10 Verfahren und datenverarbeitungsgerät zum schutz gegen die ausführung unautorisierter anwendungsprogramme WO2014090274A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/EP2012/074940 WO2014090274A1 (de) 2012-12-10 2012-12-10 Verfahren und datenverarbeitungsgerät zum schutz gegen die ausführung unautorisierter anwendungsprogramme

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2012/074940 WO2014090274A1 (de) 2012-12-10 2012-12-10 Verfahren und datenverarbeitungsgerät zum schutz gegen die ausführung unautorisierter anwendungsprogramme

Publications (1)

Publication Number Publication Date
WO2014090274A1 true WO2014090274A1 (de) 2014-06-19

Family

ID=47594614

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2012/074940 WO2014090274A1 (de) 2012-12-10 2012-12-10 Verfahren und datenverarbeitungsgerät zum schutz gegen die ausführung unautorisierter anwendungsprogramme

Country Status (1)

Country Link
WO (1) WO2014090274A1 (de)

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
HIMANSHU PAREEK: "Application Whitelisting: Approaches and Challenges", INTERNATIONAL JOURNAL OF COMPUTER SCIENCE, ENGINEERING AND INFORMATION TECHNOLOGY, vol. 2, no. 5, 31 October 2012 (2012-10-31), pages 13 - 18, XP055072037, ISSN: 2231-3605, DOI: 10.5121/ijcseit.2012.2502 *
MICHAEL EMANUEL: "Tamper free deployment and execution of software using TPM", 18 October 2012 (2012-10-18), XP055072030, Retrieved from the Internet <URL:http://cs.au.dk/fileadmin/site_files/cs/AA_pdf/Tamper_free_software_using_TPM.pdf> [retrieved on 20130718] *

Similar Documents

Publication Publication Date Title
EP2899714B1 (de) Gesichertes Bereitstellen eines Schlüssels
EP3557463B1 (de) Verfahren und ausführungsumgebung zum ausführen von programmcode auf einem steuergerät
DE102009013384A1 (de) System und Verfahren zur Bereitstellung einer sicheren Anwendungsfragmentierungsumgebung
DE102014208855A1 (de) Verfahren zum Durchführen einer Kommunikation zwischen Steuergeräten
DE102011081421A1 (de) System zur sicheren Übertragung von Daten und Verfahren
EP2193471A1 (de) Verfahren und system zum schutz gegen einen zugriff auf einen maschinencode eines gerätes
DE102014208851A1 (de) Verfahren zum Verhindern eines unbefugten Betriebs eines Kraftfahrzeugs
WO2017102295A1 (de) Verfahren und sicherheitsmodul zum bereitstellen einer sicherheitsfunktion für ein gerät
EP3403214B1 (de) Verfahren und einrichtung zum bereitstellen einer kryptographischen sicherheitsfunktion für den betrieb eines geräts
EP3314339B1 (de) Verfahren, server, firewall, steuergerät, und system zur programmierung eines steuergeräts eines fahrzeugs
DE102015201298A1 (de) Verfahren zum kryptographischen Bearbeiten von Daten
EP2434424B1 (de) Verfahren zur Erhöhung der Sicherheit von sicherheitsrelevanten Online-Diensten
EP3761202B1 (de) System und verfahren zur speicherung eines zu schützenden datensatzes
DE102015000895B3 (de) Verteiltes Bearbeiten von zentral verschlüsselt gespeicherten Daten
DE102015202215A1 (de) Vorrichtung und Verfahren zum sicheren Betreiben der Vorrichtung
EP3105899B1 (de) Verfahren zum hochfahren eines produktions-computersystems
WO2014090274A1 (de) Verfahren und datenverarbeitungsgerät zum schutz gegen die ausführung unautorisierter anwendungsprogramme
EP3422234B1 (de) Container-image, computerprogrammprodukt und verfahren
EP3812938A1 (de) Rekonfiguration einer hardwarekomponente eines technischen geräts
EP3595256A1 (de) Vorrichtung und verfahren zum betreiben einer durch software gestalteten verarbeitungseinheit für ein gerät
DE102014208853A1 (de) Verfahren zum Betreiben eines Steuergeräts
EP3534282A1 (de) Verfahren und sicherheitsmodul zum rechnergestützten ausführen von programmcode
DE112022001853T5 (de) Verbesserte kryptographische systeme und verfahren
EP3441898B1 (de) Verfahren und vorrichtung zum schützen einer software gegen ein unbefugtes nutzen
EP4141722A1 (de) Sicheres betreiben einer industriellen steuerungsvorrichtung zusammen mit einem ai-modul

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12816463

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12816463

Country of ref document: EP

Kind code of ref document: A1