{"id":13638500,"url":"https://github.com/binspector/binspector","last_synced_at":"2025-04-19T18:30:44.539Z","repository":{"id":21953037,"uuid":"25277597","full_name":"binspector/binspector","owner":"binspector","description":"A binary format analysis tool","archived":false,"fork":false,"pushed_at":"2021-05-10T17:45:53.000Z","size":3866,"stargazers_count":233,"open_issues_count":12,"forks_count":22,"subscribers_count":10,"default_branch":"master","last_synced_at":"2024-11-09T08:39:49.158Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://binspector.github.io","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsl-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/binspector.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE_1_0.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-10-15T23:16:01.000Z","updated_at":"2024-09-24T12:48:22.000Z","dependencies_parsed_at":"2022-08-18T01:00:51.842Z","dependency_job_id":null,"html_url":"https://github.com/binspector/binspector","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binspector%2Fbinspector","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binspector%2Fbinspector/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binspector%2Fbinspector/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binspector%2Fbinspector/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/binspector","download_url":"https://codeload.github.com/binspector/binspector/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249764710,"owners_count":21322286,"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":[],"created_at":"2024-08-02T01:00:47.034Z","updated_at":"2025-04-19T18:30:42.847Z","avatar_url":"https://github.com/binspector.png","language":"C++","funding_links":[],"categories":["Tools","C++","C++ (225)"],"sub_categories":["File Format Fuzzers"],"readme":"[![Build status](https://travis-ci.org/binspector/binspector.png?branch=master)](https://travis-ci.org/binspector/binspector)\n[![Coverity Scan Build Status](https://scan.coverity.com/projects/13168/badge.svg)](https://scan.coverity.com/projects/binspector-binspector)\n\n# What is Binspector?\n\nBinspector and its related language are built around the idea of exposing the guts of binary formats and files so plain old humans can grok them better.\n\nSpecifically there are two pieces that accomplish this:\n\n - A language used to construct binary format descriptions\n - The Binspector tool\n\nThe language allows individuals to create formalized descriptions of binary formats. These descriptions are known as BFFTs (\u003cstrong\u003eb\u003c/strong\u003einary \u003cstrong\u003ef\u003c/strong\u003eile \u003cstrong\u003ef\u003c/strong\u003eormat \u003cstrong\u003et\u003c/strong\u003eemplate). From there any given binary file can be tested against a BFFT in order to:\n\n- Verify the binary file meets the requirements of the binary format\n  - e.g., \"Is my_photo.jpg a well-formed jpeg?\"\n- Analyze the contents of the binary file and interpret the raw data within\n  - e.g., \"What Exif metadata is contained within my_photo.jpg, and where?\"\n- Inspect particular binary values in a file with proper context and interpretation\n  - e.g., \"What is the value of Exif tag 37377 in my_photo.jpg?\"\n- Intelligently fuzz the binary at potential \"weak points\" that may exist in file import code, and auto-generate files containing these attack vectors.\n  - e.g., \"I need corrupt sample files to harden my Exif import code.\"\n\nBinspector is a command-line tool with various output methods (including its own pseudo command-line interface) intended to facilitate the above processes.\n\n## Building From Source\n\nThese instructions assume a command line interface for most of the operations. If you are using a GUI (such as GitHub's client) your mileage may vary.\n\nBuilding is done with `CMake`. The typical workflow is to start at the top of the repository, and run:\n\n- `mkdir build`\n- `cd build`\n- `cmake .. -GXcode` (or whatever generator flavor you prefer)\n- `xcodebuild ` (or `make`, or...)\n\nThe binary will then be found in the `build` folder (or in a subfolder, depending on the generator).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbinspector%2Fbinspector","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbinspector%2Fbinspector","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbinspector%2Fbinspector/lists"}