{"id":19484497,"url":"https://github.com/flowerinthenight/windows-camera-class-filter-driver","last_synced_at":"2025-04-25T16:33:40.768Z","repository":{"id":52110246,"uuid":"46851390","full_name":"flowerinthenight/windows-camera-class-filter-driver","owner":"flowerinthenight","description":"An example of a camera class (upper) filter driver for Windows.","archived":false,"fork":false,"pushed_at":"2021-01-31T03:17:02.000Z","size":98,"stargazers_count":30,"open_issues_count":1,"forks_count":16,"subscribers_count":7,"default_branch":"master","last_synced_at":"2023-08-03T23:58:17.320Z","etag":null,"topics":["camera-filter-driver","driver","filter-driver","ksthunk","uvc","wdm","windows","windows-camera"],"latest_commit_sha":null,"homepage":"","language":"C","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/flowerinthenight.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-11-25T09:31:34.000Z","updated_at":"2023-06-25T16:20:07.000Z","dependencies_parsed_at":"2022-09-06T07:44:29.694Z","dependency_job_id":null,"html_url":"https://github.com/flowerinthenight/windows-camera-class-filter-driver","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flowerinthenight%2Fwindows-camera-class-filter-driver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flowerinthenight%2Fwindows-camera-class-filter-driver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flowerinthenight%2Fwindows-camera-class-filter-driver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flowerinthenight%2Fwindows-camera-class-filter-driver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flowerinthenight","download_url":"https://codeload.github.com/flowerinthenight/windows-camera-class-filter-driver/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224009503,"owners_count":17240571,"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":["camera-filter-driver","driver","filter-driver","ksthunk","uvc","wdm","windows","windows-camera"],"created_at":"2024-11-10T20:22:16.249Z","updated_at":"2024-11-10T20:22:17.222Z","avatar_url":"https://github.com/flowerinthenight.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build status](https://ci.appveyor.com/api/projects/status/ldqswni016jufm6p/branch/master?svg=true)](https://ci.appveyor.com/project/flowerinthenight/windows-camera-class-filter-driver/branch/master)\n\n## Overview\n\n**Disclaimer:** This driver code was intended to be for POC only and was never released to production. If you're looking at the codes, you probably know that this type of driver is generally undocumented and some bits were achieved using reverse engineering.\n\nThis filter driver stores a copy of the stream buffer in a shared memory named `\\\\BaseNamedObjects\\\\{9E2288A3-7955-428F-9064-9C05C0EDC608}`. This buffer can then be streamed from userland.\n\nThis driver was tested (though not extensively; it failed on HLK) on Windows 7, 8 and 10 (2015 release) using the ThinkPad X and T series (2015 and older) on both proprietary camera drivers and Microsoft's default UVC driver.\n\nThere's a good article [here](https://www.virusbulletin.com/virusbulletin/2018/09/through-looking-glass-webcam-interception-and-protection-kernel-mode/) that explains in detail how this works.\n\n## Generate catalog (.cat) file from package\n```\ninf2cat /driver:\u003cpackage_path\u003e /os:\u003carch\u003e\n```\n[https://msdn.microsoft.com/en-us/library/windows/hardware/ff547089(v=vs.85).aspx](https://msdn.microsoft.com/en-us/library/windows/hardware/ff547089(v=vs.85).aspx)\n\n## Enable test signing\n```\nbcdedit /set testsigning on\n```\n\n## Driver setup\nUse the [ccfltr-console](https://github.com/flowerinthenight/windows-camera-class-filter-driver/tree/master/ccfltr-console) tool to install/uninstall the driver. It handles the setup in relation to `ksthunk.sys`, if available. Copy the tool to the directory of the .sys and .inf file.\n\n### Installation\n```\nccfltr-console.exe /install\n```\n\n### Uninstallation\n```\nccfltr-console.exe /uninstall\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflowerinthenight%2Fwindows-camera-class-filter-driver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflowerinthenight%2Fwindows-camera-class-filter-driver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflowerinthenight%2Fwindows-camera-class-filter-driver/lists"}