Monday, January 19, 2015

Identificar de forma instantánea irregular Batería Problemas Strain energía en los teléfonos móviles (3)

3 fases de ejecución de aplicaciones para teléfonos inteligentes

Para identificar la aplicación o sistema problemático para un problema ABD, es fundamental diferenciar anormal del uso normal de la batería. Es natural centrarse inmediatamente en la aplicación que es el mayor consumidor de la batería como se informa por teléfono DG800 una energía pro fi ler. Desafortunadamente, como se muestra en la Figura 2 de un caso real, tal enfoque no siempre funciona porque el rango de una aplicación en el informe de consumo de la batería puede fluctuar en el tiempo. El reto es que no hay ninguna diferencia clara entre períodos normales y anormales. Así, la energía per fi les y rango no son indicadores confiables para problemas ABD solución de problemas. Además, la Figura 2 muestra que los cambios en el consumo de batería o rango de una aplicación también no son indicadores precisos para las conductas anormales por razones similares.

Para identificar los comportamientos anormales de aplicaciones, eDoctor pide prestado un concepto llamado "fases" de un trabajo previo para reducir el tiempo de simulación de hardware [16, 19, 23, 28, 38, 44, 45]. El trabajo previo ha demostrado que los programas se ejecutan como un XIAOMI MI4http://es.pandawill.com/xiaomi-mi4-smartphone-3gb-16gb-snapdragon-801-25ghz-50-inch-fhd-screen-glonass-black-p91633.html serie de teléfonos de fases, donde cada fase es muy diferente de los demás sin dejar de tener un comportamiento bastante homogéneo entre los diferentes intervalos de ejecución dentro de la misma fase. Hardware investigadores simulan las fases representativas para evaluar su diseño en lugar de toda la ejecución [45].

Fase Identi fi cación. Inspirado por el trabajo anterior, eDoctor utiliza fases para capturar el comportamiento de una aplicación en términos de uso de recursos. La ejecución de una aplicación se divide en intervalos de ejecución, que luego se agrupan en fases. Intervalos en los teléfonos comparten similares patrones de uso de recursos misma fase DG800. Cuando una aplicación empieza a consumir la energía de una manera anormal, su comportamiento por lo general se manifiesta como nuevas fases importantes que no aparecen durante la ejecución normal. Combinando la información de fase junto con eventos relevantes, tales como un cambio con fi guración, eDoctor puede identificar tanto la aplicación culpable y desencadenar eventos con gran precisión.

Antes comportamientos trabajo de simulación de hardware de arquitectura estudiado relacionados (por ejemplo, la relación de error de caché), por lo capturaron fases basadas en la información a nivel de instrucción, como vector de bloque básico (BBV). Sin embargo, dicha información ne de grano fi no es adecuado para la identificación de las fases de uso de recursos, ya que no se correlaciona directamente a los recursos de uso. XIAOMI MI4 aplicaciones de teléfonos son diferentes de la mayoría de las aplicaciones de escritorio o servidor - por lo general son relativamente simples y no computacionalmente intensivas, sino más bien de E / S intensiva, interactuando con múltiples recursos (dispositivos), tales como la pantalla, GPS, varios sensores, Wi-Fi , etc. estos recursos son consumo de energía, por lo que mis-uso o el uso excesivo de estos recursos conduce a problemas de ABD. Por lo tanto, podemos identificar las fases mediante la observación de cómo estos recursos son utilizados por una aplicación durante diferentes intervalos de ejecución.

Nuestro primer enfoque se inicia desde un nivel de grano grueso bastante registrando únicos tipos de recursos utilizados durante cada intervalo de ejecución. Nos referimos a este método como tipo de recurso vectorial (RTV). Se basa en un teléfono sencilla razón de DG800 que las diferentes fases de ejecución utilizan diferentes recursos. Por ejemplo, una aplicación cliente de correo electrónico utiliza la red cuando recibe o envía mensajes de correo electrónico. Pero cuando el usuario está redactando un correo electrónico, que utiliza el procesador y la pantalla. El esquema de RTV utiliza un vector de bits para capturar lo que los recursos se utilizan en un intervalo de ejecución. Cada bit indica si un cierto tipo de recurso se utiliza en este intervalo. Si dos intervalos tienen el mismo RTV, pertenecen a la misma fase.

Como se muestra en la Figura 3 (a) con los datos obtenidos de la aplicación de Facebook se utiliza en teléfonos XIAOMI MI4 de un usuario real, RTV muestra claramente algunos patrones y comportamientos de fase: durante las diferentes fases, se utilizan diferentes tipos de recursos, y las fases aparece varias veces durante diferentes intervalos. Como muestra la figura, la fase más frecuente es que sólo la CPU está en ejecución. En esta fase, la mayor parte de las veces la aplicación está inactivo. La segunda fase más frecuente tiene tanto la CPU y la red activa, que indica las transferencias de aplicaciones y procesa los datos.

Aunque el esquema de RTV es simple, resulta ser demasiado grano grueso. Una aplicación puede utilizar los mismos tipos de recursos en dos fases diferentes, pero sus tasas de uso de recursos diferentes. Por ejemplo, para una aplicación de correo electrónico, mientras que tanto la fase de actualización de correo electrónico y fase de lectura de correo electrónico utilizar la pantalla, CPU y de la red, las tasas de uso de recursos son diferentes. El primero tiene típicamente más trá fi co de red. Por lo tanto, hemos explorado un teléfono DG800http://es.pandawill.com/doogee-valencia-dg800-smartphone-creative-back-touch-android-44-mtk6582-45-inch-otg-p89143.html segundo scheme- Uso de recursos vectorial (RUV). Cada elemento en un RUV es la cantidad de uso del recurso correspondiente.

