{"componentChunkName":"component---src-templates-post-template-js","path":"/a-part-of-anti-virus-3-00-en","result":{"data":{"markdownRemark":{"id":"3b051551-9f98-57c3-abe7-5a7c6ce14bb1","html":"<blockquote>\n<p>This page has been machine-translated from the <a href=\"/a-part-of-anti-virus-3-00\">original page</a>.</p>\n</blockquote>\n<p>This article presents the contents of <a href=\"https://techbookfest.org/product/pHk9A7jSQhwLrqnxjFbJxT\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">A PART OF ANTI-VIRUS 3 - WFP Edition -</a>, which was distributed free of charge at Tech Book Fest 20.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 303px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/aaf4e71200fa8be0315a957c755d6d95/6728c/62D3giafzgnTKdiapQHmYR.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 142.5%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAdCAIAAAAl5NuSAAAACXBIWXMAAAsTAAALEwEAmpwYAAADeElEQVQ4y51VaU8TURTtj8GKzHSmpdt0htKNUgtRwERSBY2KuAGxVKTQlpaWFrpRVFTEBUM0VEDUBBQ3MPGTRlEMCSb6QTR+MfEfsHmmLdgidWtuJrf3vfPuuefdOyOImkwRo/E/DEBBUKd1UZQ7P98tkeDpSXN4f0N8zVw03alWC7oKC50k2SYWt9G0SyRyEgQcJ0E6CMJBkohgaT2+bk6RKMBxgi4ND3aLxY68vG6z+dYpW8xsftwTG7Xb77V7HsVi12tr+6urnw9cG7Jak2fBMsBgZd+y5erBA0/P9160WB6EgnBm7tyZjEbOVJTfqK97N/mgr2pPS24unxlgMjMzTvUplbBAQYEXjkKBqvxwpFI/w0T0eg9FIY40mbRFIlQYNhjuh4OTkcjD7uhEKNRj0MdlsgmV6hHLjioU9xmmnyQH6k7cOH7cLhS2UVQKDLXB50Ll7udXr7waHbntaB1zOvsslrtK5TjLPuG4SZZ9plYPkuSg1Rq3nmzOyUHyn7TxxyPN72AYr1zuFkva5TJwcVNUO+I07aMoX8L3c5xXIUcyl+iXmh15BMToLFR7ZbJ2qdSrUKBC3lEqfIwSGNyIMyF4hmBY4KXiuLBef2V/VazEDOspLYmajOEi/Zkdpb0VZWGDHps7GOXGewa4Q6WKFhtDOq2fVUHncJHBz6mCWg0spNchEjEWQdTOAm6TJgHemWgpPFu3bYOEOM7PsvBbc3MRTFqyTzLAyfbkO5GmoFnYaIT4cVvjcPPpvj2WqKkYRSU3bNKeqSgmRCK52dAw7u94MTT07eOH7wsLr8fGxgOB4aYmn5Lh02YDgzkUHjhc82V2dnV1dWV5eWVlBQ6OQIei7OSlZslM0yh+oObQ17k5YJaXloBPgD/dbKiHkLihrGBwxuj1V+19Pz2dDv789s21mkNY3XwkU2AMJkGcqyifvtSXBC8tLsJ5OXwLsqFD1vGb04YkfpUqbrPNT02tJn4LMzMjLfagTpe+LWvNyID3U7yxcXZiYn56asTefLZsJ592bU9W8Doeqa4fqR08dhQHtWYifwdOkm8RCj0SiVcmbxFudVF0+upvaRMEeF7eV32xsrJ3V8WlvZbu7aYNCbJmRqtgbrs0mi6tJlDAYTDQmwj+A230Az8JiTnZgPwD+I+WAge1aV+Mv7bUFyNaXPSfZjL+AF3RdxSs3W23AAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/aaf4e71200fa8be0315a957c755d6d95/8ac56/62D3giafzgnTKdiapQHmYR.webp 240w,\n/static/aaf4e71200fa8be0315a957c755d6d95/bac26/62D3giafzgnTKdiapQHmYR.webp 303w\"\n              sizes=\"(max-width: 303px) 100vw, 303px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/aaf4e71200fa8be0315a957c755d6d95/8ff5a/62D3giafzgnTKdiapQHmYR.png 240w,\n/static/aaf4e71200fa8be0315a957c755d6d95/6728c/62D3giafzgnTKdiapQHmYR.png 303w\"\n            sizes=\"(max-width: 303px) 100vw, 303px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/aaf4e71200fa8be0315a957c755d6d95/6728c/62D3giafzgnTKdiapQHmYR.png\"\n            alt=\"img\"\n            title=\"img\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>The PDF edition can still be downloaded from the Tech Book Fest online market page linked above.</p>\n<p><strong>All content in this book is based on information described in official documentation and other websites, or on generally available books and source code. When discussing technical details, I will note the sources in footnotes whenever possible. In addition, everything written in this book reflects my personal views and does not represent the companies or organizations I belong to.</strong></p>\n<h2 id=\"table-of-contents\" style=\"position:relative;\"><a href=\"#table-of-contents\" aria-label=\"table of contents permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Table of Contents</h2>\n<ul>\n<li><a href=\"/a-part-of-anti-virus-3-00-en\">Preface</a></li>\n<li><a href=\"/a-part-of-anti-virus-3-01-en\">Chapter 1: WFP Overview and Architecture</a></li>\n<li><a href=\"/a-part-of-anti-virus-3-02-en\">Chapter 2: A Sample That Uses WFP for Access Control</a></li>\n<li><a href=\"/a-part-of-anti-virus-3-03-en\">Chapter 3: A Sample That Uses a Callout Driver for Access Control</a></li>\n</ul>\n<h1 id=\"preface\" style=\"position:relative;\"><a href=\"#preface\" aria-label=\"preface permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Preface</h1>\n<h2 id=\"about-this-book\" style=\"position:relative;\"><a href=\"#about-this-book\" aria-label=\"about this book permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>About This Book</h2>\n<p>Thank you very much for picking up this book. My name is kashiwaba (@kash1064).</p>\n<p>My main interests are the technical fields of reverse engineering and forensics, and lately I spend much of my time reading the source code of various applications and technical books while raising children.</p>\n<p>I also work as a technical support engineer at a security product vendor, and at two companies so far I have worked on troubleshooting and debugging anti-malware products for Windows and Linux.</p>\n<p>In this book, following the “A part of Anti-Virus” series <sup id=\"fnref-1\"><a href=\"#fn-1\" class=\"footnote-ref\">1</a></sup> <sup id=\"fnref-2\"><a href=\"#fn-2\" class=\"footnote-ref\">2</a></sup> that I have published so far, I explain the overview of Windows Filtering Platform (WFP) and WFP callout drivers used in various security products, including antivirus and Endpoint Detection and Response (EDR).</p>\n<p>As explained in more detail in Chapter 1, WFP is a set of APIs and system services that provides a platform for creating network filtering applications on Windows Vista and Windows Server 2008 and later.<sup id=\"fnref-3\"><a href=\"#fn-3\" class=\"footnote-ref\">3</a></sup></p>\n<p>By using WFP, developers and application vendors can implement a variety of software on Windows, such as firewalls, intrusion detection and prevention systems (IDS/IPS), communication inspection and blocking by antivirus products, and other network monitoring tools.</p>\n<p>For example, Microsoft Defender Firewall (formerly Windows Defender Firewall), which is included with Windows by default, also uses this WFP mechanism to filter traffic based on various conditions.<sup id=\"fnref-4\"><a href=\"#fn-4\" class=\"footnote-ref\">4</a></sup></p>\n<p>In this book, I explain in as much detail as possible, based on publicly available information, why endpoint-based network filtering is needed in security, and what WFP features antivirus products and EDR use to protect endpoints.</p>\n<p>I also hope this book will help many users deepen their understanding of network security at the endpoint and how antivirus products use WFP.</p>\n<h2 id=\"what-this-book-covers\" style=\"position:relative;\"><a href=\"#what-this-book-covers\" aria-label=\"what this book covers permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>What This Book Covers</h2>\n<p>To deepen understanding of WFP and the antivirus functionality used in endpoint network security measures, each chapter covers the following topics.</p>\n<ul>\n<li>Chapter 1: WFP’s overview and basic architecture, the benefits of endpoint-based network filtering/monitoring, and how antivirus products and EDR use WFP.</li>\n<li>Chapter 2: A user-mode program that uses the Base Filtering Engine (BFE) to register filters that control traffic with WFP.</li>\n<li>Chapter 3: A sample program that controls traffic with a WFP callout driver, blocking communication based on scan results from the user-mode program.</li>\n</ul>\n<h2 id=\"prerequisites-for-reading-this-book\" style=\"position:relative;\"><a href=\"#prerequisites-for-reading-this-book\" aria-label=\"prerequisites for reading this book permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Prerequisites for Reading This Book</h2>\n<p>This book explains WFP starting from the basic concepts, but having the following knowledge will make it easier to follow.</p>\n<ul>\n<li>Basic C/C++ syntax</li>\n<li>Basic knowledge of Windows user mode / kernel mode</li>\n<li>Basic familiarity with using a driver development environment based on Visual Studio and the WDK</li>\n<li>Basic PowerShell command execution</li>\n</ul>\n<h2 id=\"tools-used-in-this-book-and-environment-setup\" style=\"position:relative;\"><a href=\"#tools-used-in-this-book-and-environment-setup\" aria-label=\"tools used in this book and environment setup permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Tools Used in This Book and Environment Setup</h2>\n<p>In this book, we verify the behavior by building sample programs that use WFP and running them in a virtual machine.</p>\n<p>To keep the structure of this book focused, I omit detailed environment setup instructions.\nHere I will briefly list the main tools and environment for readers who want to actually verify the samples themselves.</p>\n<h3 id=\"virtual-machine-setup\" style=\"position:relative;\"><a href=\"#virtual-machine-setup\" aria-label=\"virtual machine setup permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Virtual Machine Setup</h3>\n<p>This book uses a Windows 10 22H2 virtual machine built on Hyper-V.</p>\n<p>On this virtual machine, enable test signing mode and kernel debugging with the following commands (run them with administrator privileges, and reboot afterward).\nNote that depending on your Secure Boot or BitLocker configuration, you may not be able to change these settings.\nThese settings are for verification purposes, and should not be enabled on production endpoints.</p>\n<div class=\"gatsby-highlight\" data-language=\"powershell\"><pre class=\"language-powershell\"><code class=\"language-powershell\">bcdedit <span class=\"token operator\">/</span><span class=\"token function\">set</span> testsigning on\nbcdedit <span class=\"token operator\">/</span>debug on</code></pre></div>\n<p>Also, to perform kernel debugging from a remote machine, use <code class=\"language-text\">kdnet.exe</code> to register kernel debugging settings over the network.</p>\n<p>The procedure used to set up the virtual machine for this book is almost the same as the one introduced in Chapter 1 of my earlier book, “A part of Anti-Virus,” which is also distributed free of charge, so I recommend reading that as well.</p>\n<h3 id=\"installing-visual-studio-2022\" style=\"position:relative;\"><a href=\"#installing-visual-studio-2022\" aria-label=\"installing visual studio 2022 permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Installing Visual Studio 2022</h3>\n<p>Next, to build the programs and sample code used in this book, we use Visual Studio 2022 Community.</p>\n<p>At the time of writing, the WDK assumes driver development with Visual Studio 2022, and compatibility with Visual Studio 2026 is not guaranteed.\nFor that reason, this book uses Visual Studio 2022.<sup id=\"fnref-5\"><a href=\"#fn-5\" class=\"footnote-ref\">5</a></sup></p>\n<p>At the moment, the official download site does not provide Visual Studio 2022 Community.</p>\n<p>Therefore, I download the installer directly from <a href=\"https://aka.ms/vs/17/release/vs_community.exe\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://aka.ms/vs/17/release/vs_community.exe</a>.</p>\n<h3 id=\"installing-various-tools\" style=\"position:relative;\"><a href=\"#installing-various-tools\" aria-label=\"installing various tools permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Installing Various Tools</h3>\n<p>Below are the main tools used in this book.</p>\n<p>These tools are installed on the virtual machine and used to install kernel drivers, verify their behavior, and inspect the registration status of WFP filters.</p>\n<ul>\n<li>WFP Explorer</li>\n</ul>\n<p><a href=\"https://github.com/zodiacon/AllTools/blob/master/WFPExp.exe\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://github.com/zodiacon/AllTools/blob/master/WFPExp.exe</a></p>\n<ul>\n<li>Driver Loader</li>\n</ul>\n<p><a href=\"https://www.osronline.com/article.cfm%5Earticle=157.htm\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://www.osronline.com/article.cfm%5Earticle=157.htm</a></p>\n<ul>\n<li>Sysinternals Suite</li>\n</ul>\n<p><a href=\"https://learn.microsoft.com/en-us/sysinternals/downloads/sysinternals-suite\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://learn.microsoft.com/en-us/sysinternals/downloads/sysinternals-suite</a></p>\n<ul>\n<li>Wireshark</li>\n</ul>\n<p><a href=\"https://www.wireshark.org/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://www.wireshark.org/</a></p>\n<h2 id=\"acknowledgements\" style=\"position:relative;\"><a href=\"#acknowledgements\" aria-label=\"acknowledgements permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Acknowledgements</h2>\n<p>I received tremendous support from the members of the CTF team 0nePadding in writing this book.</p>\n<p>I would like to express my deep gratitude to 0nePadding members @salty_byte and @rikoteki for helping with proofreading.</p>\n<div class=\"footnotes\">\n<hr>\n<ol>\n<li id=\"fn-1\">\n<p>A part of Anti-Virus <a href=\"https://techbookfest.org/product/iFrVq6PX0PPJhivrGzhi32\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://techbookfest.org/product/iFrVq6PX0PPJhivrGzhi32</a></p>\n<a href=\"#fnref-1\" class=\"footnote-backref\">↩</a>\n</li>\n<li id=\"fn-2\">\n<p>A part of Anti-Virus 2 <a href=\"https://techbookfest.org/product/8RXYbx8JnsHZeFNHGRmMJU\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://techbookfest.org/product/8RXYbx8JnsHZeFNHGRmMJU</a></p>\n<a href=\"#fnref-2\" class=\"footnote-backref\">↩</a>\n</li>\n<li id=\"fn-3\">\n<p>Windows Filtering Platform <a href=\"https://learn.microsoft.com/ja-jp/windows/win32/fwp/windows-filtering-platform-start-page\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://learn.microsoft.com/ja-jp/windows/win32/fwp/windows-filtering-platform-start-page</a></p>\n<a href=\"#fnref-3\" class=\"footnote-backref\">↩</a>\n</li>\n<li id=\"fn-4\">\n<p>Windows Filtering Platform <a href=\"https://learn.microsoft.com/windows/win32/fwp/windows-filtering-platform-start-page\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://learn.microsoft.com/windows/win32/fwp/windows-filtering-platform-start-page</a></p>\n<a href=\"#fnref-4\" class=\"footnote-backref\">↩</a>\n</li>\n<li id=\"fn-5\">\n<p>Download the Windows Driver Kit (WDK) <a href=\"https://learn.microsoft.com/ja-jp/windows-hardware/drivers/download-the-wdk\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://learn.microsoft.com/ja-jp/windows-hardware/drivers/download-the-wdk</a></p>\n<a href=\"#fnref-5\" class=\"footnote-backref\">↩</a>\n</li>\n</ol>\n</div>","fields":{"slug":"/a-part-of-anti-virus-3-00-en","tagSlugs":["/tag/a-part-of-anti-virus-3-en/","/tag/windows-en/","/tag/win-dbg-en/","/tag/anti-virus-en/","/tag/english/"]},"frontmatter":{"date":"2026-04-11","description":"This is the web edition of A PART OF ANTI-VIRUS 3, distributed at Tech Book Fest 20.","tags":["A PART OF ANTI-VIRUS 3 (en)","Windows (en)","WinDbg (en)","AntiVirus (en)","English"],"title":"A PART OF ANTI-VIRUS 3 - Learning Windows Filtering Platform (WFP) from Public Sample Code - (Web Edition)","socialImage":{"publicURL":"/static/272acc1e889df0e25d89217e89d5fd13/a-part-of-anti-virus-3.png"}}}},"pageContext":{"slug":"/a-part-of-anti-virus-3-00-en"}},"staticQueryHashes":["251939775","401334301","825871152"]}