{"id":17354740,"url":"https://github.com/whoisdreamer/any-file-binder","last_synced_at":"2025-08-02T04:32:41.833Z","repository":{"id":195475637,"uuid":"618230291","full_name":"wHoIsDReAmer/any-file-binder","owner":"wHoIsDReAmer","description":"Any file binder using rust","archived":false,"fork":false,"pushed_at":"2024-11-10T05:10:45.000Z","size":38,"stargazers_count":4,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-08T13:25:15.196Z","etag":null,"topics":["binder","file-binder","rust","windows"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wHoIsDReAmer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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-24T02:40:03.000Z","updated_at":"2024-12-20T21:01:28.000Z","dependencies_parsed_at":"2024-01-12T15:48:10.094Z","dependency_job_id":"73d5b54f-27b0-4778-9b99-56551ca362c7","html_url":"https://github.com/wHoIsDReAmer/any-file-binder","commit_stats":{"total_commits":14,"total_committers":2,"mean_commits":7.0,"dds":0.3571428571428571,"last_synced_commit":"681aac7152acadb830d89de3667439f4a9135e2b"},"previous_names":["whoisdreamer/any-file-binder"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/wHoIsDReAmer/any-file-binder","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wHoIsDReAmer%2Fany-file-binder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wHoIsDReAmer%2Fany-file-binder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wHoIsDReAmer%2Fany-file-binder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wHoIsDReAmer%2Fany-file-binder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wHoIsDReAmer","download_url":"https://codeload.github.com/wHoIsDReAmer/any-file-binder/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wHoIsDReAmer%2Fany-file-binder/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268334618,"owners_count":24233793,"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","status":"online","status_checked_at":"2025-08-02T02:00:12.353Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["binder","file-binder","rust","windows"],"created_at":"2024-10-15T17:37:54.395Z","updated_at":"2025-08-02T04:32:41.550Z","avatar_url":"https://github.com/wHoIsDReAmer.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n# 🪄 any-file-binder\n\n[![Rust](https://img.shields.io/badge/rust-1.70%2B-orange.svg)](https://www.rust-lang.org/)\n[![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)\n[![Version](https://img.shields.io/badge/version-2.0-brightgreen.svg)](https://github.com/wHoIsDReAmer/any-file-binder/releases)\n\nA post-modern CLI tool for secure file binding on Windows systems, written in Rust 🦀\n\n[Features](#features) • [Installation](#installation) • [Usage](#usage) • [License](#license)\n\n\u003c/div\u003e\n\n## ✨ Features\n\n- Secure file encryption using AES-256-CBC and AES-128-CBC\n- Multiple file binding support\n- Custom stub executable configuration\n- Zero external dependencies for runtime\n\n## 🚀 Installation\nNo installation providing, just build and run.\n\n## 📖 Usage\n\n### Basic Command Structure\n```bash\nany-file-binder.exe -e \u003cencryption\u003e -f \u003cfiles...\u003e [-s \u003cstub\u003e] [-o \u003coutput\u003e]\n```\n\n### Command Arguments\n| Argument | Description | Default |\n|----------|-------------|---------|\n| `-e, --encryption` | Encryption type | `2` (AES-256-CBC) |\n| `-f, --files` | Files to bind (multiple allowed) | Required |\n| `-s, --stub` | Custom stub executable path | `stub.exe` |\n| `-o, --output` | Output file path | `output.exe` |\n\n## 🔧 Technical Details\n\n### Binary Structure\nThe binder combines multiple files into a single executable in a simple and secure way:\n\n```\n[Stub Executable][__PARSE_STUB__][Metadata][Bound Files]\n```\n\n#### Encryption Header\n```\n| Field           | Type | Size    | Description           |\n|-----------------|------|---------|------------------------|\n| Separator       | str  | varies  | \"__PARSE_STUB__\"      |\n| Encryption Type | u8   | 1 byte  | 0: AES-256, 1: AES-128|\n```\n\n#### File Entry Structure\n```\n| Field              | Type   | Description            |\n|--------------------|--------|------------------------|\n| Extension Length   | u8    | Size of file extension |\n| Extension          | string | File extension         |\n| Encrypted Length   | u64    | Size of encrypted data |\n| Encrypted Content  | bytes  | Encrypted file data    |\n```\n\n### Supported Encryption Types\n- `1`: AES-128-CBC\n- `2`: AES-256-CBC\n\n## 📝 License\n```\nMIT License\n\nCopyright (c) 2024 wHoIsDReAmer\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software for non-commercial purposes only, including the rights\nto use, copy, modify, merge, publish, and distribute copies of the Software,\nsubject to the following conditions:\n\n1. The Software may not be used for any commercial purposes whatsoever.\n   Commercial use includes but is not limited to:\n   - Using the Software in a commercial product\n   - Using the Software in a business environment\n   - Selling or licensing the Software\n   - Using the Software to generate revenue directly or indirectly\n\n2. The above copyright notice and this permission notice shall be included in all\n   copies or substantial portions of the Software.\n\n3. Any distribution of the Software or derivative works must be under the same\n   non-commercial terms.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n```\n\n## ⚠️ Educational Purpose Only\n\nThis project was created for educational purposes to learn about Windows PE file format and Encryption. Please do not use this tool for malware or any malicious purposes. The author takes no responsibility for misuse of this software.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwhoisdreamer%2Fany-file-binder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwhoisdreamer%2Fany-file-binder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwhoisdreamer%2Fany-file-binder/lists"}