Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Mobile Hacking

Mobile Hacking

Roadsec 2022

Daiane Santos

July 16, 2022
Tweet

More Decks by Daiane Santos

Other Decks in Programming

Transcript

  1. ! Opinions expressed are solely my own and do not

    express the views or opinions of my employer. disclaimer
  2. - about me - introduction - surface attack - server-side

    attacks - client-side attacks - reversing android - thanks Agenda
  3. server-side vulnerabilities Most of the communication between an application and

    a user occurs through a server, as it is the server that stores and processes all the data that enables the application to run: authentication data, business data, financial or transactional data, personal data, etc.
  4. > Weak Server-Side Controls > Insecure Data Storage > Insufficient

    Transport Layer Protection > Poor Authentication and Authorization > Broken Cryptography > Security Decisions via Untrusted Inputs > Improper Session Handling server-side vulnerabilities
  5. > Injections > Local Storage > Web Messaging > WebSockets

    > ClickJacking > Cross-origin Resource Sharing (CORS) -> CSRF Client-Side Attacks
  6. API calls or endpoints understanding the way some security controls

    are implemented root detection -> SuperUser hardcoded sensitive information inside the code backdoor accounts, API keys and secrets, passwords... interesting strings points of encryption and obfuscation so we can decrypt and de-obfuscate What we are looking for? reversing
  7. Activities: Components that provide a screen with which users can

    interact. Broadcast receivers: Components that receive and respond to broadcast messages from other apps or from the operating system. Services: Components that perform operations in the background. reversing
  8. other files classes.dex resources.arsc This file contains the Dalvik Bytecode,

    this file is executed when an app runs. The file acts like an index of all mentioned resources.
  9. other files lib/ assets/ res/ Directory with all resources, activities

    xmls, layouts, images... Composed by native libs of the application. Adicional libs and other files that are necessary to app.
  10. attacks on activities If an application has an activity that

    is exported, other applications can also invoke it. <activity android:label="@string/profile" android:name=".activities.ViewProfile" android:exported="true" /> This can be invoked by other malicious applications that are running on the device.
  11. attacks on broadcast receivers That means any application will be

    able to send arbitrary, uncontrolled SMSs.