DE102018213053A1 - Verfahren zum Analysieren von Quelltexten - Google Patents
Verfahren zum Analysieren von Quelltexten Download PDFInfo
- Publication number
- DE102018213053A1 DE102018213053A1 DE102018213053.1A DE102018213053A DE102018213053A1 DE 102018213053 A1 DE102018213053 A1 DE 102018213053A1 DE 102018213053 A DE102018213053 A DE 102018213053A DE 102018213053 A1 DE102018213053 A1 DE 102018213053A1
- Authority
- DE
- Germany
- Prior art keywords
- source code
- identified
- vulnerabilities
- source
- vulnerability
- 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
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000011161 development Methods 0.000 claims abstract description 31
- 238000002347 injection Methods 0.000 claims description 10
- 239000007924 injection Substances 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 7
- 238000012937 correction Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 claims description 5
- 230000003287 optical effect Effects 0.000 claims description 4
- 230000018109 developmental process Effects 0.000 description 28
- 230000006870 function Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005670 electromagnetic radiation Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
-
- 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
- G06F21/54—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 by adding security routines or objects to programs
-
- 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/562—Static detection
- G06F21/565—Static detection by checking file integrity
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
Die Erfindung betrifft ein Verfahren zum Analysieren von Quelltexten (10), mit dem Schritt: Identifizieren von Quelltextschwachstellen (14), welche anfällig für Implementierungsangriffe sind, wobei das Identifizieren der Quelltextschwachstellen (14) während der aktiven Quelltextentwicklung ohne die Notwendigkeit einer Programmkompilierung erfolgt.
Description
- Die Erfindung betrifft ein Verfahren zum Analysieren von Quelltexten, mit dem Schritt: Identifizieren von Quelltextschwachstellen, welche anfällig für Implementierungsangriffe sind.
- Ferner betrifft die Erfindung eine Vorrichtung zur Datenverarbeitung, ein Computerprogrammprodukt und einen computerlesbaren Datenträger.
- Bei der Entwicklung von Quelltexten, beispielsweise unter Verwendung einer integrierten Entwicklungsumgebung, werden Quelltextentwickler regelmäßig bei der Quelltextgenerierung unterstützt, damit die Quelltextentwicklung beschleunigt und die Fehleranfälligkeit der späteren Software verringert wird. Eine im Stand der Technik bekannte Entwicklerunterstützung ist die Syntaxhervorhebung, bei welcher der Quelltext während der aktiven Quelltextentwicklung einer Syntaxprüfung unterzogen wird, sodass Quelltextfehler während der aktiven Quelltextentwicklung identifiziert werden können. Der Quelltextentwickler wird während der aktiven Quelltextentwicklung durch ein optisches Hervorheben der identifizierten Quelltextpassagen auf diese aufmerksam gemacht. Durch die Syntaxhervorhebung werden in der Kompilierungsphase auftretende Fehler verringert, sodass die Softwareentwicklung beschleunigt wird.
- Neben der Syntaxhervorhebung sind Quelltext-Echtzeitprüfungen bekannt, welche den Quelltext während der aktiven Quelltextentwicklung auf unsichere Standardfunktionen, wie strcpy oder printf untersuchen. Hierbei kann der Quelltext beispielsweise mit einer Art Wörterbuch zuvor definierter unsicherer Standardfunktionen abgeglichen werden. Es handelt sich hierbei um eine lediglich statische Prüfung, durch welche keine Quelltextschwachstellen identifiziert werden können, welche anfällig für Implementierungsangriffe sind.
- Für Implementierungsangriffe anfällige Quelltextschwachstellen können bisher lediglich während der Laufzeit eines Programms, also nach Abschluss der Programmierung und Implementierung, identifiziert werden. Hierzu ist beispielsweise eine Softwareemulation oder die Analyse eines Testsystems notwendig. Mithin ist somit zum Identifizieren entsprechender Quelltextschwachstellen die Programmkompilierung oder die Binärdatei notwendig. Wenn entsprechende Quelltextschwachstellen identifiziert werden, ist es somit erforderlich, sich erneut der Quelltextentwicklung zuzuwenden, wodurch zeit- und somit kostenaufwendige Entwicklungsschleifen zum Beheben der identifizierten Schwachstellen notwendig sind.
- Ferner kommt es bei den bekannten Verfahren zum Analysieren von Binärdateien häufig nicht zu einer Sensibilisierung der Quelltextentwickler für entsprechende Schwachstellenmuster. Somit führen die bekannten Verfahren auch nicht zu einem Lernfortschritt bei den Quelltextentwicklern.
- Die der Erfindung zugrundeliegende Aufgabe besteht somit darin, die Entwicklung von Quelltexten, welche unanfällig gegen Implementierungsangriffe sind, zu beschleunigen und/oder zu vereinfachen.
- Die Aufgabe wird gelöst durch ein Verfahren der eingangs genannten Art, wobei das Identifizieren der Quelltextschwachstellen während der aktiven Quelltextentwicklung ohne die Notwendigkeit einer Programmkompilierung erfolgt.
- Die Erfindung macht sich die Erkenntnis zunutze, dass durch das Identifizieren von Quelltextschwachstellen, welche anfällig für Implementierungsangriffe sind, während der aktiven Quelltextentwicklung zeit- und kostenaufwendige Entwicklungsschleifen, welche eine Emulation von Software oder die Analyse eines Testsystems bedingen, vermieden werden können. Ferner erlaubt das Identifizieren von entsprechenden Quelltextschwachstellen während der aktiven Quelltextentwicklung eine direkte Rückmeldung an den Quelltextentwickler, wodurch eine Sensibilisierung des Quelltextentwicklers für entsprechende Quelltextschwachstellen erreicht werden kann.
- Die Quelltextanalyse erstreckt sich somit auf das dynamische Implementierungsverhalten des Quelltextes und nicht lediglich auf unsichere Standardfunktionen, wie strcpy oder printf. Im Sinne der Erfindung fallen unter den Ausdruck Implementierungsangriff also keine Angriffe, welche ausschließlich auf der Softwareebene erfolgen.
- Das Verfahren wird vorzugsweise teilweise oder vollständig in einer integrierten Entwicklungsumgebung ausgeführt. Insbesondere ist keine Erzeugung einer Binärdatei zum Identifizieren entsprechender Quelltextschwachstellen notwendig. Insgesamt kommt es zu einer erheblichen Beschleunigung des Entwicklungsprozesses und zu einer erheblich verringerten Anfälligkeit des Quelltextes für Implementierungsangriffe.
- In einer bevorzugten Ausführungsform des erfindungsgemäßen Verfahrens umfasst das Identifizieren der Quelltextschwachstellen, welche anfällig für Implementierungsangriffe sind, das Identifizieren von Quelltextschwachstellen, welche anfällig für Seitenkanalangriffe sind und/oder das Identifizieren von Quelltextschwachstellen, welche anfällig für Fehlerinjektionsangriffe sind. Seitenkanalangriffe und Fehlerinjektionsangriffe stellen Unterarten von Implementierungsangriffen dar. Seitenkanalangriffe können auch als Side Channel Attacks (SCA) bezeichnet werden. Seitenkanalangriffe nutzen die physische Implementierung eines Kryptosystems in einem Gerät oder in einer Software aus. Dabei wird ein Gerät bei der Ausführung von kryptografischen Algorithmen beobachtet und eine Korrelation zwischen den beobachteten Informationen und einem verwendeten Schlüssel untersucht. Entsprechende Seitenkanalangriffe können beispielsweise auf der Analyse der Laufzeit eines Algorithmus, des Energieverbrauchs während Berechnungsvorgängen oder der elektromagnetischen Strahlung beruhen. Fehlerinjektionsangriffe können auch als Fault Injection Attacks (FIA) bezeichnet werden. Bei der Fehlerinjektion können beispielsweise Störungen (Glitches) in die Versorgungsspannung eines Geräts eingebracht werden. Eine andere Fehlerinjektion betrifft das Einfügen von Störungen in das Taktsignal eines Geräts. Darüber hinaus sind Fehlerinjektionsangriffe bekannt, bei welchen das angegriffene Gerät einer Strahlung ausgesetzt wird.
- Das erfindungsgemäße Verfahren wird ferner dadurch vorteilhaft weitergebildet, dass die identifizierten Quelltextschwachstellen optisch hervorgehoben werden, wobei das optische Hervorheben der identifizierten Quelltextschwachstellen während der aktiven Quelltextentwicklung ohne die Notwendigkeit einer Programmkompilierung erfolgt. Das optische Hervorheben kann beispielsweise durch ein farbliches Hinterlegen, das Einstellen einer geänderten Textfarbe und/oder das Einstellen einer geänderten Schriftart oder eines geänderten Schriftstils erfolgen. Alternativ oder zusätzlich kann beim Identifizieren von entsprechenden Quelltextschwachstellen ein Pop-up-Fenster eingeblendet werden, welches den Quelltextentwickler auf die identifizierte Quelltextschwachstelle hinweist. Durch das optische Hervorheben bzw. das Hinweisen auf die identifizierte Quelltextschwachstelle wird ein Lerneffekt für den Quelltextentwickler umgesetzt. Es erfolgt eine Sensibilisierung des Quelltextentwicklers für Quelltextschwachstellen, welche anfällig für Implementierungsangriffe sind.
- In einer weiteren bevorzugten Ausführungsform des erfindungsgemäßen Verfahrens erfolgt das Identifizieren der Quelltextschwachstellen und/oder das optische Hervorheben der identifizierten Quelltextschwachstellen in Echtzeit während der aktiven Quelltextentwicklung. Auf diese Weise können entsprechende Quelltextschwachstellen beim Programmieren on-the-fly durch den Quelltextentwickler direkt modifiziert oder ersetzt werden. Der gesamte Entwicklungsprozess wird auf diese Weise erheblich beschleunigt.
- Das erfindungsgemäße Verfahren wird ferner dadurch vorteilhaft weitergebildet, dass eine hinterlegte Erläuterung zu der identifizierten Quelltextschwachstelle selbsttätig geladen wird. Alternativ oder zusätzlich wird eine Erläuterung zu der identifizierten Quelltextschwachstelle selbsttätig erzeugt. Abhängig von der Komplexität der identifizierten Quelltextschwachstelle kann es ausreichen, den Quelltextentwickler mit einer hinterlegten Erläuterung auf die Quelltextschwachstelle aufmerksam zu machen und/oder dem Quelltextentwickler durch eine hinterlegte Erläuterung ergänzende Informationen zu der identifizierten Quelltextschwachstelle zur Verfügung zu stellen. In anderen Fällen kann die identifizierte Quelltextschwachstelle zur Erzeugung einer entsprechenden Erläuterung verwendet werden, sodass die erzeugte Erläuterung quelltextspezifische Elemente umfasst, welche sich auf den tatsächlich vom Quelltextentwickler formulierten Quelltext beziehen. Alternativ oder zusätzlich kann das Verfahren das selbsttätige Anzeigen der geladenen oder erzeugten Erläuterung zu der identifizierten Quelltextschwachstelle umfassen.
- In einer vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens wird ein Alternativquelltext zu der identifizierten Quelltextschwachstelle selbsttätig erzeugt und/oder der erzeugte Alternativquelltext zu der identifizierten Quelltextschwachstelle selbsttätig angezeigt. Der Alternativquelltext umfasst vorzugsweise keine Quelltextschwachstelle, welche anfällig für Implementierungsangriffe ist. Insbesondere kann der Alternativquelltext eine neue Quelltextstruktur aufweisen.
- Ferner ist ein erfindungsgemäßes Verfahren bevorzugt, bei welchem die identifizierte Quelltextschwachstelle durch den erzeugten Alternativquelltext auf Grundlage eines von einem Quelltextentwickler eingegebenen Korrekturbefehls selbsttätig ersetzt wird. Auf diese Weise entfällt das aufwendige manuelle Anpassen des Quelltextes zur Eliminierung der identifizierten Quelltextschwachstelle. Die Quelltextentwicklung wird auf diese Weise weiter beschleunigt.
- Das erfindungsgemäße Verfahren kann zum Analysieren von Quelltexten genutzt werden, welche in Fahrzeugen, insbesondere in Automobilen, eingesetzt werden. Insbesondere werden die Quelltexte für fahrzeuginterne Steuerungseinrichtungen verwendet. Weitere Einsatzgebiete sind die Entwicklung von Smartcard-Software, Entwicklungen betreffend das Internet der Dinge, Industrie
4.0 und andere Entwicklungen für Bereiche, in welchen Geräte miteinander interagieren und ein hohes Maß an Sicherheit notwendig ist. - Die der Erfindung zugrundeliegende Aufgabe wird ferner durch eine Vorrichtung zur Datenverarbeitung gelöst, welche einen Prozessor umfasst, der so konfiguriert ist, dass er das Verfahren zum Analysieren von Quelltexten nach einer der vorstehend beschriebenen Ausführungsformen ausführt. Hinsichtlich der Vorteile und Modifikationen der erfindungsgemäßen Vorrichtung wird auf die Vorteile und Modifikationen des erfindungsgemäßen Verfahrens verwiesen.
- Die der Erfindung zugrundeliegende Aufgabe wird ferner durch ein Computerprogrammprodukt gelöst, welches Befehle umfasst, die bei der Ausführung des Programms durch einen Computer diesen veranlassen, das Verfahren zum Analysieren von Quelltexten nach einer der vorstehend beschriebenen Ausführungsformen auszuführen. Hinsichtlich der Vorteile und Modifikationen des erfindungsgemäßen Computerprogrammprodukts wird auf die Vorteile und Modifikationen des erfindungsgemäßen Verfahrens verwiesen.
- Die der Erfindung zugrundeliegende Aufgabe wird ferner durch einen computerlesbaren Datenträger gelöst, auf welchem das zuvor beschriebene Computerprogrammprodukt gespeichert ist.
- Nachfolgend wird eine bevorzugte Ausführungsform der Erfindung unter Bezugnahme auf die beiliegende Zeichnung näher erläutert und beschrieben. Dabei zeigt:
-
1 Teile einer über eine erfindungsgemäße Vorrichtung zur Datenverarbeitung abrufbare integrierte Entwicklungsumgebung. - Die in der
1 dargestellte integrierte Entwicklungsumgebung zeigt schematisch ein Ausführungsbeispiel des erfindungsgemäßen Verfahrens zum Analysieren von Quelltexten10 . - Das Verfahren wird mittels einer Vorrichtung zur Datenverarbeitung ausgeführt, wobei die Vorrichtung einen Prozessor umfasst, der so konfiguriert ist, dass er das nachfolgend beschriebene Verfahren ausführen kann. Das Verfahren basiert auf einem Computerprogrammprodukt, welches Befehle umfasst, die bei der Ausführung des Programms durch einen Computer diesen veranlassen, das Verfahren entsprechend auszuführen.
- Während des Verfahrens werden Quelltextschwachstellen
14 innerhalb eines von einem Quelltextentwickler eingegebenen Quelltextes10 identifiziert. Der Quelltextentwickler gibt den Quelltext10 über eine als Tastatur ausgebildete Eingabeeinrichtung in einen Editor12 ein. Das Identifizieren der Quelltextschwachstellen14 erfolgt in Echtzeit während der aktiven Quelltextentwicklung und ohne die Notwendigkeit einer Programmkompilierung. - Im Rahmen des Verfahrens werden Quelltextschwachstellen
14 identifiziert, welche anfällig für Implementierungsangriffe, wie etwa Seitenkanalangriffe oder Fehlerinjektionsangriffe, sind. Somit erstreckt sich die Quelltextanalyse nicht auf unsichere Standardfunktionen, wie strcpy oder printf, sondern vielmehr auf das Implementierungsverhalten des Quelltextes10 . - Wenn Quelltextschwachstellen
14 identifiziert werden, welche anfällig für Implementierungsangriffe sind, werden die identifizierten Quelltextschwachstellen14 optisch hervorgehoben, damit der Quelltextentwickler während der aktiven Quelltextentwicklung auf die Quelltextschwachstellen14 aufmerksam gemacht wird. Das optische Hervorheben der identifizierten Quelltextschwachstellen14 erfolgt somit ebenfalls on-the-fly, also während der aktiven Quelltextentwicklung ohne die Notwendigkeit einer Programmkompilierung. - Vorliegend beinhaltet der Quelltext
10 eine for-Anweisung und eine if-Anweisung. Beide Anweisungen wurden als anfällig für Implementierungsangriffe identifiziert und optisch hervorgehoben. - Die if-Anweisung wurde im Rahmen des Verfahrens als Quelltextschwachstelle
14 identifiziert, welche anfällig für Seitenkanalangriffe ist. Zu der if-Anweisung wurde ein Fenster16a geöffnet, welches die Segmente18a ,18b umfasst. In dem Segment18a wird dem Quelltextentwickler eine hinterlegte Erläuterung zu der identifizierten Quelltextschwachstelle14 angezeigt, nämlich, dass die if-Anweisung nicht ausgeglichen ist und somit ein missbrauchbares Zeitverhalten auftreten kann. In dem Segment18b wird dem Quelltextentwickler ein Korrekturvorschlag zum Eliminieren der Quelltextschwachstelle14 angezeigt, nämlich, dass die if-Anweisung mit einer else-Anweisung kombiniert werden soll. - Die for-Anweisung wurde im Rahmen des Verfahrens als Quelltextschwachstelle
14 identifiziert, welche anfällig für Fehlerinjektionsangriffe ist. Zu der for-Anweisung wurde ein Fenster16b geöffnet, welches die Segmente20a ,20b umfasst. In dem Segment20a wird dem Quelltextentwickler eine hinterlegte Erläuterung zu der identifizierten Quelltextschwachstelle14 angezeigt, nämlich, dass für die for-Schleife kein Ende definiert ist und somit eine missbrauchbare Kontrollflussmanipulation möglich ist. In dem Segment20b wird dem Quelltextentwickler ein Korrekturvorschlag zum Eliminieren der Quelltextschwachstelle14 angezeigt, nämlich das Einfügen eines zweiten Zählwertes, welcher prüft, ob alle Iterationen der for-Schleife durchgeführt wurden. Ferner wird in dem Segment20b das Einfügen einer else-Anweisung zur Eliminierung der Quelltextschwachstelle14 vorgeschlagen. - Die angezeigten Alternativquelltexte können somit modifizierte und/oder ergänzte Quelltextstrukturen aufweisen. Der Quelltextentwickler kann durch die Eingabe eines entsprechenden Korrekturbefehls das Ersetzen der identifizierten Quelltextschwachstelle
14 durch den angezeigten Alternativquelltext veranlassen. - Bezugszeichenliste
-
- 10
- Quelltext
- 12
- Editor
- 14
- Quelltextschwachstelle
- 16a, 16b
- Fenster
- 18a, 18b
- Segmente
- 20a, 20b
- Segmente
Claims (10)
- Verfahren zum Analysieren von Quelltexten (10), mit dem Schritt: - Identifizieren von Quelltextschwachstellen (14), welche anfällig für Implementierungsangriffe sind; dadurch gekennzeichnet, dass das Identifizieren der Quelltextschwachstellen (14) während der aktiven Quelltextentwicklung ohne die Notwendigkeit einer Programmkompilierung erfolgt.
- Verfahren nach
Anspruch 1 , dadurch gekennzeichnet, dass das Identifizieren der Quelltextschwachstellen (14), welche anfällig für Implementierungsangriffe sind, zumindest einen der folgenden Schritte umfasst: - Identifizieren von Quelltextschwachstellen (14), welche anfällig für Seitenkanalangriffe sind; - Identifizieren von Quelltextschwachstellen (14), welche anfällig für Fehlerinjektionsangriffe sind. - Verfahren nach
Anspruch 1 oder2 , gekennzeichnet durch den Schritt: - optisches Hervorheben der identifizierten Quelltextschwachstellen (14), wobei das optische Hervorheben der identifizierten Quelltextschwachstellen (14) während der aktiven Quelltextentwicklung ohne die Notwendigkeit einer Programmkompilierung erfolgt. - Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass das Identifizieren der Quelltextschwachstellen (14) und/oder das optische Hervorheben der identifizierten Quelltextschwachstellen (14) in Echtzeit während der aktiven Quelltextentwicklung erfolgt.
- Verfahren nach einem der vorstehenden Ansprüche, gekennzeichnet durch zumindest einen der folgenden Schritte: - selbsttätiges Laden einer hinterlegten Erläuterung zu einer identifizierten Quelltextschwachstelle (14); - selbsttätiges Erzeugen einer Erläuterung zu einer identifizierten Quelltextschwachstelle (14); - selbsttätiges Anzeigen der geladenen oder erzeugten Erläuterung zu der identifizierten Quelltextschwachstelle (14).
- Verfahren nach einem der vorstehenden Ansprüche, gekennzeichnet durch zumindest einen der folgenden Schritte: - selbsttätiges Erzeugen eines Alternativquelltextes zu einer identifizierten Quelltextschwachstelle (14); - selbsttätiges Anzeigen des erzeugten Alternativquelltextes zu der identifizierten Quelltextschwachstelle (14).
- Verfahren nach
Anspruch 6 , gekennzeichnet durch den Schritt: - selbsttätiges Ersetzen der identifizierten Quelltextschwachstelle (14) durch den erzeugten Alternativquelltext auf Grundlage eines von einem Quelltextentwickler eingegebenen Korrekturbefehls. - Vorrichtung zur Datenverarbeitung, umfassend einen Prozessor, der so konfiguriert ist, dass er das Verfahren nach einem der vorstehenden Ansprüche ausführt.
- Computerprogrammprodukt umfassend Befehle, die bei der Ausführung des Programms durch einen Computer diesen veranlassen, das Verfahren nach einem der
Ansprüche 1 bis8 auszuführen. - Computerlesbarer Datenträger, auf dem das Computerprogrammprodukt nach
Anspruch 9 gespeichert ist.
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102018213053.1A DE102018213053A1 (de) | 2018-08-03 | 2018-08-03 | Verfahren zum Analysieren von Quelltexten |
PCT/EP2019/070138 WO2020025463A1 (de) | 2018-08-03 | 2019-07-25 | Verfahren zum analysieren von quelltexten |
EP19746460.5A EP3830687A1 (de) | 2018-08-03 | 2019-07-25 | Verfahren zum analysieren von quelltexten |
KR1020217003014A KR20210024161A (ko) | 2018-08-03 | 2019-07-25 | 소스 텍스트들의 분석을 위한 방법 |
JP2021505807A JP2021533476A (ja) | 2018-08-03 | 2019-07-25 | ソーステキストを解析するための方法 |
CN201980051187.9A CN112534400A (zh) | 2018-08-03 | 2019-07-25 | 用于分析源代码的方法 |
US17/165,670 US20210157929A1 (en) | 2018-08-03 | 2021-02-02 | Method for the analysis of source texts |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102018213053.1A DE102018213053A1 (de) | 2018-08-03 | 2018-08-03 | Verfahren zum Analysieren von Quelltexten |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102018213053A1 true DE102018213053A1 (de) | 2020-02-06 |
Family
ID=67482938
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102018213053.1A Pending DE102018213053A1 (de) | 2018-08-03 | 2018-08-03 | Verfahren zum Analysieren von Quelltexten |
Country Status (7)
Country | Link |
---|---|
US (1) | US20210157929A1 (de) |
EP (1) | EP3830687A1 (de) |
JP (1) | JP2021533476A (de) |
KR (1) | KR20210024161A (de) |
CN (1) | CN112534400A (de) |
DE (1) | DE102018213053A1 (de) |
WO (1) | WO2020025463A1 (de) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11531526B1 (en) * | 2020-09-29 | 2022-12-20 | Amazon Technologies, Inc. | Creating portable serverless applications |
US11513833B1 (en) | 2020-09-29 | 2022-11-29 | Amazon Technologies, Inc. | Event listener interface for container-based execution of serverless functions |
US11494184B1 (en) | 2020-09-29 | 2022-11-08 | Amazon Technologies, Inc. | Creation of transportability container files for serverless applications |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030084426A1 (en) * | 2001-06-07 | 2003-05-01 | International Business Machines Corp. | IF statement having an expression setup clause to be utilized in structured assembly language programming |
US20080059875A1 (en) * | 2006-08-31 | 2008-03-06 | Kazuaki Ishizaki | Method for optimizing character string output processing |
US8051408B1 (en) * | 2004-09-13 | 2011-11-01 | The Mathworks, Inc. | Method of providing interactive usage descriptions based on source code analysis |
US20130263086A1 (en) * | 2012-03-27 | 2013-10-03 | Microsoft Corporation | Extensible Mechanism for Providing Suggestions in a Source Code Editor |
US20140359571A1 (en) * | 2013-05-28 | 2014-12-04 | Adobe Systems Incorporated | Method and apparatus for dynamic document object model (dom) aware code editing |
US20160226900A1 (en) * | 2015-02-03 | 2016-08-04 | Easy Solutions Enterprises Corp. | Systems and methods for detecting and addressing html-modifying malware |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050273859A1 (en) * | 2004-06-04 | 2005-12-08 | Brian Chess | Apparatus and method for testing secure software |
US8800042B2 (en) * | 2005-05-16 | 2014-08-05 | Hewlett-Packard Development Company, L.P. | Secure web application development and execution environment |
KR100653122B1 (ko) * | 2005-08-31 | 2006-12-01 | 학교법인 대전기독학원 한남대학교 | 안전한 소프트웨어 개발을 위한 룰 기반의 실시간 탐지시스템 및 방법 |
JP4680876B2 (ja) * | 2006-12-11 | 2011-05-11 | ルネサスエレクトロニクス株式会社 | 情報処理装置及び命令フェッチ制御方法 |
US8341600B2 (en) * | 2008-02-15 | 2012-12-25 | Microsoft Corporation | Tagging and logical grouping of items in source code change lists |
CN102141956B (zh) * | 2010-01-29 | 2015-02-11 | 国际商业机器公司 | 用于开发中的安全漏洞响应管理的方法和*** |
EP2575069B1 (de) * | 2011-09-30 | 2016-10-19 | Tata Consultancy Services Ltd. | Korrektur von Sicherheitslücken |
JP5845888B2 (ja) * | 2011-12-26 | 2016-01-20 | 日本電気株式会社 | ソフトウェア修正装置、ソフトウェア修正システム、ソフトウェア修正方法、及び、ソフトウェア修正プログラム |
FR2995429B1 (fr) * | 2012-09-10 | 2015-04-10 | Oberthur Technologies | Procede de test de la securite d'un dispositif electronique vis-a-vis d'une attaque, et dispositif electronique mettant en oeuvre des contre-mesures |
US9632771B2 (en) * | 2012-12-13 | 2017-04-25 | Microsoft Technology Licensing, Llc | Association of metadata with source code and applications and services premised thereon |
JP6016613B2 (ja) * | 2012-12-21 | 2016-10-26 | 三菱電機株式会社 | ソフトウェア信頼性評価装置、ソフトウェア信頼性評価方法、及びプログラム |
JP2015225513A (ja) * | 2014-05-28 | 2015-12-14 | 株式会社日立製作所 | 情報表示装置、および情報表示方法 |
CN106537333A (zh) * | 2014-06-13 | 2017-03-22 | 查尔斯斯塔克德拉珀实验室公司 | 用于软件产物的数据库的***和方法 |
US9792443B1 (en) * | 2015-03-12 | 2017-10-17 | Whitehat Security, Inc. | Position analysis of source code vulnerabilities |
US9965633B2 (en) * | 2015-12-29 | 2018-05-08 | Sap Se | Using code similarities for improving auditing and fixing of SAST-discovered code vulnerabilities |
US10303448B2 (en) * | 2016-05-15 | 2019-05-28 | Synopsys, Inc. | Systems and methods for graph-based analysis of software |
US10275601B2 (en) * | 2016-06-08 | 2019-04-30 | Veracode, Inc. | Flaw attribution and correlation |
JP6769265B2 (ja) * | 2016-11-29 | 2020-10-14 | 大日本印刷株式会社 | 電子情報記憶媒体、icカード、データ異常確認方法、及びデータ異常確認プログラム |
US10503910B2 (en) * | 2017-06-06 | 2019-12-10 | Sap Se | Security testing framework including virtualized server-side platform |
US10628129B2 (en) * | 2017-08-08 | 2020-04-21 | Accenture Global Solutions Limited | Intellectual automated security, performance and code generation framework |
-
2018
- 2018-08-03 DE DE102018213053.1A patent/DE102018213053A1/de active Pending
-
2019
- 2019-07-25 JP JP2021505807A patent/JP2021533476A/ja active Pending
- 2019-07-25 CN CN201980051187.9A patent/CN112534400A/zh active Pending
- 2019-07-25 EP EP19746460.5A patent/EP3830687A1/de not_active Ceased
- 2019-07-25 KR KR1020217003014A patent/KR20210024161A/ko not_active IP Right Cessation
- 2019-07-25 WO PCT/EP2019/070138 patent/WO2020025463A1/de unknown
-
2021
- 2021-02-02 US US17/165,670 patent/US20210157929A1/en not_active Abandoned
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030084426A1 (en) * | 2001-06-07 | 2003-05-01 | International Business Machines Corp. | IF statement having an expression setup clause to be utilized in structured assembly language programming |
US8051408B1 (en) * | 2004-09-13 | 2011-11-01 | The Mathworks, Inc. | Method of providing interactive usage descriptions based on source code analysis |
US20080059875A1 (en) * | 2006-08-31 | 2008-03-06 | Kazuaki Ishizaki | Method for optimizing character string output processing |
US20130263086A1 (en) * | 2012-03-27 | 2013-10-03 | Microsoft Corporation | Extensible Mechanism for Providing Suggestions in a Source Code Editor |
US20140359571A1 (en) * | 2013-05-28 | 2014-12-04 | Adobe Systems Incorporated | Method and apparatus for dynamic document object model (dom) aware code editing |
US20160226900A1 (en) * | 2015-02-03 | 2016-08-04 | Easy Solutions Enterprises Corp. | Systems and methods for detecting and addressing html-modifying malware |
Also Published As
Publication number | Publication date |
---|---|
CN112534400A (zh) | 2021-03-19 |
JP2021533476A (ja) | 2021-12-02 |
KR20210024161A (ko) | 2021-03-04 |
WO2020025463A1 (de) | 2020-02-06 |
US20210157929A1 (en) | 2021-05-27 |
EP3830687A1 (de) | 2021-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Gerevini et al. | Inferring state constraints for domain-independent planning | |
EP1818844B1 (de) | Verfahren zur Benutzung von Sicherheitstoken | |
EP3830687A1 (de) | Verfahren zum analysieren von quelltexten | |
DE60313652T2 (de) | Verfahren und gerät zur kontrolle der umwandlung von programm-kodes | |
DE102005042126A1 (de) | Verfahren und Vorrichtung zum automatisierten Bewerten der Qualität eines Software-Quellcodes | |
DE112010003979T5 (de) | System und Verfahren für das statische Erkennen und Kategorisieren von Informationsfluss-Herabstufungseinrichtungen | |
DE112012000279T5 (de) | Ermitteln der Anfälligkeit von Computer-Software-Anwendungen gegenüber Rechteausweitungsangriffen | |
EP3864547B1 (de) | Verfahren zur detektion sicherheitsrelevanter datenflüsse | |
DE102014117971B4 (de) | Verfahren zur Datenverarbeitung zum Ermitteln, ob bei einer Ausführung eines Programms ein Fehler aufgetreten ist, und Datenverarbeitungsanordnungen zum Erzeugen von Programm-Code | |
DE112018002954T5 (de) | Bereitstellen eines konfigurationsabhängigen arbeitsablaufs | |
EP3614268B1 (de) | Verfahren und vorrichtung zum verarbeiten von daten mittels codierter operationen | |
DE10038499A1 (de) | Verfahren und System für die verbesserte Entwicklungsprüfung mittels angepasster Ablaufverfolgung | |
DE102011006000B4 (de) | Signaturaktualisierung durch Codetransformation | |
DE102019008598A1 (de) | Identifikation und Visualisierung von Assoziationen zwischen Code, der von einem Modell generiert ist, und Quellen, welche die Codegeneration beeinflussen | |
US20230044951A1 (en) | Guided Micro-Fuzzing through Hybrid Program Analysis | |
AT514731A2 (de) | Verfahren zur Verifizierung generierter Software sowie Verifizierungseinrichtung zum Durchführen eines solchen Verfahrens | |
EP3745287B1 (de) | Schützen einer softwareapplikation | |
DE102005048029B4 (de) | Compiliervorrichtung und Verfahren zum Compilieren | |
DE102021132302A1 (de) | Compilervalidierung | |
Carbonneaux | Modular and certified resource-bound analyses | |
DE102005063499B4 (de) | Compiliervorrichtung und Verfahren zum Compilieren | |
DE102009033211A1 (de) | Chipkarte mit Überwachung der Integrität auf Softwarebasis | |
DE102010014720A1 (de) | Verfahren zum Verifizieren eines aus einem Quellmodell generierten Zielprogramms | |
DE102022201857A1 (de) | Verfahren zum Steuern einer Robotervorrichtung | |
CN114253594A (zh) | 代码还原方法、装置、可读介质及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R163 | Identified publications notified | ||
R081 | Change of applicant/patentee |
Owner name: CONTINENTAL AUTOMOTIVE TECHNOLOGIES GMBH, DE Free format text: FORMER OWNER: CONTINENTAL TEVES AG & CO. OHG, 60488 FRANKFURT, DE |
|
R081 | Change of applicant/patentee |
Owner name: CONTINENTAL AUTOMOTIVE TECHNOLOGIES GMBH, DE Free format text: FORMER OWNER: CONTINENTAL AUTOMOTIVE TECHNOLOGIES GMBH, 30165 HANNOVER, DE |