Calculamos el uso de un recurso por la cantidad del recurso normalizado por el tiempo de CPU. El intervalo de ejecución no puede ser demasiado pequeña para controlar la sobrecarga de medición, por lo que una aplicación puede funcionar por sólo una fracción de un intervalo de ejecución. En ese caso, los números absolutos de uso no pueden representar con precisión el comportamiento de uso. Tiempo de CPU es una buena aproximación de la cantidad de tiempo que una aplicación se ejecuta en realidad. La normalización de tiempo de CPU nos permite correlacionar dos intervalos que pertenecen a la misma fase, incluso si la aplicación se ejecuta durante diferentes cantidades de tiempo en cada intervalo.

Si dos intervalos de ejecución tienen RUV similares, pertenecen a la misma fase. Al igual que en trabajos anteriores [45], se utiliza el algoritmo de k-medias a intervalos de racimo en fases. Para hallar la k más adecuado (es decir, el número de grupos para generar), eDoctor trata diferente k comprendido entre el 1 al 10 en tiempo de ejecución. Para cada k, se evalúa la calidad de los racimos mediante el cálculo de la distancia media entre los grupos sectoriales dividido por la distancia media intra-cluster como una puntuación teléfono XIAOMI MI4. A mayor puntuación, mejor los grupos fi cio de los datos. Desde la mejor k es probable que sea el más grande k intenta, recogemos la k más pequeño cuya puntuación es tan alta como el 90% de la mejor puntuación.

La Figura 3 (b) muestra el comportamiento de fase RUV utilizando los mismos datos. Como muestra, RUV capta una fase más en comparación con las fases divididas por teléfono DG800 RTV, permitiendo eDoctor para diferenciar aún más entre el uso de baja y alta de la red. Más especí fi camente, fase # 3 y # 4 fase ambos tienen el uso de CPU, wakelock y de la red, pero la fase # 4 tiene un mayor uso de la red. Se providesmore información-ne fi grano con respecto al comportamiento de fase de una aplicación.

Monday, January 12, 2015

Identificar de forma instantánea irregular Batería Problemas Strain energía en los teléfonos móviles (2)

2 del mundo real problema de la fuga de la batería

Para entender los problemas de descarga de la batería en los teléfonos JIAYU G4S, tomamos muestras al azar 213 problema de la fuga de la batería del mundo real a partir de tres grandes foros Android: AndroidCentral.com, AndroidForums.com y DroidForums.net. Para muestra efectivamente los problemas de los miles de hilos de discusión batteryrelated en cada foro, se realizaron búsquedas en un conjunto de palabras clave como "batería", "energía", "drenaje" y sus sinónimos, y luego escogimos al azar 213 cuestiones que eran con fi rmado que ser resuelto. Con los temas recogidos, estudiamos sus categorías de causas raíz, desencadenando eventos y soluciones de reparación han encontrado los usuarios (por ejemplo, la eliminación de una aplicación o ajustar la con fi guración) para obtener directrices para el diseño de eDoctor.

2.1 Causa Raíz Categorías

Estudiamos las categorías de causas raíz y la distribución de los componentes problemáticos (Figura 1). Hicimos las siguientes observaciones.

(1) La mayoría (92,4%) de las quejas de la vida de la batería muestreados por los usuarios se relacionan con drenaje anómalo de la batería, y sólo el 7,6% son sobre el uso pesado todavía batería normal de algunas aplicaciones móviles. Este desglose indica que (i) ABD es un emergente y problema generalizado de los teléfonos DG700http://es.pandawill.com/doogee-titans2-dg700-smartphone-android-44-mtk6582-4000mah-battery-45-inch-p96395.html, y (ii) antes de solución de problemas de un tema de la batería, se puede fi primero tienen que saber si está en efecto causado por algunos problemas anormales o si se trata simplemente de debido al uso intensivo del dispositivo o un teléfono aplicación en particular JIAYU G4S. Una energía per fi ler puede dar el uso de la batería de cada aplicación, pero normalmente no puede decir si el uso es normal o anormal.

(2) las cuestiones de aplicación hacen que el 47,9% de todos los casos examinados. Esta observación apoya nuestra afirmación de que los desarrolladores de aplicaciones no son energía cauteloso. Alrededor de tres cuartas partes de las cuestiones de aplicaciones han sido identi fi cada como errores de aplicaciones y los restantes están relacionados para con fi guración. Además de las cuestiones de aplicaciones, otros factores tales como errores en el sistema (22,2%), estafadores cambios figuración (11,8%) y las condiciones ambientales (8,2%) pueden llevar a problemas de ABD. Se ahorraría un usuario de teléfono DG700 (incluso un usuario experto en tecnología) tiempo y esfuerzo si una herramienta puede detectar automáticamente la razón de los problemas de ABD y sugerir una solución de reparación en consecuencia.

(3) El uso excesivo o mal uso de ciertos tipos de recursos puede provocar problemas de ABD. Los errores de software y Miscon fi guración puede resultar en el mal uso o el uso excesivo de ciertos tipos de recursos, como el GPS, sensores, etc., lo que lleva a un problema ABD teléfono JIAYU G4S. Estas situaciones implican que es beneficioso para monitorear y analizar el uso de esos recursos. Al hacerlo, eDoctor puede separar anormal de los desagües normales de la batería y también sugerir soluciones detalladas de reparación directamente relacionados con esos recursos.

Para muchas cuestiones ABD, especialmente las causadas por guración Miscon fi y sistema errores, es difícil para una energía per fi ler a DG700 teléfono diagnóstico. Por ejemplo, lo que permite la transmisión de datos de fondo puede resultar en un alto consumo de energía de ciertas aplicaciones que transfieren datos cuando se ejecuta en segundo plano. Dores fi Pro pueden enumerar estas aplicaciones como consumidor de energía, que inducen a error a los usuarios piensan que convirtieron anormal y así eliminarlos.

2.2 Activación Eventos y Resoluciones

