{"id":15374424,"url":"https://github.com/ivan-sincek/property-lister","last_synced_at":"2025-04-15T12:31:25.451Z","repository":{"id":142649906,"uuid":"613879997","full_name":"ivan-sincek/property-lister","owner":"ivan-sincek","description":"Extract and convert property list files from SQLite database files and from other property list files.","archived":false,"fork":false,"pushed_at":"2025-03-17T10:12:38.000Z","size":70,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-28T21:02:30.296Z","etag":null,"topics":["bug-bounty","cache","convert","database","ethical-hacking","extract","ios","ios-penetration-testing","mobile","mobile-penetration-testing","offensive-security","penetration-testing","plist","property-list","python","secrets-finder","secrets-management","security","sensitive-files","xml"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ivan-sincek.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-03-14T13:06:18.000Z","updated_at":"2025-03-17T10:10:55.000Z","dependencies_parsed_at":"2024-10-16T14:01:03.509Z","dependency_job_id":"5aa5cc64-7467-41fb-8744-4d030d30cdaa","html_url":"https://github.com/ivan-sincek/property-lister","commit_stats":{"total_commits":2,"total_committers":1,"mean_commits":2.0,"dds":0.0,"last_synced_commit":"903793206090be1992821bc1d1d0685155b3e661"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ivan-sincek%2Fproperty-lister","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ivan-sincek%2Fproperty-lister/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ivan-sincek%2Fproperty-lister/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ivan-sincek%2Fproperty-lister/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ivan-sincek","download_url":"https://codeload.github.com/ivan-sincek/property-lister/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249072197,"owners_count":21208135,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bug-bounty","cache","convert","database","ethical-hacking","extract","ios","ios-penetration-testing","mobile","mobile-penetration-testing","offensive-security","penetration-testing","plist","property-list","python","secrets-finder","secrets-management","security","sensitive-files","xml"],"created_at":"2024-10-01T13:58:45.751Z","updated_at":"2025-04-15T12:31:25.439Z","avatar_url":"https://github.com/ivan-sincek.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Property Lister\n\nExtract and convert property list files from SQLite database files and from other property list files.\n\nTested on Kali Linux v2024.2 (64-bit).\n\nMade for educational purposes. I hope it will help!\n\n## Table of Contents\n\n* [How to Install](#how-to-install)\n\t* [Install plistutil](#install-plistutil)\n\t* [Standard Install](#standard-install)\n\t* [Build and Install From the Source](#build-and-install-from-the-source)\n* [Extracting and Converting](#extracting-and-converting)\n* [Usage](#usage)\n\n## How to Install\n\n### Install plistutil\n\nOn Kali Linux, run:\n\n```bash\napt-get -y install plistutil\n```\n\n---\n\nWindows OS is not supported.\n\n---\n\nOn macOS, run:\n\n```bash\nbrew install libplist\n```\n\n### Standard Install\n\n```bash\npip3 install --upgrade property-lister\n```\n\n## Build and Install From the Source\n\n```bash\ngit clone https://github.com/ivan-sincek/property-lister \u0026\u0026 cd property-lister\n\npython3 -m pip install --upgrade build\n\npython3 -m build\n\npython3 -m pip install dist/property_lister-3.2-py3-none-any.whl\n```\n\n## Extracting and Converting\n\nExtract and convert property list files inside Cache.db unencrypted SQLite database file:\n\n```fundamental\nscp root@192.168.1.10:/var/mobile/Containers/Data/Application/YYY...YYY/Library/Caches/com.someapp.dev/Cache.db ./\n\nproperty-lister -db Cache.db -o results_db\n```\n\nExtract and convert property list files inside an IPA:\n\n```fundamental\nunzip someapp.ipa\n\nproperty-lister -db Payload -o results_db\n\nproperty-lister -pl Payload -o results_pl\n```\n\nRepeat the same for the app specific directories.\n\nCheck my other project on how to [search for files](https://github.com/ivan-sincek/ios-penetration-testing-cheat-sheet#3-search-for-files-and-directories) and on how to [extract sensitive data from the files](https://github.com/ivan-sincek/ios-penetration-testing-cheat-sheet#4-inspect-files).\n\n## Usage\n\n```fundamental\nProperty Lister v3.2 ( github.com/ivan-sincek/property-lister )\n\n--- Extract from an SQLite database file ---\nUsage:   property-lister -db database -o out\nExample: property-lister -db Cache.db -o results_db\n\n--- Extract from a property list file ---\nUsage:   property-lister -pl property-list -o out\nExample: property-lister -pl Info.plist    -o results_pl\n\nDESCRIPTION\n    Extract and convert property list files\nDATABASE\n    SQLite database file, or directory containing multiple files\n    -db, --database = Cache.db | databases | etc.\nPROPERTY LIST\n    Property list file, or directory containing multiple files\n    -pl, --property-list = Info.plist | plists | etc.\nOUT\n    Output directory\n    All extracted propery list files will be saved in this directory\n    -o, --out = results | etc.\nDIRECTORY STRUCTURE\n    Preserve the directory structure within the output directory\n    -ds, --directory-structure\n```\n\n## Images\n\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/ivan-sincek/property-lister/blob/main/img/extraction.png\" alt=\"Extraction\"\u003e\u003c/p\u003e\n\n\u003cp align=\"center\"\u003eFigure 1 - Extraction\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fivan-sincek%2Fproperty-lister","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fivan-sincek%2Fproperty-lister","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fivan-sincek%2Fproperty-lister/lists"}