parse_smsdb
Extracts iMessage, RCS, SMS/MMS chat history from iOS database file.
Description
This tool parses sms.db originated from iOS devices and outputs a CSV (common-separated value) table with annotations useful for forensic examination.
Features:
- Highlight row gaps (indicative of deletions)
- Annotate unsent messages
- Flattens edited message data on to root table for easy review
- Output message read time and annotate unread messages (for services supporting read receipts)
- Generate HTML or CSV output file
Getting Started
Prerequisites
Windows
- nil
macOS / Linux
- Python 3.10+
Installation
Windows
- Download https://github.com/h4x0r/parse_sms.db/releases/download/v0.1.8/parse_smsdb-win-x64-0.1.8.zip
- Extract
parse_smsdb.exefrom the downloaded zip file and put it inC:\Windows\system32
macOS / Linux
- Install from PyPI
pip install parse_smsdb
Usage
- Parse sms.db within a .zip archive, e.g.
parse_smsdb 'IACIS Certified Mobile Device Examiner (ICMDE)/03 iOS/iOS Files/Evidence/506 - Editing SMS iOS 16.zip'
- Parse sms.db, e.g.
parse_smsdb 'private/var/mobile/Library/SMS/sms.db'
- Generate HTML File, e.g. (By default will generate CSV file)
parse_smsdb sms.db -o file.html
Version History
- 0.1.8
- Initial beta release
Contact
Albert Hui | albert@securityronin.com | @4n6h4x0r.bsky.social
Project Link: https://github.com/h4x0r/parse_sms.db
Acknowledgments
- IACIS MDF Training Course and Jung Son's teaching
- Magnet Forensic's blog posts: The Meaning of Messages, and A look into iOS 18's changes
- Chirag Mehta for output to file and HTML output format
Metadata
Release files for parse-smsdb 0.1.14
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| parse_smsdb-0.1.14.tar.gz | 728.9 kB | Without provenance | Details for parse_smsdb-0.1.14.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| parse_smsdb-0.1.14-py3-none-any.whl | Python 3 | none | any | Details for parse_smsdb-0.1.14-py3-none-any.whl |
Total release size: 736.0 kB
Release files / parse_smsdb-0.1.14.tar.gz
| Download URL | parse_smsdb-0.1.14.tar.gz |
|---|---|
| Size | 728.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c06cc66d8d9254deb08275413124e3137ed5892e794f07ae90c51e2b8d1afb01
|
|
BLAKE2b-256 checksum How to use checksums |
b5a34381328224b26bad7b8383303a7cafe2e508cdff10a859a601ad12270b47
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.13.2
|
Release files / parse_smsdb-0.1.14-py3-none-any.whl
| Download URL | parse_smsdb-0.1.14-py3-none-any.whl |
|---|---|
| Size | 7.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bb2d13c0c64e05b45d91b313acbb77daddd8e62494da1dac13816d953aa0cb78
|
|
BLAKE2b-256 checksum How to use checksums |
34cc2cbc904753192bc25a67f71c82bf03aa6fc774ebae890af5899331253972
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.13.2
|
Security for parse-smsdb 0.1.14
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.