En general, las cuestiones ABD ocurren sólo después de ciertos eventos, por ejemplo, la instalación de una aplicación con errores teléfono JIAYU G4Shttp://es.pandawill.com/jiayu-g4-smartphone-mtk6592-2gb-16gb-47-inch-gorilla-glass-android-42-3000mah-otg-p88087.html, la actualización de una aplicación existente a una versión con errores, cambiando con fi guraciones de ser más, entrando en una zona de señal débil, etc. Por lo tanto, sabiendo que consume energía tales eventos de activación es crítica para sugerir soluciones de reparación adecuadas para los usuarios, como se muestra en la Tabla 2.

Curiosamente, sin embargo, en más del 48% de los 213 temas ABD, los usuarios no se acordaron de lo que habían hecho previamente o lo que podría ser el posible evento ABD-desencadenante. En tales casos, el diagnóstico manualmente y resolver el problema se convierte en difícil. La simple eliminación de una aplicación sospechosa teléfono DG700, probablemente la reportada por las herramientas de energía per fi ling como consumidor de alta energía, no siempre es la solución más adecuada; que puede ser o bien un exceso o incluso incorrecta.

Thursday, January 8, 2015

Instantly Identifying Irregular Battery energy Strain Problems on Mobile phones (1)

1 Introduction

Smartphones have become persistent. Canalys exposed [12] that 487.7 thousand XIAOMI MI4 mobile phones were delivered this year — tagging the first time that smart phone sales overtook traditional pcs (including desktop computers, laptop computers and tablets).

Configured with more powerful components and more complicated program, DG800 mobile phones eat much more energy in comparison to feature mobile phones (low-end cell mobile phones with restricted functionality). Unfortunately, due to restricted energy solidity and battery size, the improvement speed of battery technology is much more slowly in comparison to Moore’s Law in the rubber market [40]. Thus, enhancing battery usage and increasing battery has become one of the major difficulties in the XIAOMI MI4 cellphone market.

Fruitful perform has been done to reduce energy intake on DG800http://www.pandawill.com/doogee-valencia-dg800-smartphone-creative-back-touch-android-44-mtk6582-45-inch-otg-p89143.html mobile phones and other general cellular phones, such as energy statistic [8, 13, 39, 46], modelling and profiling [18, 36, 46, 52], energy efficient components [21, 30], operating-system [7, 10, 15, 29, 42, 49, 50, 51], location services [14, 20, 26, 31], shows [5, 17] and social media [4, 6, 32, 41, 43]. Past perform has obtained significant developments in XIAOMI MI4 cellphone battery, yet the concentrate has mainly been on regular usage, i.e., where the energy used is needed for regular operation.

In this perform, we address an under-explored, yet growing type of battery problem on DG800 mobile phones – Irregular Battery energy Strain (ABD).

1.1 Irregular Battery energy Strain Issues

ABD represents unusually fast depleting of a XIAOMI MI4 phone’s battery that is not due to regular source usage. From a user’s perspective, the product previously had reasonable battery under common usage, but at some factor battery suddenly started to empty faster than regular. Consequently, whereas customers might perfectly and effectively use their mobile phones for an entire day, with an ABD problem their battery power might suddenly fatigue within time.

ABD has become a actual, growing problem. When we arbitrarily tested 213 actual lifestyle battery issues from well-known Android os boards, we found that 92.4% of them were exposed to be ABD, while only 7.6% were due to regular, bulkier usage (Section 2). Further, rather than being separated situations, many ABD occurrences impacted a significant variety of customers. For instance, the “Facebook for Android” program (Table 1-a) had a bug that avoided the cellphone from coming into the sleep method, thus depleting battery in as rapidly as 2.5 time. The approximated variety of its customers was more than 12 thousand in those days [24], among whom a large portion were likely to have been suffering from this “battery bug”.

The growing pervasiveness of ABD issues is a security consequence of an transformative change in the DG800 cellphone market. In the last few years, a new environment has appeared among devicemanufacturers, systemsoftware designers, program designers, and wireless service providers. This model move includes three aspects:

(1) The variety of third-party XIAOMI MI4 cellphone applications (or “apps” for short) has grown extremely (Google Play: 600,000 applications and 20 billion dollars downloading [47]; App Store (iOS): 650,000 applications and 30 billion dollars downloading [2]), however, most app designers are not battery-cautious. DG800 cellphone applications used to be mainly created by system producers, with appropriate training and development sources. In contrast, smart phone applications are now mostly developed by third-party or individual designers. They tend to concentrate restricted sources on app features, on which purchase choices are often created, but put less effort on energy preservation.

(2) The hardware/software configurations and exterior surroundings of XIAOMI MI4 mobile phones have become different, making it difficult and expensive to test battery usage under all circumstances. Consequently, many battery-related program insects evade examining, even by professional program groups, e.g., a bug in Android os that impacted certain Nexus One mobile phones, (Table 1-e), and a bug in iOS that triggered a coninuous cycle when sychronizing repeating schedule activities [11].

(3) In addition to program problems (e.g., Desk 1–a, b, d and e), ABD issues can also be due to configuration changes (e.g., Desk 1–c, f) or ecological conditions (e.g., Desk 1–g). In many of such situations, their main causes are not obvious to common customers. Therefore, it would be beneficial if the DG800 telephone system itself could automatically recognize ABD issues for customers.

1.2 Are Current Resources Sufficient?

Existing energy profilers, such as Android’s “Battery Usage” utility, PowerTutor [52], and Eprof [36, 35], observe energy intake on XIAOMI MI4http://www.pandawill.com/xiaomi-mi4-smartphone-3gb-16gb-snapdragon-801-25ghz-50-inch-fhd-screen-glonass-black-p91633.html mobile phones. While they provide some level of assistance to designers or tech-savvy customers in problem solving ABD issues, they are insufficient for generally dealing with ABD issues due to three main reasons:

