DE102021210328A1 - MEMORY-USE-BASED DETECTION OF INFRINGEMENTS INTO A SYSTEM - Google Patents
MEMORY-USE-BASED DETECTION OF INFRINGEMENTS INTO A SYSTEM Download PDFInfo
- Publication number
- DE102021210328A1 DE102021210328A1 DE102021210328.6A DE102021210328A DE102021210328A1 DE 102021210328 A1 DE102021210328 A1 DE 102021210328A1 DE 102021210328 A DE102021210328 A DE 102021210328A DE 102021210328 A1 DE102021210328 A1 DE 102021210328A1
- Authority
- DE
- Germany
- Prior art keywords
- software
- usage information
- memory usage
- memory
- reference memory
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
Abstract
Ein erster Aspekt der vorliegenden Offenbarung betrifft ein computer-implementiertes Verfahren zur Erkennung von Eindringen in ein System, umfassend Aufzeichnen einer Speicherbenutzungsinformation bei Ausführung mindestens eines Teils einer Software des Systems; Prüfen, ob die Speicherbenutzungsinformation von einer für den mindestens einen Teil der Software vorbestimmten Referenzspeicherbenutzungsinformation abweicht; und Bewerten der Software als manipuliert, wenn das Prüfen positiv ausfällt.Ein zweiter Aspekt der vorliegenden Offenbarung betrifft ein computer-implementiertes Verfahren zur Aufzeichnung und Speicherung von einer Referenzspeicherbenutzungsinformation für Software in einem System, umfassend Aufzeichnen einer Referenzspeicherbenutzungsinformation bei Ausführung mindestens eines Teils der Software und Speichern der Referenzspeicherbenutzungsinformation für den mindestens einen Teil der Software in dem System.Ein dritter Aspekt der vorliegenden Offenbarung betrifft ein System, das dafür ausgelegt ist, die Verfahren der vorliegenden Offenbarung auszuführen.A first aspect of the present disclosure relates to a computer-implemented method for detecting intrusion into a system, comprising recording memory usage information upon execution of at least a portion of software of the system; checking whether the memory usage information deviates from a reference memory usage information predetermined for the at least part of the software; and evaluating the software as tampered with if the verification is positive.A second aspect of the present disclosure relates to a computer-implemented method for recording and storing reference memory usage information for software in a system, comprising recording reference memory usage information upon execution of at least a portion of the software and storing reference memory usage information for the at least a portion of the software in the system. A third aspect of the present disclosure relates to a system configured to perform the methods of the present disclosure.
Description
Stand der TechnikState of the art
Systeme, insbesondere eingebettete Systeme, können sicherheitsrelevant sein und sollten gegen Eindringen abgesichert sein. Eingebettete Systeme können Hardware wie z.B. einen elektronischen Rechner und Software umfassen, die beide in einem technischen Kontext eingebunden („eingebettet“) sind. Eingebettete Systeme können - vermöge Hardware und/oder Software - zum Beispiel dafür ausgelegt sein, ein weiteres technisches System wie z.B. ein Fahrzeug oder z.B. eine Motorsteuerung des Fahrzeugs zu überwachen, zu steuern und/oder zu regeln. Wird Eindringen in ein System nicht erkannt, kann das System und ggf. das weitere technische System in unerwünschter und/oder unzulässiger Art manipuliert werden.Systems, especially embedded systems, can be security relevant and should be secured against intrusion. Embedded systems may include hardware, such as an electronic calculator, and software, both of which are incorporated (“embedded”) in a technical context. Embedded systems can be designed - by means of hardware and/or software - for example to monitor, control and/or regulate another technical system such as a vehicle or an engine control of the vehicle. If intrusion into a system is not detected, the system and possibly the further technical system can be manipulated in an undesirable and/or impermissible manner.
Die zunehmende Anzahl von elektronischen Steuereinheiten in (mechatronischen) Systemen sowie die zunehmende Digitalisierung oder Interoperabilität von elektronischen Steuereinheiten kann zu immer mehr Schnittstellen des Systems (z.B. eine Multimedia-Schnittstelle im Fahrzeug) und dadurch zu einer immer größer werdenden Angriffsfläche für mögliches Eindringen führen. Um Eindringen zu erkennen und möglichst zu verhindern, werden Eindringenserkennungssysteme (englisch: intrusion detection systems, IDS) entwickelt.The increasing number of electronic control units in (mechatronic) systems as well as the increasing digitization or interoperability of electronic control units can lead to more and more interfaces of the system (e.g. a multimedia interface in the vehicle) and thus to an ever-increasing attack surface for possible intrusion. Intrusion detection systems (IDS) are being developed to detect and, if possible, prevent intrusion.
Eingebettete Systeme, insbesondere elektronische Steuereinheiten, können restriktiv ausgelegt sein. Zum Beispiel kann die Funktionalität eingebetteter Systeme nach Spezifikationen und/oder Normen bestimmt oder zertifiziert sein. Im Gegensatz zu z.B. Systemen wie Mehrzweckcomputern mit universellen Betriebssystemen kann die Funktionalität eingebetteter Systeme durch eine (kleinere) Vielzahl von Routinen implementiert werden. Eine Methode, ein Eindringen in das System zu erkennen, kann dann zum Beispiel umfassen, den Stromverbrauch und/oder dessen zeitlichen Verlauf beim Ausführen einer Routine aufzuzeichnen und mit einem Referenzstromverbrauch bzw. Referenzverlauf zu vergleichen. Abweichungen in einem solchen Vergleich können darauf hindeuten, dass die Routine (in der Zwischenzeit) manipuliert wurde. Somit kann Eindringen in das System erkannt und entsprechende Maßnahmen eingeleitet werden. Die Messung des Stroms während der Ausführung von Routinen erfordert allerdings eine dafür ausgelegte zusätzliche Hardware und ist daher mit Zusatzkosten verbunden.Embedded systems, especially electronic control units, can be designed restrictively. For example, the functionality of embedded systems can be determined or certified according to specifications and/or standards. In contrast to e.g. systems such as general-purpose computers with general-purpose operating systems, the functionality of embedded systems can be implemented by a (smaller) variety of routines. A method for detecting an intrusion into the system can then include, for example, recording the power consumption and/or its time profile when a routine is executed and comparing it with a reference power consumption or reference profile. Deviations in such a comparison may indicate that the routine has been tampered with (in the meantime). Intrusion into the system can thus be detected and appropriate measures initiated. However, measuring the current during the execution of routines requires dedicated additional hardware and is therefore associated with additional costs.
Offenbarung der ErfindungDisclosure of Invention
Ein erster allgemeiner Aspekt der vorliegenden Offenbarung betrifft ein computer-implementiertes Verfahren zur Erkennung von Eindringen in ein System. Das Verfahren umfasst Aufzeichnen einer Speicherbenutzungsinformation bei Ausführung mindestens eines Teils einer Software des Systems. Das Verfahren umfasst weiterhin Prüfen, ob die Speicherbenutzungsinformation von einer für den mindestens einen Teil der Software vorbestimmten Referenzspeicherbenutzungsinformation abweicht. Das Verfahren umfasst weiterhin Bewerten der Software als manipuliert, wenn das Prüfen positiv ausfällt. Das Verfahren kann Einleiten mindestens einer Maßnahme umfassen, wenn die Software als manipuliert bewertet worden ist.A first general aspect of the present disclosure relates to a computer-implemented method for detecting intrusion into a system. The method includes recording memory usage information upon execution of at least a portion of software of the system. The method further comprises checking whether the memory usage information deviates from a reference memory usage information predetermined for the at least part of the software. The method further includes evaluating the software as tampered with if the testing is positive. The method may include initiating at least one action if the software has been determined to be tampered with.
Ein zweiter allgemeiner Aspekt der vorliegenden Offenbarung betrifft ein computer-implementiertes Verfahren zur Aufzeichnung und Speicherung von einer Referenzspeicherbenutzungsinformation für Software in dem System. Das Verfahren umfasst Aufzeichnen einer Referenzspeicherbenutzungsinformation bei Ausführung mindestens eines Teils der Software. Das Verfahren umfasst weiterhin Speichern der Referenzspeicherbenutzungsinformation für den mindestens einen Teil der Software in dem System.A second general aspect of the present disclosure relates to a computer-implemented method for recording and storing reference memory usage information for software in the system. The method includes recording reference memory usage information upon execution of at least a portion of the software. The method further includes storing the reference memory usage information for the at least a portion of the software in the system.
Die vorbestimmte Referenzspeicherbenutzungsinformation für den mindestens einen Teil der Software im Verfahren zur Erkennung von Eindringen in das System nach dem ersten allgemeinen Aspekt (oder einer Ausführungsform davon) kann nach dem Verfahren zur Aufzeichnung und Speicherung der Referenzspeicherbenutzungsinformation für Software in dem System nach dem zweiten allgemeinen Aspekt (oder einer Ausführungsform davon) erzeugt werden. Ein dritter allgemeiner Aspekt der vorliegenden Offenbarung betrifft ein System, das dafür ausgelegt ist, das computer-implementierte Verfahren zur Erkennung von Eindringen in das System nach dem ersten allgemeinen Aspekt (oder einer Ausführungsform davon) und/oder das computer-implementierte Verfahren zur Aufzeichnung und Speicherung der Referenzspeicherbenutzungsinformation für Software in dem System nach dem zweiten allgemeinen Aspekt (oder einer Ausführungsform davon) auszuführen.The predetermined reference memory usage information for the at least part of the software in the method for detecting intrusion into the system according to the first general aspect (or an embodiment thereof) may be according to the method for recording and storing the reference memory usage information for software in the system according to the second general aspect (or an embodiment thereof). A third general aspect of the present disclosure relates to a system arranged to use the computer-implemented method for detecting system intrusion of the first general aspect (or an embodiment thereof) and/or the computer-implemented method for recording and storage of reference memory usage information for software in the system according to the second general aspect (or an embodiment thereof).
Ein vierter allgemeiner Aspekt der vorliegenden Offenbarung betrifft ein Computer-Programm, das dafür ausgelegt ist das computer-implementierte Verfahren zur Erkennung von Eindringen in das System nach dem ersten allgemeinen Aspekt (oder einer Ausführungsform davon) und/oder das computer-implementierte Verfahren zur Aufzeichnung und Speicherung der Referenzspeicherbenutzungsinformation für Software in dem System nach dem zweiten allgemeinen Aspekt (oder einer Ausführungsform davon) auszuführen. Ein fünfter allgemeiner Aspekt der vorliegenden Offenbarung betrifft ein computer-lesbares Medium oder Signal, das das Computer-Programm nach dem vierten allgemeinen Aspekt speichert und/oder enthält.A fourth general aspect of the present disclosure relates to a computer program arranged for the computer-implemented method for detecting system intrusion according to the first general aspect (or an embodiment thereof) and/or the computer-implemented method for recording and storing reference memory usage information for software in the system according to the second general aspect (or an embodiment thereof). A fifth general aspect of the present disclosure relates to a computer-readable medium or signal carrying the computer stores and/or contains a program according to the fourth general aspect.
Ein sechster allgemeiner Aspekt der vorliegenden Offenbarung betrifft ein Computersystem, das dafür ausgelegt ist, das Computer-Programm nach dem vierten allgemeinen Aspekt auszuführen.A sixth general aspect of the present disclosure relates to a computer system configured to execute the computer program according to the fourth general aspect.
Die in dieser Offenbarung vorgeschlagenen Verfahren sind auf die Erkennung von Eindringen in das System gerichtet. Wird ein Eindringen erkannt, kann mindestens eine (Gegen)maßnahme eingeleitet werden, die zum Beispiel darauf gerichtet ist, das Eindringen zu verhindern und/oder eine übergeordnete elektronische Steuereinheit zu informieren.The methods proposed in this disclosure are directed to detecting intrusions into the system. If an intrusion is detected, at least one (counter)measure can be initiated, which is aimed, for example, at preventing the intrusion and/or informing a superordinate electronic control unit.
Die Verfahren können für restriktiv ausgelegte Systeme besonders vorteilhaft sein. Ein restriktiv ausgelegtes System kann zum Beispiel ein eingebettetes System (mit Software) sein, wobei die Funktionalität und/oder deren Implementierung (strengen) Regeln unterliegen. Diese Regeln können zum Beispiel durch eine Spezifikation und/oder eine Norm vorgegeben sein. Eine Regel kann zum Beispiel sein, dass Speicher nicht dynamisch alloziert werden darf (z.B. via malloc in C). In diesem Fall werden zum Beispiel fixe Speicheradressen in den Programmiercode der Software geschrieben („hardcoding“). Weiterhin kann die Software zum Beispiel eine (kleinere) Vielzahl von wohl-definierten Routinen umfassen. Der Fokus auf restriktiv ausgelegte Systeme kann eine nur unwesentliche Einschränkung darstellen, da gerade sicherheitsrelevante Systeme häufig restriktiv ausgelegt sind.The methods can be particularly advantageous for restrictively designed systems. A restrictively designed system can, for example, be an embedded system (with software), where the functionality and/or its implementation are subject to (strict) rules. These rules can be specified, for example, by a specification and/or a standard. A rule can be, for example, that memory must not be allocated dynamically (e.g. via malloc in C). In this case, for example, fixed memory addresses are written into the programming code of the software ("hardcoding"). Furthermore, the software can, for example, comprise a (smaller) number of well-defined routines. The focus on restrictively designed systems can only represent an insignificant limitation, since security-relevant systems in particular are often restrictively designed.
Das Prüfen, ob die Speicherbenutzungsinformation von einer für den mindestens einen Teil der Software (z.B. für eine Routine der Software) vorbestimmten Referenzspeicherbenutzungsinformation abweicht, umfasst einen Vergleich der bei Ausführung des mindestens einen Teils der Software aufgezeichneten Speicherbenutzungsinformation mit der für den mindestens einen Teil der Software vorbestimmten (zuvor ebenfalls z.B. unter Standardbedingungen aufgezeichneten) Referenzspeicherbenutzungsinformation. Dadurch kann bei Ausführung des mindestens einen Teils der Software geprüft werden, ob der mindestens eine Teil der Software dem für die Software vorgesehenen Teil entspricht oder ob er z.B. durch fremden (Programmier)code manipuliert wurde. Die Erkennung von Eindringen kann sehr genau und somit verlässlich sein. Dadurch kann die Sicherheit des Systems verbessert werden. Weiterhin kann die Erkennung von Eindringen in dem System selbst erfolgen (englisch: „host-based“) und hängt z.B. nicht von anderen mit dem System in Verbindung stehenden Systemen und/oder einem Netzwerk ab.Checking whether the memory usage information differs from reference memory usage information predetermined for the at least part of the software (e.g. for a routine of the software) includes a comparison of the memory usage information recorded when the at least part of the software is executed with that for the at least part of the software predetermined reference memory usage information (previously also recorded e.g. under standard conditions). As a result, when the at least one part of the software is executed, it can be checked whether the at least one part of the software corresponds to the part intended for the software or whether it has been manipulated, for example, by external (programming) code. Intrusion detection can be very accurate and therefore reliable. This can improve the security of the system. Furthermore, the detection of intrusions can take place in the system itself (“host-based”) and does not depend, for example, on other systems connected to the system and/or a network.
Im Gegensatz zu einer im Stand der Technik bekannten Erkennung von Eindringen auf Basis des Stromverbrauchs und/oder dessen Verlaufs, die im System auf einer zusätzlichen Sensorik-Hardware für die Strommessung basiert, erfordern die in dieser Offenbarung vorgeschlagenen Verfahren nicht notwendigerweise eine zusätzliche Hardware im System. Das Aufzeichnen (englisch auch: logging) der Speicherbenutzungsinformation bei Ausführung des mindestens einen Teils der Software des Systems und/oder das Aufzeichnen der dazugehörigen Referenzspeicherbenutzungsinformation können nämlich ausschließlich in der Software implementiert werden. Eine Softwareänderung kann kostengünstiger als eine Hardware-Erweiterung sein.In contrast to a prior art detection of intrusion based on current consumption and/or its history, which is based on additional sensor hardware for the current measurement in the system, the methods proposed in this disclosure do not necessarily require additional hardware in the system . The recording (also: logging) of the memory usage information when executing at least part of the software of the system and/or the recording of the associated reference memory usage information can be implemented exclusively in the software. A software change can be more cost-effective than a hardware upgrade.
Weiterhin kann ein System (z.B. eine elektronische Steuereinheit in einem Fahrzeugfeld) auch nachträglich - zum Beispiel durch eine Aktualisierung der Software und ohne Hardware-Erweiterung - derart angepasst werden, dass die in dieser Offenbarung vorgeschlagenen Verfahren in dem System zur Anwendung gebracht werden können. Dadurch können Systeme auch nachträglich gegen Eindringen abgesichert werden.Furthermore, a system (e.g. an electronic control unit in a vehicle field) can also be adapted subsequently - for example by updating the software and without hardware expansion - in such a way that the methods proposed in this disclosure can be used in the system. This means that systems can also be secured against intrusion at a later date.
Beim Aufzeichnen der Speicherbenutzungsinformation/Referenzspeicherbenutzungsinformation und/oder beim Prüfen, ob die Speicherbenutzungsinformation von einer für den mindestens einen Teil der Software vorbestimmten Referenzspeicherbenutzungsinformation abweicht, kann der Rechenaufwand und/oder der Speicherbedarf gezielt eingestellt werden. Zum Beispiel können der Rechenaufwand und der Speicherbedarf sowohl beim Aufzeichnen als auch beim Vergleichen dadurch reduziert werden, dass jeweils nicht die kompletten Speicheradressen aufgezeichnet und/oder verglichen werden, sondern stattdessen nur bestimmte Bits der Speicheradressen aufgezeichnet und/oder verglichen werden. Weitere Möglichkeiten werden in der detaillierten Beschreibung offenbart. Eine Reduzierung des Rechenaufwands durch solche Möglichkeiten kann prinzipiell mit einer geringeren Genauigkeit des Vergleichs von Speicherbenutzungsinformation und Referenzspeicherbenutzungsinformation und somit mit einer geringeren Genauigkeit der Erkennung von Eindringen einhergehen. Allerdings wird durch solche Möglichkeiten nicht notwendigerweise die Genauigkeit der Erkennung beeinträchtigt. Insbesondere in restriktiv ausgelegten Systemen können die Speicherbenutzungsinformation und die Referenzspeicherbenutzungsinformation eine für den Vergleich große Redundanz aufweisen, die reduziert werden kann, ohne die Genauigkeit der Erkennung von Eindringen wesentlich zu beeinträchtigen. Ein Fehler (falsch-positiv oder falschnegativ) beim Erkennen von Eindringen kann dann zum Beispiel sehr unwahrscheinlich sein. In jedem Fall kann je nach Software oder je nach Routine der Software ein Optimum zwischen Effizienz und Genauigkeit gezielt (gesucht und) eingestellt werden.When recording the memory use information/reference memory use information and/or when checking whether the memory use information deviates from reference memory use information predetermined for the at least part of the software, the computing effort and/or the memory requirements can be adjusted in a targeted manner. For example, the computing effort and the memory requirements can be reduced both when recording and when comparing by not recording and/or comparing the complete memory addresses, but instead only recording and/or comparing specific bits of the memory addresses. Further possibilities are disclosed in the detailed description. In principle, a reduction in the computing effort through such possibilities can be accompanied by a lower accuracy of the comparison of memory use information and reference memory use information and thus with a lower accuracy of the detection of intrusions. However, such possibilities do not necessarily affect the accuracy of the recognition. In particular in systems designed to be restrictive, the memory usage information and the reference memory usage information can have a high level of redundancy for the comparison, which can be reduced without significantly impairing the accuracy of the intrusion detection. An error (false positive or false negative) when detecting intrusion, for example, can then be very unlikely. In any case, you can depending on the software or depending on the routine of the software, an optimum between efficiency and accuracy can be (searched for and) set.
Für das Prüfen, ob die Speicherbenutzungsinformation von einer für den mindestens einen Teil der Software vorbestimmten Referenzspeicherbenutzungsinformation abweicht, kann es vorteilhaft sein, wenn die Speicheradressen in der Speicherbenutzungsinformation und der Referenzspeicherbenutzungsinformation jeweils eine absolute Bedeutung haben. Andererseits kann eine absolute Bedeutung entbehrlich sein, wenn zum Beispiel relative Unterschiede der Speicheradressen im zeitlichen Verlauf verglichen werden.For checking whether the memory usage information deviates from reference memory usage information predetermined for the at least part of the software, it can be advantageous if the memory addresses in the memory usage information and the reference memory usage information each have an absolute meaning. On the other hand, an absolute meaning can be dispensable if, for example, relative differences in the memory addresses are compared over time.
Figurenlistecharacter list
-
1 illustriert schematisch ein computer-implementiertes Verfahren zur Erkennung von Eindringen in ein System.1 Figure 12 schematically illustrates a computer-implemented method for detecting intrusion into a system. -
2 illustriert schematisch ein computer-implementiertes Verfahren zur Aufzeichnung und Speicherung von einer Referenzspeicherbenutzungsinformation für Software einem System.2 Figure 12 schematically illustrates a computer-implemented method for recording and storing reference memory usage information for software in a system. -
3 illustriert schematisch eine Ausführungsform des computer-implementierten Verfahrens zur Erkennung von Eindringen in ein System.3 Figure 12 schematically illustrates an embodiment of the computer-implemented method for detecting intrusion into a system. -
4 illustriert schematisch ein System, das dafür ausgelegt ist, die computer-implementierten Verfahren dieser Offenbarung auszuführen.4 FIG. 12 schematically illustrates a system configured to perform the computer-implemented methods of this disclosure. -
5 visualisiert eine beispielhafte Softwarespur als Beispiel für eine Speicherbenutzungsinformation.5 visualizes an example software track as an example of memory usage information.
Detaillierte BeschreibungDetailed description
Die in dieser Offenbarung vorgeschlagenen Verfahren sind auf die Erkennung von Eindringen in das System 300 gerichtet.The methods proposed in this disclosure are directed to detecting intrusions into the
Das System 300 kann ein technisches System sein. Zum Beispiel kann das System ein eingebettetes System sein. Das eingebettete System kann Hardware wie z.B. einen elektronischen Rechner (Computer) und (implementierte) Software umfassen, die beide in einem technischen Kontext eingebunden („eingebettet“) sind. Das eingebettete System kann - vermöge Hardware und/oder Software - zumindest dafür ausgelegt sein, ein weiteres technisches System zu überwachen, zu steuern und/oder zu regeln. Alternativ oder zusätzlich kann das eingebettete System dafür ausgelegt sein, Daten und/oder Signale zu empfangen. Alternativ oder zusätzlich kann das eingebettete System dafür ausgelegt sein, Daten und/oder Signale zu verarbeiten. Alternativ oder zusätzlich kann das eingebettete System dafür ausgelegt sein, Daten und/oder Signale zu senden.The
Das (weitere) technische System kann zum Beispiel ein mechatronisches System sein. Das (weitere) technische System kann zum Beispiel ein Fahrzeug oder ein technisches (Sub)system innerhalb des Fahrzeugs (z.B. eine Motorsteuerung) sein. Alternativ oder zusätzlich kann das (weitere) technische System ein Roboter oder ein technisches (Sub)system innerhalb des Roboters sein. Alternativ oder zusätzlich kann das (weitere) technische System eine Industrieanlage oder ein technisches (Sub)system innerhalb der Industrieanlage sein. Alternativ oder zusätzlich kann das (weitere) technische System ein technisches System von vernetzten und/oder fernsteuerbaren Geräten wie z.B. ein Smart Home (z.B. Thermosteuerung) sein.The (additional) technical system can be a mechatronic system, for example. The (further) technical system can, for example, be a vehicle or a technical (sub)system within the vehicle (e.g. an engine control). Alternatively or additionally, the (further) technical system can be a robot or a technical (sub)system within the robot. Alternatively or additionally, the (further) technical system can be an industrial plant or a technical (sub)system within the industrial plant. Alternatively or additionally, the (further) technical system can be a technical system of networked and/or remotely controllable devices such as a smart home (e.g. thermal control).
Das System und/oder dessen Software können zum Beispiel restriktiv ausgelegt sein. Zum Beispiel kann das System und/oder dessen Software durch eine Spezifikation und/oder eine Norm eingeschränkt sein. Dadurch kann zum Beispiel verhindert werden, dass die Software des Systems um beliebige Applikationen, Funktionalitäten und/oder Schnittstellen erweitert werden kann. Weiterhin kann die Software zum Beispiel eine (kleinere) Vielzahl von wohl-definierten Routinen umfassen. Die Restriktivität des Systems 300 kann die Erkennung von Eindringen nach den in dieser Offenbarung vorgeschlagenen Verfahren 100, 200 verbessern.For example, the system and/or its software may be designed to be restrictive. For example, the system and/or its software may be restricted by a specification and/or standard. This can prevent, for example, the system software from being able to be expanded by any applications, functionalities and/or interfaces. Furthermore, the software can, for example, comprise a (smaller) number of well-defined routines. The restrictiveness of the
Offenbart wird ein computer-implementiertes Verfahren 100 zur Erkennung von Eindringen in ein System 300.A computer-implemented
Das Verfahren 100, schematisch dargestellt in
Das Verfahren 100 umfasst weiterhin Prüfen 120, ob die Speicherbenutzungsinformation von einer für den mindestens einen Teil der Software vorbestimmten Referenzspeicherbenutzungsinformation abweicht. Das Prüfen 120 kann (anders als in
Das Verfahren 100 umfasst weiterhin Bewerten 130 der Software als manipuliert, wenn das Prüfen 120 positiv ausfällt, d.h. wenn die Speicherbenutzungsinformation von einer für den mindestens einen Teil der Software vorbestimmten Referenzspeicherbenutzungsinformation abweicht. Wird die Software als manipuliert bewertet 130, kann ein Eindringen in das System 300 erkannt werden.The
Das Verfahren 100 kann weiterhin Einleiten 140 mindestens einer Maßnahme umfassen, wenn die Software als manipuliert bewertet 130 worden ist. Die mindestens eine Maßnahme kann zum Beispiel dafür ausgelegt sein, das Eindringen in das System 300 zu verhindern oder zu stoppen. Dazu kann zum Beispiel die kann die verbleibende Ausführung des mindestens einen Teils der Software gestoppt werden. Alternativ oder zusätzlich kann die mindestens eine Maßnahme zum Beispiel dafür ausgelegt sein, erkanntes Eindringen an eine übergeordnete elektronische Steuereinheit und/oder ein Cloud-Backend (zur weiteren Prüfung) zu übermitteln.The
Das Verfahren 100 kann weiterhin Bewerten 150 der Software als nicht manipuliert umfassen, wenn das Prüfen 120 negativ ausfällt. In diesem Fall liegt mit großer Wahrscheinlichkeit kein Eindringen in das System vor.The
Die Speicherbenutzungsinformation kann von der für den mindestens einen Teil der Software vorbestimmten Referenzspeicherbenutzungsinformation abweichen, wenn die Speicherbenutzungsinformation und die für den mindestens einen Teil der Software vorbestimmten Referenzspeicherbenutzungsinformation ein vorbestimmtes Kriterium erfüllen. Das vorbestimmte Kriterium kann derart ausgelegt sein, dass geringfügige Abweichungen zwischen der Speicherbenutzungsinformation und der dazugehörigen Referenzspeicherbenutzungsinformation nicht als Abweichungen bewertet werden.The memory usage information can deviate from the reference memory usage information predetermined for the at least part of the software if the memory usage information and the reference memory usage information predetermined for the at least part of the software meet a predetermined criterion. The predetermined criterion can be designed in such a way that slight discrepancies between the memory use information and the associated reference memory use information are not evaluated as discrepancies.
Zum Beispiel können die Speicherbenutzungsinformation SBI und die dazugehörige Referenzspeicherbenutzungsinformation RSBI jeweils ein mathematisches Objekt in ein und demselben normierten Vektorraum sein. SBI und RSBI können zum Beispiel Zeitreihen gleicher Länge und gleicher Zeitabstände in einem von den Speicheradressen aufgespannten Vektorraum sein. Das vorbestimmte Kriterium kann dann zum Beispiel die Ungleichung
Offenbart wird weiterhin ein computer-implementiertes Verfahren 200 zur Aufzeichnung und Speicherung von einer Referenzspeicherbenutzungsinformation für Software in dem System 300. Das Verfahren 200 ist darauf gerichtet, die Referenzspeicherbenutzungsinformation als Vergleichsmaßstab für das Verfahren 100 zur Erkennung von Eindringen in das System z.B. unter Standardbedingungen, bei denen Eindringen ausgeschlossen ist, aufzuzeichnen und zu speichern. Das Verfahren 200 kann zum Beispiel bei der initialen Einrichtung (englisch: set-up) des Systems 300 und/oder bei einer Reinitialisierung zum Beispiel nach einer Softwareaktualisierung durchgeführt werden. Das Verfahren 200 ist schematisch in
Das Verfahren 200 umfasst Aufzeichnen 210 einer Referenzspeicherbenutzungsinformation bei Ausführung (d.h. während der Ausführung) mindestens eines Teils der Software. Das Verfahren 200 kann Ausführen des mindestens einen Teils der Software umfassen. Das Vorgehen beim Aufzeichnen 210 der Referenzspeicherbenutzungsinformation kann dem Vorgehen beim Aufzeichnen 110 der Speicherbenutzungsinformation im Verfahren 100 entsprechen. Dadurch können die Speicherbenutzungsinformation und die Referenzspeicherbenutzungsinformation vergleichbarer sein.The
Das Verfahren 200 umfasst weiterhin Speichern 220 der Referenzspeicherbenutzungsinformation für den mindestens einen Teil der Software in dem System 300. Das Speichern 220 kann (anders als in
Die vorbestimmte Referenzspeicherbenutzungsinformation für den mindestens einen Teil der Software im Verfahren 100 zur Erkennung von Eindringen in das System 300 kann nach dem Verfahren 200 zur Aufzeichnung und Speicherung der Referenzspeicherbenutzungsinformation für Software in dem System 300 erzeugt und/oder angepasst werden. Eine Anpassung kann zum Beispiel nach einer softwareaktualisierungsbedingten Reinitialisierung notwendig werden. Die Verknüpfung der Verfahren 100, 200 ist schematisch in
Die Speicherbenutzungsinformation für den mindestens einen Teil der Software kann zumindest eine Zeitreihe von Speicheradressen in einem Speicher des Systems 300 umfassen, die bei Ausführung des mindestens einen Teil der Software ausgeführt, gelesen und/oder beschrieben werden. Alternativ oder zusätzlich kann die Referenzspeicherbenutzungsinformation für den mindestens einen Teil der Software zumindest eine Zeitreihe von Speicheradressen in einem Speicher des Systems 300 umfassenThe memory usage information for the at least a portion of the software may include at least a time series of memory addresses in a memory of the
Die Speicherbenutzungsinformation für den mindestens einen Teil der Software kann eine Softwarespur sein. Alternativ oder zusätzlich kann die Referenzspeicherbenutzungsinformation für den mindestens einen Teil der Software eine Softwarespur sein.The memory usage information for the at least a portion of the software may be a software track. Alternatively or additionally, the reference storage usage information for the at least part of the software can be a software track.
Alternativ oder zusätzlich kann die Speicherbenutzungsinformation für den mindestens einen Teil der Software einen laufenden Mittelwert einer Softwarespur umfassen (oder ein laufender Mittelwert der Softwarespur sein). Alternativ oder zusätzlich kann die Referenzspeicherbenutzungsinformation für den mindestens einen Teil der Software einen laufenden Mittelwert einer Softwarespur umfassen (oder ein laufender Mittelwert der Softwarespur sein). Der laufende Mittelwert der Softwarespur kann zum Beispiel auf einem Hamming-Gewicht von Speicheradressen basieren. Das Hamming-Gewicht kann äquivalent zur Hamming-Distanz von Speicheradressen jeweils zur Null-Speicheradresse sein. Bei binärer Darstellung von Speicheradressen ist das Hamming-Gewicht äquivalent zur Bitsumme. Laufende Mittelwerte können vorteilhaft sein, um den Speicherbedarf und/oder den Rechenaufwand (z.B. beim Prüfen 120) zu reduzieren.Alternatively or additionally, the memory usage information for the at least a portion of the software may include (or be a running average of the software track) a running average of a software track. Alternatively or additionally, the reference memory usage information for the at least a portion of the software may include (or be a running average of the software track) a running average of a software track. For example, the software track running average may be based on a Hamming weight of memory addresses. The Hamming weight can be equivalent to the Hamming distance of each memory address from the zero memory address. When representing memory addresses in binary, the Hamming weight is equivalent to the bit sum. Running averages may be beneficial to reduce memory requirements and/or computational effort (e.g., in testing 120).
Alternativ oder zusätzlich kann die Speicherbenutzungsinformation für den mindestens einen Teil der Software eine Softwarespur umfassen (oder sein), die auf eine vorbestimmte Auswahl von Bits oder Bytes der Speicheradressen eingeschränkt ist. Alternativ oder zusätzlich kann die Referenzspeicherbenutzungsinformation für den mindestens einen Teil der Software eine Softwarespur umfassen (oder sein), die auf eine vorbestimmte Auswahl von Bits oder Bytes der Speicheradressen eingeschränkt ist. Die vorbestimmte Auswahl der Bits kann zum Beispiel die bits 0, 2, 8, 10 und 24 von 32-bit Speicheradressen umfassen. In einem anderen Beispiel kann die vorbestimmte Auswahl z.B. die Bytes 0 und 3 von 32-bit Speicheradressen umfassen. Es kann auch nur ein Bit oder nur ein Byte ausgewählt werden. Es kann vorteilhaft sein, charakteristische Bits/Bytes der Speicheradressen in der vorbestimmten Auswahl zu berücksichtigen. Durch eine (nicht-triviale) vorbestimmte Auswahl der Bits oder Bytes der Speicheradressen kann zum Beispiel Redundanz in der Speicherbenutzungsinformation und/oder der Referenzspeicherbenutzungsinformation reduziert werden. Durch die (nicht-triviale) vorbestimmte Auswahl der Bits oder Bytes der Speicheradressen kann der Speicherbedarf und/oder der Rechenaufwand (z.B. bereits beim Aufzeichnen 110, 210) reduziert werden. Zudem kann durch sie Rauschen reduziert werden.Alternatively or additionally, the memory usage information for the at least part of the software may include (or be) a software track that is restricted to a predetermined selection of bits or bytes of the memory addresses. Alternatively or additionally, the reference memory usage information for the at least a portion of the software may include (or be) a software track that is restricted to a predetermined selection of bits or bytes of the memory addresses. The predetermined selection of bits may include, for example, bits 0, 2, 8, 10, and 24 of 32-bit memory addresses. For example, in another example, the predetermined selection may include bytes 0 and 3 of 32-bit memory addresses. Only one bit or only one byte can also be selected. It can be advantageous to consider characteristic bits/bytes of the memory addresses in the predetermined selection. For example, redundancy in the memory usage information and/or the reference memory usage information can be reduced by a (non-trivial) predetermined selection of the bits or bytes of the memory addresses. The (non-trivial) predetermined selection of the bits or bytes of the memory addresses can reduce the memory requirements and/or the computing effort (e.g. already during recording 110, 210). They can also reduce noise.
Eine Softwarespur kann zumindest eine Zeitreihe von Speicheradressen in einem Speicher des Systems 300 umfassen, die bei Ausführung des mindestens einen Teil der Software ausgeführt werden. Alternativ oder zusätzlich kann die Softwarespur (oder eine weitere Softwarespur) zumindest eine Zeitreihe von Speicheradressen in dem Speicher des Systems 300 umfassen, die bei Ausführung des mindestens einen Teil der Software gelesen werden. Alternativ oder zusätzlich kann die (weitere) Softwarespur (oder noch eine weitere Softwarespur) zumindest eine Zeitreihe von Speicheradressen in dem Speicher des Systems 300 umfassen, die bei Ausführung des mindestens einen Teil der Software beschrieben werden. Die Speicheradressen können zum Beispiel numerisch durch eine Bit- oder Bytefolge (z.B. 0x717000) ausgedrückt werden. Indem zum Beispiel die Softwarespur nur Speicheradressen für Schreibzugriffe (oder nur Speicheradressen für Lesezugriffe) umfasst, kann erneut der Speicherbedarf und/oder der Rechenaufwand (z.B. bereits beim Aufzeichnen 110, 210) reduziert werden. Die Werte der Zeitreihe von Speicheradressen können zum Beispiel um ein Attribut aus „Anweisung“, „Lesen" und „Schreiben“ erweitert werden. In graphischen Darstellungen können Speicheradressen für Anweisungen zum Beispiel als schwarze Punkte (über der Zeit) dargestellt werden. Alternativ oder zusätzlich können in graphischen Darstellungen Speicheradressen, die bei Ausführung gelesen worden sind, zum Beispiel als grüne Punkte (über der Zeit) dargestellt werden. Alternativ oder zusätzlich können in graphischen Darstellungen Speicheradressen, die bei Ausführung beschrieben worden sind, zum Beispiel als rote Punkte (über der Zeit) dargestellt werden.A software trace may include at least one time series of memory addresses in a memory of the
Die Softwarespur kann - muss aber nicht - eine Zeitreihe von allen Speicheradressen umfassen, die bei Ausführung des mindestens einen Teils der Software ausgeführt, gelesen und/oder beschrieben werden. Eine beispielhafte Softwarespur ist in
Das Aufzeichnen 110 der Speicherbenutzungsinformation bei Ausführung des mindestens einen Teils der Software des Systems kann zum Beispiel auf eine vorbestimmte Auswahl von Anweisungen (z.B. nur Methodenaufrufe oder bestimmte Methodenaufrufe) eingeschränkt werden. Alternativ oder zusätzlich kann das Aufzeichnen 210 der Referenzspeicherbenutzungsinformation bei Ausführung des mindestens einen Teils der Software zum Beispiel auf eine vorbestimmte Auswahl von Anweisungen (z.B. nur Methodenaufrufe oder bestimmte Methodenaufrufe) eingeschränkt werden. Dadurch kann weiterhin der Speicherbedarf und/oder der Rechenaufwand reduziert werden.For example, the
Alternativ oder zusätzlich kann zum Beispiel das Aufzeichnen 110 der Speicherbenutzungsinformation bei Ausführung des mindestens einen Teils der Software des Systems auf eine vorbestimmte Auswahl von Speicheradressen und/oder von Speicheradressenbereiche (z.B. spezifische Speicheradressenbereiche für Peripheriegeräte) eingeschränkt werden. Alternativ oder zusätzlich kann zum Beispiel das Aufzeichnen 210 der Referenzspeicherbenutzungsinformation bei Ausführung des mindestens einen Teils der Software auf eine vorbestimmte Auswahl von Speicheradressen und/oder von Speicheradressenbereiche (z.B. spezifische Speicheradressenbereiche für Peripheriegeräte) eingeschränkt werden. Dadurch kann weiterhin der Speicherbedarf und/oder der Rechenaufwand reduziert werden.Alternatively or additionally, for example the
Ein geringerer Speicherbedarf der Speicherbenutzungsinformation und/oder der Referenzspeicherbenutzungsinformation kann vorteilhafterweise auch zu einem geringeren Rechenaufwand beim Aufzeichnen 110, 210 und/oder beim Prüfen 120, ob die Speicherbenutzungsinformation von einer für den mindestens einen Teil der Software vorbestimmten Referenzspeicherbenutzungsinformation abweicht, führen. Für den Vergleich beim Prüfen 120 kann es sich als vorteilhaft erweisen, wenn die Speicherbenutzungsinformation für den mindestens einen Teil der Software und die Referenzspeicherbenutzungsinformation für den mindestens einen Teil der Software zumindest für diesen mindestens einen Teil der Software von gleicher Art, d.h. z.B. mathematische Objekte in ein und demselben Raum, sind.A lower memory requirement for the memory usage information and/or the reference memory usage information can advantageously also result in less computing effort when recording 110, 210 and/or when checking 120 whether the memory usage information deviates from reference memory usage information predetermined for the at least part of the software. For the comparison during
Die Speicherbenutzungsinformation für den mindestens einen Teil der Software kann mindestens eine speicherbenutzungsunabhängige Information umfassen. Alternativ oder zusätzlich kann die Referenzspeicherbenutzungsinformation für den mindestens einen Teil der Software (ebenfalls) mindestens eine speicherbenutzungsunabhängige Information umfassen. Die speicherbenutzungsunabhängige Information kann dafür ausgelegt/geeignet sein, Eindringen in das System verlässlicher und somit besser zu erkennen. Das Prüfen 120, ob die Speicherbenutzungsinformation von der für den mindestens einen Teil der Software vorbestimmten Referenzspeicherbenutzungsinformation abweicht, (oder das vorbestimmte Kriterium) kann weiterhin Analysieren der speicherbenutzungsunabhängigen Information in der Speicherbenutzungsinformation und/oder der Referenzspeicherbenutzungsinformation umfassen.The memory usage information for the at least a portion of the software may include at least one piece of memory usage independent information. As an alternative or in addition, the reference memory use information for the at least one part of the software can (likewise) include at least one piece of memory use-independent information. The memory use-independent information can be designed/suitable for detecting intrusions into the system more reliably and thus better. Checking 120 whether the memory usage information deviates from the reference memory usage information predetermined for the at least part of the software (or the predetermined criterion) may further comprise analyzing the memory usage-independent information in the memory usage information and/or the reference memory usage information.
Die mindestens eine speicherbenutzungsunabhängige Information kann zum Beispiel eine verstrichene Echtzeit für die Ausführung des mindestens einen Teils der Software umfassen. Alternativ oder zusätzlich kann die mindestens eine speicherbenutzungsunabhängige Information mindestens einen Statuswert für ein vorbestimmtes Register eines Prozessors des Systems umfassen. Alternativ oder zusätzlich kann die mindestens eine speicherbenutzungsunabhängige Information Speicherinhalt für mindestens eine vorbestimmte Speicheradresse des Speichers des Systems 300 umfassen. Alternativ oder zusätzlich kann die mindestens eine speicherbenutzungsunabhängige Information mindestens ein Datum, optional mindestens ein Statuswert, eines vorbestimmten Peripheriegeräts umfassen. Alternativ oder zusätzlich kann die mindestens eine speicherbenutzungsunabhängige Information eintreffende Netzwerkdaten aus einem Netzwerk, in das das System 300 integriert ist, umfassen. Alternativ oder zusätzlich kann die mindestens eine speicherbenutzungsunabhängige Information mindestens eine Betriebssysteminformation (für ein Betriebssystem des Systems 300) umfassen. Die mindestens eine Betriebssysteminformation kann zum Beispiel ein Statuswert für das System, offene Dateihandles, Anzahl laufender Prozesse, Anzahl offener Ports und/oder vieles mehr umfassen.The at least one memory usage independent piece of information may include, for example, an elapsed real time for the execution of the at least a portion of the software. Alternatively or additionally, the at least one memory use-independent information can include at least one status value for a predetermined register of a processor of the system. Alternatively or additionally, the at least one piece of memory use-independent information can include memory content for at least one predetermined memory address of the memory of the
Offenbart wird weiterhin ein System 300, das dafür ausgelegt ist, das computer-implementierte Verfahren 100 zur Erkennung von Eindringen in das System 300 auszuführen. Das System 300 kann somit nach dem computer-implementierten Verfahren 100 zur Erkennung von Eindringen in das System 300 gegen Eindringen abgesichert sein. Alternativ oder zusätzlich kann das System 300 weiterhin dafür ausgelegt sein, das computer-implementierte Verfahren 200 zur Aufzeichnung und Speicherung der Referenzspeicherbenutzungsinformation für Software in dem System 300 auszuführen. Das System 300 kann somit (auch) nach dem computer-implementierten Verfahren 200 zur Aufzeichnung und Speicherung von einer Referenzspeicherbenutzungsinformation für Software in dem System 300 gegen Eindringen abgesichert sein. Das System 300 ist schematisch in
Offenbart wird weiterhin ein Computer-Programm, das dafür ausgelegt ist, das computer-implementierte Verfahren 100 zur Erkennung von Eindringen in das System 300 auszuführen. Alternativ oder zusätzlich kann das Computer-Programm (oder ein weiteres Computer-Programm) dafür ausgelegt sein, das computer-implementierte Verfahren 200 zur Aufzeichnung und Speicherung der Referenzspeicherbenutzungsinformation für Software in dem System 300 auszuführen. Das Computer-Programm (und/oder das weitere Computer-Programm) kann z.B. in interpretierbarer oder in kompilierter Form vorliegen. Es kann (auch in Teilen) zur Ausführung z.B. als Bit- oder Byte-Folge in den RAM eines Steuergeräts oder Computer geladen werden.A computer program configured to execute the computer-implemented
Offenbart wird weiterhin ein computer-lesbares Medium oder Signal, das das Computer-Programm (und/oder das weitere Computer-Programm) speichert und/oder enthält. Das Medium kann z.B. eines von RAM, ROM, EPROM, HDD, SDD, ... umfassen, auf/in dem das Signal gespeichert wird.Also disclosed is a computer-readable medium or signal storing and/or containing the computer program (and/or the further computer program). For example, the medium may comprise one of RAM, ROM, EPROM, HDD, SDD, ... on which the signal is stored.
Offenbart wird weiterhin ein Computersystem, das dafür ausgelegt ist, das Computer-Programm (und/oder das weitere Computer-Programm) auszuführen. Das Computer-System kann das System 300 sein. Das Computersystem kann insbesondere mindestens einen Prozessor und mindestens einen Arbeitsspeicher (z.B. RAM, ...) umfassen. Weiterhin kann das Computersystem einen Speicher (z.B. HDD, SDD, ...) umfassen. Das Computersystem einen Server in einem Netzwerk (z.B. Internet, ...) umfassen.A computer system designed to execute the computer program (and/or the further computer program) is also disclosed. The computer system may be
Claims (14)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102021210328.6A DE102021210328A1 (en) | 2021-09-17 | 2021-09-17 | MEMORY-USE-BASED DETECTION OF INFRINGEMENTS INTO A SYSTEM |
CN202211126606.0A CN115828232A (en) | 2021-09-17 | 2022-09-16 | System intrusion identification based on memory utilization |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102021210328.6A DE102021210328A1 (en) | 2021-09-17 | 2021-09-17 | MEMORY-USE-BASED DETECTION OF INFRINGEMENTS INTO A SYSTEM |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102021210328A1 true DE102021210328A1 (en) | 2023-03-23 |
Family
ID=85383893
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102021210328.6A Pending DE102021210328A1 (en) | 2021-09-17 | 2021-09-17 | MEMORY-USE-BASED DETECTION OF INFRINGEMENTS INTO A SYSTEM |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115828232A (en) |
DE (1) | DE102021210328A1 (en) |
-
2021
- 2021-09-17 DE DE102021210328.6A patent/DE102021210328A1/en active Pending
-
2022
- 2022-09-16 CN CN202211126606.0A patent/CN115828232A/en active Pending
Also Published As
Publication number | Publication date |
---|---|
CN115828232A (en) | 2023-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102014204834A1 (en) | Computer-implemented systems and methods for comparing and associating objects | |
DE112013002012B4 (en) | Method of detecting malware in an operating system kernel | |
DE102007034168A1 (en) | Method and device for measuring actual measured data of a component | |
DE102013213104A1 (en) | Device and method for determining a closed state of a front door or a house window | |
DE102016107718A1 (en) | Reading out error vectors from a memory unit | |
DE102018222169A1 (en) | On-board visual determination of kinematic parameters of a rail vehicle | |
DE3421737C2 (en) | Device for determining an overlap of operands | |
DE102015104763A1 (en) | Display method and electronic device | |
DE102021210328A1 (en) | MEMORY-USE-BASED DETECTION OF INFRINGEMENTS INTO A SYSTEM | |
CN105046154A (en) | Webshell detection method and device | |
EP3134842B1 (en) | Computing device and method for detecting attacks on a technical system based on events of an event sequence | |
DE102018122115A1 (en) | Method for detecting the surroundings of a vehicle | |
DE102009031872A1 (en) | Method and device for automatically searching for documents in a data memory | |
DE102021114574A1 (en) | COMPUTER PROGRAM TRUST ASSURANCE FOR INTERNET OF THINGS (IOT) DEVICES | |
DE112020004607T5 (en) | SECURITY REVIEW OF A UNIVERSAL SERIAL BUS DEVICE | |
EP1892639B1 (en) | Secure program code execution | |
DE102017204400A1 (en) | A method of operating a sensor and method and apparatus for analyzing data of a sensor | |
DE112020003599T5 (en) | TEST DEVICE, TEST PROCEDURE, TEST PROGRAM, TEACHING DEVICE, TRAINING METHOD AND TEACHING PROGRAM | |
DE112015003759T5 (en) | Edit multiple counters based on a single access check | |
DE102019207365A1 (en) | Method and device for providing an operating state of a sensor of a vehicle | |
DE102017005971A1 (en) | Device and method for device-specific detection of value range violations of data values in data processing units | |
WO2019081243A1 (en) | Method and apparatus for improving the robustness of a machine learning system | |
AT520580B1 (en) | Method for integrating at least one monitoring and / or control device of a monitoring and / or automation system having a data interface into a user interface | |
DE102015203968A1 (en) | Device for balancing and self-testing of inertial sensors and methods | |
DE102021212597A1 (en) | MEMORY USAGE-BASED FUZZING |