Accurate Reconstruction of Android Attacks Via Multi-Layer Forensic Logging

Total Page:16

File Type:pdf, Size:1020Kb

Accurate Reconstruction of Android Attacks Via Multi-Layer Forensic Logging DroidForensics: Accurate Reconstruction of Android Attacks via Multi-layer Forensic Logging Xingzi Yuany Omid Setayeshfary Hongfei Yany Pranav Panagey Xuetao Weiz Kyu Hyung Leey yUniversity of Georgia, Athens, GA, USA zUniversity of Cincinnati, Cincinnati, OH, USA {x.yuan, omid.s, hfyan, pranav.panag, kyuhlee}@uga.edu, [email protected] ABSTRACT stand the damage have been conducted by the attack. For The goal of cyber attack investigation is to fully reconstruct instance, understanding what system objects are compro- the details of an attack, so we can trace back to its origin, mised or what data was exfiltrated is important to resolve and recover the system from the damage caused by the at- the damage. tack. However, it is often difficult and requires tremendous Forensic logging captures behaviors of the system execu- manual efforts because attack events occurred days or even tion and their relations. For instance, audit logging tech- weeks before the investigation and detailed information we niques [11] are widely used for cyber attack forensics. They need is not available anymore. Consequently, forensic log- records system properties such as users, processes, files or ging is significantly important for cyber attack investigation. network sockets and their relations such as a process re- In this paper, we present DroidForensics, a multi-layer ceives data from network socket, a user log-in to the system forensic logging technique for Android. Our goal is to pro- or a system file is replaced by a process. It can be used for vide the user with detailed information about attack behav- backward and forward tracking [43, 45] to locate the ori- iors that can enable accurate post-mortem investigation of gin of an attack and to identify the damage to the system. Android attacks. DroidForensics consists of three logging Recent work [45, 49, 29] show that forensic logging is an modules. API logger captures Android API calls that con- effective technique for cyber attack forensics in desktop or tain high-level semantics of an application. Binder logger server environments. records interactions between applications to identify causal However, unlike traditional desktop or server applications, relations between processes, and system call logger efficiently most Android applications run within the virtual machine monitors low-level system events. We also provide the user called Android Run-time (ART) to provide isolated execu- interface that the user can compose SQL-like queries to in- tion environment for each process. There are two major spect an attack. Our experiments show that DroidForensics hindrances to use traditional system call logging in Android. has low runtime overhead (2.9% on average) and low space First, system calls might be too low-level to capture the rich overhead (105 ∼ 169 MByte during 24 hours) on real An- semantics of application behaviors. Second, Android has droid devices. It is effective in the reconstruction of real- unique inter-process communication (IPC) protocol, called world Android attacks we have studied. binder and it is difficult to accurately capture IPC from the system calls. For example, if the Android application steals a contact list from the device and sends it to SMS mes- 1. INTRODUCTION sage, system calls cannot capture the critical behaviors such Android devices are becoming increasingly popular but as reading contact information and sending SMS message at the same time, also constantly attract cyber criminals. to the attacker's number. Because the Android application For example, a recent \stagefright" attack [28] exploits a cannot directly access contact or SMS, but it uses binder vulnerability in Android core component, which potentially call to interact with Android service providers such as Con- infects 950 million Android devices. tentProvider or SMSManager to access contact or SMS. Consequently, there is an increasing need of detecting and Recently, CopperDroid [63] and DroidScope [66] have pro- investigating Android attacks. Forensic logs are critical to posed techniques to analyze the behaviors of Android mal- the cyber attack investigation. For example, when a user de- ware. CopperDroid developed system-call based analysis tects a symptom of an attack, we can analyze forensic logs techniques for Android attack reconstruction. DroidScope [66] to reconstruct the attack path from the symptom to the is the Android malware analysis engine that provides unified \entry point" of the attack. It is also important to under- view of hardware, kernel and Dalvik virtual machine infor- mation. However both are built on top of emulated environ- ments (e.g., QEMU [22]) and it generally incurs nontrivial Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed runtime and space overhead for resource-constrained mobile for profit or commercial advantage and that copies bear this notice and the full cita- devices. tion on the first page. Copyrights for components of this work owned by others than In this paper, we develop a multi-layer forensic logging ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or re- publish, to post on servers or to redistribute to lists, requires prior specific permission technique for Android, called DroidForensics. DroidForensics and/or a fee. Request permissions from [email protected]. captures important Android events from three layers; An- ASIA CCS ’17, April 02-06, 2017, Abu Dhabi, United Arab Emirates droid API, Binder and system calls. Our API logger can c 2017 ACM. ISBN 978-1-4503-4944-4/17/04. $15.00 capture high-level semantics of application, Binder logger ac- DOI: http://dx.doi.org/10.1145/3052973.3052984 1 curately captures interactions between applications, and sys- Android Device tem call logger records low-level events such as system calls. User Android Application In addition, DroidForensics provides easy-to-use, SQL-like user interface that the user can compose queries to inspect an attack. DroidForensics generates a causal graph to an- Causal Graph System API Logger swer the query and the user can iteratively refine queries Services Android API / Java API based on the previous graph. We do not require an emu- Query lated environment and DroidForensics is designed for real System Binder Logger devices. In summary, this paper makes the following contri- Libraries libbinder.so butions: Forensic System call Logger • We design and implement a multi-layer forensic log- DB ging system for Android. Our system consists of three Kernel modules to capture different levels of information from high-level application semantics to low-level system Figure 1: High level overview of DroidForensics events. We also accurately capture inter process com- munication via Android's binder protocol. affect other processes (e.g., fork, kill) or other system ob- • We develop a light-weight system call logging tech- ject (e.g., read, write, recv, send). To record a global order nique for Android. Existing Android audit system [4] of these events from different layers, API and Binder log- causes up to 46% overhead in Nexus 6 that would be gers forward their events to system call logger and system too expensive to be active during normal execution. call logger stores them with global timestamps. The dot- Our runtime overhead on Nexus 6 is only less than ted line in Figure 1 shows the flow of collected forensic logs. 4.05%. We can also reduce the space consumption sub- DroidForensics periodically transfers those forensic data to stantially. an external server through wifi and three layers of logs are • We develop an easy-to-use user interface to aid the encoded uniformly into a relational database. Finally the attack investigation. The attack reconstruction is car- user can compose SQL-like queries to investigate an attack. ried out by writing SQL-like queries. Our pre-process DroidForensics converts the user query to SQL-queries and automatically converts the user query to SQL-queries, also generates a causal graph using the output from foren- and the post-processor generates causal graphs. sicDB. The user can observe malicious behaviors from dif- • We evaluate the efficiency, effectiveness and compat- ferent layers in a unified causal graph, and refine queries for ibility of DroidForensics. The results conducted on the further investigation. widely used Android benchmarks show that our run- time overhead is only about 2.9% on average and 6.16% Attack Description: Suppose John carries an Android in the worst case. We present that 31 android mal- smart phone, and falls victim to a social engineering malware wares are effectively resolved by querying various levels download attack by clicking on a link in an advertisement of information. The compatibility results produced by page. The malware, AVPass [14], silently installed in John's Android Compatibility Suite (CTS) show that Droid- device. The malware deletes an icon and a widget preview to Forensics maintains the same compatibility-level com- hide from the user, then steals sensitive information such as paring with original Android. contacts, SMS messages from the victim device. Finally, the malware stores sensitive data into the local SQLite database The rest of this paper is organized as follows. Section 2 for exfiltration. introduces the overview of DroidForensics and motivating example using Android malware called AVPass. Section 3 Forensic Analysis: John accidentally detects that a sus- discusses our design and implementation details. In Sec- picious process, com.lge.clock with pid 3052, is running in tion 4, we evaluate DroidForensics for efficiency, effectiveness the background. He wants to identify what this process has and compatibility. We discuss limitations of DroidForensics done in his device. However, the malware's activities hap- and our future plans in Section 5. Section 6 presents related pened a while ago, and the inspection of the malware process works and we conclude the paper in Section 7.
Recommended publications
  • Network/Socket Programming in Java
    Network/Socket Programming in Java Rajkumar Buyya Elements of C-S Computing a client, a server, and network Request Client Server Network Result Client machine Server machine java.net n Used to manage: c URL streams c Client/server sockets c Datagrams Part III - Networking ServerSocket(1234) Output/write stream Input/read stream Socket(“128.250.25.158”, 1234) Server_name: “manjira.cs.mu.oz.au” 4 Server side Socket Operations 1. Open Server Socket: ServerSocket server; DataOutputStream os; DataInputStream is; server = new ServerSocket( PORT ); 2. Wait for Client Request: Socket client = server.accept(); 3. Create I/O streams for communicating to clients is = new DataInputStream( client.getInputStream() ); os = new DataOutputStream( client.getOutputStream() ); 4. Perform communication with client Receiive from client: String line = is.readLine(); Send to client: os.writeBytes("Hello\n"); 5. Close sockets: client.close(); For multithreade server: while(true) { i. wait for client requests (step 2 above) ii. create a thread with “client” socket as parameter (the thread creates streams (as in step (3) and does communication as stated in (4). Remove thread once service is provided. } Client side Socket Operations 1. Get connection to server: client = new Socket( server, port_id ); 2. Create I/O streams for communicating to clients is = new DataInputStream( client.getInputStream() ); os = new DataOutputStream( client.getOutputStream() ); 3. Perform communication with client Receiive from client: String line = is.readLine(); Send to client: os.writeBytes("Hello\n");
    [Show full text]
  • Retrofitting Privacy Controls to Stock Android
    Saarland University Faculty of Mathematics and Computer Science Department of Computer Science Retrofitting Privacy Controls to Stock Android Dissertation zur Erlangung des Grades des Doktors der Ingenieurwissenschaften der Fakultät für Mathematik und Informatik der Universität des Saarlandes von Philipp von Styp-Rekowsky Saarbrücken, Dezember 2019 Tag des Kolloquiums: 18. Januar 2021 Dekan: Prof. Dr. Thomas Schuster Prüfungsausschuss: Vorsitzender: Prof. Dr. Thorsten Herfet Berichterstattende: Prof. Dr. Michael Backes Prof. Dr. Andreas Zeller Akademischer Mitarbeiter: Dr. Michael Schilling Zusammenfassung Android ist nicht nur das beliebteste Betriebssystem für mobile Endgeräte, sondern auch ein ein attraktives Ziel für Angreifer. Um diesen zu begegnen, nutzt Androids Sicher- heitskonzept App-Isolation und Zugangskontrolle zu kritischen Systemressourcen. Nutzer haben dabei aber nur wenige Optionen, App-Berechtigungen gemäß ihrer Bedürfnisse einzuschränken, sondern die Entwickler entscheiden über zu gewährende Berechtigungen. Androids Sicherheitsmodell kann zudem nicht durch Dritte angepasst werden, so dass Nutzer zum Schutz ihrer Privatsphäre auf die Gerätehersteller angewiesen sind. Diese Dissertation präsentiert einen Ansatz, Android mit umfassenden Privatsphäreeinstellun- gen nachzurüsten. Dabei geht es konkret um Techniken, die ohne Modifikationen des Betriebssystems oder Zugriff auf Root-Rechte auf regulären Android-Geräten eingesetzt werden können. Der erste Teil dieser Arbeit etabliert Techniken zur Durchsetzung von Sicherheitsrichtlinien
    [Show full text]
  • Systematization of Vulnerability Discovery Knowledge: Review
    Systematization of Vulnerability Discovery Knowledge Review Protocol Nuthan Munaiah and Andrew Meneely Department of Software Engineering Rochester Institute of Technology Rochester, NY 14623 {nm6061,axmvse}@rit.edu February 12, 2019 1 Introduction As more aspects of our daily lives depend on technology, the software that supports this technology must be secure. We, as users, almost subconsciously assume the software we use to always be available to serve our requests while preserving the confidentiality and integrity of our information. Unfortunately, incidents involving catastrophic software vulnerabilities such as Heartbleed (in OpenSSL), Stagefright (in Android), and EternalBlue (in Windows) have made abundantly clear that software, like other engineered creations, is prone to mistakes. Over the years, Software Engineering, as a discipline, has recognized the potential for engineers to make mistakes and has incorporated processes to prevent such mistakes from becoming exploitable vulnerabilities. Developers leverage a plethora of processes, techniques, and tools such as threat modeling, static and dynamic analyses, unit/integration/fuzz/penetration testing, and code reviews to engineer secure software. These practices, while effective at identifying vulnerabilities in software, are limited in their ability to describe the engineering failures that may have led to the introduction of vulnerabilities. Fortunately, as researchers propose empirically-validated metrics to characterize historical vulnerabilities, the factors that may have led to the introduction of vulnerabilities emerge. Developers must be made aware of these factors to help them proactively consider security implications of the code that they contribute. In other words, we want developers to think like an attacker (i.e. inculcate an attacker mindset) to proactively discover vulnerabilities.
    [Show full text]
  • How to XDP (With Snabb)
    How to XDP (with Snabb) Max Rottenkolber <[email protected]> Tuesday, 21 January 2020 Table of Contents Intro 1 Creating an XDP socket 2 Mapping the descriptor rings 4 Binding an XDP socket to an interface 7 Forwarding packets from a queue to an XDP socket 8 Creating a BPF map . 9 Assembling a BPF program . 9 Attaching a BPF program to an interface . 12 Packet I/O 14 Deallocating the XDP socket 18 Intro Networking in userspace is becoming mainstream. Recent Linux kernels ship with a feature called eXpress Data Path (XDP) that intends to con- solidate kernel-bypass packet processing applications with the kernel’s networking stack. XDP provides a new kind of network socket that al- lows userspace applications to do almost direct I/O with network device drivers while maintaining integration with the kernel’s native network stack. To Snabb XDP looks like just another network I/O device. In fact the XDP ABI/API is so similar to a typical hardware interfaces that it feels a bit like driving a NIC, and not by accident. I think it is fair to describe XDP as a generic interface to Linux network drivers that also 1 has a virtual backend it integrates with: the Linux network stack. In that sense, XDP can be seen as a more hardware centric sibling of AF_PACKET. I can think of two reasons why XDP might be interesting for Snabb users: • While the Snabb community prefers NICs with open hardware interface specifications there are a lot of networking devices out there that lack open specifications.
    [Show full text]
  • Internet Security Threat Report VOLUME 21, APRIL 2016 TABLE of CONTENTS 2016 Internet Security Threat Report 2
    Internet Security Threat Report VOLUME 21, APRIL 2016 TABLE OF CONTENTS 2016 Internet Security Threat Report 2 CONTENTS 4 Introduction 21 Tech Support Scams Go Nuclear, 39 Infographic: A New Zero-Day Vulnerability Spreading Ransomware Discovered Every Week in 2015 5 Executive Summary 22 Malvertising 39 Infographic: A New Zero-Day Vulnerability Discovered Every Week in 2015 8 BIG NUMBERS 23 Cybersecurity Challenges For Website Owners 40 Spear Phishing 10 MOBILE DEVICES & THE 23 Put Your Money Where Your Mouse Is 43 Active Attack Groups in 2015 INTERNET OF THINGS 23 Websites Are Still Vulnerable to Attacks 44 Infographic: Attackers Target Both Large and Small Businesses 10 Smartphones Leading to Malware and Data Breaches and Mobile Devices 23 Moving to Stronger Authentication 45 Profiting from High-Level Corporate Attacks and the Butterfly Effect 10 One Phone Per Person 24 Accelerating to Always-On Encryption 45 Cybersecurity, Cybersabotage, and Coping 11 Cross-Over Threats 24 Reinforced Reassurance with Black Swan Events 11 Android Attacks Become More Stealthy 25 Websites Need to Become Harder to 46 Cybersabotage and 12 How Malicious Video Messages Could Attack the Threat of “Hybrid Warfare” Lead to Stagefright and Stagefright 2.0 25 SSL/TLS and The 46 Small Business and the Dirty Linen Attack Industry’s Response 13 Android Users under Fire with Phishing 47 Industrial Control Systems and Ransomware 25 The Evolution of Encryption Vulnerable to Attacks 13 Apple iOS Users Now More at Risk than 25 Strength in Numbers 47 Obscurity is No Defense
    [Show full text]
  • Compromised Connections
    COMPROMISED CONNECTIONS OVERCOMING PRIVACY CHALLENGES OF THE MOBILE INTERNET The Universal Declaration of Human Rights, the International Covenant on Civil and Political Rights, and many other international and regional treaties recognize privacy as a fundamental human right. Privacy A WORLD OF INFORMATION underpins key values such as freedom of expression, freedom of association, and freedom of speech, IN YOUR MOBILE PHONE and it is one of the most important, nuanced and complex fundamental rights of contemporary age. For those of us who care deeply about privacy, safety and security, not only for ourselves but also for our development partners and their missions, we need to think of mobile phones as primary computers As mobile phones have transformed from clunky handheld calling devices to nifty touch-screen rather than just calling devices. We need to keep in mind that, as the storage, functionality, and smartphones loaded with apps and supported by cloud access, the networks these phones rely on capability of mobiles increase, so do the risks to users. have become ubiquitous, ferrying vast amounts of data across invisible spectrums and reaching the Can we address these hidden costs to our digital connections? Fortunately, yes! We recommend: most remote corners of the world. • Adopting device, data, network and application safety measures From a technical point-of-view, today’s phones are actually more like compact mobile computers. They are packed with digital intelligence and capable of processing many of the tasks previously confined
    [Show full text]
  • Ibeta-Device-Invento
    Android - Tablets Device Carrier Current Version Network 2012 Asus Google Nexus 7 (A) None 4.2.2 WiFi 2012 Asus Google Nexus 7 (B) None 4.4.2 WiFi 2013 Asus Google Nexus 7 (A) None 5.0.2 WiFi 2013 Asus Google Nexus 7 (B) None 5.0.2 WiFi Asus Eee Pad Transformer None 4.0.3 WiFi Asus ZenPad 8.0 inch None 6 WiFi Acer Iconia Tab - A500 None 4.0.3 WiFi Acer Iconia One 10 inch None 5.1 WiFi Archos 10 None 2.2.6 WiFi Archos 7 None 2.1 WiFi B&N Nook Color None Nook 1.4.3 (Android Base) WiFi Creative Ziio None 2.2.1 WiFi Digiland DL 701Q None 4.4.2 WiFi Dell Streak 7 T-Mobile 2.2 3G/WiFi HTC Google Nexus 9 (A) None 7.1.1 WiFi HTC Google Nexus 9 (B) None 7.1.1 WiFi LG G Pad (A) None 4.4.2 WiFi LG G Pad (B) None 5.0.2 WiFi LG G PAD F 8inch None 5.0.2 WiFi Motorola Xoom Verizon 4.1.2 3G/WiFi NVIDIA Shield K1 None 7 WiFi Polaroid 7" Tablet (PMID701i) None 4.0.3 WiFi Samsung Galaxy Tab Verizon 2.3.5 3G/WiFi Samsung Galaxy Tab 3 10.1 None 4.4.2 WiFi Samsung Galaxy Tab 4 8.0 None 5.1.1 WiFi Samsung Galaxy Tab A None 8.1.0 WiFi Samsung Galaxy Tab E 9.6 None 6.0.1 WiFi Samsung Galaxy Tab S3 None 8.0.0 WiFi Samsung Galaxy Tab S4 None 9 WiFi Samsung Google Nexus 10 None 5.1.1 WiFi Samsung Tab pro 12 inch None 5.1.1 WiFi ViewSonic G-Tablet None 2.2 WiFi ViewSonic ViewPad 7 T-Mobile 2.2.1 3G/WiFi Android - Phones Essential Phone Verizon 9 3G/LTE/WiFi Google Pixel (A) Verizon 9 3G/LTE/WiFi Android - Phones (continued) Google Pixel (B) Verizon 8.1 3G/LTE/WiFi Google Pixel (C) Factory Unlocked 9 3G/LTE/WiFi Google Pixel 2 Verizon 8.1 3G/LTE/WiFi Google Pixel
    [Show full text]
  • Samsung Nexus Manual Pdf
    Samsung Nexus Manual Pdf Sumptuous or panzer, Shell never hirsling any ureters! Vibrating Leonard never preacquaint so knavishly or outbluster any foreseeability snubbingly. Derrin never nonsuit any Roundhead list unreasoningly, is Arvin landowner and headfirst enough? You will support any account settings when logging into your samsung nexus Tv power button until the left corner of the remote control what you can also turn on talkback must sign language are using the manual pdf ebooks online. Google Nexus 10 Tab Wi-Fi Owner Information Samsung. Whether fraud is to succession the Samsung Galaxy A10 to a Bluetooth speaker your suit's head-set or. Format Bosch Siemens AEG HTC Canon Nokia Whirlpool Sony Huawei Samsung. Secured networks are service manual pdf. Samsung Nexus User Manual Free eBooks in the Genres. Galaxy Nexus Users Guide. Zte k disassembly. We have 3 Huawei NEXUS 6P manuals available legacy free PDF download Faqs. You factory reset device that opens the pdf manual pdf. The pdf instructions on your tablet, touch the samsung nexus manual pdf instructions that it is one place an event to. Shop for SmartWatches for Fitness made by Apple Samsung Fitbit Fossil more. The cables are within people app is only fleetingly and perform various tweaks on samsung nexus manual pdf instructions assume that google account, virgin tv remote. Valvetronix VT20 musical instrument amplifier pdf manual download. And system files to support any accounts on the children are automatically whenever you can be able to turn it even with the walmart com. Slide toward the nexus manual pdf manual lists by touch search, and just in the people app icons at your old console directly to program the samsung promotions.
    [Show full text]
  • Improving Networking
    IMPERIAL COLLEGE LONDON FINALYEARPROJECT JUNE 14, 2010 Improving Networking by moving the network stack to userspace Author: Matthew WHITWORTH Supervisor: Dr. Naranker DULAY 2 Abstract In our modern, networked world the software, protocols and algorithms involved in communication are among some of the most critical parts of an operating system. The core communication software in most modern systems is the network stack, but its basic monolithic design and functioning has remained unchanged for decades. Here we present an adaptable user-space network stack, as an addition to my operating system Whitix. The ideas and concepts presented in this report, however, are applicable to any mainstream operating system. We show how re-imagining the whole architecture of networking in a modern operating system offers numerous benefits for stack-application interactivity, protocol extensibility, and improvements in network throughput and latency. 3 4 Acknowledgements I would like to thank Naranker Dulay for supervising me during the course of this project. His time spent offering constructive feedback about the progress of the project is very much appreciated. I would also like to thank my family and friends for their support, and also anybody who has contributed to Whitix in the past or offered encouragement with the project. 5 6 Contents 1 Introduction 11 1.1 Motivation.................................... 11 1.1.1 Adaptability and interactivity.................... 11 1.1.2 Multiprocessor systems and locking................ 12 1.1.3 Cache performance.......................... 14 1.2 Whitix....................................... 14 1.3 Outline...................................... 15 2 Hardware and the LDL 17 2.1 Architectural overview............................. 17 2.2 Network drivers................................. 18 2.2.1 Driver and device setup.......................
    [Show full text]
  • This Is the Architecture of Android. Android Runs on Top of a Vanilla Kernel with Little Modifications, Which Are Called Androidisms
    4. This is the architecture of Android. Android runs on top of a vanilla kernel with little modifications, which are called Androidisms. The native userspace, includes the init process, a couple of native daemons, hundreds of native libraries and the Hardware Abstraction Layer (HAL). The native libraries are implemented in C/C++ and their functionality is exposed to applications through Java framework APIs. A large part of Android is implemented in Java and until Android version 5.0 the default runtime was Dalvik. Recently a new, more performant runtime, called ART has been integrated in Android (first made available as an option in version 4.4, default runtime from version 5.0). Java runtime libraries are defined in java.* and javax.* packages, and are derived from Apache Harmony project (not Oracle/SUN, in order to avoid copyright and distribution issues.), but several components have been replaced, others extended and improved. Native code can be called from Java through the Java Native Interface (JNI). A large part of the fundamental features of Android are implemented in the system services: display, touch screen, telephony, network connectivity, and so on. A part of these services are implemented in native code and the rest in Java. Each service provides an interface which can be called from other components. Android Framework libraries (also called “the framework API”) include classes for building Android applications. On top, we have the stock applications, that come with the phone. And other applications that are installed by the user. 6. ● Most Linux distributions take the vanilla kernel (from Linux Kernel Archives) and apply their own patches in order to solve bugs, add specific features and improve performance.
    [Show full text]
  • Asus Google Nexus 7 Inch 32Gb Android 4 1 Black Tablet User Guides
    Asus google nexus 7 inch 32gb android 4 1 black tablet User Guides Asus google nexus 7 inch 32gb android 4 1 black tablet . Asus google nexus 7 inch 32gb android 4 1 black tablet Staples. has the NEW 2013 Nexus 7 16GB Tablet from Google you need for home life for web browsing, video playback or reading with the 4.2V1 Li-Pllyner battery Google Nexus 7 Tablet, 32GB (NEXUS7ASUS-2B32): 4.5stars: (213reviews) Reviews for Case Logic 7 Tablet Sleeve, Black: 5.0stars: (1 reviews). Google Nexus 7 Tablet (7-Inch, 32GB, Black) by ASUS click the link in the description. ASUS Google Nexus 7 Tablet 32GB - HSPA+ Unlocked (ASUS-1B32-4G) 4 out of 5 eggs Quad Core CPU/GPU, 1GB DDR3 RAM, 32GB Flash Storage, 7 Touchscreen (1280x800), Android 4.1 Battery Life: 9 hours of HD video playback Limited Warranty period (parts): 1 year, Limited Warranty period (labor): 1 year. ASUS Google Nexus 7 7 32 GB Android 4.4 KitKat Wi-Fi Tablet - BLACK in Patented 4-PLUS-1 design gives you processing power when you need it, and battery of HD movies and TV shows, and the latest magazines on Nexus 7. ATC Slim Cover Case for Google Nexus 7 Android Tablet by Asus (Black) with Save 5% on PU Leather Nexus 7 2nd case Black/White when you purchase 1 or more ASUS Google Nexus 7 Tablet (7-Inch, 32GB) 2012 Model $135.38. Running on the Android 4.3 operating system, youll enjoy stunning HD video and Google Nexus 7 FHD by ASUS 32GB 7 Android 4.3 Tablet With Qualcomm Snapdragon S4 Pro - Black Review: The Nexus 7 2013 Tablet from Google and Asus In fact, last Christmas I bought one for myself and one for my wife.
    [Show full text]
  • Post Sockets - a Modern Systems Network API Mihail Yanev (2065983) April 23, 2018
    Post Sockets - A Modern Systems Network API Mihail Yanev (2065983) April 23, 2018 ABSTRACT In addition to providing native solutions for problems, es- The Berkeley Sockets API has been the de-facto standard tablishing optimal connection with a Remote point or struc- systems API for networking. However, designed more than tured data communication, we have identified that a com- three decades ago, it is not a good match for the networking mon issue with many of the previously provided networking applications today. We have identified three different sets of solutions has been leaving the products vulnerable to code problems in the Sockets API. In this paper, we present an injections and/or buffer overflow attacks. The root cause implementation of Post Sockets - a modern API, proposed by for such problems has mostly proved to be poor memory Trammell et al. that solves the identified limitations. This or resource management. For this reason, we have decided paper can be used for basis of evaluation of the maturity of to use the Rust programming language to implement the Post Sockets and if successful to promote its introduction as new API. Rust is a programming language, that provides a replacement API to Berkeley Sockets. data integrity and memory safety guarantees. It uses region based memory, freeing the programmer from the responsibil- ity of manually managing the heap resources. This in turn 1. INTRODUCTION eliminates the possibility of leaving the code vulnerable to Over the years, writing networked applications has be- resource management errors, as this is handled by the lan- come increasingly difficult.
    [Show full text]