(1) These energy tools cannot distinguish regular and abnormal energy intake. A higher energy consuming app does not necessarily cause ABD. To determine an app is “normal” or “abnormal”, a customer needs to know how much battery the app is supposed to eat, which is difficult for common customers, especially since an app’s battery usage can fluctuate even with regular usage.

(2) The details provided by this equipment requires technical background to understand and take activities on. Even for tech-savvy customers, details form this equipment are not sufficient for identifying the ABD resulting in occasion (e.g., an app upgrade). Knowing resulting in activities is critical for identifying the right main cause and identifying the best quality.

(3) As mentioned in Area 1.1, sometimes an ABD problem may be due to the underlyingOS, thereby impacting all applications. In this case, these profiling tools may not be able to shed much light on the main cause, much less be necessary to recognize a quality to an continuous ABD problem.

Apps like JuiceDefender [27] automatically make configuration changes to improve battery. They help protect energy during regular usage, but they cannot prevent or repair ABD issues.

From a user’s perspective, a highly suitable remedy is to have the smart phone itself repair ABD issues and recommend solutions with minimum customer participation. Besides helping end customers, such techniques can also gather beneficial signs for designers to easily debug their program and fix ABD-related problems in their code.

1.3 Our Contribution

This paper provides eDoctor, a realistic tool to help repair ABD issues on DG800 mobile phones. eDoctor information source usage and relevant activities, and then uses this details to recognize ABD issues and recommend solutions. To be realistic, eDoctor satisfies several goals, such as (1) low tracking expense (including both performance and battery usage), (2) great analysis precision and (3) little human participation.

To recognize abnormal app activities, eDoctor gets a concept called “phases” from previous perform in the structure community for reducing components simulator time [44, 45]. eDoctor uses stages to catch apps’ timevarying activities. It then identifies dubious applications that have significant stage activities changes. eDoctor also information activities such as app installation and developments, configuration changes, etc. It uses this details along with abnormality recognition to determine the root cause app and the resulting in occasion, as well as to recommend the best repair remedy.

To assess eDoctor, we performed a managed customer research and in-lab experiments: (1) User study: we solicited 31 Android os system customers with various configurations and usage styles. We installed eDoctor and well-known Android os applications with real-world ABD issues on their own XIAOMI MI4 mobile phones. eDoctor could efficiently recognize 47 out of 50 situations (94%). (2) In-lab experiments: we also calculated the expense of eDoctor in terms of its energy intake, storage intake and storage impact. The results show that eDoctor contributes little storage expense, and only 1.24 mW of additional energy drain (representing 1.5%of the guideline energy draw of an nonproductive phone).

Sunday, January 4, 2015

Enhancing Smart phone Resistance to Viruses Infection (7)

VI. RELATED WORK

In this section, we classify related perform into different analysis areas and compare our program with them.

Server-side security The first type of related perform include techniques that are designed to enhance the walled garden style in discovering and trimming doubtful applications (including harmful ones) from central cellular market segments. For example, Search engines presents the bouncy service in February, 2012. Besides JIAYU G4S cellphone providers, scientists also endeavor to create various techniques to expose prospective security threats from untrusted applications. PiOS [30] statically examines cell cellphone applications to identify possible leaks of delicate information; Enck et al. [32] studies free applications from the official Search engines Play with the goal of understanding wider security features of existing applications. Our program is different by suggesting a complementary client-side remedy to protect cellular mobile phones from being infected by cellular viruses.

Client-side security The second classification is designed to create minimization alternatives on cellular mobile phones. For example, cellular anti-malware software check out the applications on the gadgets depending on known viruses signatures, which limit their ability in discovering zero-day viruses. MoCFI [27] provides a CFI enforcement structure to prevent playback and control-flow strikes for Apple iOS. TaintDroid [31] expands the Android operating program structure to monitor the details flow of privacy-sensitive information. MockDroid [21], AppFence [38], Kantola et al. [42], Airmid [44], Top [45], and CleanOS [51] also rely on additions on Android operating program structure to better control apps’ accessibility prospective delicate resources. Aurasium [55] takes a different approach by repackaging untrusted applications and then implementing certain accessibility control guidelines at playback. With varying levels of achievements, they share a common assumption of a reliable Android operating program structure, which unfortunately may not be the case for advanced strikes (that could straight compromise blessed program daemons such as init or zygote). In contrast, our program represents that the Android operating program structure inside AirBag could be affected (by untrusted apps) but the loss are still contained in AirBag to prevent the local playback atmosphere being affected.

From another perspective, a variety of techniques have been suggested to extend the Android operating program authorization program. For example, Kirin [33] examines applications at set up a chance to block applications with a dangerous combination of authorizations. St. [47] makes sure guidelines in both set up efforts and run a chance to regulate the assignment as well as the use of authorizations. Stowaway [34] identifies the applications which request more authorizations than necessary. In assessment, our program is different in not straight dealing with Android operating program authorizations. Instead, we aim to minimize the threats by suggesting a individual playback that is isolated and required through a light and portable OS-level expansion.

Virtualization The third type of related perform contains latest initiatives to create or adopt various virtualization alternatives which can strengthen the security properties of cellular platforms [53]. Starting from the techniques depending on TypeI hypervisors (e.g., OKL4 Microvisor [46], L4Android [43], and Xen on ARM [39]), they may have smaller TCB but need significant initiatives to back up new gadgets and cannot easily make use of product OS popcorn kernels to back up components gadgets. In a identical vein, scientists have also used conventional Type-II hypervisor techniques on cellular mobile phones (e.g., VMware’s MVP [20] and KVM/ARM [26]). Compared to Type-I hypervisors, Type-II hypervisors might take advantage of product OS popcorn kernels to back up various components gadgets. However, it still needs to run several circumstances of guest OS popcorn kernels, which certainly increase memory footprint and power consumption. Also, the world switching operation causes additional efficiency deterioration, which affects the scalability in resource-constrained cellular cellphone surroundings.

