USB Undermining Security Barriers
|
|
|
- Sabina Walters
- 10 years ago
- Views:
Transcription
1 Andy Davis Research Director An NGS Secure Research Publication 4 August 2011 Copyright 2011 NGS Secure
2 Contents Introduction... 3 Background... 3 USB Primer... 3 The USB bus... 4 Endpoints... 5 Pipes... 5 Device Configurations... 5 Insertion of a USB device... 6 Previous Work... 8 Research... 9 USB vulnerability classes... 9 Stack overflows... 9 Heap and Integer overflows... 9 Null-pointer dereference Logic errors Phase One - Fuzzbox Phase Two Commercial test equipment Packet Master USB500 AG Phase Three - Frisbee Why the new approach is different What has been found so far Security Impact Endpoint protection software Why USB vulnerabilities are still prevalent Conclusion References Page 2 of 18
3 Introduction USB ports are everywhere, from laptops and phones to TVs and even microwave ovens. They provide a convenient, reasonably fast interconnect that consumers are familiar with. However, many users of the technology are completely unaware of the amount of interaction that takes place between a USB device and its host at the point of insertion. Just by plugging in a USB device you trigger a flurry of communication in which the capabilities of the device are explained to the host, all before any real device-specific data is exchanged. It is this communications interchange that has been the focus of this research. Although the concept of identifying and exploiting vulnerabilities in USB drivers is not new, the approach presented here is, as it provides the capability to test any USB platform or device (previous techniques have been either device or USB-host dependent). Although the approach is simple, its effectiveness has been clearly demonstrated by the identification of vulnerabilities in USB drivers of many of the wellknown operating systems. This paper will cover USB fundamentals, typical USB vulnerability classes and also discuss the real-world impact of exploiting USB vulnerabilities along with their implications for endpoint security products. Background USB Primer Before discussing USB vulnerabilities it is important that the reader has a basic understanding of the USB protocol and its usage. There are a number of protocol-specific terms that must be explained in order to understand USB and although there are many more technical details to USB, this section aims to provide a concise overview of the protocol focusing on information that will provide more clarity to the remainder of the paper. All the research performed to date has focused on USB v2.0 [1] the most commonly used at the time of publication. Other versions will only be mentioned briefly for comparison purposes. The primary aim of the USB interface was to develop a simple, flexible solution to the mixture of connection methods to the PC. Although USB v1.0 [2] was released in January 1996, the first widely used version of the protocol (v1.1) [3] was released in September 1998 and offered two different speeds: Low speed 1.5Mbps (keyboard, mouse etc.) Full speed 12Mbps (faster devices such as disk drives) The currently most popular version of the standard (v2.0) was then released in April 2000, which offered an additional higher speed capability: High speed 480Mbps (reputedly developed in response to FireWire) The most recent version (v3.0) [4], which was released in November 2008, offers an even higher speed and backward compatibility with v2.0: SuperSpeed 5Gbps (the version also offers lower power consumption) Page 3 of 18
4 The USB architecture is a tiered star topology (see Figure 1) with a single host controlling up to 127 slave devices (devices are officially called functions in USB terminology, however devices with more than one function are called composite devices). Devices can be plugged into hubs and hubs can be plugged into other hubs, however the maximum number of tiered hubs permitted by the protocol is six. Figure 1 The USB tiered star topology The host is considered to be the Master and therefore, all communications on the bus are initiated by the host. Furthermore, as all USB devices are treated by the host as slaves, so devices cannot communicate directly with other devices (except when using the USB On-The-Go protocol [5]). The USB bus When the host is transmitting a packet of data, it is sent to every device connected to an active port on a hub. It travels downwards via each hub, which in turn relays the packet to the next in the chain until it reaches all connected devices. However, the packet is only accepted by the device for which the packet is addressed. Page 4 of 18
5 Endpoints Each USB device has a number of endpoints, each of which is a source or sink of data. A device can have up to 16 OUT and 16 IN endpoints. OUT always means from host to device and IN always means from device to host. Endpoint 0 cannot be used for general communication, as it has been implemented purely for controlling the device. Pipes These are logical data connections between the host and endpoints. The device communicates using endpoints, but the client software communicates through pipes. There are a set of parameters associated with each pipe to describe capabilities such as allocated bandwidth, transfer type and data flow direction. Device Configurations The device contains a number of Descriptors (see Figure 2) which help to define the device s capabilities. A device can have more than one Configuration, though only one at a time and to change configuration the device must be reset. A device can have one or more Interface and each interface can have a number of Endpoints and represents a functional unit belonging to a particular class. Certain classes of device have class-specific descriptors, such as the HID (Human Interface Device) class. Figure 2 USB Configuration Descriptor Set Page 5 of 18
6 Insertion of a USB device When a USB device is inserted, a number of specific actions are performed which result in different software components processing data provided by either the host or device. Figure 3 summarises this process. Figure 3 Device insertion and enumeration process 1. The host first detects that a device has been inserted due to one of the data lines (if it s the D- data line then it is a Low speed device otherwise, the D+ line indicates the presence of a Full speed device) being pulled high by the 1.5k resistor at the device. 2. The host issues a RESET command to the device to ensure that it is in a known state. 3. The host issues a GET_DESCRIPTOR command for the Device descriptor to address The device sends the Device descriptor, which includes the maximum packet size defined for the control endpoint. 5. The host issues another RESET command and then a SET_ADDRESS command with an address >= 1 (all subsequent communication will use this address). 6. The host issues another GET_DESCRIPTOR command for the Device descriptor and the device replies with the Device Descriptor. 7. The host requests the Configuration descriptor, which includes the Interface and Endpoint descriptors (and in some instances other descriptors e.g. HID descriptor) to which the device replies. 8. The host requests String descriptors, which contain the list of supported string languages and various strings associated with the vendor name and product name of the device. 9. Sometimes the host may ask for some of the previously discussed information again, which is often the result of different drivers in the USB stack requesting the same information. Page 6 of 18
7 10. The host issues a SET_CONFIGURATION request and the device may now be used. 11. At this point class-specific descriptors may be requested from the device e.g. HID Report Descriptor 12. The host identifies which device driver to load based on the Vendor and Product ID in the Device descriptor. Class-specific communication is now performed between the host and the device. An example of a typical USB command packet sent from the host to a device is shown in Figure 4. Figure 4 A GET_DESCRIPTOR command to obtain the Device descriptor Examples of the type of information found in common USB descriptors are shown in Figures 5 to 8. Figure 5 Configuration descriptor Figure6 Interface descriptor Page 7 of 18
8 Figure 7 Device Descriptor Figure 8 Endpoint descriptor Previous Work Previous work in USB vulnerability discovery and exploitation has been done by a number of people, including: Rafael Dominguez Vega used a number of different approaches including USB over IP, QEMU and a microcontroller to discover Linux-based USB vulnerabilities in String descriptors [6] [7] David Dewey and Darrin Barrall used an SL811 USB controller to discover a heap overflow in Windows XP [8] Moritz Jodeit emulated USB devices in software and with a Netchip NET2280 peripheral controller [9] Tobias Mueller used virtualisation techniques with QEMU to identify USB vulnerabilities in a number of different operating systems [10] Jon Larimer investigated USB drive security and associated file system vulnerabilities in Windows and Linux [11] Page 8 of 18
9 Research The primary goal of the research was to develop a USB host and device independent black box security testing capability, as all of the publicly discussed attempts to perform runtime security testing of USB driver software have been in some way tied to a specific operating system. USB vulnerability classes Before deciding how to approach the emulation of USB devices and hosts, it made sense to look at what could actually be tested and the types of vulnerability class that may be identified. Stack overflows This class of vulnerability is becoming rarer these days. However, they are still being discovered. As can be seen in [12] and [13], lazy programming associated with the processing of String Descriptors resulted in the presence of exploitable stack overflows. As Figure 8 shows, each string descriptor has a blength field associated with the length of bstring, however, in both [12] and [13] a fixed length buffer, which was smaller than the maximum blength value (255) had been allocated into which the strings were copied. Figure 8 A typical String descriptor Heap and Integer overflows Scattered throughout the descriptors and class-specific data are length fields representing sizes of chunks of data that may result in drivers needing to dynamically allocate memory in which to store them; examples include: Each descriptor starts with a blength field, which represents the length of the descriptor Configuration Descriptor wtotallength Endpoint Descriptor wmaxpacketsize Image class: DeviceInfo - Capture Formats Supported Array Size Printer class: DeviceID - Device ID Length Any of these, plus many others could potentially result in an integer overflow, which in turn could trigger another vulnerability such as a heap overflow. Examples of publicly released USB-based heap overflows include: USB hub class configuration descriptor - Sony Playstation 3 [14] 0xA1,1 * USB control message Apple ipod Touch [15] * 0xA1 is the RequestType, 1 is the Request (see Figure 4 for an example USB device request) Page 9 of 18
10 Null-pointer dereference More often than not, null pointer dereference bugs cannot be exploited, however in some instances, such as the example below, data can be written to address zero and exploitation becomes possible. 0x21,2 USB control message Apple iphone and ipod Touch [16] Logic errors The HID report descriptor is a notoriously complicated structure and therefore, the parser for the Report descriptor represents a significant amount of code [17]. There is certainly scope for the presence of logic errors in this code. Once it had been established that there were plenty of potential fuzz test cases, all that was needed was a fuzzer. The initial attempts followed a similar approach to a number of other researchers using a microcontroller to emulate a USB device. Phase One - Fuzzbox The Fuzzbox approach was developed using an Arduino microcontroller. Figure 7 Fuzzbox -the Arduino-based USB fuzzer Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It's intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments [18] In other words, it s great for prototyping hardware e.g. pretending you re a USB device. Also, much of the hard work had already been done by others; a circuit had been designed to interface the Arduino to a USB host, acting as a HID device [19]: Page 10 of 18
11 Figure 9 A circuit to interface an Arduino microcontroller to a USB host Driver code had also been written to emulate a HID device [20]. What was missing was the application of this technology to security testing. With an understanding of the likely vulnerability classes to test for and the ability to insert arbitrary data into the USB device enumeration phase, additional Arduino-based code was developed to automate the fuzzing of USB host drivers on any platform. Fuzzbox was created and quickly started to discover bugs: OS X - (at time of publication these are being investigated by Apple) Windows XP a number of bugs were identified but nothing that appeared exploitable Windows 7 (three bugs, which at time of publication are being investigated by Microsoft) However, it soon became apparent that this approach had some pretty fundamental drawbacks. Firstly, new driver code would need to be discovered, adapted or written from scratch for each USB device class and secondly, the Arduino microcontroller would not be fast enough to emulate some of the higher speed devices. Therefore, a new approach was required one that was more flexible. Phase Two Commercial test equipment There are many commercially available (and some free, software-based) USB analysers, however only a very small number of these also allow USB traffic to also be generated. An analysis of the available devices at the time of the research revealed that the following USB analyser was the best fit for our requirements: Page 11 of 18
12 Packet Master USB500 AG The Packet Master device [21] has the following capabilities: Dedicated USB test equipment hardware USB capture and playback Can emulates any USB host or device (USB v1.1 or v2.0) Understands and analyses the different USB device classes Uses a scripting language to generate USB traffic Costs approx. $1400 (plus specific class analysis options) Limitations doesn t currently have a software API to control it The three important capabilities are the ability to play back captured USB traffic, generate traffic using a scripting language and emulate either a USB host or device. These capabilities, combined with an understanding of where potential USB vulnerabilities may exist formed a solid base from which the USB fuzzer could be developed. Phase Three - Frisbee Although there is a comprehensive Win32 GUI application (GraphicUSB) to control the device, the main limitation of the Packet Master is the lack of a software control API. Therefore, we needed to develop a different way to control it. The initial plan was to write the fuzzer using the USB scripting language provided with the device, however, it soon became clear that the language was not fully-featured enough to do this e.g. there is no concept of variables or of conditional loops. One issue with fuzzing USB that was discovered during Phase one was the speed limitations imposed by the protocol during the emulation of the device insertion and removal. In order to allow a host enough time to fully enumerate an inserted USB device, fuzz test cases could only be sent approximately every six seconds. Although frustrating, this limitation meant that the subsequent remote control technique developed for the Packet Master, which was itself quite slow, did not actually matter. It was decided that at least in the short-term, the easiest way to control the Packet Master was to inject Windows events into GraphicUSB, as there would only need to be limited interaction to perform the fuzzing. The Packet Master has the ability to create a Generator script (See Figure 11) for either a host or device, based on a previous capture (See Figure 10). As can be seen in Figure 11, the bytes highlighted are the contents of the Device descriptor displayed in Figured 9. This script is saved as a text file, then compiled and uploaded to the Packet Master via USB. An option within GraphicUSB will then execute Page 12 of 18
13 the script, replaying the traffic previously captured. Alternatively, scripts can be developed from scratch and executed. The design of the fuzzer would therefore be as follows: The USB traffic associated with the insertion of a device (for either a host or device of interest) would be captured and a generator script created. The Python-based fuzzing engine (Frisbee) would then iteratively modify the generator script with fuzz test cases developed based on an understanding of the USB protocol and likely potential vulnerability classes. For each test case Frisbee would open GraphicUSB with the generator script, inject the appropriate Windows events into the application using the Python SendKeys library [22] in order to compile the generator script, execute it and then exit the application. Although this somewhat clunky approach was quite slow, it could still be performed for each test case faster than the enumeration phase could be performed by a USB host. Basic instrumentation would be performed via ICMP ping packets sent to and received from the target, based on the premise that most of the bugs, when triggered would cause a Windows Bugcheck, Unix kernel panic or reboot to either a USB device or host. The fuzzer was successfully developed in Python and then used to identify bugs primarily in USB host implementations by capturing the traffic associated with a range of different classes of USB device and then fuzzing this traffic associated with USB enumeration. With respect to instrumentation, after using Frisbee for a while, it became apparent that in some circumstances the bug identified would crash part of the USB stack, but not the underlying operating system and hence the simple ICMP ping approach was considered inadequate. Therefore, it was updated to execute a known good generator script after each test case to establish if the USB stack on the target was still correctly functioning. Figure 10 A sample capture of USB traffic in GraphicUSB Page 13 of 18
14 Figure 11 A GraphicUSB generator script created from the capture in Figure 9 Why the new approach is different Because there is no reliance on any underlying operating system (apart from for control, which needs to be Windows-based to run GraphicUSB), the approach is USB host and device independent, which allows for complete black box testing of USB targets. However, the hardest part of fuzzing driver code will always be effective instrumentation and subsequent debugging, which obviously would need to be target-specific. What has been found so far Although many of the technical details associated with these bugs cannot be revealed, as they are still being investigated by the vendors, below is a list of bugs discovered by Frisbee in the first half of 2011: Multiple HID class memory corruptions in Windows 7 Hub class kernel stack overflow in Solaris 11 Express Printer class kernel stack overflow in Solaris 11 Express Multiple Image class integer overflows in Microsoft Xbox 360 Interface Descriptor memory corruption in OS X This therefore demonstrates that bugs are still present in the drivers of common operating systems, some of which are potentially exploitable, as can be seen below: Page 14 of 18
15 Windows 7 - HID class memory corruption #1 0: kd>!exploitable Exploitability Classification: PROBABLY_EXPLOITABLE Recommended Bug Title: Probably Exploitable - Data from Faulting Address controls subsequent Write Address starting at Unknown 0x Windows 7 - HID class memory corruption #2 0: kd>!exploitable Exploitability Classification: PROBABLY_EXPLOITABLE Recommended Bug Title: Probably Exploitable - Memory Read Access Violation on Block Data Move starting at nt!memcpy+0x This is a second chance read access violation in a kernel mode block data move, and is therefore classified as probably exploitable. Solaris 11 Express kernel stack overflow #1 Jan 27 13:36:59 solaris ^Mpanic[cpu1]/thread=xxxxxxxx: Jan 27 13:36:59 solaris genunix: [ID kern.notice] segkp_fault: accessing redzone Jan 27 13:36:59 solaris unix: [ID kern.notice] Jan 27 13:36:59 solaris genunix: [ID kern.notice] Solaris 11 Express kernel stack overflow #2 Jan 26 10:47:08 solaris genunix: [ID kern.notice] BAD TRAP: type=e (#pf Page fault) rp=xxxxxxxx addr=xxxxxxxx occurred in module "unix" due to an illegal access to a user address Jan 26 10:47:08 solaris unix: [ID kern.notice] Jan 26 10:47:08 solaris unix: [ID kern.notice] sched: Jan 26 10:47:08 solaris unix: [ID kern.notice] #pf Page fault Security Impact Many times in discussions about USB vulnerabilities with vendors they quote the standard line but if you have physical access to the machine then you already have full control yes, and no. Mobile devices have already been exploited using USB-based vulnerabilities to jailbreak them allowing for the unauthorised installation of software. Increasingly users are storing sensitive data in mobile-based apps, which could potentially be compromised on a jailbroken device. Agreed, with a PC, if there is no additional protection to the file system such as full disk encryption then yes, there are much easier ways to gain access to the data stored on the machine than by exploiting a memory corruption bug in a USB driver. However, if full disk encryption has been implemented and the operating system is running, a kernel-level attack could easily result in full access to all the data on the machine. Even if the vulnerability was in a userland application communicating with USB (this scenario has been observed by the author), access to data as the logged in user would still prove extremely damaging. Not only could an attacker exfiltrate data, they could also infect the machine with malware, just by inserting a rogue USB device. But surely that s what endpoint protection software is there to prevent, isn t it? Page 15 of 18
16 Endpoint protection software Over the last few years a number of different vendors have produced what have been generically called endpoint protection solutions (in this context endpoints refer to network endpoints such as workstations or servers rather than the USB protocol definition of an endpoint provided earlier in this paper). Some examples of these products are: Lumension (formerly Sanctuary) - Device Control [23] CoSoSys Endpoint Protector [24] DeviceLock - Endpoint DLP Suite [25] The purpose of the products is to provide more granular control over what devices can be connected to an organisation s endpoints. A common requirement for organisations is the control of USB to prevent users from inadvertently or maliciously adversely affecting the security of the IT estate by plugging in various USB devices. However, although they appear to effectively control conventional USB devices that are inserted into endpoints, our research has shown that kernel-level driver vulnerabilities are often triggered lower down in the USB stack, before the endpoint protection software has even registered that a device has been inserted effectively undermining this security barrier. Why USB vulnerabilities are still prevalent Different vendors appear to view USB-based vulnerabilities in different ways. As explained earlier, some vendors just don t perceive USB vulnerabilities to be a security issue. Quote from vendor x: Thank you for sending this to us. This is something that I will definitely pass on, however since this requires physical access it s not something that we will fix in a security update. However, in other cases although they take it more seriously, they don t appear to have the capabilities to thoroughly test their own code. Quote from vendor y: We think we ve fixed this issue, but we ll need to get you to test it as we don t have the ability to replicate your attack. Page 16 of 18
17 Conclusion Despite the best efforts of many vendors, there are still plenty of USB-based vulnerabilities out there, many of which will be exploitable. The reason they have not yet been discovered is that until now, runtime security analysis of USB has been challenging. The use of off-the-shelf test equipment combined with knowledge of the USB protocol and of different vulnerability classes, has resulted in NGS Secure developing a powerful USB security testing capability. Hopefully, it has been shown that even though limited physical access is required, USB vulnerabilities still constitute a serious security risk to organisations and that endpoint protection software is in many cases unlikely to protect you from these attacks. If you really don t want people to exploit USB on your workstations, disable USB in the BIOS and prevent unauthorised access to the BIOS with a suitably strong password. However, for the ultimate solution, take the military approach and fill the USB sockets with epoxy resin Page 17 of 18
18 References Page 18 of 18
USB attacks need physical access right? Not any more...
An NCC Group Publication USB attacks need physical access right? Not any more... Prepared by: Andy Davis Research Director andy.davis at nccgroup dot com Contents 1 Introduction... 3 2 The bug and how
USB Device Drivers: A Stepping Stone into your Kernel
USB Device Drivers: A Stepping Stone into your Kernel Moritz Jodeit n.runs AG Nassauer Str. 60, D-61440 Oberursel [email protected] Martin Johns SAP Research Vincenz-Priessnitz-Str. 1, D-76131 Karlsruhe
Peach Fuzzer Platform
Fuzzing is a software testing technique that introduces invalid, malformed, or random data to parts of a computer system, such as files, network packets, environment variables, or memory. How the tested
An Analysis of Wireless Device Implementations on Universal Serial Bus
An Analysis of Wireless Device Implementations on Universal Serial Bus 6/3/97 Abstract Universal Serial Bus (USB) is a new personal computer (PC) interconnect that can support simultaneous attachment of
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 Manchester - Head Office Cheltenham Edinburgh
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,
PREVENTING ZERO-DAY ATTACKS IN MOBILE DEVICES
PREVENTING ZERO-DAY ATTACKS IN MOBILE DEVICES Ira Winkler Codenomicon Session ID: MBS-W05 Session Classification: Intermediate Zero Day Attacks Zero day attacks are rising in prominence They tend to be
That Point of Sale is a PoS
SESSION ID: HTA-W02 That Point of Sale is a PoS Charles Henderson Vice President Managed Security Testing Trustwave @angus_tx David Byrne Senior Security Associate Bishop Fox Agenda POS Architecture Breach
Ways to Use USB in Embedded Systems
Ways to Use USB in Embedded Systems by Yingbo Hu, R&D Embedded Engineer and Ralph Moore, President of Micro Digital Universal Serial Bus (USB) is a connectivity specification that provides ease of use,
Custom Penetration Testing
Custom Penetration Testing Compromising a Vulnerability through Discovery and Custom Exploitation Stephen Sims Advanced Penetration Testing - 2009 SANS 1 Objectives Penetration Testing Precompiled Tools
CSC 2405: Computer Systems II
CSC 2405: Computer Systems II Spring 2013 (TR 8:30-9:45 in G86) Mirela Damian http://www.csc.villanova.edu/~mdamian/csc2405/ Introductions Mirela Damian Room 167A in the Mendel Science Building [email protected]
Ovation Security Center Data Sheet
Features Scans for vulnerabilities Discovers assets Deploys security patches easily Allows only white-listed applications in workstations to run Provides virus protection for Ovation Windows stations Aggregates,
The Advantages of Block-Based Protocol Analysis for Security Testing
The Advantages of Block-Based Protocol Analysis for Security Testing Dave Aitel Immunity,Inc. 111 E. 7 th St. Suite 64, NY NY 10009, USA [email protected] February, 4 2002 Abstract. This paper describes
Exploiting USB Devices with Arduino. Greg Ose [email protected] Black Hat USA 2011
Exploiting USB Devices with Arduino Greg Ose [email protected] Black Hat USA 2011 Abstract Hardware devices are continually relied upon to maintain a bridge between physical and virtual security. From
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
Learning USB by Doing. [email protected]
Learning USB by Doing. [email protected] The question that I am asked most often is how do I start a USB project? There are many alternate starting points for the design of a USB I/O device and this
International Journal of Enterprise Computing and Business Systems ISSN (Online) : 2230-8849
WINDOWS-BASED APPLICATION AWARE NETWORK INTERCEPTOR Ms. Shalvi Dave [1], Mr. Jimit Mahadevia [2], Prof. Bhushan Trivedi [3] [1] Asst.Prof., MCA Department, IITE, Ahmedabad, INDIA [2] Chief Architect, Elitecore
UNCLASSIFIED Version 1.0 May 2012
Secure By Default: Platforms Computing platforms contain vulnerabilities that can be exploited for malicious purposes. Often exploitation does not require a high degree of expertise, as tools and advice
OPERATING SYSTEM SERVICES
OPERATING SYSTEM SERVICES USER INTERFACE Command line interface(cli):uses text commands and a method for entering them Batch interface(bi):commands and directives to control those commands are entered
Ovation Security Center Data Sheet
Features Scans for vulnerabilities Discovers assets Deploys security patches transparently Allows only white-listed applications to run in workstations Provides virus protection for Ovation Windows workstations
DISCOVERY OF WEB-APPLICATION VULNERABILITIES USING FUZZING TECHNIQUES
DISCOVERY OF WEB-APPLICATION VULNERABILITIES USING FUZZING TECHNIQUES By Michael Crouse Dr. Errin W. Fulp, Ph.D., Advisor Abstract The increasingly high volume of users on the web and their use of web
APPLICATION SECURITY: FROM WEB TO MOBILE. DIFFERENT VECTORS AND NEW ATTACK
APPLICATION SECURITY: FROM WEB TO MOBILE. DIFFERENT VECTORS AND NEW ATTACK John T Lounsbury Vice President Professional Services, Asia Pacific INTEGRALIS Session ID: MBS-W01 Session Classification: Advanced
Network device management solution
iw Management Console Network device management solution iw MANAGEMENT CONSOLE Scalability. Reliability. Real-time communications. Productivity. Network efficiency. You demand it from your ERP systems
FREQUENTLY ASKED QUESTIONS
FREQUENTLY ASKED QUESTIONS Secure Bytes, October 2011 This document is confidential and for the use of a Secure Bytes client only. The information contained herein is the property of Secure Bytes and may
On the Deficiencies of Active Network Discovery Systems
On the Deficiencies of Active Network Discovery Systems Ofir Arkin Chief Technology Officer Insightix Copyright 2012 - All Rights Reserved. This material is proprietary of Insightix. Any unauthorized
Fifty Critical Alerts for Monitoring Windows Servers Best practices
Fifty Critical Alerts for Monitoring Windows Servers Best practices The importance of consolidation, correlation, and detection Enterprise Security Series White Paper 6990 Columbia Gateway Drive, Suite
FAQ for USB Flash Drive
FAQ for USB Flash Drive 1. What is a USB Flash Drive? A USB Flash Drive consists of a flash memory data storage device integrated with a USB interface. USB Flash Drives are typically removable and rewritable.
1 hours, 30 minutes, 38 seconds Heavy scan. All scanned network resources. Copyright 2001, FTP access obtained
home Network Vulnerabilities Detail Report Grouped by Vulnerability Report Generated by: Symantec NetRecon 3.5 Licensed to: X Serial Number: 0182037567 Machine Scanned from: ZEUS (192.168.1.100) Scan Date:
Terminal Server Software and Hardware Requirements. Terminal Server. Software and Hardware Requirements. Datacolor Match Pigment Datacolor Tools
Terminal Server Software and Hardware Requirements Datacolor Match Pigment Datacolor Tools January 21, 2011 Page 1 of 8 Introduction This document will provide preliminary information about the both the
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
A Research Study on Packet Sniffing Tool TCPDUMP
A Research Study on Packet Sniffing Tool TCPDUMP ANSHUL GUPTA SURESH GYAN VIHAR UNIVERSITY, INDIA ABSTRACT Packet sniffer is a technique of monitoring every packet that crosses the network. By using this
TNC is an open architecture for network access control. If you re not sure what NAC is, we ll cover that in a second. For now, the main point here is
1 2 This slide shows the areas where TCG is developing standards. Each image corresponds to a TCG work group. In order to understand Trusted Network Connect, it s best to look at it in context with the
UNCLASSIFIED CPA SECURITY CHARACTERISTIC REMOTE DESKTOP. Version 1.0. Crown Copyright 2011 All Rights Reserved
18570909 CPA SECURITY CHARACTERISTIC REMOTE DESKTOP Version 1.0 Crown Copyright 2011 All Rights Reserved CPA Security Characteristics for CPA Security Characteristic Remote Desktop 1.0 Document History
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
The Hacker Strategy. Dave Aitel [email protected]. Security Research
1 The Hacker Strategy Dave Aitel [email protected] Security Research Who am I? CTO, Immunity Inc. History: NSA->@stake -> Immunity Responsible for new product development Vulnerability Sharing Club
Integration of Voice over Internet Protocol Experiment in Computer Engineering Technology Curriculum
Integration of Voice over Internet Protocol Experiment in Computer Engineering Technology Curriculum V. Rajaravivarma and Farid Farahmand Computer Electronics and Graphics Technology School of Technology,
Considerations In Developing Firewall Selection Criteria. Adeptech Systems, Inc.
Considerations In Developing Firewall Selection Criteria Adeptech Systems, Inc. Table of Contents Introduction... 1 Firewall s Function...1 Firewall Selection Considerations... 1 Firewall Types... 2 Packet
Geospatial Server Performance Colin Bertram UK User Group Meeting 23-Sep-2014
Geospatial Server Performance Colin Bertram UK User Group Meeting 23-Sep-2014 Topics Auditing a Geospatial Server Solution Web Server Strategies and Configuration Database Server Strategy and Configuration
A Decision Maker s Guide to Securing an IT Infrastructure
A Decision Maker s Guide to Securing an IT Infrastructure A Rackspace White Paper Spring 2010 Summary With so many malicious attacks taking place now, securing an IT infrastructure is vital. The purpose
Chapter 13 Selected Storage Systems and Interface
Chapter 13 Selected Storage Systems and Interface Chapter 13 Objectives Appreciate the role of enterprise storage as a distinct architectural entity. Expand upon basic I/O concepts to include storage protocols.
Universal Serial Bus Implementers Forum EHCI and xhci High-speed Electrical Test Tool Setup Instruction
Universal Serial Bus Implementers Forum EHCI and xhci High-speed Electrical Test Tool Setup Instruction Revision 0.41 December 9, 2011 1 Revision History Rev Date Author(s) Comments 0.1 June 7, 2010 Martin
Configuring SNMP. 2012 Cisco and/or its affiliates. All rights reserved. 1
Configuring SNMP 2012 Cisco and/or its affiliates. All rights reserved. 1 The Simple Network Management Protocol (SNMP) is part of TCP/IP as defined by the IETF. It is used by network management systems
Discovering Computers
Discovering Computers Technology in a World of Computers, Mobile Devices, and the Internet Chapter 9 Operating Systems Objectives Overview Define an operating system Describe the start-up process and shutdown
CLASS FINAL REPORT UNIVERSITY OF CENTRAL FLORIDA FRONTIERS IN INFORMATION TECHNOLOGY COP 4910
UNIVERSITY OF CENTRAL FLORIDA FRONTIERS IN INFORMATION TECHNOLOGY COP 4910 CLASS FINAL REPORT Abstract This report brings together the final papers presented by the students in the Frontiers in Information
Database Security, Virtualization and Cloud Computing
Whitepaper Database Security, Virtualization and Cloud Computing The three key technology challenges in protecting sensitive data in modern IT architectures Including: Limitations of existing database
A Link Layer Discovery Protocol Fuzzer
The University of Texas at Austin, Department of Computer Sciences, Technical Report TR-07-24 A Link Layer Discovery Protocol Fuzzer Jeremy Hollander Department of Computer Sciences The University of Texas
Windows Remote Access
Windows Remote Access A newsletter for IT Professionals Education Sector Updates Issue 1 I. Background of Remote Desktop for Windows Remote Desktop Protocol (RDP) is a proprietary protocol developed by
CribMaster Database and Client Requirements
FREQUENTLY ASKED QUESTIONS CribMaster Database and Client Requirements GENERAL 1. WHAT TYPE OF APPLICATION IS CRIBMASTER? ARE THERE ANY SPECIAL APPLICATION SERVER OR USER INTERFACE REQUIREMENTS? CribMaster
Reverse Engineering and Computer Security
Reverse Engineering and Computer Security Alexander Sotirov [email protected] Introduction Security researcher at Determina, working on our LiveShield product Responsible for vulnerability analysis and
Database FAQs - SQL Server
Database FAQs - SQL Server Kony Platform Release 5.0 Copyright 2013 by Kony, Inc. All rights reserved. August, 2013 This document contains information proprietary to Kony, Inc., is bound by the Kony license
Network device management solution.
Network device management solution. iw Management Console Version 3 you can Scalability. Reliability. Real-time communications. Productivity. Network efficiency. You demand it from your ERP systems and
TIME TO LIVE ON THE NETWORK
TIME TO LIVE ON THE NETWORK Executive Summary This experiment tests to see how well commonly used computer platforms withstand Internet attacks in the wild. The experiment quantifies the amount of time
INDUSTRIAL CONTROL SYSTEMS CYBER SECURITY DEMONSTRATION
INDUSTRIAL CONTROL SYSTEMS CYBER SECURITY DEMONSTRATION Prepared for the NRC Fuel Cycle Cyber Security Threat Conference Presented by: Jon Chugg, Ken Rohde Organization(s): INL Date: May 30, 2013 Disclaimer
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
Andrew McRae Megadata Pty Ltd. [email protected]
A UNIX Task Broker Andrew McRae Megadata Pty Ltd. [email protected] This abstract describes a UNIX Task Broker, an application which provides redundant processing configurations using multiple
Detection of illegal gateways in protected networks
Detection of illegal gateways in protected networks Risto Vaarandi and Kārlis Podiņš Cooperative Cyber Defence Centre of Excellence Tallinn, Estonia [email protected] 1. Introduction In this
Chapter 15: Advanced Networks
Chapter 15: Advanced Networks IT Essentials: PC Hardware and Software v4.0 1 Determine a Network Topology A site survey is a physical inspection of the building that will help determine a basic logical
Timbuktu Pro for Windows, version 8
Timbuktu Pro for Windows, version 8 Release Notes, version 8.6.8 May 2010 This document contains important information about Timbuktu Pro for Windows, version 8. If you have additional questions, consult
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
Bypassing Local Windows Authentication to Defeat Full Disk Encryption. Ian Haken
Bypassing Local Windows Authentication to Defeat Full Disk Encryption Ian Haken Who Am I? Currently a security researcher at Synopsys, working on application security tools and Coverity s static analysis
Linux Kernel. Security Report
Linux Kernel Security Report September 25 Authors: Andy Chou, Bryan Fulton and Seth Hallem Coverity has combined two years of analysis work carried out in a commercial setting at Coverity with four years
Report on virtualisation technology as used at the EPO for Online Filing software testing
Report on virtualisation technology as used at the EPO for Online Filing software testing Virtualisation technology lets one computer do the job of multiple computers, all sharing the resources - including
IBM Endpoint Manager for Mobile Devices
IBM Endpoint Manager for Mobile Devices A unified platform for managing mobile devices together with your traditional endpoints Highlights Address business and technology issues of security, complexity
10 STEPS TO YOUR FIRST QNX PROGRAM. QUICKSTART GUIDE Second Edition
10 STEPS TO YOUR FIRST QNX PROGRAM QUICKSTART GUIDE Second Edition QNX QUICKSTART GUIDE A guide to help you install and configure the QNX Momentics tools and the QNX Neutrino operating system, so you can
Windows Server 2003 default services
Windows Server 2003 default services To view a description for a particular service, hover the mouse pointer over the service in the Name column. The descriptions included here are based on Microsoft documentation.
Study and installation of a VOIP service on ipaq in Linux environment
Study and installation of a VOIP service on ipaq in Linux environment Volkan Altuntas Chaba Ballo Olivier Dole Jean-Romain Gotteland ENSEIRB 2002 Summary 1. Introduction 2. Presentation a. ipaq s characteristics
HoneyBOT User Guide A Windows based honeypot solution
HoneyBOT User Guide A Windows based honeypot solution Visit our website at http://www.atomicsoftwaresolutions.com/ Table of Contents What is a Honeypot?...2 How HoneyBOT Works...2 Secure the HoneyBOT Computer...3
Choosing Between Whitelisting and Blacklisting Endpoint Security Software for Fixed Function Devices
Choosing Between Whitelisting and Blacklisting Endpoint Security Software for Fixed Function Devices McAfee* application whitelisting combined with Intel vpro technology can improve security, increase
Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module
Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module June, 2015 WHITE PAPER Contents Advantages of IBM SoftLayer and RackWare Together... 4 Relationship between
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
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
Web Application Security
E-SPIN PROFESSIONAL BOOK Vulnerability Management Web Application Security ALL THE PRACTICAL KNOW HOW AND HOW TO RELATED TO THE SUBJECT MATTERS. COMBATING THE WEB VULNERABILITY THREAT Editor s Summary
PARALLELS SERVER BARE METAL 5.0 README
PARALLELS SERVER BARE METAL 5.0 README 1999-2011 Parallels Holdings, Ltd. and its affiliates. All rights reserved. This document provides the first-priority information on the Parallels Server Bare Metal
Chapter 14 Virtual Machines
Operating Systems: Internals and Design Principles Chapter 14 Virtual Machines Eighth Edition By William Stallings Virtual Machines (VM) Virtualization technology enables a single PC or server to simultaneously
Chapter 15 Windows Operating Systems
Understanding Operating Systems, Fifth Edition 15-1 Chapter 15 Windows Operating Systems At a Glance Instructor s Manual Table of Contents Overview Objectives s Quick Quizzes Class Discussion Topics Additional
VMWARE Introduction ESX Server Architecture and the design of Virtual Machines
Introduction........................................................................................ 2 ESX Server Architecture and the design of Virtual Machines........................................
Format string exploitation on windows Using Immunity Debugger / Python. By Abysssec Inc WwW.Abysssec.Com
Format string exploitation on windows Using Immunity Debugger / Python By Abysssec Inc WwW.Abysssec.Com For real beneficiary this post you should have few assembly knowledge and you should know about classic
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
Centralized Mac Home Directories On Windows Servers: Using Windows To Serve The Mac
Making it easy to deploy, integrate and manage Macs, iphones and ipads in a Windows environment. Centralized Mac Home Directories On Windows Servers: Using Windows To Serve The Mac 2011 ENTERPRISE DEVICE
Introduction to Automated Testing
Introduction to Automated Testing What is Software testing? Examination of a software unit, several integrated software units or an entire software package by running it. execution based on test cases
Chapter 14 Analyzing Network Traffic. Ed Crowley
Chapter 14 Analyzing Network Traffic Ed Crowley 10 Topics Finding Network Based Evidence Network Analysis Tools Ethereal Reassembling Sessions Using Wireshark Network Monitoring Intro Once full content
Discovering passwords in the memory
Discovering passwords in the memory Abhishek Kumar ([email protected]) November 2003 Escalation of privileges is a common method of attack where a low privileged user exploits a vulnerability
Virtualization System Security
Virtualization System Security Bryan Williams, IBM X-Force Advanced Research Tom Cross, Manager, IBM X-Force Security Strategy 2009 IBM Corporation Overview Vulnerability disclosure analysis Vulnerability
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
SETUP MANUAL. Midmark Products over Thin Client Environments
SETUP MANUAL Midmark Products over Thin Client Environments Version 1.8 Part Number: 3-100-1126 Revision B Table of Contents I. INTRODUCTION... 1 A. RELATED DOCUMENTS... 1 B. CAUTIONARY NOTE... 1 C. GLOSSARY
Architecture Overview
Architecture Overview Design Fundamentals The networks discussed in this paper have some common design fundamentals, including segmentation into modules, which enables network traffic to be isolated and
Web Application Security
Chapter 1 Web Application Security In this chapter: OWASP Top 10..........................................................2 General Principles to Live By.............................................. 4
INTRUSION DETECTION SYSTEMS and Network Security
INTRUSION DETECTION SYSTEMS and Network Security Intrusion Detection System IDS A layered network security approach starts with : A well secured system which starts with: Up-to-date application and OS
Network Licensing. White Paper 0-15Apr014ks(WP02_Network) Network Licensing with the CRYPTO-BOX. White Paper
WP2 Subject: with the CRYPTO-BOX Version: Smarx OS PPK 5.90 and higher 0-15Apr014ks(WP02_Network).odt Last Update: 28 April 2014 Target Operating Systems: Windows 8/7/Vista (32 & 64 bit), XP, Linux, OS
CT505-30 LANforge-FIRE VoIP Call Generator
1 of 11 Network Testing and Emulation Solutions http://www.candelatech.com [email protected] +1 360 380 1618 [PST, GMT -8] CT505-30 LANforge-FIRE VoIP Call Generator The CT505-30 supports SIP VOIP
If anything is damaged or missing, contact your dealer.
User Manual UN-201 Read this guide thoroughly and follow the installation and operation procedures carefully in order to prevent any damage to the units and/or any devices that connect to them. This package
How To Connect To Bloomerg.Com With A Network Card From A Powerline To A Powerpoint Terminal On A Microsoft Powerbook (Powerline) On A Blackberry Or Ipnet (Powerbook) On An Ipnet Box On
Transport and Security Specification 15 July 2015 Version: 5.9 Contents Overview 3 Standard network requirements 3 Source and Destination Ports 3 Configuring the Connection Wizard 4 Private Bloomberg Network
Wireless ATA: A New Data Transport Protocol for Wireless Storage
Wireless ATA: A New Data Transport Protocol for Wireless Storage Serdar Ozler and Ibrahim Korpeoglu Department of Computer Engineering, Bilkent University, 06800 Bilkent, Ankara, Turkey {ozler, korpe}@cs.bilkent.edu.tr
Lumension Endpoint Management and Security Suite
Lumension Endpoint Management and Security Suite Patch and Remediation Module Evaluation Guide July 2012 Version 1.1 Copyright 2009, Lumension L.E.M.S.S:LPR - Table of Contents Introduction... 3 Module
RTI Database Integration Service. Release Notes
RTI Database Integration Service Release Notes 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, RTI, NDDS,
Guideline for setting up a functional VPN
Guideline for setting up a functional VPN Why do I want a VPN? VPN by definition creates a private, trusted network across an untrusted medium. It allows you to connect offices and people from around the
