{"id":13698761,"url":"https://github.com/dfirtrack/dfirtrack","last_synced_at":"2026-01-29T12:44:40.338Z","repository":{"id":36994501,"uuid":"157126399","full_name":"dfirtrack/dfirtrack","owner":"dfirtrack","description":"DFIRTrack - The Incident Response Tracking Application","archived":false,"fork":false,"pushed_at":"2026-01-13T14:54:31.000Z","size":7186,"stargazers_count":531,"open_issues_count":7,"forks_count":87,"subscribers_count":24,"default_branch":"master","last_synced_at":"2026-01-17T21:27:08.611Z","etag":null,"topics":["dfir","digital-forensics","incident-management","incident-response","incident-response-tooling"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dfirtrack.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2018-11-11T22:14:36.000Z","updated_at":"2026-01-14T02:46:25.000Z","dependencies_parsed_at":"2023-02-15T10:47:06.949Z","dependency_job_id":"09326d2f-1b8f-457e-8552-7f0c971ab29a","html_url":"https://github.com/dfirtrack/dfirtrack","commit_stats":null,"previous_names":["stuhli/dfirtrack"],"tags_count":21,"template":false,"template_full_name":null,"purl":"pkg:github/dfirtrack/dfirtrack","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dfirtrack%2Fdfirtrack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dfirtrack%2Fdfirtrack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dfirtrack%2Fdfirtrack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dfirtrack%2Fdfirtrack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dfirtrack","download_url":"https://codeload.github.com/dfirtrack/dfirtrack/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dfirtrack%2Fdfirtrack/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28877877,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-29T10:31:27.438Z","status":"ssl_error","status_checked_at":"2026-01-29T10:31:01.017Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["dfir","digital-forensics","incident-management","incident-response","incident-response-tooling"],"created_at":"2024-08-02T19:00:52.626Z","updated_at":"2026-01-29T12:44:40.314Z","avatar_url":"https://github.com/dfirtrack.png","language":"Python","readme":"\u003cdiv\u003e\n    \u003cp align=\"center\"\u003e\n        \u003cimg src=\"dfirtrack_main/static/dfirtrack_main/img/dfirtrack_logo.png\" width=\"600\"\u003e\n    \u003c/p\u003e\n\u003c/div\u003e\n\n\u003cdiv\u003e\n    \u003cp align=\"center\"\u003e\n        \u003ca href\u003e\u003cimg src=\"https://github.com/stuhli/dfirtrack/workflows/Django%20Tests/badge.svg?branch=master\" alt=\"Test badge\"\u003e\u003c/a\u003e\n        \u003ca href=\"https://codecov.io/gh/dfirtrack/dfirtrack\" target=\"_blank\"\u003e\u003cimg src=\"https://codecov.io/gh/dfirtrack/dfirtrack/branch/master/graph/badge.svg\" alt=\"Codecov coverage\"\u003e\u003c/a\u003e\n    \u003c/p\u003e\n\u003c/div\u003e\n\n\u003cdiv\u003e\n    \u003cp align=\"center\"\u003e\n        \u003ca href\u003e\u003cimg src=\"https://github.com/dfirtrack/dfirtrack/workflows/Lint%20Python/badge.svg?branch=master\" alt=\"Test badge\"\u003e\u003c/a\u003e\n        \u003ca href\u003e\u003cimg src=\"https://github.com/dfirtrack/dfirtrack/workflows/Lint%20Ansible/badge.svg?branch=master\" alt=\"Test badge\"\u003e\u003c/a\u003e\n        \u003ca href\u003e\u003cimg src=\"https://github.com/dfirtrack/dfirtrack/workflows/Docker%20publish/badge.svg?branch=master\" alt=\"Test badge\"\u003e\u003c/a\u003e\n    \u003c/p\u003e\n\u003c/div\u003e\n\nDFIRTrack (Digital Forensics and Incident Response Tracking application) is an open source web application mainly based on [Django](https://www.djangoproject.com/) using a [PostgreSQL](https://www.postgresql.org/) database back end.\n\nIn contrast to other great incident response tools, which are mainly case-based and support the work of CERTs, SOCs etc. in their daily business, DFIRTrack is focused on handling one or more major incidents with a lot of affected systems as it is often observed in APT cases.\nIt is meant to be used as a tool for dedicated incident response teams in large cases.\nSo, of course, CERTs and SOCs may use DFIRTrack as well, but they may feel it will be more appropriate in special cases instead of every day work.\n\nIn contrast to case-based applications, DFIRTrack rather works in a system-based fashion.\nIt keeps track of the status of various systems and the tasks and forensic artifacts associated with them, keeping the analyst well-informed about the status and number of affected systems at any time during the investigation phase up to the remediation phase of the incident response process.\n\nThe [main entities](https://github.com/dfirtrack/dfirtrack/wiki/Data-model) for incident tracking are:\n\n* systems\n* artifacts\n* tasks\n* cases\n* tags\n* notes and reportitems\n\n![Systems list view](screenshots/systems_list.png)\n\n## Features\n\nOne focus is the fast and reliable import and export of systems and associated information.\nThe goal for importing systems is to provide a fast and error-free procedure.\nMoreover, the goal for exporting systems and their status is to have multiple instances of documentation: for instance, detailed Markdown reports for technical staff vs. spreadsheets for non-technical audiences without redundancies and deviations in the data sets.\n\nThe following functions are implemented for now:\n\n* Importer\n    * [Creator](https://github.com/dfirtrack/dfirtrack/wiki/Import-data#system-creator) (fast creation of multiple related instances via web interface) for systems and associated tasks and tags,\n    * [CSV](https://github.com/dfirtrack/dfirtrack/wiki/Import-data#system-file-importer-csv) (modifiable CSV based import, should fit for the export capabilities of many tools).\n* Exporter\n    * [Markdown](https://github.com/dfirtrack/dfirtrack/wiki/Export-data#system-markdown-exporter) for so-called system reports (for use in a [MkDocs](https://www.mkdocs.org/) structure),\n    * Spreadsheet for systems ([CSV](https://github.com/dfirtrack/dfirtrack/wiki/Export-data#system-spreadsheet-exporter-csv) and [XLS](https://github.com/dfirtrack/dfirtrack/wiki/Export-data#system-spreadsheet-exporter-xls)) and artifacts ([XLS](https://github.com/dfirtrack/dfirtrack/wiki/Export-data#artifact-spreadsheet-exporter-xls)).\n* [Modificator](https://github.com/dfirtrack/dfirtrack/wiki/Modify-data#modificator)\n    * quick change of status of systems.\n* [Workflows](https://github.com/dfirtrack/dfirtrack/wiki/Modify-data#workflow)\n    * fast automatic generation for tasks and artifacts to one or more systems\n\n## Installation\n\nDFIRTrack is developed for deploying on **Ubuntu**.\nOther distributions may work as well but are not tested and are not supported.\n\nFor fast and uncomplicated installation on a dedicated server including all dependencies an [Ansible](https://docs.ansible.com/ansible/latest/) playbook and role were written (available in `ansible/`).\nFor information about deployment with Ansible look at the [Wiki - Ansible](https://github.com/stuhli/dfirtrack/wiki/Ansible).\n\nFor development and production two docker environments were prepared as well as pre-build docker images on [docker hub](https://hub.docker.com/r/dfirtrack/dfirtrack) (see [Wiki - Docker](https://github.com/stuhli/dfirtrack/wiki/Docker)).\n\nFor installation with your own setup or for quick testing look at the [Wiki - Installation](https://github.com/stuhli/dfirtrack/wiki/Installation).\n\n## Built-in software\n\nThe application was created by implementing the following libraries and code:\n\n* [Bootstrap](https://github.com/twbs/bootstrap)\n* [clipboard.js](https://github.com/zenorocha/clipboard.js)\n* [DataTables](https://github.com/DataTables/DataTables)\n* [jQuery](https://github.com/jquery/jquery)\n* [Open Iconic](https://github.com/iconic/open-iconic)\n* [django-async-messages](https://github.com/codeinthehole/django-async-messages)\n* [swagger-ui](https://github.com/swagger-api/swagger-ui)\n\n## Development\n\nThere are two main branches:\n\n* `master` ![Django Tests](https://github.com/stuhli/dfirtrack/workflows/Django%20Tests/badge.svg?branch=master)\n* `develop` ![Django Tests](https://github.com/stuhli/dfirtrack/workflows/Django%20Tests/badge.svg?branch=develop)\n\nThe master branch is stable and reflects major version releases.\nNew features and changes are added to the develop branch and merged into master after extensive testing.\nEverything merged into develop should run stable too but might need manual changes.\nTo use the current features, please try an installation of develop.\n\n## API\n\nDFIRTrack uses the OpenAPI specification that is provided by the [Django REST framework](https://www.django-rest-framework.org/).\nTo retrieve the current OpenAPI scheme just visit the the DFIRTrack URL `https://\u003cDFIRTRACKHOST\u003e/api/openapi/`.\n\nIf you want to use the DFIRTrack API you can use the following API clients:\n\n* **Python**\n    * [Github: dfirtrack/dfirtrack-api-python-client](https://github.com/dfirtrack/dfirtrack-api-python-client)\n    * [Github: Python minimalistic API example](https://github.com/dfirtrack/dfirtrack-python-api-example)\n* **GO**\n    * [Github: dfirtrack/dfirtrackapi](https://github.com/dfirtrack/dfirtrackapi)\n\n## License\n\nSee `LICENSE` file in the root directory.\n\n## Disclaimer\n\nEven if some basic error checking is implemented, as of now the usage of DFIRTrack mainly depends on proper handling.\n\n*DFIRTrack was not and most likely will never be intended for usage on publicly available servers. Nevertheless some basic security features were implemented (in particular in connection with the corresponding ansible role) always install DFIRTrack in a secured environment (e. g. a dedicated virtual machine or in a separated network)!*\n","funding_links":[],"categories":["Tools","IR Tools Collection","Challenges","Links"],"sub_categories":["Management","Incident Management","Incident Response"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdfirtrack%2Fdfirtrack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdfirtrack%2Fdfirtrack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdfirtrack%2Fdfirtrack/lists"}