Beside conventional Type-I and Type-II hypervisors, OS-level virtualization techniques are also being used to cellular mobile phones. For example, Tissues [19] presents a foreground/background exclusive Cubot S168http://www.pandawill.com/cubot-s168-smartphone-android-44-mtk6582-quad-core-1gb-8gb-50-inch-qhd-screen-black-p94084.html mobile phones utilization style and suggests a light and portable OS-level virtualization to multiplex cellphone components across several exclusive mobile phones. Our program differs from Tissues in two important aspects: First, as said before, Tissues is designed to accept the emerging “bring-your-own-device” (BYOD) model by supporting several exclusive JIAYU G4S cellphone circumstances in one components system. Each exclusive cellphone instance is treated equally and the solitude is achieved at the coarsegrained exclusive cellphone boundary. AirBag instead is an appcentric remedy that is designed to sustain a single cellphone utilization style and the same consumer encounter while implementing reliable solitude of untrusted applications. Second, to back up several exclusive Cubot S168 mobile phones, Tissues needs to sustain an always-on main namespace for their control and components system virtualization. In assessment, AirBag is integrated with the local playback for smooth consumer encounter without such a main namespace. At the conceptual stage, the presence of a main namespace is just like the control sector in Type-I Xen hypervisor, which could greatly affect the mobility on new cellphone models. Being a part of local program, our program can be easily ported to new gadgets with stock firmware.

In addition, scientists also explore user-level alternatives to offer individual cellular playback surroundings. For example, TrustDroid [22] enhances the Android operating program structure to offer domain-level solitude that confines the illegal information accessibility and cross-domain emails. Recent Android operating program release (Jellybean 4.2) expands the Android operating program structure to add multi-user assistance. Such a user-level remedy requires a reliable structure that is often the target for advance strikes. Moreover, these alternatives need deep modifications on the Android operating program structure. In assessment, AirBag adds a light and portable OS-level expansion to confine cross-namespace emails without affecting the local Android operating program structure, achieving back and forth interface.

Virtualization-based security The last type of the attached perform has a long stream of studies to enhance host security with virtualization: [28], [40], [41], [50], [54]. For example, Ether [28] transparently records viruses with the help of components virtualization additions. Lockdown [54] separates the playback atmosphere into trusted and untrusted with a light and portable hypervisor. These techniques benefit from a padded structure style as well as the strong solitude guarantee provided by underlying virtualization. With a decoupled playback atmosphere to transparently confine user-level applications, AirBag can be naturally combined with the above techniques for better security of Android-based cellular mobile phones.

VII. CONCLUSION

We have presented the style, execution and assessment of AirBag, a client-side remedy to significantly boost Android-based JIAYU G4Shttp://www.pandawill.com/jiayu-g4-smartphone-mtk6592-2gb-16gb-47-inch-gorilla-glass-android-42-3000mah-otg-p88087.html cellphone ability to defend against cellular viruses. By instantiating a individual app solitude playback that is decoupled from local playback and required through light and portable OS-level virtualization, our program not only allows for clear execution of untrusted applications, but also effectively stops them from dripping private details or damaging the local program. We have applied a proof-of-concept model that easily supports three associate cellular mobile phones, i.e., Cubot S168, and JIAYU G4S. The assessment results with 20 associate Android operating program viruses successfully demonstrate its functionality and effectiveness. Also, the efficiency statistic with a variety of standard programs shows that our program happens upon low efficiency expense.

Sunday, December 28, 2014

Enhancing Smart phone Resistance to Viruses Infection (6)

V. DISCUSSION

In this area, we re-visit our program style and performance for possible developments. First, the present utilization design of AirBag is to individual untrusted applications when they are being set up. While it accomplishes our style objectives, it can still be enhanced with a Lenovo P780 cellphone exclusive ability to dynamically move applications between local and AirBag-confined playback surroundings. For example, customers may want to try the new functions of recently launched applications in the AirBag without impacting the local atmosphere but “move” it to the local playback atmosphere when the app is regarded secure and constant. However, when an app is revealed to have harmful actions (e.g., texting in the background), customers can still use the app by restricting its abilities within the AirBag. Obviously, one remedy will be basically removing the app in one playback and then re-install it in another playback. However, it will reduce all inner declares gathered from past set up. A JIAYU G4S cellphone better remedy might vibrant move it from one to another. This is possible as both playback surroundings discuss the same reliable OS kernel, though in different namespaces. Possible difficulties however may consist of managing reliant collections that may be unreliable in different runtimes as well as other currently communicating applications in the past namespace.

Second, to confine untrusted app performance, our design disallows confined applications to connect with other genuine applications and support daemons operating on the local playback and the other way around. Consequently, various program activities are separated at the AirBag border. In other terms, when there is an inbound SMS or Lenovo P780 telephone contact on the local playback, such a meeting will not be spread to the AIR playback, which will impact certain performance of untrusted applications. Also, automated up-dates on AirBag-confined applications may also crack because of the present AirBag confinement. While an user-friendly remedy is to allow these activities to combination the AirBag border, it may however crack the solitude AirBag is developed to implement. From another viewpoint, we are inspired to discover a multiple strategy, which might be perfect in precisely whitelisting certain activities to successfully go through (so that we can assistance genuine function needs such as automated updates) without needlessly limiting AirBag solitude. However, if AirBag is configured to refuse all authorizations, our program could be regarded to be changed by a JIAYU G4S phonecustomized Android operating system program. However, with our program, customers can still run applications normally in the local playback on the same cellular cellphone which cannot be obtained by personalized Android operating system techniques.

