Skip to content

Technical Overview

Security: Pwned. edited this page May 6, 2015 · 30 revisions

This documentation is especially for developers who want to join our project and for everybody else who would like to know how AIMSICD detects IMSI-Catchers, silent SMS and other threats. Important Note: Due to its complexity, this is a work in progress.

Index


###Basic Modules and I/O:

Program Modules


###Database Tables: (Current Behavior)

AIMSICD utilizes several tables in a single SQLite3 database in aimsicd.db to keep track of all the network changes and the downloaded Open Cell ID (OCID) data. When you're making a file backup of the AIMSICD database, you're actually saving the various tables into individual <tablename>.CSV files, which can be updated manually or externally.

All mentioned sqlite commands are properly documented on the SQLite website.

Database Tables

DEFAULT_MCC_TABLE (Mobile Country Code)

This table holds data to identify your service provider (carrier) and country.

CELL_TABLE

These are the unique BTS towers as collected by the phone, once it has connected to it (ignoring neighboring cells).

LOCATION_TABLE

These are the individual measurements as collected when in Tracking Cell Details mode. The location (Lat/Lng) of the phone and the Cell-ID it is connected to + timestamp.

OPENCELLID_TABLE

Downloaded DB from OpenCellID.

SILENT_SMS_TABLE

Protocol of incoming messages.


Database Tables: (New Proposal)

New Database Tables

Accessing the Databases

  • From a PC
adb shell
su
sqlite3 /data/data/com.SecUpwN.AIMSICD/databases/aimsicd.db
  • From a Terminal Emulator within Android
    • (Note: You may need to install sqlite3 binaries)
su
sqlite3 /data/data/com.SecUpwN.AIMSICD/databases/aimsicd.db

To be updated

  • CELL_TABLE: Data collected by the phone when it is connected to a cell. (not from the table neighboring cells).
  • LOCATION_TABLE: These are the individual measurements as collected when in Tracking Cell Details mode. The location (Lat/Lng) of the phone and the Cell-ID it is connected to + timestamp.

Other important details:

We display the Neighboring Cell information in two ways:

  1. through telephony manager methods which does not work on Samsung Devices
  2. a fallback is available through the methods developed by Alexey (Data is saved in an Array not in an table)

Further information about the actual status: Development-Status

Clone this wiki locally