Sicheres C Programmieren in Embedded Systemen ARM II (ARM7TMDI [1] ) Wintersemester
|
|
- Hermann Peters
- vor 8 Jahren
- Abrufe
Transkript
1 Sicheres C in Embedded Systemen ARM II (ARM7TMDI [1] ) Wintersemester Dipl. Ing. (FH) Ebrecht Roland, Infineon Technologies AG M.Eng (Electronic Systems) Güller Markus, Infineon Technologies AG Dipl. Inf. (FH) Klein Sebastian, Fujitsu Technology Solutions GmbH [1] ARM Cores
2 Agenda Ziel der Vorlesung ARM Register ARM Modi Funktionsaufruf und Rücksprung Puffer Überlauf Gegenmaßnahmen
3 Ziel der Vorlesung Agenda : Ziel der Vorlesung ARM Register ARM Modi Funktionsaufruf und Rücksprung Stack Überlauf Gegenmaßnahmen
4 Ziel der Vorlesung Verständnis wie Funktionsaufrufe auf ARM Plattform funktionieren Verständnis Puffer Überlauf und Gegenmaßnahmen
5 ARM Register Agenda : Ziel der Vorlesung ARM Register ARM Modi Funktionsaufruf und Rücksprung Stack Überlauf Gegenmaßnahmen
6 ARM Register I Zentrales Register File R0 R12 Benutzer Register (AAPCS) R13 Stack Zeiger R14 Link Register (LR) R15 Program Counter CPSR Current Program Status Register R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13(SP) R15(PC) CPSR
7 User Mode Register File R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13(SP) R15(PC) ARM Register II PC und SP Laufzeit Speicher Abbild Execution Environment ZI DATA (STACK) ZI DATA (.bss) RW DATA (.data) RO CODE (.text) CPSR
8 ARM Register III ARM Advanced Procedure Call Standard [2] Routinen können mit unterschiedlichen Tools kompiliert und assembliert werden Vertrag zwischen Caller und Callee Definiert Register (R0- R3) für Funktionsübergabe Parameter Definiert Register (R4 R11) für lokale Variablen [2] Procedure Call Standard for the ARM Architecture
9 Funktionsaufrufe III R0 R12 AAPCS Core Registers Register Synonym AAPCS Bedeutung R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13(SP) R15(PC) a1 a2 a3 a4 v1 v2 v3 v4 v5 v6 v7 v8 IP R13(SP) R15(PC) Argument/Rückgabewert / Zwischen Register 1 Argument/Rückgabewert / Zwischen Register 2 Argument/Rückgabewert / Zwischen Register 3 Argument/Rückgabewert / Zwischen Register 4 Variablen Register 1 Variablen Register 2 Variablen Register 3 Variablen Register 4 Variablen Register 5 Platform Regisger (v6,sb) Variablen Register 7 Variablen Register 8 Intra Procedure Call Zwischen Register
10 ARM Modi Agenda : Ziel der Vorlesung ARM Register ARM Modi Funktionsaufruf und Rücksprung Puffer Überlauf Gegenmaßnahmen
11 ARM Modi I CPSR CPSR Standard Code läuft im System-User Mode Als Reaktion auf Exceptions wechselt CPU den Mode Exceptions sind z.b. Interrupts, Speicher Fehler und Software Interrupts Bei jedem Mode Wechsel Wird PC mit Exception Vector geladen Werden LR und SP Register ersetzt
12 ARM Modi II Register Übersicht R13(SP) R15(PC) System & User R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13(SP) R15(PC) FIQ R13(SP) R15(PC) Supervisor R13(SP) R15(PC) Abort R13(SP) R15(PC) IRQ R13(SP) R15(PC) Undefined R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12
13 Funktionsaufruf und Rücksprung Agenda : Ziel der Vorlesung ARM Register ARM Modi Funktionsaufruf und Rücksprung Puffer Überlauf Gegenmaßnahmen
14 Funktionsaufruf + Rücksprung I ARM CALL Befehl Caller (Aufrufende Funktion) Branch mit Link (BL) Instruktion BL Adresse (4MB) LR PC+4 (Setzen Rücksprung Adresse in LR) PC Adresse (Sprung zur Funktion) Calle (Aufgerufene Funktion) Rücksprung abhängig von lokalen Variablen und Leaf/Non Leaf Funktion
15 Funktionsaufruf + Rücksprung II Leaf Funktion Kein Lokalen Variablen Keine Stack Benutzung von func1 void func1 { PINSEL0 = 0x ; U1LCR = 0x83; } Caller Callee Stack func1 AUFRUF: BL func1 Nächster Befehl func1:.. BX R14 Return über LR(R14)
16 Funktionsaufruf + Rücksprung III Non Leaf Funktion und/oder Lokalen Register Variablen LR und Lokalen Register Variablen werden auf den Stack gesichert void func1 { char c: int i;. func2();. } Caller Callee Stack AUFRUF: BL func1 Nächster Befehl func1: STMDB R13!,{R4-R5,R14} ; PUSH. BL func2. LDMIA R13!,{R4-R5,PC} ; POP Return über Laden des PC vom Stack SP R5 R4
17 Funktionsaufruf + Rücksprung IV Lokale Stack Variablen werden angelegt Lokales Array auf dem Stack Caller Callee void func1(void) { char c: int i; char Buffer[64];. func2(); } Stack AUFRUF: BL func1 Nächster Befehl func1: STMDB R13!,{R4-R5,R14}; PUSH SUB R13,R13,#0x BL func2. LDMIA R13!,{R4-R5,PC} ; POP SP R5 R4 Buffer[i] Buffer{0] Angreifer kontrolliert Stack + Rücksprungadresse
18 Puffer Überlauf Agenda : Ziel der Vorlesung ARM Register ARM Modi Funktionsaufruf und Rücksprung Puffer Überlauf Gegenmaßnahmen
19 Puffer Überlauf I Typen [3] Stack Smashing Angriff überschreibt die Rücksprung Adresse auf dem Stack Funktionszeiger Angriffe überschreiben die Adresse eines Funktionszeigers auf dem Stack (lokal) oder im Heap (shared) [3] Defending Embedded Systems Against Buffer Overflow via Hardware/ Software
20 Puffer Überlauf II Stack Bereichs Rechte Ausführbar (executable) Angriffscode kann im Stack ausgeführt werden Nicht ausführbar (non-executable) [4] Angriffscode kann nicht im Stack ausgeführt werden Funktionsaufruf von C Library/ System Funktionen mit sicherheitskritischen Parametern (z.b. Ret2LibC [5] ) [4] Non-Executable Stack ARM Exploitation [5] Bypassing non-executable-stack during exploitation using return-to-libc
21 Puffer Überlauf III ARM basiertes geschlossenes System Black Box Keine Code Ausführungsrechte Applikations Code + C Runtime Library (z.b. Realview C Standard Library oder Realview micro Library, ) Attack Surface: Lokale I/O Schnittstelle (UART) Typische Angriffe: Code auslesen, laden, Daten auslesen Voraussetzung: Datenverarbeitung beinhaltet Schwachstelle
22 Puffer Überlauf IV ARM basiertes offenes System Code Ausführungsrechte für lokale Angriffe User Applikationen + OS Kernel (z.b. Embedded Linux) + C Runtime Library Attack Surface: Remote, Netzwerk Interface Typische Angriffe: Remotes starten einer shell (z.b. über netcat) Voraussetzung: Remote Netzwerk Software beinhaltet Schwachstelle Alphanumeric Shellcodes [6] [6] Alphanumeric ARM Shellcodes
23 Puffer Überlauf V Voraussetzung Vulnerable Funktion Stack char c: int i; char rgbbuffer[64]; do { c = getkey(); rgbbuffer[i++] = c; } while (c!= 'q'); SP R5 R4 Buffer[64] Buffer{0] Überschreiben
24 Puffer Überlauf VI Geschlossenes System Executable Stack 1. Angreifer kontrolliert den Inhalt des Puffers 2. Angreifer generiert Angriffs Code 3. Offset-X für Rücksprung Adresse herausfinden 4. Addr-X für ausführbaren Code herausfinden 5. Senden der Payload über I/O Interface Addr-X Stack Angriffs Code Ende Angriffs Code Anfang R5 R4 Buffer[7] Offset-X Buffer{0] Offset-X Payload AAAAAAAA BBBB BBBB Addr-X Angriffs Code
25 Gegenmaßnahmen Agenda : Ziel der Vorlesung ARM Register ARM Modi Funktionsaufruf und Rücksprung Puffer Überlauf Gegenmaßnahmen
26 Gegenmaßnahmen I Statische Checks Code Analyse Werkzeuge Dynamische Checks! Grenzwert Überprüfung im Code Test Strategie (Fuzz Testing) Data Execution Prevention Stack nicht ausführbar (MPU/ MMU) Address Space Layout Randomization (ASLR) Stack Guard (Canary/ Cookies) Zufallswert nach Rücksprungadresse/ Framepointer Compiler Switch Options Multistack [7] [7] Efficient and Effective Buffer Overflow Protection on ARM Processors
27 Fragen oder Anregungen?
Sicheres C Programmieren in Embedded Systemen ARM I (ARM7TMDI [1] ) Wintersemester 2010-2011
Sicheres C in Embedded Systemen ARM I (ARM7TMDI [1] ) Wintersemester 2010-2011 Dipl. Ing. (FH) Ebrecht Roland, Infineon Technologies AG M.Eng (Electronic Systems) Güller Markus, Infineon Technologies AG
MehrName: ES2 Klausur Thema: ARM 25.6.07. Name: Punkte: Note:
Name: Punkte: Note: Hinweise für das Lösen der Aufgaben: Zeit: 95 min. Name nicht vergessen! Geben Sie alle Blätter ab. Die Reihenfolge der Aufgaben ist unabhängig vom Schwierigkeitsgrad. Erlaubte Hilfsmittel
MehrUnterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur
Unterprogramme Unterprogramme sind abgekapselte Programmfragmente, welche es erlauben, bestimmte Aufgaben in wiederverwendbarer Art umzusetzen. Man unterscheidet zwischen Unterprogrammen mit Rückgabewert
MehrTechnische Informatik 1 Übung 2 Assembler (Rechenübung) Georgia Giannopoulou (ggeorgia@tik.ee.ethz.ch) 22./23. Oktober 2015
Technische Informatik 1 Übung 2 Assembler (Rechenübung) Georgia Giannopoulou (ggeorgia@tik.ee.ethz.ch) 22./23. Oktober 2015 Ziele der Übung Aufgabe 1 Aufbau und Aufruf von Funktionen in Assembler Codeanalyse
MehrUniversität Stuttgart Abteilung Anwendersoftware 01.07.2002. - Steht für Embedded SQL in Java. - Java-Methoden als SQL Stored-Procedures
SQLJ Basics Universität Stuttgart Abteilung Anwendersoftware 01.07.2002 Was ist SQLJ? SQLJ Part 0: - Steht für Embedded SQL in Java SQLJ Part 1: - Java-Methoden als SQL Stored-Procedures SQLJ Part 2: -
MehrFolgende Voraussetzungen für die Konfiguration müssen erfüllt sein: - Ein Bootimage ab Version 7.4.4. - Optional einen DHCP Server.
1. Dynamic Host Configuration Protocol 1.1 Einleitung Im Folgenden wird die Konfiguration von DHCP beschrieben. Sie setzen den Bintec Router entweder als DHCP Server, DHCP Client oder als DHCP Relay Agent
MehrAutomatisierung ( Fernsteuerung ) von Excel unter Microsoft Windows Tilman Küpper (tilman.kuepper@hm.edu)
HMExcel Automatisierung ( Fernsteuerung ) von Excel unter Microsoft Windows Tilman Küpper (tilman.kuepper@hm.edu) Inhalt 1. Einleitung...1 2. Beispiele...2 2.1. Daten in ein Tabellenblatt schreiben...2
Mehr1. Übung zu "Numerik partieller Differentialgleichungen"
1. Übung zu "Numerik partieller Differentialgleichungen" Simon Gawlok, Eva Treiber Engineering Mathematics and Computing Lab 22. Oktober 2014 1 / 15 1 Organisatorisches 2 3 4 2 / 15 Organisatorisches Ort:
Mehr4D Server v12 64-bit Version BETA VERSION
4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und
MehrPersona-SVS e-sync GUI/Client Installation
Persona-SVS e-sync GUI/Client Installation 2014 by Fraas Software Engineering GmbH (FSE). Alle Rechte vorbehalten. Fraas Software Engineering GmbH Sauerlacher Straße 26 82515 Wolfratshausen Germany http://www.fraas.de
MehrPropädeutikum. Dipl.-Inf. Frank Güttler
Propädeutikum 2015 Vorbereitungskurs Informatikstudium Erfolgreich Studieren Programmieren (C-Kurs) guettler@informatik.uni-leipzig.de Universität Leipzig Institut für Informatik Technische Informatik
MehrINNOTask, INNOCount, INNORent, INNOSpace, INNOCar Installationsanforderungen
INNOTask, INNOCount, INNORent, INNOSpace, INNOCar Installationsanforderungen Server Betriebssystem: MS Server 2003 und 2008 Datenbank: MS SQL 2000 bis 2008 Mindestens 512 MB RAM und 1 GHz CPU, ausreichend
MehrAbaWeb Treuhand. Hüsser Gmür + Partner AG 30. Oktober 2008
AbaWeb Treuhand Hüsser Gmür + Partner AG 30. Oktober 2008 Inhalt Was ist AbaWeb Treuhand? 3 Treuhand Heute und Morgen 4 Sicherheit 5 Technische Voraussetzungen 6 Kundenvorteile 7 Unsere Vorteile = Ihre
MehrService & Support. Wie kann ein WinCC (TIA Portal) Projekt über Ethernet auf ein Bediengerät übertragen werden? WinCC (TIA Portal) FAQ Februar 2012
Deckblatt Wie kann ein WinCC (TIA Portal) Projekt über Ethernet auf ein Bediengerät übertragen werden? WinCC (TIA Portal) FAQ Februar 2012 Service & Support Answers for industry. Fragestellung Dieser Beitrag
MehrVirtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44
Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 44 Die Idee Virtuelle Adressen Prozess 1 Speicherblock 0 Speicherblock 1 Speicherblock 2 Speicherblock 3 Speicherblock 4 Speicherblock
MehrExploits Wie kann das sein?
Exploits Durch eine Schwachstelle im Programm xyz kann ein Angreifer Schadcode einschleusen. Manchmal reicht es schon irgendwo im Internet auf ein präpariertes Jpg-Bildchen zu klicken und schon holt man
MehrEinführung in die C++ Programmierung für Ingenieure
Einführung in die C++ Programmierung für Ingenieure MATTHIAS WALTER / JENS KLUNKER Universität Rostock, Lehrstuhl für Modellierung und Simulation 14. November 2012 c 2012 UNIVERSITÄT ROSTOCK FACULTY OF
MehrBuffer Overflow 1c) Angriffsstring: TTTTTTTTTTTTTTTT (16x) Beachte: Padding GCC-Compiler Zusatz: gcc O2 verhindert hier den Angriff (Code Optimierung)
Buffer Overflow 1c) 1 char passok='f'; 2 char password[8]; 3 printf( Passwort: ); 4 gets(password); 5 if(!strcmp(password, daspassw )){passok = 'T';} 6 if(passok=='t'){printf( %s, Willkommen! );} 7 else
MehrFolgende Voraussetzungen für die Konfiguration müssen erfüllt sein:
7. Intrusion Prevention System 7.1 Einleitung Sie konfigurieren das Intrusion Prevention System um das Netzwerk vor Angriffen zu schützen. Grundsätzlich soll nicht jeder TFTP Datenverkehr blockiert werden,
MehrDIGITALVARIO. Anleitung Bootloader. Ausgabe 0.1 deutsch 29.11.2005. für Direkt-Digital-Vario. Firmware ab 00-06-00 Hardware 01 Seriennummer ab 0003
DIGITALVARIO Anleitung Bootloader Ausgabe 0.1 deutsch 29.11.2005 für Direkt-Digital-Vario Firmware ab 00-06-00 Hardware 01 Seriennummer ab 0003 1. Funktion Der Bootloader dient dazu Updates der Variosoftware
MehrLavA OS: Ein Betriebssystem für konfigurierbare MPSoCs
LavA OS: Ein Betriebssystem für konfigurierbare MPSoCs Diplomarbeit Abschlussvortrag Stephan Vogt stephan.vogt@cs.uni-dortmund.de 1 Inhalt Einleitung Wiederverwendung von BS Arbeiten an CiAO Kommunikation
MehrProgrammierung in C. Grundlagen. Stefan Kallerhoff
Programmierung in C Grundlagen Stefan Kallerhoff Vorstellungsrunde Name Hobby/Beruf Schon mal was programmiert? Erwartungen an den Kurs Lieblingstier Für zu Hause C-Buch online: http://openbook.rheinwerk-verlag.de/c_von_a_bis_z/
Mehr2010 Ing. Punzenberger COPA-DATA GmbH. Alle Rechte vorbehalten.
2010 Ing. Punzenberger COPA-DATA GmbH Alle Rechte vorbehalten. Die Weitergabe und Vervielfältigung dieses Dokuments ist - gleich in welcher Art und Weise nur mit schriftlicher Genehmigung der Firma COPA-DATA
MehrFunktionen Häufig müssen bestimmte Operationen in einem Programm mehrmals ausgeführt werden. Schlechte Lösung: Gute Lösung:
Funktionen Häufig müssen bestimmte Operationen in einem Programm mehrmals ausgeführt werden. Schlechte Lösung: Der Sourcecode wird an den entsprechenden Stellen im Programm wiederholt Programm wird lang
MehrDynamic Ressource Management
best Open Systems Day Fall 2006 Dynamic Ressource Management Unterföhring Marco Kühn best Systeme GmbH kuehn@best.de Agenda Überblick Dynamic Resource Pools und FSS Dynamic Resource Memory RCAP Oracle
MehrARM Cortex-M Prozessoren. Referat von Peter Voser Embedded Development GmbH
ARM Cortex-M Prozessoren Referat von Peter Voser Embedded Development GmbH SoC (System-on-Chip) www.embedded-development.ch 2 Instruction Sets ARM, Thumb, Thumb-2 32-bit ARM - verbesserte Rechenleistung
MehrProfiling und Coverage mit GNU und Bare Embedded Systems
Profiling und Coverage mit GNU und Bare Embedded Systems Life is too short for bad tools! Prof. Erich Styger erich.styger@hslu.ch +41 41 349 33 01 Coverage und Profiling Coverage: Analyse der Testabdeckung
MehrEinführung in die Programmierung
: Inhalt Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund - mit / ohne Parameter - mit / ohne Rückgabewerte
Mehr1 Vom Problem zum Programm
Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren
MehrAOSTA. Aspects in Operating Systems: Tools and Applications
AOSTA Aspects in Operating Systems: Tools and Applications Michael Engel, Philipps-Universität Marburg AG Verteilte Systeme engel@informatik.uni-marburg.de Aspektorientierung in 5 Minuten ;-) Crosscutting
MehrIndizierungs- und Suchlogs. Version 2015
Indizierungs- und Suchlogs Version 2015 Status: 13. März 2015 Copyright Mindbreeze GmbH, A-4020 Linz, 2015. Alle Rechte vorbehalten. Alle verwendeten Hard- und Softwarenamen sind Handelsnamen und/oder
MehrDesign and Implementation of a Soft-error Resilient OSEK Real-time Operating System
Design and Implementation of a Soft-error Resilient OSEK Real-time Operating System Florian Lukas Lehrstuhl für Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich Alexander Universität Erlangen
MehrSmartphone Entwicklung mit Android und Java
Smartphone Entwicklung mit Android und Java predic8 GmbH Moltkestr. 40 53173 Bonn Tel: (0228)5552576-0 www.predic8.de info@predic8.de Was ist Android Offene Plattform für mobile Geräte Software Kompletter
MehrAnleitung zur Installation der DataWatch Software auf einem LINUX System ohne grafische Oberfläche
Anleitung zur Installation der DataWatch Software auf einem LINUX System ohne grafische Oberfläche Die Installation (siehe Punkt 1 und 2) der DataWatch Software kann auch auf einem Linux-System ohne grafische
MehrDie Geheimnisse meiner SMF Daten
Die Geheimnisse meiner SMF Daten MARTA CIEPLAK, Systemwork Sell, Account Manager, marta.cieplak@systemwork.eu SMF4U Browser 1. Zwei Fälle 2. Das Tool zur Lösung 3. Erfahrungsbericht Fall: Wer hat die Daten
MehrEinführung in die C-Programmierung
Einführung in die C-Programmierung Warum C? Sehr stark verbreitet (Praxisnähe) Höhere Programmiersprache Objektorientierte Erweiterung: C++ Aber auch hardwarenahe Programmierung möglich (z.b. Mikrokontroller).
Mehr2008 Jiri Spale, Programmierung in eingebetteten Systemen 1
2008 Jiri Spale, Programmierung in eingebetteten Systemen 1 NetX - Einführung 2008 Jiri Spale, Programmierung in eingebetteten Systemen 2 NetX is... a highly integrated network controller with a new system
Mehrwo werden die Daten besser geschützt?
Android & ios wo werden die Daten besser geschützt? [twitter]heute ein Versuch: Live Tweet aus dem Vortrag heraus. Live-Stream: http://unfuck.eu/2012/live-stream @ThinkingObjects [/ twitter] Who we are
MehrDer SAP BW-BPS Web Interface Builder
Der SAP BW-BPS Web Interface Builder Projekt: elearning SAP BPS Auftraggeber: Prof. Dr. Jörg Courant Gruppe 3: Bearbeiter: Diana Krebs Stefan Henneicke Uwe Jänsch Andy Renner Daniel Fraede Uwe Jänsch 1
MehrÜbersicht. Generierung von IPv6-Paketen mit Scapy. Scapy GUI - Kurzvorstellung. Szameitpreiks - Beuth Hochschule für Technik Berlin
Übersicht Generierung von IPv6-Paketen mit Scapy Scapy GUI - Kurzvorstellung Szameitpreiks - Beuth Hochschule für Technik Berlin 2 Scapy-GUI for IPv6 Generierung von IPv6- Paketen mit Scapy Szameitpreiks
Mehr5 Speicherverwaltung. bs-5.1 1
5 Speicherverwaltung bs-5.1 1 Pufferspeicher (cache) realer Speicher Primärspeicher/Arbeitsspeicher (memory) Sekundärspeicher/Hintergrundspeicher (backing store) (Tertiärspeicher/Archivspeicher) versus
MehrVarioTAP Einführung Hosea L. Busse
VarioTAP Einführung Hosea L Busse GÖPEL electronic GmbH 2013 JTAG/Boundary Scan 1 Überblick Was ist VarioTAP? Prinzipielle Struktur eines µcontrollers VarioTAP Teststruktur VarioTAP Testkategorien VarioTAP
MehrJ.5 Die Java Virtual Machine
Java Virtual Machine Die Java Virtual Machine 22 Prof. Dr. Rainer Manthey Informatik II Java-Compiler und Java Virtual Machine Quellcode-Datei class C... javac D.java Java-Compiler - Dateien class class
MehrDeklarationen in C. Prof. Dr. Margarita Esponda
Deklarationen in C 1 Deklarationen Deklarationen spielen eine zentrale Rolle in der C-Programmiersprache. Deklarationen Variablen Funktionen Die Deklarationen von Variablen und Funktionen haben viele Gemeinsamkeiten.
MehrJürg Gutknecht, SI und ETH Zürich, April 2015
Jürg Gutknecht, SI und ETH Zürich, April 2015 Der Staubsauger könnte ein Mikrofon eingebaut haben, welches sämtliche Geräusche im Raum aufnimmt und via Stromkabel an einen Geheimdienst weiterleitet Die
MehrSIMOTION IT Users & Passwords
Benutzerdatenbank Die Users & Passwords-Seite ermöglicht die Benutzerverwaltung. Es können Passwörter, Gruppen- und Zugriffsrechte für die Benutzer vergeben werden. Bild 1 File transmission Benutzerdatenbank
MehrPG5 Starter Training PG5 Core und Webeditor 8 Daniel Ernst DE02 2013-03-14
PG5 Starter Training PG5 Core und Webeditor 8 Daniel Ernst DE02 2013-03-14 Einführung Benötigtes Material: Notebook oder Computer PCD1 E-Controller USB Kabel Schulungsplatine Ethernet Kabel Benötigte Software
MehrThermoguard. Thermoguard CIM Custom Integration Module Version 2.70
Thermoguard Thermoguard CIM Custom Integration Module Version 2.70 Inhalt - Einleitung... 3 - Voraussetzungen... 3 - Aktivierung und Funktion der Schnittstelle... 3 - Parameter... 4 - NLS-Einfluss... 4
MehrSilca Software ERKLÄRUNG. February 2013 Copyright Silca S.p.A. V.2.0
ERKLÄRUNG Was ist eine KARTE? KARTE oder Gesamtheit der Parameter hinsichtlich Abstände, Frästiefe, Fräsbasis, Winkel, Bezug, Spannbacke, Fräser ( insgesamt etwa 250 Parameter für jede Schlüsselachse )
MehrWebseiten mit fragwürdigen Aufrufen von "spy & track" - Unternehmen
Webseiten mit fragwürdigen Aufrufen von "spy & track" - Unternehmen Die vorliegende Dokumentation umfasst eine kleine Auswahl von Webseiten, bei denen automatisch (ohne Benutzer vorab zu informieren oder
MehrTesten mit JUnit. Motivation
Test First Design for Test in Eclipse (eigentlich: ) zu einer Klasse Beispiel zur Demonstration Ergänzungen Test First "Immer dann, wenn Du in Versuchung kommst, etwas wie eine print- Anweisung oder einen
MehrMelde- und Veröffentlichungsplattform Portal (MVP Portal) Hochladen einer XML-Datei
Seite 1 Melde- und Veröffentlichungsplattform Portal (MVP Portal) Hochladen einer XML-Datei Seite 2 1 Inhalt Melde- und Veröffentlichungsplattform Portal... 1 (MVP Portal)... 1 Hochladen einer XML-Datei...
MehrNetzwerk-Watchdog Funktionsbeschreibung UMG604 / UMG605
Netzwerk-Watchdog Funktionsbeschreibung UMG604 / UMG605 Version 1.1 Dokumenten NR: XXXXXXX DE Janitza electronics GmbH Vor dem Polstück 1 D-35633 Lahnau Deutschland Support Tel. (0 64 41) 9642-22 Fax (0
MehrMALWARE AM BEISPIEL VON STUXNET
MALWARE AM BEISPIEL VON STUXNET IAV10/12 24.05.2011 Jan Heimbrodt Inhalt 1. Definition Was ist Malware? 2. Kategorisierung von Malware Viren, Würmer, Trojaner, 3. Was macht Systeme unsicher? Angriffsziele,
MehrSicherheit wird messbar Lösungsansätze und Methoden. Email Case. 15. September 2009, Hotel St. Gotthard, Zürich
Sicherheit wird messbar Lösungsansätze und Methoden Email Case 15. September 2009, Hotel St. Gotthard, Zürich ActiveSync Div. Email Landschaft PeerToPeer -USB -Bluetooth Smart phone Netzwerk - Ethernet
MehrMODBUS/TCP und Beckhoff Steuerelemente
MODBUS/TCP und Beckhoff Steuerelemente Die 1.7.5 Version wurde zum DOMIQ/Base Modul die Funktion der Bedienung des MOD- BUS/TCP und MODBUS/UDP Protokolls hinzugefügt. Das Base Modul erfüllt die Rolle des
MehrBTD Antivirus Evasion: Von der Idee zum PoC. Daniel Sauder SySS GmbH
BTD Antivirus Evasion: Von der Idee zum PoC Daniel Sauder SySS GmbH WHOAMI IT Security Consultant bei der SySS GmbH Vier Jahre Windows Admin Interesse an Mobile Apps, Web Apps, Windows Hacking u.v.m. OSCP
MehrKarlsruher Institut für Technologie
Karlsruher Institut für Technologie Lehrstuhl für Programmierparadigmen Sprachtechnologie und Compiler WS 2010/2011 Dozent: Prof. Dr.-Ing. G. Snelting Übungsleiter: Matthias Braun Lösung zu Übungsblatt
MehrTutorium Rechnerorganisation
Woche 2 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu
MehrMOUNT10 StoragePlatform Console
MOUNT10 StoragePlatform Console V7.14 Kurzmanual für Microsoft Windows Ihr Leitfaden für die Verwaltung der MOUNT10 Backup-Umgebung unter Verwendung der Storage Platform Console Inhaltsverzeichnis 1 VERWENDUNGSZWECK...3
MehrJ.6 Programmierung eingebetteter Systeme
Vorteile von C in eingebetteten Systemen: leichter Zugriff auf die Hardware gute Kontrolle über die verwendeten Ressourcen (Speicher, CPU) Probleme mit C: stark eingeschränkte Laufzeitüberprüfungen ISO
MehrHochschule Darmstadt Informatik-Praktikum (INF 1) WS 2015/2016 Wirtschaftsingenieur Bachelor 5. Aufgabe Datenstruktur, Dateieingabe und -ausgabe
Aufgabenstellung Für eine Hausverwaltung sollen für maximal 500 Wohnungen Informationen gespeichert werden, die alle nach der gleichen Weise wie folgt strukturiert sind: Art Baujahr Wohnung Whnginfo Nebenkosten
MehrExploit-Entwicklung mit Python
Penetration Testing III Bachelor in Computer Science (BCS) 6. Semester Exploit-Entwicklung mit Python von Daniel Baier und Demian Rosenkranz 1 / 20 Gliederung Grundlagen Sicherheitslücken Prozess- und
MehrProgrammierung 2. Übersetzer: Code-Erzeugung. Sebastian Hack. Klaas Boesche. Sommersemester 2012. hack@cs.uni-saarland.de. boesche@cs.uni-saarland.
1 Programmierung 2 Übersetzer: Code-Erzeugung Sebastian Hack hack@cs.uni-saarland.de Klaas Boesche boesche@cs.uni-saarland.de Sommersemester 2012 Bytecodes Der Java Übersetzer erzeugt keine Maschinensprache
MehrEntwicklungsumgebung
Entwicklungsumgebung Echtzeitsysteme 2 Vorlesung/Übung Fabian Scheler Lehrstuhl für Informatik IV Verteilte Systeme und Betriebssysteme Friedrich-Alexander Universität Erlangen-Nürnberg http://www4.cs.fau.de/~scheler
MehrEinführung in LINUX Der Editor vi
Einführung in LINUX Der Editor vi erstellt durch: Name: Telefon: 09281 / 409-279 Fax: 09281 / 409-55279 EMail: mailto: Karl.Wohlrab@fhvr-aiv.de Der Inhalt dieses Dokumentes darf ohne vorherige schriftliche
MehrAnbindung des eibport an das Internet
Anbindung des eibport an das Internet Ein eibport wird mit einem lokalen Router mit dem Internet verbunden. Um den eibport über diesen Router zu erreichen, muss die externe IP-Adresse des Routers bekannt
MehrBetriebssysteme Kap A: Grundlagen
Betriebssysteme Kap A: Grundlagen 1 Betriebssystem Definition DIN 44300 Die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften dieser Rechenanlage die Basis der möglichen Betriebsarten
MehrIBM SPSS Statistics Version 22. Konfigurieren von Technologie für behindertengerechte Bedienung
IBM SPSS Statistics Version 22 Konfigurieren von Technologie für behindertengerechte Bedienung Inhaltsverzeichnis Assistive Technology Software..... 1 Windows-Software............ 1 Mac OS-Software.............
MehrWord-Vorlagen-System mit Outlookanbindung
Inhalt der FAQ In Datei Zvlg_koerner.dot ist schreibgeschützt (Windows 7 bzw Windows 8) Probleme beim Speichern des Lizenzcodes... 2 Ermitteln des Word-Start-Up-Ordners... 3.Office Methode... 3 Microsoft-Methode
MehrBANKETTprofi Telefonschnittstelle
BANKETTprofi Telefonschnittstelle Aufbau der BANKETTprofi Telefonschnittstelle BANKETTprofi 800 Anwendung Im BANKETTprofi wird eine Rufnummer angewählt BANKETTprofi TAPI-Plugin Dieser Befehl wird vom TAPI-Plugin
MehrObjectBridge Java Edition
ObjectBridge Java Edition Als Bestandteil von SCORE Integration Suite stellt ObjectBridge Java Edition eine Verbindung von einem objektorientierten Java-Client zu einer fast beliebigen Server-Komponente
MehrProgrammierung für Mathematik (HS13)
software evolution & architecture lab Programmierung für Mathematik (HS13) Übung 5 1 Aufgabe: Eclipse IDE 1.1 Lernziele 1. Die Entwicklungsumgebung Eclipse einrichten. 2. Eclipse kennen lernen und mit
MehrOSEK-OS. Oliver Botschkowski. oliver.botschkowski@udo.edu. PG AutoLab Seminarwochenende 21.-23. Oktober 2007. AutoLab
OSEK-OS Oliver Botschkowski oliver.botschkowski@udo.edu PG Seminarwochenende 21.-23. Oktober 2007 1 Überblick Einleitung Motivation Ziele Vorteile Einführung in OSEK-OS Architektur Task Management Interrupt
MehrGerät zur Leistungssteuerung von PV-Anlagen POWER REDUCER BOX
Gerät zur Leistungssteuerung von PV-Anlagen POWER REDUCER BOX Inbetriebnahmecheckliste Diese Checkliste unterstützt Sie bei der Inbetriebnahme der Power Reducer Box ab Firmware-Version 1.7.0 in einem lokalen
MehrKlausur in Programmieren
Studiengang Sensorik/Sensorsystemtechnik Note / normierte Punkte Klausur in Programmieren Wintersemester 2010/11, 17. Februar 2011 Dauer: 1,5h Hilfsmittel: Keine (Wörterbücher sind auf Nachfrage erlaubt)
MehrImport und Export von Übergängern
Import und Export von Übergängern SibankPLUS bietet Ihnen eine komfortable Schnittstelle, um den Wechsel der Schüler nach der Stufe 4 von der Grundschule auf eine weiterführende Schule zu verarbeiten.
MehrMÖGLICHKEITEN UND GRENZEN IN DER DYNAMISCHEN CODEANALYSE VON C++ SOFTWARE. Von Matthias Neumann
MÖGLICHKEITEN UND GRENZEN IN DER DYNAMISCHEN CODEANALYSE VON C++ SOFTWARE Von Matthias Neumann 19.01.2015 2/35 Inhaltsangabe Einleitung Ausprägungen der dynamischen Codeanalyse Debugging Logging Testing
MehrName: ES2 Klausur Thema: ARM Name: Punkte: Note:
Name: Punkte: Note: Hinweise für das Lösen der Aufgaben: Zeit: 75 min. Name nicht vergessen! Geben Sie alle Blätter ab. Die Reihenfolge der Aufgaben ist unabhängig vom Schwierigkeitsgrad. Erlaubte Hilfsmittel
MehrPython Programmierung. Dipl.-Ing.(FH) Volker Schepper
Python Programmierung String Operationen i = 25 text1 = "Ich bin " text2 = " Jahre alt" print (text1 + str(i) + text2) print ("ich bin", i, "Jahre alt") print ("ich bin %s Jahre alt" % i) >>> Ich bin 25
MehrAnleitung zum Prüfen von WebDAV
Brainloop Secure Dataroom Version 8.20 Copyright Brainloop AG, 2004-2014. Alle Rechte vorbehalten. Sämtliche verwendeten Markennamen und Markenzeichen sind Eigentum der jeweiligen Markeninhaber. Inhaltsverzeichnis
MehrDokumentation. Black- und Whitelists. Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser
Dokumentation Black- und Whitelists Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser Inhalt INHALT 1 Kategorie Black- und Whitelists... 2 1.1 Was sind Black- und Whitelists?...
Mehr<mail@carstengrohmann.de>
Security Enhanced Linux Eine Einführung Tom Vogt Carsten Grohmann Überblick Was ist SELinux? Erweiterung des Kernels Was bietet SELinux? Kapslung von Programmen
MehrNetzwerk Management Potentielle Systemausfälle bereiten Ihnen Sorgen?
Hofmann PC-Systeme Potentielle Systemausfälle bereiten Ihnen Sorgen? Ist Ihre Datensicherung wirklich zuverlässig? Funktioniert Ihr Virenschutz einwandfrei? Sind Ihre Server noch ausreichend ausgestattet?
MehrZugriff auf die Modul-EEPROMs
MAX-P- und P-Bibliotheken EEPROM-Zugriff 1 Zugriff auf die Modul-EEPROMs Jedes X-Bus-Modul verfügt über ein EEPROM, in dem modulspezifische Daten gespeichert werden. Neben einigen Bereichen, die vom Betriebssystem
MehrÜbung 1 mit C# 6.0 MATTHIAS RONCORONI
Übung 1 mit C# 6.0 MATTHIAS RONCORONI Inhalt 2 1. Überblick über C# 2. Lösung der Übung 1 3. Code 4. Demo C# allgemein 3 aktuell: C# 6.0 mit.net-framework 4.6: Multiparadigmatisch (Strukturiert, Objektorientiert,
MehrUP4DAR HOWTO: Firmware-Update via RS232- Schnittstelle
UP4DAR HOWTO: Firmware-Update via RS232- Schnittstelle Allgemeine Informationen Homepage: http://www.up4dar.de/ Mailingliste: http://groups.yahoo.com/group/up4dar GitHub Repository: https://github.com/dl1bff
MehrProgrammieren für Ingenieure Sommer 2015. Ein Rechner. Rechner sind überall. Gerät, das mittels programmierbarer Rechenvorschriften Daten verarbeitet.
Programmieren für Ingenieure Sommer 2015 Andreas Zeller, Universität des Saarlandes Ein Rechner Gerät, das mittels programmierbarer Rechenvorschriften Daten verarbeitet. Rechner sind überall Ihr Rechner
MehrHamnet Einstieg: Technik und Konfiguration des eigenen Zugangs
Amateurfunktagung München 12./13. März 2016 Hamnet Einstieg: Technik und Konfiguration des eigenen Zugangs Thomas Emig DL7TOM Agenda Netzwerke Grundlagen IP Adressen Netzmaske Standartgateway NAT DHCP
MehrProblemstellung. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 24: Reflection 1. IDE und automatische Tests.
Universität Osnabrück 1 Problemstellung 3 - Objektorientierte Programmierung in Java Vorlesung 24: Reflection 1 SS 2006 Prof. Dr. Frank M. Thiesing, FH Osnabrück Um ein Objekt anzulegen, eine seiner Methoden
MehrWindows CE. Process Control and Robotics. Fabian Garagnon
Windows CE Process Control and Robotics Fabian Garagnon 14.01.2009 Agenda 3 Geschichte & Timeline Echtzeit & Multithreading Architektur Memory Management & Context Switch Entwicklung unter CE Interrupts
MehrFremdwährungen in Buchungen erfassen
Fremdwährungen in Buchungen erfassen Bereich: FIBU - Info für Anwender Nr. 1163 Inhaltsverzeichnis 1. Ziel 2. Vorgehensweisen 2.1. Buchung in Fremdwährung erfassen 2.2. Konto in Fremdwährung führen 3.
MehrACT50 SOFTWARE. Auslese- und Parametrierungssoftware
s 2 887 SOFTWARE Auslese- und Parametrierungssoftware Mit der -Software können Heizkostenverteiler der Gerätegeneration 5 (WHE5..) parametriert und ausgelesen werden. Die Software dient zudem zur Diagnose
MehrRouting im Internet Wie findet ein IP Paket den Weg zum Zielrechner?
Wie findet ein IP Paket den Weg zum Zielrechner? Bildung von Subnetzen, welche über miteinander verbunden sind. Innerhalb einer Collision Domain (eigenes Subnet): Rechner startet eine ARP (Address Resolution
MehrDelegatesund Ereignisse
Delegatesund Ereignisse «Delegierter» Methoden Schablone Funktionszeiger Dr. Beatrice Amrhein Überblick Definition eines Delegat Einfache Delegate Beispiele von Delegat-Anwendungen Definition eines Ereignisses
MehrSecure Coding & Live Hacking von Webapplikationen. Conect Informunity 8.3.2011
Secure Coding & Live Hacking von Webapplikationen Conect Informunity 8.3.2011 Dr. Ulrich Bayer Security Research Sicherheitsforschung GmbH Motivation Datendiebstahl über (Web)-Applikationen passiert täglich
MehrWhite Paper. Embedded Treiberframework. Einführung
Embedded Treiberframework Einführung White Paper Dieses White Paper beschreibt die Architektur einer Laufzeitumgebung für Gerätetreiber im embedded Umfeld. Dieses Treiberframework ist dabei auf jede embedded
MehrÜbung zu Grundlagen der Betriebssysteme. 13. Übung 22.01.2012
Übung zu Grundlagen der Betriebssysteme 13. Übung 22.01.2012 Aufgabe 1 Fragmentierung Erläutern Sie den Unterschied zwischen interner und externer Fragmentierung! Als interne Fragmentierung oder Verschnitt
MehrHerzlich Willkommen. Roland Kistler. Tel. +49 (89) 242 39 90 17. Sales Engineer. r.kistler@online-usv.de. Folie 1
Herzlich Willkommen Roland Kistler Sales Engineer Tel. +49 (89) 242 39 90 17 E-Mail r.kistler@online-usv.de Folie 1 Datenanbindung eines NAS an eine USV-Anlage Folie 2 Testumgebung NAS mit Linux OS BUFFALO
Mehr