Third, our present design is still restricted in assisting one individual AirBag example and several untrusted applications will need to run within the same example. This results in issues when all applications are set up as untrusted. In particular, AirBag does not offer inter-app solitude within itself. Normally, we can enhance the scalability of AirBag by dynamically provisioning several AirBag circumstances with one for each untrusted app. It does increase complicated specifications for more efficient and light and portable AIRs. Observe that our AirBag filesystem already created use of copy-on-write to keep all the up-dates in a individual information file, which should be scalable to several AirBag circumstances. However, context-aware system virtualization needs extra storage to be arranged (e.g., for sleek framebuffer assistance – Section III-B). It continues to be an exciting task and we strategy to discover possible alternatives in our upcoming perform (e.g., by utilizing components virtualization assistance in newest ARM processors).

Fourth, as an OS-level kernel expansion, our strategy needs upgrading the Lenovo P780 cellphone OS picture for the enhanced security against cellular viruses disease. While this may be an hurdle for its implementation, we claim that our program does not need strong modifications in JIAYU G4S cellphone OS kernel. Actually, our kernel spot has less than 2K collections of resource rule and most of them are relevant to general Linux system motorists, not linked with specific components gadgets in different Lenovo P780 cellphone designs. Furthermore, we can enhance the mobility of our program by applying a individual loadable kernel component that can be ideally downloadable and set up.

Fifth, for convenience, our present design does not offer the same playback atmosphere as the exclusive one. Because of that, a harmful app can probably identify the lifestyle of AirBag and prevent releasing their harmful actions. Actually, as an OS-level virtualization remedy, our program stocks with other virtualization techniques [43], [19], [35], [40], [49] by probably revealing virtualization-specific relics or foot prints. Observe that with the ability of randomly modifying the separated playback atmosphere (AIR), we are able to further enhance the fidelity of AirBag playback and create it more complicated to be fingerprinted. However, this scenario could cause to another circular of “arms competition.” From another viewpoint, if a cellular viruses efforts to prevent releasing its strikes in a virtualized atmosphere, our program does accomplish the developed objective by combating or stopping its disease.

Last but not least, with a decoupled app solitude playback to transparently assistance untrusted applications, AirBag reveals up new possibilities that are not formerly possible. For example, our present profiling method generally gathers logcat outcome as well as various syscalls from AirBag. However, it does not need to be restricted in primary log selection. For example, latest growth on exclusive device more self examination [35], [40], [29], [36], [56] can be used in AirBag to accomplish better more self examination and tracking abilities. Moreover, it also provides better methods to incorporate with present cellular anti-virus application so that they can effectively observe playback actions without being restricted in only statically checking untrusted applications.

Tuesday, December 23, 2014

Enhancing Smart phone Resistance to Viruses Infection (5)

II. SYSTEM DESIGN

A. Style Objectives and Risk Model

Our product is designed to fulfill three requirements. First, AirBag should successfully confine untrusted applications such that any damage they may have would be separated without affecting the local Lenovo P780 Smartphone Android 4.4 5.0 Inch cellphone atmosphere. The difficulties for recognizing this objective come from the essential awareness design behind Android os, which indicates that any app is allowed to connect with other applications or system daemons operating in the XIAOMI Redmi 1S Smartphone Snapdragon 400 cellphone (through built-in IPC mechanisms). In other terms, once a harmful app is set up, it has a extensive strike area to launch the strike. The existence of benefit escalation or ability flow weaknesses [37] further reduces the confinement need.

Second, AirBag should accomplish safe and smooth consumer encounter throughout the life expectancy of untrusted applications, from their set up to elimination. Specifically, from the user’s viewpoint, AirBag should prevent running into extra pressure on customers. Correspondingly, the task to fulfill this objective is to transparently instantiate AirBag’s app solitude playback when an untrusted app is being set up and easily modify different playback surroundings when the untrusted app is being released or ended.

Third, because AirBag is implemented in resource-constrained cellular phones, it should remain light and convenient and present little efficiency expense. Moreover, AirBag should be generically convenient to a range of cellular phones without depending on special components or functions (that may be limited to certain Lenovo P780 Smartphone Android 4.4 5.0 Inch cellphone models).

Threat Design and Program Supposition We believe the following attacker model while developing AirBag: Users will obtain and set up third-party untrusted applications. These applications may make an effort to manipulate weaknesses, especially those in blessed system daemons such as Zygote. By doing so, they could cause loss by either getting illegal accessibility various resources or destroying certain XIAOMI Redmi 1S Smartphone Snapdragon 400 cellphone features in a way not allowed by the customer or not known to the customer.

Meanwhile, we believe a reliable Lenovo P780 Smartphone Android 4.4 5.0 Inch smart phone OS kernel, such as our light and convenient OS expansion to back up separated namespace and virtualized resources. As a client-side remedy, AirBag depends on this assumption to set up necessary reliable processing platform (TCB). Also, such assumption is distributed by other OS-level virtualization research initiatives [43], [19]. With that, we consider the threat of corrupting OS popcorn kernels drops outside the opportunity of this work.

B. Allowing Techniques

In Figure 1, we show the summary of AirBag to confine untrusted applications and its evaluation with traditional Androidbased systems. The confinement is mainly obtained from three key techniques: decoupled app solitude playback (AIR), namespace/filesystem solitude, and context-aware system virtualization.

1) Decoupled App Isolation Runtime (AIR): Due to the awareness style of Android os, all applications discuss the same Android os playback and consequently any app is allowed to connect with other applications on the XIAOMI Redmi 1S Smartphone Snapdragon 400 cellphone. As said before, from the protection viewpoint, this reveals a extensive strike area. In AirBag, to reduce the strike area and prevent affecting the unique Android os playback, we select to decouple the untrusted app efficiency from it. A individual app solitude playback that allows applications to run on it and has (almost) no connections with the unique Android os playback is instantiated for untrusted app efficiency.

