
Explore why information security matters for business, protecting information as an asset and systems from unauthorized access, disclosure, disruption, modification, or destruction.
Explore mobile first and state-of-the-art technology, and why mobile dominates today globally. Explore smartphones to wearables and internet of things, learn trends, mobile payments, and the need for security.
Discover why mobile security matters for Android apps. Get an intro to the OWASP top 10 mobile risks and key protections like secure storage, transport layer protection, authentication, and cryptography.
Learn basic terminologies in information security, including threats, vulnerabilities, attacks, controls, and malware types (virus, trojan, spyware) with practical e-commerce and mobile app contexts.
Learn the CIA triad—confidentiality, integrity, and availability—and how these pillars secure information with cryptography, access controls, backups, and disaster recovery.
Learn the fundamentals of cryptography, including encryption and decryption, plaintext and ciphertext, and how keys secure data confidentiality and integrity in both symmetric and asymmetric schemes.
Explore hashing and digital signatures to learn how hash functions transform text into fixed-length values, enable fast data retrieval, and ensure data integrity and authentication with public-key cryptography.
gain an understanding of digital certificates and public key infrastructure (PKI), and how certificate authorities prevent man-in-the-middle attacks by binding public keys to identities through digital signatures.
Explore how SSL and TLS establish a channel via a client–server handshake that negotiates cipher suites and certificates. Understand how certificates authenticate peers and generate shared keys for encrypted communication.
Explain denial of service and distributed denial of service attacks, their flooding of targets and impact on availability. Identify symptoms, attack families, bots, defenses like firewalls and intrusion prevention systems.
Master the triple-a framework of authentication, authorization, and accounting to control access and enforce policies. See how logins, credentials, and auditing track user activity and resource usage.
Learn how passwords are exposed, and how to create strong, unique passwords—using passphrases—to defend against brute force attacks, data breaches, and account compromise with password managers.
Explore access control concepts, including physical and logical protections, identification, authentication, authorization, and accountability. Learn the four main categories—MAC, DAC, and rule-based and role-based controls.
Explore Android, a free, open-source Linux-based operating system developed by Google. Understand its dessert-named version history and learn to identify and fix security vulnerabilities in apps.
Explore how Android boots: from bootloader to kernel, init, zygote, and system server, through service manager to the home screen and app launch.
Explore android architecture from the linux kernel to the app framework. Learn how baldric virtual machine, the android runtime, and core services like activity manager enable app development.
Explore android data structure and file system concepts, including internal and external storage, /data/data package directories, adb access, and app data components like cache, databases, and shared preferences.
Explore android's logging system, including kernel buffers and the main, events, radio, and system logs, and learn how Logcat and the standalone Lockart tool capture and display these messages.
Explore how Android apps are built and packaged as APK files, inspect dex and resources, and understand activities, services, broadcast receivers, content providers, intents, permissions, and shared preferences.
Explore Android security modeled on the Linux kernel, featuring per-app sandboxing with unique user IDs. Learn how signing and permissions protect data and how rooting can break the sandbox.
Discover how Android isolates apps with a permission model declared in the Android manifest, and how install-time prompts and platform permissions govern access to storage and network.
Examine mobile security compliance for Android apps, covering PCI DSS, HIPAA, and FIPS standards, and discuss how open-source Android and sandboxing influence policy enforcement.
Google bouncer is a cloud-based scanning system that analyzes android market apps for malware. It runs in Google's cloud, checks behaviors, and prevents malicious apps from entering google play.
Explore Eclipse IDE and Android Studio as Android development tools, learn to set up Android Virtual Device Manager and SDK Manager, create hello world projects, and test apps on emulators.
Learn how Android debug bridge enables client–server communication with emulators and devices, install apps, transfer files, run shell commands, and forward ports for testing.
Explore Android app security testing with UIAutomator and MonkeyRunner, performing black box tests, inspecting the UI layout, retrieving state, and generating automated gestures to reveal bugs.
Learn the differences between an Android emulator and a real device, including Android version, performance, root access, and pre-installed software, and how to test apps.
Enable USB debugging on an Android device via developer options and build number, connect via USB, then use adb shell to interact and adb pull or push files.
Learn to enable SSH on Android devices, authenticate securely, and use desktop clients for encrypted remote access and file transfer via a secure shell.
Learn to use vnc to remotely view and control an Android device via a VNC server and a computer client, with authentication and the RFB protocol for secure access.
Explore how rooting Android devices grants privileged access and admin privileges, enabling custom ROMs, apps, and system modifications. Learn the risks, bootloader considerations, and security tradeoffs of rooting.
Set up a proxy between the Android emulator and the web to intercept traffic, configure the proxy listener with the machine's IP, and enable request interception.
Set up a proxy on an Android device to intercept traffic with Burp Suite, configure ProxyDroid with the host and port, and enable app-specific proxy.
Install the ca certificate from burp suite on android devices and emulators to trust proxies and intercept ssl traffic for testing.
Demonstrate a man-in-the-middle attack on local network traffic using arp spoofing to intercept between a mobile emulator and the gateway, using Wireshark to capture clear-text credentials.
Examine how a man-in-the-middle attack intercepts traffic between a mobile device and gateway, using ssl strip to downgrade https to http and capture credentials in clear text.
Learn beginner-friendly techniques to test Android app security by intercepting and manipulating traffic with Burp Suite proxy, revealing bugs and vulnerabilities.
apk files are zip-based packages for Android apps, containing classes.dex, resources, and the manifest; signing certificates and sha hashes aid reverse engineering of activities, intents, services, and content providers.
Explore reverse engineering of Android apps by turning unreadable bytecode in apk files into readable Java source, using decompiling tools and automated workflows to decompile, modify, and rebuild apps.
Learn to reverse an Android app by converting a dex file to a jar and decompiling it with jadx to reveal readable source code.
Explain how to use APKTool to decompile Android apps, view and modify smali and manifest files, rebuild a new APK, sign it, and upload to the Android market.
Explore how Android malware infiltrates Google Play by disguising as legitimate apps, stealing data and controlling devices, with real examples like Wireless Shield, Camera Vision, and Android dot A.
Compare static analysis and dynamic analysis for Android malware, inspecting code offline and testing runtime behavior, using reverse engineering skills and network traffic tools.
Learn static analysis of Android malware by using reverse engineering tools to reconstruct code, inspect Android manifest permissions and background services, and examine decompiled binaries and encrypted data.
Explore Android security testing with the Android demo VM, employing reverse engineering and malware analysis tools to audit mobile apps in a Linux-based environment.
Learn how to perform dynamic analysis of Android apps using DroidBox, examining network traffic, file operations, permissions, cryptography, and behavior graphs, and how to read the resulting report.
Perform dynamic analysis of Android malware with DroidBox, observing runtime behavior, network activity, and file operations in a sandboxed emulator.
Explore Android app types—web-based, native, and hybrid—and learn how to intercept and test native and web-based applications in introductory Android penetration testing.
Set up an Android emulator and Burp Suite proxy to fuzz apps, intercept requests, and identify cross-site scripting vulnerabilities in a sample banking app.
Fuzz android apps with burp intruder to uncover eskil injection vulnerabilities. Intercept traffic via proxy, configure emulator settings, and craft payloads to bypass authentication on a web-based mobile app.
Learn how authentication can be bypassed in a sample Android app, identify vulnerabilities linked to exported attributes, and apply mitigations like restricting access with custom permissions.
Explore how content provider leakage exposes app data via exported content providers and URIs. Fix by setting the Android manifest exported attribute to false and enforcing permissions.
Learn how client-side sql injection in android apps exploits user input through dynamic or concatenated queries to bypass local authentication, then fix it with parameterized queries and input validation.
Examine insecure data storage in Android apps, focusing on shared preferences storing credentials in clear text and other storage options. Encrypt key-value data with crypto libraries and use password-based encryption.
Demonstrates insecure data storage with sqlite databases, where usernames and passwords are readable from the database file. Highlights encryption as the fix to protect sensitive app data.
Expose unintended data leakage in Android apps through insecure data storage, logs, content providers, clipboard, cookies, and third-party analytics, and explain how attackers can exploit these side-channel leaks.
Examine how broken cryptography in Android apps arises from weak algorithms and faulty implementations, including hashes, encoding, and hardcoded keys, and demonstrate why password-based encryption and proper key management matter.
Explore automated android security assessments using Drozer, connecting a console to an agent on a device via port forwarding, identify exported activities, and practice authentication bypass on a demo app.
Learn to use metasploit to exploit android devices, create a backdoor, and establish a reverse shell, using payloads and msf console to assess android app security.
Explore Android device protection by configuring screen locks—passwords, pins, and patterns—and locking apps with app lock, while learning to avoid saving passwords to browsers or online services.
Explore how attackers bypass Android screen locks through smudge pattern analysis, deletion of gesture data, and updating lock databases, highlighting implications for device security and defense.
Explore Android data extraction techniques, including accessing shared preferences, internal and external storage, and app databases, with a practical demo on extracting an email app database.
Explore how Android devices can act as a mobile penetration testing platform, introducing popular hacking apps for network discovery, sniffing, login cracking, session hijacking, and dos testing.
Discover how to use the Pwn Pad on Nexus 7, a commercial penetration testing tablet with 100+ open-source tools for Android app security, wireless network testing, and man-in-the-middle capabilities.
Install Kali Linux on Android with Linux Deploy, sourcing rooting and storage prerequisites, and use built-in tools like nmap, wireshark, John the Ripper, and Metasploit for penetration testing.
Learn practical android security practices to protect data on your device, including strong passwords, app locking, permission checks, secure networks, backups, and remote tracking and wipe options.
Review the core concepts of Android app security, including confidentiality, integrity and availability, cryptography and digital signatures, Android security model, testing tools, and dynamic and static analysis.
If you at any point of time in your career or academia surfaced information security, you know for a fact that security analysis is not only about thorough understanding of a system but also includes a good list of tools and techniques to analyze that particular system. Unlike network and web, mobile security is a recent phenomenon. In order to analyze mobile application, one should understand the underlying architecture, security model, development frameworks and the relevant tools.
This course deals with applications within the most widely used mobile OS, Android. The course introduces underlying Android architecture, its permission model and the default security measures in place. It deals with developer tools like Eclipse, Android Studio, Android Debug Bridge or ADB, UI Automator and Monkey Runner, along with tools and techniques for Network Analysis.
As a part of reversing and malware analysis, static and dynamic techniques have been discussed. Pentesting an Android App is has also been discussed. Issues like unintended data leakage, insecure data storage and tools like Burp Intruder & Metasploit have also been covered. The course concludes by discussing Android best practices for security.
To conclude, this course deals with Android security concepts and discusses the relevant tools in detail to exploit an Android application.