{"id":15661985,"url":"https://github.com/shekohex/wadump","last_synced_at":"2025-05-05T23:03:02.398Z","repository":{"id":38334232,"uuid":"283002069","full_name":"shekohex/wadump","owner":"shekohex","description":"CLI Tool to dump and analyze WhatsApp Web Packets ","archived":false,"fork":false,"pushed_at":"2023-12-05T12:17:36.000Z","size":93,"stargazers_count":20,"open_issues_count":1,"forks_count":5,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-03-31T00:31:36.715Z","etag":null,"topics":["reverse-engineering","whatsapp-api","whatsapp-web"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/shekohex.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","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":"2020-07-27T19:57:09.000Z","updated_at":"2024-12-09T13:31:55.000Z","dependencies_parsed_at":"2024-10-23T07:43:16.359Z","dependency_job_id":null,"html_url":"https://github.com/shekohex/wadump","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shekohex%2Fwadump","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shekohex%2Fwadump/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shekohex%2Fwadump/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shekohex%2Fwadump/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/shekohex","download_url":"https://codeload.github.com/shekohex/wadump/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252590573,"owners_count":21772936,"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":["reverse-engineering","whatsapp-api","whatsapp-web"],"created_at":"2024-10-03T13:29:46.051Z","updated_at":"2025-05-05T23:03:02.375Z","avatar_url":"https://github.com/shekohex.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eWAdump\u003c/h1\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003cstrong\u003e\n    A CLI Tool to Analyze WhatsApp Web Packets\n  \u003c/strong\u003e\n\u003c/div\u003e\n\n\u003cbr /\u003e\n\n## About\n\nThis tool helps in rev-eng WhatsApp Protocol and How the client is implemented.\n\nExample:\n\n```bash\n$ wadump --outgoing -m M0VCMDhCMUY5QzdCMDUxN0ExREYsEIBQ1W3KQtF6rJgTb3S81zDddfUUUBz7MNfCswrCXBgJQw/P10FLJvjucpPx9U7yUt2FA8aaY/8jvWDTItse0nOu1jRRjBDLuTb5JW8pUZoX7pvN0CeGeszd44v/+RG+JNbKbh1MDo7V9nPAYfTcJk4b23Hr8eHWpp3w+odw3fSXAk7fEB/mbL3vqZGTaDJdXbkst89oQSfZBu9Ynk344uan\n```\n\n```rust\nWebMessageInfo {\n    key: MessageKey {\n        remote_jid: Some(\n            \"[OMItTED]@s.whatsapp.net\",\n        ),\n        from_me: Some(\n            true,\n        ),\n        id: Some(\n            \"3EB08B1F9C7B0517A1DF\",\n        ),\n        participant: None,\n    },\n    message: Some(\n        Message {\n            conversation: Some(\n                \"Hey, I\\'m using WhatsApp 😀\",\n            ),\n            sender_key_distribution_message: None,\n            image_message: None,\n            contact_message: None,\n            location_message: None,\n            extended_text_message: None,\n            document_message: None,\n            audio_message: None,\n            video_message: None,\n            call: None,\n            chat: None,\n            protocol_message: None,\n            contacts_array_message: None,\n            highly_structured_message: None,\n            fast_ratchet_key_sender_key_distribution_message: None,\n            send_payment_message: None,\n            live_location_message: None,\n            request_payment_message: None,\n            decline_payment_request_message: None,\n            cancel_payment_request_message: None,\n            template_message: None,\n            sticker_message: None,\n            group_invite_message: None,\n            template_button_reply_message: None,\n            product_message: None,\n            device_sent_message: None,\n            device_sync_message: None,\n        },\n    ),\n    message_timestamp: Some(\n        1595891552,\n    ),\n    status: Some(\n        Pending,\n    ),\n    participant: None,\n    ignore: None,\n    starred: None,\n    broadcast: None,\n    push_name: None,\n    media_ciphertext_sha256: None,\n    multicast: None,\n    url_text: None,\n    url_number: None,\n    message_stub_type: None,\n    clear_media: None,\n    message_stub_parameters: [],\n    duration: None,\n    labels: [],\n    payment_info: None,\n    final_live_location: None,\n    quoted_payment_info: None,\n    ephemeral_start_timestamp: None,\n    ephemeral_duration: None,\n}\n```\n\n## Install\n\n1. Github Releases [here](https://github.com/shekohex/wadump/releases)\n\n2. Or if you want to build it localy\n\n```bash\n$ git clone https://github.com/shekohex/wadump.git\n$ cd wadump\n```\n\n```bash\n$ cargo run -- --help\n```\n\n## Usage\n\n```bash\nUsage: wadump [-r] [--outgoing] [-m \u003cmessage\u003e]\n\nCLI Tool to dump WhatsApp Packets\n\nOptions:\n  -r, --reset       reset the saved session and clear the keys\n  --outgoing        is this message outgoing? (i.e you are the sender)\n  -m, --message     a base64 message to be decrypted and dumped, if not provided\n                    it will try to read it from stdin\n  --help            display usage information\n```\n\nIn the first usage, it will ask you about the `Encryption Key` and `MAC Key` and will be stored in your OS Keychain, if you don't want to use the Keychain\nyou could also set the `WADUMP_ENC_KEY` and `WADUMP_MAC_KEY` environment variables and it will use them instead (even if there are keys stored in the keychain)\n\n## FAQ\n\n1. How do I get my `Encryption Key` and `MAC Key`?\n\n- Well, that is super easy open [WhatsApp Web](https://web.whatsapp.com/) then open the Browser Developer Tools (Hit F12)\n  And then from there go to the `Application` tab and select `Storage` \u003e `Local Storage` and select the `WASecretBundle`.\n  Copy the `encKey` and `macKey` values and paste them when the program prompt for them, they are stored localy in your OS Keychain.\n\n2. How to View Ongoing and Outgoing Messages?\n\n- If you read FAQ #1 you alrady know how to open the Browser Developer Tools, now go to `Network` tab and Filter by `WS` (i.e Websocket)\n  if it is not visable, try to refersh the page and you will see a ws entry, click on it from there you could click on the `Messages` tab.\n  now you could see the incomming and the outgoing messages.\n  Click in anyone of them and then by default it will view it as Hex Dump, change the `Hex Viewer` value to `Base64` and there will be a little copy icon too.\n\n3. How could I ...\n\n- Open an Issue :)\n\n## Contributing\n\nWant to join us? Check out our [\"Contributing\" guide][contributing] and take a\nlook at some of these issues:\n\n- [Issues labeled \"good first issue\"][good-first-issue]\n- [Issues labeled \"help wanted\"][help-wanted]\n\n[contributing]: https://github.com/shekohex/wadump/blob/master/.github/CONTRIBUTING.md\n[good-first-issue]: https://github.com/shekohex/wadump/labels/good%20first%20issue\n[help-wanted]: https://github.com/shekohex/wadump/labels/help%20wanted\n\n## Safety\n\nThis crate uses `#![deny(unsafe_code)]` to ensure everything is implemented in\n100% Safe Rust.\n\n## License\n\n\u003csup\u003e\nLicensed under \u003ca href=\"LICENSE\"\u003e GPL-3.0 license\u003c/a\u003e.\n\u003c/sup\u003e\n\n\u003cbr/\u003e\n\n\u003csub\u003e\nUnless you explicitly state otherwise, any contribution intentionally submitted\nfor inclusion in this crate by you, as defined in the GPL-3.0 license, without any additional terms or conditions.\n\u003c/sub\u003e\n\n## Legal\n\n\u003csup\u003e\nThis code is in no way affiliated with, authorized, maintained, sponsored or endorsed by WhatsApp or any of its affiliates or subsidiaries. This is an independent and unofficial software. Use at your own risk.\n\u003c/sup\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshekohex%2Fwadump","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshekohex%2Fwadump","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshekohex%2Fwadump/lists"}