Skip to content
/ igoat Public

OWASP iGoat - A Learning Tool for iOS App Pentesting and Security by Swaroop Yermalkar

License

Notifications You must be signed in to change notification settings

OWASP/igoat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GSOC 2019


Select the OWASP iGoat Version: Swift 4 Objective C

iGoat (Objective C) was presented at: AppSec USA 2017   c0c0n 2017   SEC-T 2017   BruCON 2017   Bugcrowd Levelup 2017

OWASP iGoat - A Learning Tool for iOS App Pentesting and Security Twitter Follow

iGoat is a learning tool for iOS developers (iPhone, iPad, etc.) and mobile app pentesters. It was inspired by the WebGoat project, and has a similar conceptual flow to it.

As such, iGoat is a safe environment where iOS developers can learn about the major security pitfalls they face as well as how to avoid them. It is made up of a series of lessons that each teach a single (but vital) security lesson.

The lessons are laid out in the following steps:

  1. Brief introduction to the problem.
  2. Verify the problem by exploiting it.
  3. Brief description of available remediations to the problem.
  4. Fix the problem by correcting and rebuilding the iGoat program.

Step 4 is optional, but highly recommended for all iOS developers. Assistance is available within iGoat if you don't know how to fix a specific problem.

Documentation: iGoat Guide

Project Details

Page - https://www.owasp.org/index.php/OWASP_iGoat_Tool_Project

Project Lead - Swaroop Yermalkar (@swaroopsy)

Twitter - (@OWASPiGoat)

Lead Developer - Anthony Gonsalves

Vulnerabities Covered (version 3.0):

  • Key Management

    • Hardcoded Encryption Keys
    • Key Storage Server Side
    • Random Key Generation
  • URL Scheme Attack

  • Social Engineering

  • Reverse Engineering

    • String Analysis
  • Data Protection (Rest)

    • Local Data Storage (SQLite)
    • Plist Storage
    • Keychain Usage
    • NSUserDefaults Storage
  • Data Protection (Transit)

    • Server Communication
    • Public Key Pinning
  • Authentication

    • Remote Authentication
  • Side Channel Data Leaks

    • Device Logs
    • Cut-and-Paste
    • Backgrounding
    • Keystroke Logging
  • Tampering

    • Method Swizzling
  • Injection Flaws

    • SQL Injection
    • Cross Site Scripting
  • Broken Cryptography

How to countribute?

  • You can add new exercises
  • Testing iGoat and checking if any issues
  • Suggest us new attacks
  • Writing blogs / article about iGoat
  • Spreading iGoat :)

To contribute to iGoat project, please contact Swaroop ( swaroop.yermalkar@owasp.org or @swaroopsy )

Project Contributors -

  • Anthony Gonsalves
  • Junard Lebajan (@junard)
  • Ken van Wyk
  • Arun @he_hacks
  • Jonathan Carter
  • Heefan
  • Tilak Kumar
  • Bernhard Mueller
  • Sagar Popat
  • Chandrakant Nial
  • Valligayatri Rachakonda
  • Suraj Kumar
  • masbog
  • Cheena Kathpal
  • Matt Tesauro