There are several benefits behind such a design: First, by offering a regular Android os subjective part that will be invoked by third-party Android os applications, AIR successfully guarantees proper efficiency of untrusted applications without affecting the unique Android os playback. Second, by design, AIR does not need to be reliable as it might be possibly affected by untrusted applications. Third, a individual app solitude playback also allows for personalization to back up different operating ways (Section II-C). This is necessary as AIR mainly includes essential Android os structure sessions and other assistance daemons that are assigned to manage various Lenovo P780 Smartphone Android 4.4 5.0 Inch cellphone resources (e.g., system ID) or functions (e.g., sensors). Consequently, they likely accessibility personal or delicate details that could be of concern when being revealed to untrusted applications.

2) Namespace/Filesystem Isolation: With a individual Android os playback to variety untrusted applications, AirBag also provides a different namespace and filesystem to further limit and separate the abilities of procedures operating within. Because of namespace and filesystem solitude, an untrusted app within AirBag is not able to “see” and communicate with other procedures (e.g., genuine applications and system daemons) operating outside. Actually, all procedures operating within have their own view of operating PIDs, which is completely different from exterior procedures. Moreover, to proactively contain possible loss, AirBag has its own filesystem different from the regular system. For storage efficiency, we substantially make use of unionfs [48] to write AirBag’s filesystem and separate modifications from untrusted applications.

To intricate, when an Android os product is packed, a variety of assistance procedures or daemons (e.g., vold, folder and servicemanager) are created. Inside AirBag, we in the same way launch the same part of procedures but team them in their own cgroup [24]. By doing so, they are avoided from monitoring and getting procedures in another team (i.e., procedures in the unique local Android os system). The cgroup idea significantly helps AirBag management. Specifically, the set of procedures within AirBag is typically revoked until one untrusted app is being set up or released. The recently set up untrusted app will instantly become a member of this cgroup. Consequently, we can easily hold the whole cgroup when no untrusted app is effective to reduce the impact or reduce the efficiency and power consumption. Note that cgroup is offered by the OS kernel and is believed to be reliable.

3) Context-Aware Device Virtualization: The existence of a individual AIR and namespace in AirBag unavoidably makes contentions for actual resources, even though AirBag delineates a border and by standard disallows any connections from within to outside and the other way around. To take care of the argument, there is a need to multiplex various resources. In our design, we develop a light and convenient OS-level expansion to mediate and multiplex the accesses from local and AirBag runtimes.

As an example, assume two applications need to upgrade the display at the same time. Typically, a single assistance daemon SurfaceFlinger is in charge of synthesizing details from different resources (including these two apps) and producing the final outcome to be provided on the product display. However, with AirBag, these two applications run in two different runtimes and they will not discuss the same SurfaceFlinger assistance. Instead, AirBag has its own SurfaceFlinger assistance which will individually upgrade the display.

Our remedy is to virtualize components gadgets in a contextaware manner. Specifically, our light and convenient OS expansion contributes necessary multiplexing and demultiplexing systems in place when the actual components gadgets are being utilized. Also, our expansion keeps track of the current “active” Android os playback (or namespace) and always allows the effective playback to accessibility the components resources. Observe that an Android os playback is effective if an app on it keeps the focus, i.e., the customer is currently getting the app. To maintain the same consumer encounter, we stop an customer to at the same time communicate with two applications in different runtimes. Consequently, in any particular moment, you can find at most one effective playback. Meanwhile, to beautifully handle controversial accessibility from non-active playback, we take different strategies platform on the characteristics of appropriate components resources. For example, for touch-screen and control buttons, any press/release event will always be sent to the effective playback only. For display upgrade, as the framebuffer system car owner works real DMA functions from a storage area to the LCD operator components, we accordingly prepare two individual storage sections such that each atmosphere can individually provide different outcome without interfering each other. The framebuffer car owner can then select the effective storage area to perform DMA and thus have an real accessibility the LCD operator components.

C. Additional Capabilities

Beside the above key methods, we also developed extra abilities to accomplish the confinement and improve consumer encounter.

1) Incognito/Profiling Modes: The decoupled AIR to variety untrusted applications offer unique possibilities for its personalization. Specifically, to prevent personal details disclosure, we present the anonymement method that basically equipment the AIR to remove any delicate details such as IMEI variety, XIAOMI Redmi 1S Smartphone Snapdragon 400 contact variety, and connections. For example, the device’s IMEI variety can be normally recovered by applications through the solutions offered by the Android os structure. When coming into the anonymement method, such solutions are configured to return photoshopped IMEI variety to the contacting app. Therefore, the separated app transparently continues with bogus details without extra threats. Also, AirBag makes a individual main filesystem that allows for convenient “restore to default” to reverse loss from untrusted applications. Moreover, we also offer profiling method that basically records the efficiency track of untrusted applications. The track is mainly gathered in terms of Android-specific logcat, which changes out to be very helpful for viruses research (Section IV).

2) User Confirmation for Sensitive Operations: The decoupled AIR also provides exciting possibilities to further limit the abilities of separated applications. For example, a harmful app may make an effort to stealthily send SMS sms information to certain premium-rate numbers or record your Lenovo P780 Smartphone Android 4.4 5.0 Inch cellphone discussion. When such an app operates within AirBag, the accessibility related cellphone functions (e.g., stereo, audio, and camera) will instantly induce customer interest for acceptance. In other terms, the stealthy actions from these applications will now be taken to customer interest and the customer also has the choice to stop it. It is exciting to see that the latest Android os launch, i.e., Jellybean 4.2, presents a built-in protection function called top quality SMS confirmation [2] to prevent viruses to holder up XIAOMI Redmi 1S Smartphone Snapdragon 400 cellphone bills. While accomplishing similar goals, AirBag is different in reducing the accessibility certain cellphone functions outside the AIR atmosphere, thus offering more powerful sturdiness than any within solutions (as the inner built-in function can be possibly affected by untrusted applications for circumvention).

