Toasterkit - A NetBSD Rootkit. Anthony Martinez Thomas Bowen
|
|
|
- Samantha Lucas
- 9 years ago
- Views:
Transcription
1 Toasterkit - A NetBSD Rootkit Anthony Martinez Thomas Bowen
2 Toasterkit - A NetBSD Rootkit 1. Who we are 2. What is NetBSD? Why NetBSD? 3. Rootkits on NetBSD 4. Architectural Overview 5. Our contributions 6. Demo 7. Protection 8. Prevention
3 Who we are - Anthony Martinez Anthony is a system administrator for the New Mexico Institute of Mining and Technology s Computer Center, as well as an undergraduate Computer Science student at the university. He originally proposed the project that evolved into Toasterkit.
4 Who we are - Thomas Bowen Thomas is a system administrator for the New Mexico Institute of Mining and Technology s Computer Center. He is also enrolled in the Computer Science program with emphasis in Information Assurance.
5 Why NetBSD? NetBSD is a popular operating system for embedded systems. It is also extremely source-portable, meaning that when written properly, anything targeting the kernel is equally so. This way, the rootkit can work on any NetBSD port! Additionally, NetBSD is something of a research tool new ideas such as Veriexec and the kauth framework a are being worked on in NetBSD, and nobody (else) is targeting them. a Which originated in Mac OS X.
6 History of Rootkits on NetBSD Chkrootkit hasn t been updated since NetBSD 1.6. We re at 4.0, with 5 soon to be released. If there are any rootkits targeting recent versions of NetBSD, none of them appear to be public.
7 Overview of NetBSD Architecture Portable across hardware The slogan: Of course it runs NetBSD. Excellent support for cross-building. Architecture of code All of the architecture-dependent pieces are abstracted behind common functions; we don t have to worry about byte order, memory-manager specifics, etc. Loadable Kernel Modules (LKM) Not commonly used, but are enabled by default. It also allows code to infiltrate the kernel ex post facto; security-conscious administrators might disable this. Modules can add syscalls, sysctl nodes, executable formats, filesystem drivers, etc.
8 Overview of NetBSD Architecture Process security (kauth) The kauth framework acts as a gatekeeper between the kernel s own routines, and is designed to be more fine-grained than the previous UNIX superuser approach of all-or-nothing. The kauth system is used in the construction of other security models. Security models NetBSD supports custom security models. The default model, bsd44, is the standard BSD securelevel and superuser scheme. Also documented in the manual page for secmodel is a sample module allowing users with a uid below 1000 a to bind to the normally-reserved port range below a This range is generally used for system daemon accounts
9 What we ve done and how we ve done it Elevated privileges within the kauth framework. Made processes hidden via direct kernel object manipulation Portably removed write-protection from kernel memory areas; required for modifying some kernel tables. Hooked sysctl and ioctl functions in order to hide sockets and modules.
10 Code Skeleton NetBSD includes example code for kernel modules in /usr/src/sys/lkm/{misc,syscall}/example, and several fully-featured modules in /usr/src/sys/lkm. The sample modules do very little, but provide a skeleton to build other modules on. Specifically, the misc example, originally intended to show how a system call is inserted by hand, can be modified to hook a system call. A sample Makefile is also included, which is simply a call into the already-existing NetBSD build process.
11 multiprocessor safe. System Calls, hooking System calls are exposed, among other ways, via a global sysent array, though accessing this array is not the standard way of placing a system call. Each element of sysent[] is of type struct sysent, containing information for the userspace number of arguments, size of arguments, flags a, and the function to be called. We can modify existing behavior by changing the function pointer (sysent[n].sy_call) to one of our own design, if done carefully enough. All system calls have a uniform prototype for use in the kernel, and access any userspace arguments indirectly. a As of NetBSD 4.0, the only flag is whether or not the syscall is
12 Building, loading, using an LKM We use two types of loadable modules: 1. misc modules, which provide no automatic initialization 2. syscall modules, which automatically find the next unused system call number and insert themselves there. The NetBSD build system provides Make targets for loading, unloading, and building the module, no matter what its type. The module system is controlled by ioctl commands on /dev/lkm. This comes into play later, when we are hiding modules.
13 Privilege Escalation with Kauth The first module is relatively simple. It adds a system call that gives the user escalated privileges. Since NetBSD uses kauth, however, we can t just set the process s User ID to 0 (root) and call it done. Instead, we need to operate within kauth s bounds. The interface is documented in the manual pages, and we use the kauth_cred_dup function on the credentials of process #1 init. Since init shouldn t be running under any restrictions, considering its responsibilities, we considered it a fair process from whom to steal credentials.
14 Memory protection woes NetBSD requires that a CPU support memory management. Some parts of kernel space are protected against memory writes. This frustrated our immediate efforts to hook functions that weren t designed to be hooked. In general, memory pages can be marked as any combination of readable, writable, and executable. Low-level details are machine-dependent Thankfully, NetBSD provides us with uvm, a virtual-memory system designed at WUSTL, which abstracts memory management. Documented in the manual page for uvm is a function called uvm_map_protect, but calling it has no effect on kernel pages.
15 Memory Unprotection Removal of write-protection is required to modify certain parts of kernel memory: Character device tables, specifically lkm_cdevsw, are protected against writes. The sysctl tree is similarly marked read-only. Removing this type of write-protection should be done generically so as to maintain cross-platform compatibility: we can t go mucking around in the page tables ourselves. It also turns out that this work has already been done for us: Hidden underneath a #ifdef KGDB in uvm_glue.c, there is a function called uvm_chgkprot. It does what we need, so we copied it.
16 Hiding modules Modules are easily visible by means of modstat without some way to hide this list, a rootkit is very obvious. modstat and friends operate by way of /dev/lkm, making ioctl calls to load, unload, and request the status of modules. Some way is needed to hook only these ioctl operations, since hooking the actual system call would be far too broad. The functions for device nodes are stored in struct cdevsw variables corresponding to each device: the one for /dev/lkm is named lkm_cdevsw. One of the slots in the structure is the responsible function for ioctl. Inserting a hook function, which returns does not exist whenever the module s name begins with rootkit, only requires unprotecting the memory.
17 Sysctl sysctl is a tree structure originally from BSD, which was designed to allow an administrator to modify system parameters on-the-fly (without rebuilding the kernel), and is still used for that, but is now also used to report system information. Each node in the tree can either contain a value for the corresponding key or a pointer to a helper function that is to handle processing of that particular branch of the sysctl tree. Node entries are write protected and modification of helper functions is difficult using the documented (sysctl(9)) API.
18 Sysctl - Hiding network sockets Our solution is to: 1. Scan the sysctl tree, getting to the level above where the function is to be found (using sysctl_locate). 2. Once the helper function node we want to modify is found, unprotect the memory 3. Insert our own hook function, based on the original The user utility netstat accesses open port data via a sysctl helper function. Overriding this function allows us to hide open network ports.
19 Process hiding Hiding processes is accomplished by way of module implementing a system call that takes the name of a process to hide, and directly removes it from the allproc global kernel list, as well as a few other lists. This doesn t prevent it from getting scheduled and running, since the NetBSD scheduler doesn t operate on processes, instead working at thread granularity. This type of attack is referred to as direct kernel object manipulation.
20 Demo
21 Protection - Detecting hooks Using a friendly loadable module, compare function pointer in tables with address of actual function. System call hooks Check sysent table against the addresses of the expected functions; see /usr/src/sys/kern/init_sysent.c. sysctl and ioctl hooks Check specific helper function nodes. A full sweep is a bit more difficult because there is no single source for the correct functions.
22 Detecting other stuff Detecting kauth We don t think there s a viable solution to this. There are many occasions where kauth_cred_dup is appropriate and correct, so emitting a warning each time it s used would just be noise. Detecting unprotection Again, no easy detection. There isn t a standard utility to display the kernel s memory mapping, but perhaps pmap(1) can be extended to do so.
23 Prevention The easiest way to prevent against attacks via loadable modules is to rebuild your kernel without options LKM enabled. Loadable modules are not frequently used in NetBSD, but if your system does require one, this might not be a usable solution. Another, though more intrusive, suggestion is to use security levels. Once the system has gone multi-user, kernels compiled without options INSECURE apply a variety of restrictions, including that kernel modules cannot be loaded. Unfortunately, common architectures such as i386/amd64, and mac68k/macppc, default to INSECURE. This also doesn t prevent someone sufficiently clever from loading modules before the securelevel gets raised.
24 Questions?
25 References Our primary reference text for this project was Designing BSD Rootkits, by Joseph Kong. Other than that, the NetBSD source code was an excellent asset, as well as being well-documented and clear.
Virtual Private Systems for FreeBSD
Virtual Private Systems for FreeBSD Klaus P. Ohrhallinger 06. June 2010 Abstract Virtual Private Systems for FreeBSD (VPS) is a novel virtualization implementation which is based on the operating system
CS 377: Operating Systems. Outline. A review of what you ve learned, and how it applies to a real operating system. Lecture 25 - Linux Case Study
CS 377: Operating Systems Lecture 25 - Linux Case Study Guest Lecturer: Tim Wood Outline Linux History Design Principles System Overview Process Scheduling Memory Management File Systems A review of what
File Management. Chapter 12
Chapter 12 File Management File is the basic element of most of the applications, since the input to an application, as well as its output, is usually a file. They also typically outlive the execution
Safety measures in Linux
S a f e t y m e a s u r e s i n L i n u x Safety measures in Linux Krzysztof Lichota [email protected] A g e n d a Standard Unix security measures: permissions, capabilities, ACLs, chroot Linux kernel
Survey of Filesystems for Embedded Linux. Presented by Gene Sally CELF
Survey of Filesystems for Embedded Linux Presented by Gene Sally CELF Presentation Filesystems In Summary What is a filesystem Kernel and User space filesystems Picking a root filesystem Filesystem Round-up
An Implementation Of Multiprocessor Linux
An Implementation Of Multiprocessor Linux This document describes the implementation of a simple SMP Linux kernel extension and how to use this to develop SMP Linux kernels for architectures other than
Analysis of the Linux Audit System 1
Analysis of the Linux Audit System 1 Authors Bruno Morisson, MSc (Royal Holloway, 2014) Stephen Wolthusen, ISG, Royal Holloway Overview Audit mechanisms on an operating system (OS) record relevant system
Capability-Based Access Control
Lecture Notes (Syracuse University) Capability: 1 Capability-Based Access Control 1 An Analogy: Bank Analogy We would like to use an example to illustrate the need for capabilities. In the following bank
Linux Kernel Architecture
Linux Kernel Architecture Amir Hossein Payberah [email protected] Contents What is Kernel? Kernel Architecture Overview User Space Kernel Space Kernel Functional Overview File System Process Management
Traditional Rootkits Lrk4 & KNARK
Traditional Rootkits Lrk4 & KNARK Based on a paper by John Levine & Julian Grizzard http://users.ece.gatech.edu/~owen/research/conference%20publications/rookit_southeastcon2003.pdf ECE 4883 Internetwork
Automating Linux Malware Analysis Using Limon Sandbox Monnappa K A [email protected]
Automating Linux Malware Analysis Using Limon Sandbox Monnappa K A [email protected] A number of devices are running Linux due to its flexibility and open source nature. This has made Linux platform
Linux Driver Devices. Why, When, Which, How?
Bertrand Mermet Sylvain Ract Linux Driver Devices. Why, When, Which, How? Since its creation in the early 1990 s Linux has been installed on millions of computers or embedded systems. These systems may
Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture
Last Class: OS and Computer Architecture System bus Network card CPU, memory, I/O devices, network card, system bus Lecture 3, page 1 Last Class: OS and Computer Architecture OS Service Protection Interrupts
Contents III: Contents II: Contents: Rule Set Based Access Control (RSBAC) 4.2 Model Specifics 5.2 AUTH
Rule Set Based Access Control (RSBAC) Linux Kernel Security Extension Tutorial Amon Ott Contents: 1 Motivation: Why We Need Better Security in the Linux Kernel 2 Overview of RSBAC 3 How
FreeBSD Developer Summit TrustedBSD: Audit + priv(9)
FreeBSD Developer Summit TrustedBSD: Audit + priv(9) Robert Watson FreeBSD Project Computer Laboratory University of Cambridge TrustedBSD Audit Quick audit tutorial Adding audit support to new kernel features
Porting Lustre to Operating Systems other than Linux. Ken Hornstein US Naval Research Laboratory April 16, 2010
Porting Lustre to Operating Systems other than Linux Ken Hornstein US Naval Research Laboratory April 16, 2010 Motivation We do a lot of data visualization on Lustre data, and would like to do that on
ADVANCED MAC OS X ROOTKITS
ADVANCED MAC OS X ROOTKITS DINO A. DAI ZOVI [email protected] Abstract. The Mac OS X kernel (xnu) is a hybrid BSD and Mach kernel. While Unix-oriented rootkit techniques are pretty well known, Mach-based
Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture
Last Class: OS and Computer Architecture System bus Network card CPU, memory, I/O devices, network card, system bus Lecture 3, page 1 Last Class: OS and Computer Architecture OS Service Protection Interrupts
Introduction. What is an Operating System?
Introduction What is an Operating System? 1 What is an Operating System? 2 Why is an Operating System Needed? 3 How Did They Develop? Historical Approach Affect of Architecture 4 Efficient Utilization
Worms, Trojan Horses and Root Kits
Worms, Trojan Horses and Root Kits Worms A worm is a type of Virus that is capable of spreading and replicating itself autonomously over the internet. Famous Worms Morris Internet worm (1988) Currently:
How do Users and Processes interact with the Operating System? Services for Processes. OS Structure with Services. Services for the OS Itself
How do Users and Processes interact with the Operating System? Users interact indirectly through a collection of system programs that make up the operating system interface. The interface could be: A GUI,
NetSpective Logon Agent Guide for NetAuditor
NetSpective Logon Agent Guide for NetAuditor The NetSpective Logon Agent The NetSpective Logon Agent is a simple application that runs on client machines on your network to inform NetSpective (and/or NetAuditor)
Research and Design of Universal and Open Software Development Platform for Digital Home
Research and Design of Universal and Open Software Development Platform for Digital Home CaiFeng Cao School of Computer Wuyi University, Jiangmen 529020, China [email protected] Abstract. With the development
Practical Mac OS X Insecurity. Security Concepts, Problems and Exploits on your Mac
Practical Mac OS X Insecurity Security Concepts, Problems and Exploits on your Mac Who am I? Student of physics, mathematics and astronomy in Bonn Mac user since 1995 I love Macs Mac evangelist Intentions
An overwhelming majority of IaaS clouds leverage virtualization for their foundation.
1 2 3 An overwhelming majority of IaaS clouds leverage virtualization for their foundation. 4 With the use of virtualization comes the use of a hypervisor. Normally, the hypervisor simply provisions resources
Objectives. Chapter 2: Operating-System Structures. Operating System Services (Cont.) Operating System Services. Operating System Services (Cont.
Objectives To describe the services an operating system provides to users, processes, and other systems To discuss the various ways of structuring an operating system Chapter 2: Operating-System Structures
Operating Systems 4 th Class
Operating Systems 4 th Class Lecture 1 Operating Systems Operating systems are essential part of any computer system. Therefore, a course in operating systems is an essential part of any computer science
Red Hat Linux Internals
Red Hat Linux Internals Learn how the Linux kernel functions and start developing modules. Red Hat Linux internals teaches you all the fundamental requirements necessary to understand and start developing
VICE Catch the hookers! (Plus new rootkit techniques) Jamie Butler Greg Hoglund
VICE Catch the hookers! (Plus new rootkit techniques) Jamie Butler Greg Hoglund Agenda Introduction to Rootkits Where to Hook VICE detection Direct Kernel Object Manipulation (DKOM) No hooking required!
Rule Set Based Access Control (RSBAC)
Rule Set Based Access Control (RSBAC) Linux Kernel Security Extension Short Overview for OpenWeekend 2002 in Prague Amon Ott Contents: 1 Introduction 1.1 History 1.2 Motivation 1.3 Design
Operating Systems. Notice that, before you can run programs that you write in JavaScript, you need to jump through a few hoops first
Operating Systems Notice that, before you can run programs that you write in JavaScript, you need to jump through a few hoops first JavaScript interpreter Web browser menu / icon / dock??? login??? CPU,
1 Posix API vs Windows API
1 Posix API vs Windows API 1.1 File I/O Using the Posix API, to open a file, you use open(filename, flags, more optional flags). If the O CREAT flag is passed, the file will be created if it doesnt exist.
Comparing Virtualization Technologies
CHAPTER 2 Comparing Virtualization Technologies With this chapter, we begin our exploration of several popular virtualization strategies and explain how each works. The aim is to bring you the operational
Linux Kernel Rootkit : Virtual Terminal Key Logger
Linux Kernel Rootkit : Virtual Terminal Key Logger Jeena Kleenankandy Roll No. P140066CS Depatment of Computer Science and Engineering National Institute of Technology Calicut jeena [email protected]
Chapter 3 Operating-System Structures
Contents 1. Introduction 2. Computer-System Structures 3. Operating-System Structures 4. Processes 5. Threads 6. CPU Scheduling 7. Process Synchronization 8. Deadlocks 9. Memory Management 10. Virtual
To Java SE 8, and Beyond (Plan B)
11-12-13 To Java SE 8, and Beyond (Plan B) Francisco Morero Peyrona EMEA Java Community Leader 8 9...2012 2020? Priorities for the Java Platforms Grow Developer Base Grow Adoption
Chapter 3: Operating-System Structures. System Components Operating System Services System Calls System Programs System Structure Virtual Machines
Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines Operating System Concepts 3.1 Common System Components
Linux Distributed Security Module 1
Linux Distributed Security Module 1 By Miroslaw Zakrzewski and Ibrahim Haddad This article describes the implementation of Mandatory Access Control through a Linux kernel module that is targeted for Linux
CS 416: Opera-ng Systems Design
Question 1 Explain the major difference between a file system that supports journaling (e.g., Linux ext4) versus a log-structured file system (e.g., YAFFS2). Operating Systems 2015 Exam 3 Review Paul Krzyzanowski
Xcode Project Management Guide. (Legacy)
Xcode Project Management Guide (Legacy) Contents Introduction 10 Organization of This Document 10 See Also 11 Part I: Project Organization 12 Overview of an Xcode Project 13 Components of an Xcode Project
Features. The Samhain HIDS. Overview of available features. Rainer Wichmann
Overview of available features November 1, 2011 POSIX (e.g. Linux, *BSD, Solaris 2.x, AIX 5.x, HP-UX 11, and Mac OS X. Windows 2000 / WindowsXP with POSIX emulation (e.g. Cygwin). Please note that this
Unix/Linux Forensics 1
Unix/Linux Forensics 1 Simple Linux Commands date display the date ls list the files in the current directory more display files one screen at a time cat display the contents of a file wc displays lines,
CS161: Operating Systems
CS161: Operating Systems Matt Welsh [email protected] Lecture 2: OS Structure and System Calls February 6, 2007 1 Lecture Overview Protection Boundaries and Privilege Levels What makes the kernel different
HONEYD (OPEN SOURCE HONEYPOT SOFTWARE)
HONEYD (OPEN SOURCE HONEYPOT SOFTWARE) Author: Avinash Singh Avinash Singh is a Technical Evangelist currently worksing at Appin Technology Lab, Noida. Educational Qualification: B.Tech from Punjab Technical
Introduction to Operating Systems. Perspective of the Computer. System Software. Indiana University Chen Yu
Introduction to Operating Systems Indiana University Chen Yu Perspective of the Computer System Software A general piece of software with common functionalities that support many applications. Example:
Dynamic VM Monitoring using Hypervisor Probes
Dynamic VM Monitoring using Hypervisor Probes Z. J. Estrada, C. Pham, F. Deng, L. Yan, Z. Kalbarczyk, R. K. Iyer European Dependable Computing Conference 2015-09-09 1 Dynamic VM Monitoring Goal On-demand
Kernel comparison of OpenSolaris, Windows Vista and. Linux 2.6
Kernel comparison of OpenSolaris, Windows Vista and Linux 2.6 The idea of writing this paper is evoked by Max Bruning's view on Solaris, BSD and Linux. The comparison of advantages and disadvantages among
Hacking Database for Owning your Data
Hacking Database for Owning your Data 1 Introduction By Abdulaziz Alrasheed & Xiuwei Yi Stealing data is becoming a major threat. In 2012 alone, 500 fortune companies were compromised causing lots of money
Advanced Mac OS X Rootkits. Dino Dai Zovi Chief Scientist Endgame Systems
Advanced Mac OS X Rootkits Dino Dai Zovi Chief Scientist Endgame Systems Overview Mac OS X and Mach Why use Mach for rootkits? User mode Mach rootkit techniques Kernel Mach rootkit techniques 2 Why Mach
Review from last time. CS 537 Lecture 3 OS Structure. OS structure. What you should learn from this lecture
Review from last time CS 537 Lecture 3 OS Structure What HW structures are used by the OS? What is a system call? Michael Swift Remzi Arpaci-Dussea, Michael Swift 1 Remzi Arpaci-Dussea, Michael Swift 2
Chapter 12 File Management
Operating Systems: Internals and Design Principles, 6/E William Stallings Chapter 12 File Management Dave Bremer Otago Polytechnic, N.Z. 2008, Prentice Hall Roadmap Overview File organisation and Access
The Case for SE Android. Stephen Smalley [email protected] Trust Mechanisms (R2X) National Security Agency
The Case for SE Android Stephen Smalley [email protected] Trust Mechanisms (R2X) National Security Agency 1 Android: What is it? Linux-based software stack for mobile devices. Very divergent from typical
Chapter 12 File Management. Roadmap
Operating Systems: Internals and Design Principles, 6/E William Stallings Chapter 12 File Management Dave Bremer Otago Polytechnic, N.Z. 2008, Prentice Hall Overview Roadmap File organisation and Access
Performance Counter. Non-Uniform Memory Access Seminar Karsten Tausche 2014-12-10
Performance Counter Non-Uniform Memory Access Seminar Karsten Tausche 2014-12-10 Performance Counter Hardware Unit for event measurements Performance Monitoring Unit (PMU) Originally for CPU-Debugging
TELE 301 Lecture 7: Linux/Unix file
Overview Last Lecture Scripting This Lecture Linux/Unix file system Next Lecture System installation Sources Installation and Getting Started Guide Linux System Administrators Guide Chapter 6 in Principles
Example of Standard API
16 Example of Standard API System Call Implementation Typically, a number associated with each system call System call interface maintains a table indexed according to these numbers The system call interface
CPS221 Lecture: Operating System Structure; Virtual Machines
Objectives CPS221 Lecture: Operating System Structure; Virtual Machines 1. To discuss various ways of structuring the operating system proper 2. To discuss virtual machines Materials: 1. Projectable of
Audit Trail Administration
Audit Trail Administration 0890431-030 August 2003 Copyright 2003 by Concurrent Computer Corporation. All rights reserved. This publication or any part thereof is intended for use with Concurrent Computer
Operating System Structures
COP 4610: Introduction to Operating Systems (Spring 2015) Operating System Structures Zhi Wang Florida State University Content Operating system services User interface System calls System programs Operating
UNISOL SysAdmin. SysAdmin helps systems administrators manage their UNIX systems and networks more effectively.
1. UNISOL SysAdmin Overview SysAdmin helps systems administrators manage their UNIX systems and networks more effectively. SysAdmin is a comprehensive system administration package which provides a secure
Networking Operating Systems (CO32010)
Networking Operating Systems (CO32010) 2. Processes and scheduling 1. Operating Systems 1.1 NOS definition and units 1.2 Computer 7. Encryption Systems 1.3 Multitasking and Threading 1.4 Exercises 6. Routers
GPFS and Remote Shell
GPFS and Remote Shell Yuri Volobuev GPFS Development Ver. 1.1, January 2015. Abstract The use of a remote shell command (e.g. ssh) by GPFS is one of the most frequently misunderstood aspects of GPFS administration,
Embedded Programming in C/C++: Lesson-1: Programming Elements and Programming in C
Embedded Programming in C/C++: Lesson-1: Programming Elements and Programming in C 1 An essential part of any embedded system design Programming 2 Programming in Assembly or HLL Processor and memory-sensitive
etpu Host Interface by:
Freescale Semiconductor Application Note AN2821 Rev. 2, 08/2007 etpu Host Interface by: David Paterson Ming Li MCD Applications 1 Introduction This application note discusses the enhanced Time Processing
FAME Operating Systems
FAME Operating Systems 2012 David Picard contributors : Arnaud Revel, Mickaël Maillard [email protected] 1. Introduction A very simple computer Goals of an operating system Hardware management Task management
Using Chroot to Bring Linux Applications to Android
Using Chroot to Bring Linux Applications to Android Mike Anderson Chief Scientist The PTR Group, Inc. [email protected] Copyright 2013, The PTR Group, Inc. Why mix Android and Linux? Android under Linux
4D Plugin SDK v11. Another minor change, real values on 10 bytes is no longer supported.
4D Plugin SDK v11 4D Plugin API 4D Plugin API v11 is a major upgrade of 4D Plugin API. The two major modifications are that it is now fully Unicode compliant, and that it gives support to the new 4D pictures.
Kernel Types System Calls. Operating Systems. Autumn 2013 CS4023
Operating Systems Autumn 2013 Outline 1 2 Types of 2.4, SGG The OS Kernel The kernel is the central component of an OS It has complete control over everything that occurs in the system Kernel overview
Lab 0 (Setting up your Development Environment) Week 1
ECE155: Engineering Design with Embedded Systems Winter 2013 Lab 0 (Setting up your Development Environment) Week 1 Prepared by Kirill Morozov version 1.2 1 Objectives In this lab, you ll familiarize yourself
Creating a More Secure Device with Windows Embedded Compact 7. Douglas Boling Boling Consulting Inc.
Creating a More Secure Device with Windows Embedded Compact 7 Douglas Boling Boling Consulting Inc. About Douglas Boling Independent consultant specializing in Windows Mobile and Windows Embedded Compact
Pattern Insight Clone Detection
Pattern Insight Clone Detection TM The fastest, most effective way to discover all similar code segments What is Clone Detection? Pattern Insight Clone Detection is a powerful pattern discovery technology
How To Write A Windows Operating System (Windows) (For Linux) (Windows 2) (Programming) (Operating System) (Permanent) (Powerbook) (Unix) (Amd64) (Win2) (X
(Advanced Topics in) Operating Systems Winter Term 2009 / 2010 Jun.-Prof. Dr.-Ing. André Brinkmann [email protected] Universität Paderborn PC 1 Overview Overview of chapter 3: Case Studies 3.1 Windows Architecture.....3
I/O. Input/Output. Types of devices. Interface. Computer hardware
I/O Input/Output One of the functions of the OS, controlling the I/O devices Wide range in type and speed The OS is concerned with how the interface between the hardware and the user is made The goal in
accf_smtp: FreeBSD kernel protection measures against SMTP DDoS and DoS attacks
accf_smtp: FreeBSD kernel protection measures against SMTP DDoS and DoS attacks Martin Blapp Abstract: This paper is about a smtp accept filter [1] kernel module to protect mail gateways against overload-
The Linux Device File-System
The Linux Device File-System Richard Gooch EMC Corporation [email protected] Abstract 1 Introduction The Device File-System (devfs) provides a powerful new device management mechanism for Linux. Unlike
Lab 2 : Basic File Server. Introduction
Lab 2 : Basic File Server Introduction In this lab, you will start your file system implementation by getting the following FUSE operations to work: CREATE/MKNOD, LOOKUP, and READDIR SETATTR, WRITE and
Encryption Wrapper. on OSX
Encryption Wrapper on OSX Overview OSX Kernel What is an Encryption Wrapper? Project Implementation OSX s Origins and Design NeXTSTEP Legacy NextStep v1 NextStep v3.3 Mac OS X Jobs creates NeXT Apple acquisition
Development of complex KNX Devices
WEINZIERL ENGINEERING GmbH WEINZIERL ENGINEERING GMBH Jason Richards 84558 Tyrlaching GERMANY Phone +49 (0) 8623 / 987 98-03 Web: www.weinzierl.de Development of complex KNX Devices Abstract The KNX World
White Paper. Java Security. What You Need to Know, and How to Protect Yourself. 800.266.7798 www.inductiveautomation.com
White Paper Java Security What You Need to Know, and How to Protect Yourself Java Security: What You Need to Know, and How to Protect Yourself Ignition HMI, SCADA and MES software by Inductive Automation
Secure computing: SELinux
Secure computing: SELinux Michael Wikberg Helsinki University of Technology [email protected] Abstract Using mandatory access control greatly increases the security of an operating system. SELinux,
Operating System Components
Lecture Overview Operating system software introduction OS components OS services OS structure Operating Systems - April 24, 2001 Operating System Components Process management Memory management Secondary
CS222: Systems Programming
CS222: Systems Programming The Basics January 24, 2008 A Designated Center of Academic Excellence in Information Assurance Education by the National Security Agency Agenda Operating System Essentials Windows
Project No. 2: Process Scheduling in Linux Submission due: April 28, 2014, 11:59pm
Project No. 2: Process Scheduling in Linux Submission due: April 28, 2014, 11:59pm PURPOSE Getting familiar with the Linux kernel source code. Understanding process scheduling and how different parameters
sys socketcall: Network systems calls on Linux
sys socketcall: Network systems calls on Linux Daniel Noé April 9, 2008 The method used by Linux for system calls is explored in detail in Understanding the Linux Kernel. However, the book does not adequately
CSE331: Introduction to Networks and Security. Lecture 34 Fall 2006
CSE331: Introduction to Networks and Security Lecture 34 Fall 2006 Announcements Problem with Crypto.java Look for a new Crypto.java file later today Project 4 is due Dec. 8th at midnight. Homework 3 is
INSTALL NOTES Elements Environments Windows 95 Users
NEURON DATA INSTALL NOTES Elements Environments Windows 95 Users Modifying Environment Variables You must modify the environment variables of your system to be able to compile and run Elements Environment
Chapter 2 System Structures
Chapter 2 System Structures Operating-System Structures Goals: Provide a way to understand an operating systems Services Interface System Components The type of system desired is the basis for choices
The System Monitor Handbook. Chris Schlaeger John Tapsell Chris Schlaeger Tobias Koenig
Chris Schlaeger John Tapsell Chris Schlaeger Tobias Koenig 2 Contents 1 Introduction 6 2 Using System Monitor 7 2.1 Getting started........................................ 7 2.2 Process Table.........................................
White Paper BMC Remedy Action Request System Security
White Paper BMC Remedy Action Request System Security June 2008 www.bmc.com Contacting BMC Software You can access the BMC Software website at http://www.bmc.com. From this website, you can obtain information
System Structures. Services Interface Structure
System Structures Services Interface Structure Operating system services (1) Operating system services (2) Functions that are helpful to the user User interface Command line interpreter Batch interface
Cloud Computing. Up until now
Cloud Computing Lecture 11 Virtualization 2011-2012 Up until now Introduction. Definition of Cloud Computing Grid Computing Content Distribution Networks Map Reduce Cycle-Sharing 1 Process Virtual Machines
Incremental Backup Script. Jason Healy, Director of Networks and Systems
Incremental Backup Script Jason Healy, Director of Networks and Systems Last Updated Mar 18, 2008 2 Contents 1 Incremental Backup Script 5 1.1 Introduction.............................. 5 1.2 Design Issues.............................
Operating system Dr. Shroouq J.
3 OPERATING SYSTEM STRUCTURES An operating system provides the environment within which programs are executed. The design of a new operating system is a major task. The goals of the system must be well