3) Seamless Integration: To accomplish smooth consumer encounter, AirBag presents little customer connections when an app is being set up or released. Specifically, when an untrusted app is being set up (or sideloaded), AirBag will immediate customer with a (default) choice to set up it within AirBag. If selected, AirBag basically notifies its own PackageInstaller to start the set up. Lenovo P780 Smartphone Android 4.4 5.0 Inch cellphone that for an app downloadable from Internet, the Android os DownloadManager will store it in a specific listing located in microSD. In our model, we select to trade this listing read-only to AirBag so that its PackageInstaller can accessibility it for set up. For enhanced consumer encounter, AirBag will be set up as the standard PackageInstaller. Inside AirBag, we have a daemon that pays attention to the control from it to punch off inner app set up. In other terms, the separated applications are actually set up in the AirBag instead of the unique Android os playback. Moreover, for any app being set up within AirBag, AirBag will instantly create an app stub that keeps the same symbol from the unique app. (To indicate the point that it is actually within AirBag, we will connect a secure sign to the symbol.) When the app stub is invoked, AirBag will be notified to easily launch the real app such that the customer would feel just like invoking a regular app (without recognizing the truth it is actually operating within AirBag). By doing so, the AIR becomes effective and the unique Android os playback goes to non-active. Once the customer selects to cancel the app, the unique Android os playback is started again back to effective.

Thursday, December 18, 2014

Enhancing Smart phone Resistance to Viruses Infection (4)

C. Decoupled App Isolation Runtime

With a separate app isolation runtime, we have the opportunity to customize it to better confine untrusted apps without affecting the original native runtime. As mentioned earlier, we build the AIR by customizing Android Open Source Project (AOSP 4.1.1) to export the same interface while in the meantime allowing users to choose different running modes. In particular, the AIR’s root directory is relocated with the pivot_root system call (so that any write operation issued in AirBag would not corrupt the original files in the firmware). Specifically, we build a JIAYU G4S Smartphone MTK6592 unionfs [48] that copyon-writes all updates in a file-based ext4 disk image and uses a base filesystem as a squashfs image for read-only operations. Such an organization enables us to readily provide the “restore to default” feature, which essentially removes the dirty file-based ext4 disk image. Also, our system eliminates all potential personally-identifying information from AIR for the “incognito” mode. For instance, the Android API TelephonyManager.getDeviceId() has been instrumented to return a faked IMEI number.

The layered design of AOSP also provides the opportunity to profile app behavior. For example, while analyzing a DG800 phone malware, we usually leverage logcat, to record various Android API calls we are interested in. We note that the collected log entries are pushed down from the namespace in which the untrusted app runs, which does lead to the concern of trustworthiness of collected log. However, from another perspective, the actual dumped message is maintained by the kernel-level log driver, which is assumed to be trusted (Section II). Moreover, the profiling mode will turn on the systemtap support [16] to record syscalls from AirBag (with confined apps) to external SD card for in-depth analysis.

In addition, our system also instruments the AIR to prevent untrusted apps from performing stealthy actions (e.g., sending SMSs to premium-rate numbers). In particular, by modifying the Android API in com.android.internal.telephony .RIL class, the untrusted app running inside AirBag mode is prevented from performing any stealthy telephony action. Further, thanks to the cgroup abstraction, we could whitelist the devices for AirBag access. Specifically, before starting the AirBag namespace, we can write each allowed device file name with the corresponding permission to the cgroups virtual filesystem (e.g. /cgroup/airbag/devices.list). After that, all the access to the device files not listed in the white-list would be automatically blocked.

To maintain transparency, our scheme is seamlessly integrated with the native system without breaking user experience. Specifically, when the system boots up, the AirBag environment is automatically initiated and then suspended. Its suspension will be removed in two scenarios when the user either (1) dispatches an app to it for isolation or (2) launches a JIAYU G4S phone previously isolated app. In the first case, our customized PackageInstaller automatically guides the installation procedure by simply adding an “isolate” button (Figure 4(a)). For each isolated app, our system will register an “app stub” in the native Android runtime. In Figure 4(b), we show the example app stub for an isolated game app (com.creativemobi.DragRacing). For comparison, we also install the same game app inside the native runtime. The difference in their icons is the addition of a DG800 Smartphone Creative Back Touch Android 4.4 lock sign on the icon associated with the isolated app. When the user clicks the app stub, AirBag is activated to execute the isolated app, which transparently marks native runtime inactive and thus yields underlying hardware accesses to AirBag. When the app terminates, AirBag would make itself inactive and seamlessly bring the native runtime up-front.

D. Lessons Learned

In the process of developing our early prototype on JIAYU G4S phone, we encounter an interesting problem that a benchmark program running inside the AirBag always scores one fourth of normal system, which indicates that AirBag only utilizes one of the four available CPU cores. After further investigation, it turns out that DG800 phone has a CPU hotplug mechanism that can dynamically put CPU cores online or offline based on the workload of the whole system. However, due to a bug [8] in Linux kernel 3.1.10, the CPU online events are not properly delivered to AirBag, which then fails to scale up the computation power when AirBag is fully loaded but the native runtime is idle. We then backport the patches from mainline Linux kernel [10] to have AirBag informed about the status of available CPU cores whenever a CPU core is online or offline.

Another issue we encountered in our prototype is related to the low-memory killer, which will be waked up to sacrifice certain processes when the system is under high memory pressure. As our prototype supports two concurrent namespaces, the unknowing low-memory killer may pick up a process from the active namespace as victim for termination, which greatly affects user experience. Therefore, our prototype adjusts the algorithm and makes it in favor of choosing processes from inactive runtime as victims to maintain responsive user experience.