{"id":23034115,"url":"https://github.com/autostructure/secure_windows","last_synced_at":"2025-12-11T21:24:58.475Z","repository":{"id":82148529,"uuid":"118500364","full_name":"autostructure/secure_windows","owner":"autostructure","description":"Puppet module that hardens Windows Server to DoD STIG compliance","archived":false,"fork":false,"pushed_at":"2019-09-11T15:57:00.000Z","size":986,"stargazers_count":13,"open_issues_count":0,"forks_count":4,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-11-16T17:41:00.928Z","etag":null,"topics":["dod","nist","nist800-53","puppet","security","stig","stig-vulnerabilities","windows","windows-server"],"latest_commit_sha":null,"homepage":"http://autostructure.io","language":"Puppet","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/autostructure.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":"2018-01-22T18:53:28.000Z","updated_at":"2024-01-28T16:34:40.000Z","dependencies_parsed_at":"2023-03-01T02:30:45.716Z","dependency_job_id":null,"html_url":"https://github.com/autostructure/secure_windows","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/autostructure%2Fsecure_windows","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/autostructure%2Fsecure_windows/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/autostructure%2Fsecure_windows/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/autostructure%2Fsecure_windows/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/autostructure","download_url":"https://codeload.github.com/autostructure/secure_windows/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229843636,"owners_count":18132941,"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":["dod","nist","nist800-53","puppet","security","stig","stig-vulnerabilities","windows","windows-server"],"created_at":"2024-12-15T16:29:17.699Z","updated_at":"2025-12-11T21:24:58.431Z","avatar_url":"https://github.com/autostructure.png","language":"Puppet","funding_links":[],"categories":[],"sub_categories":[],"readme":"# secure_windows\n[![License](https://img.shields.io/:license-apache-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0.html)\n[![Build Status](https://travis-ci.org/autostructure/secure_windows.svg?branch=master)](https://travis-ci.org/autostructure/secure_windows)\n[![Puppet Forge](https://img.shields.io/puppetforge/v/autostructure/secure_windows.svg)](https://forge.puppetlabs.com/autostructure/secure_windows)\n[![Puppet Forge Score](https://img.shields.io/puppetforge/f/autostructure/secure_windows.svg)](https://forge.puppetlabs.com/autostructure/secure_windows)\n[![Puppet Forge Downloads](https://img.shields.io/puppetforge/dt/autostructure/secure_windows.svg)](https://forge.puppetlabs.com/autostructure/secure_windows)\n\n#### Table of Contents\n\n1. [Description](#description)\n1. [Setup - Getting you started with *secure_windows*](#setup)\n1. [Usage - Configuration options and additional functionality](#usage)\n    * [Disabling Vulnerabilities with Hiera](#disabling-vulnerabilities-with-hiera)\n    * [No-Op Mode - Running the Puppet Agent without implementing any changes](#no-op-mode)\n1. [Reference - An under-the-hood peek at what the module is doing and how](#reference)\n    * [Parameters](#parameters)\n1. [Possible Limitations - Some features may not work with certain system configurations](#possible-limitations)\n    * [Potentially Application-Breaking Rights Privileges](#potentially-application-breaking-rights-privileges)\n    * [Exemptions for Systems Dedicated to the Management of Active Directory](#exemptions-for-systems-dedicated-to-the-management-of-active-directory)\n    * [Registry Key ACLs](#registry-key-acls)\n    * [FTP Servers](#ftp-servers)\n    * [Screen Savers](#screen-savers)\n    * [Audit Servers](#audit-servers)\n1. [Coverage](#coverage)\n    * [Vulnerabilities Reported on but Not Changed](#vulnerabilities-reported-on-but-not-changed)\n    * [Non-Applicable to the System](#non-applicable-to-the-system)\n1. [Development - Guide for contributing to the module](#development)\n1. [Copyright](#copyrights)\n1. [Additional Info](#nist-800-53-controls)\n\n## Description\nThis module hardens Member, Standalone, and Domain Controller Window Servers for Windows Server 2016 (Release 2) Department of Defense Security Technical Implementation Guide (STIG) specifications, which can be found [here.](https://iase.disa.mil/stigs/os/windows/Pages/index.aspx)\n\nThe benchmark dates for the Windows Server 2016 STIG is 7/28/17. The STIG vulnerabilities have been cross-referenced with the National Institute of Security and Technology 800 53 Controls, for users who desire the [additional information](#nist-800-53-controls).\n\nThis module covers most of the Windows Server 2016 STIG (Release 2) vulnerabilities. For a list of vulnerabilities we do not cover due to their nature, see [Non-Applicable to the System](#non-applicable-to-the-system). For a list of vulnerabilities that Puppet reports on, but does not enforce see [Vulnerabilities Reported on but Not Changed](#vulnerabilities-reported-on-but-not-changed).\n\n## Setup\nTo have Puppet harden the server to DoD STIG compliance with default settings, declare the `secure_windows` class:\n\n```puppet\nclass { '::secure_windows': }\n```\n\nWhen you declare this class with the default options, Puppet will enforce all STIG vulnerabilities that we cover and produce warnings for vulnerabilities that we report on (see [Coverage](#coverage)).\n\nThis class applies the correct vulnerabilities for Standalone servers, Member servers, and Domain Controllers.\n\n**Domain Controllers** must install the `nokogiri` gem due to a dependency with the [ad_acl](https://github.com/autostructure/ad_acl) module. Perform the following on each Domain Controller, or have Puppet install the gem.\n\n```\ngem install nokogiri\n```\n\n```puppet\npackage { 'nokogiri':\n  ensure   =\u003e installed,\n  provider =\u003e gem,\n}\n```\n\n## Usage\n\n### Disabling Vulnerabilities with Hiera\nThere are 277 vulnerabilities included in the Windows Server 2016 STIG, and each one can be turned ON or OFF, according to the needs of the system. By default, all vulnerabilities are turned ON to ensure maximum security out-of-box. This is how you would turn off a vulnerablity using your company's Hiera configuration.\n\n```yaml\n# hieradata/common.yaml\nsecure_windows::stig::v73379::enforced: false\n```\n\nSee [Possible Limitations](#possible-limitations) for a list of vulnerabilities that might not apply to certain systems.\n\nFor example, FTP servers need to have the FTP role enabled, which V-73289 removes. On those systems, that vulnerability should be disabled:\n\n```yaml\n# hieradarta/role/ftp.yaml\nsecure_windows::stig::v73289::enforced: false\n```\n\nSee [Reference](#reference) for a list of parameters that are needed to customize your security configurations.\n\nFor example, according to V-73307 systems should be synced to the appropriate time server. You can define that parameter in hiera:\n\n```yaml\n# hieradata/common.yaml\nsecure_windows::stig::v73307::time_server: time.example.com\n```\n\n### No-Op Mode\nIt is possible to run the module in \"No-Op Mode\", which identifies detected Configuration Drifts without implementing any actual changes. This is useful for auditing the state of your system without making any changes.\n\n```\npuppet agent -t --noop\n```\n\n### Troubleshooting\n\n__Problem:__    \nYou encounter a \"_Duplicate declaration: Class[Windows_firewall]_\" error during the puppet agent run:\n\n```puppet\nError: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Resource Statement, Evaluation Error: Error while evaluating a Resource Statement, Duplicate declaration: Class[Windows_firewall] is already declared in file \u003cyour-filename-that-contains-windows-firewall-declaration\u003e; cannot redeclare at /etc/puppetlabs/code/environments/production/modules/secure_windows/manifests/stig/v73279.pp:7 ...\n```\n\n__Reason:__  \nThis occurs because the \"_puppet-windows_firewall_\" module requires a Class statement to run the firewall (shown below), which conflicts with any declarations you might have if you use the module.  If you receive this error, the declaration below likely exists in one of your manifests:\n```\nclass{ '::windows_firewall':\n    ensure =\u003e 'running',\n  }\n```\n\n__Fix:__  \nSimply disable vulnerability v73279 in hiera:\n\n```yaml\n# hieradata/common.yaml\nsecure_windows::stig::v73279::enforced: false\n```\n\n## Reference\n\n### Parameters\n\n##### `ftp_sites`\n\nDefault value: []\n\nAcceptable values are an array of ftp sites. This parameter should be set for FTP servers and contain an array of FTP sites that are on the server.\n\nUsed in STIG V-73303\n\n\n##### `time_server`\n\nDefault value: 'tick.usno.navy.mil'\n\nThis should be the appropriate time server for your organization.\n\nUsed in STIG V-73307\n\n\n##### `lsacfgflags`\n\nDefault value: 'lock'\n\nAcceptable values are 'lock' or 'no lock', which correspond to 'Enabled with UEFI lock' and 'Enabled without lock' respectively.\n\nUsed in STIG V-73515\n\n\n##### `hypervisorenforcedcodeintegrity`\n\nDefault value: 'lock'\n\nAcceptable values are 'lock' or 'no lock', which correspond to 'Enabled with UEFI lock' and 'Enabled without lock' respectively.\n\nUsed in STIG V-73517\n\n\n##### `driverloadpolicy`\n\nDefault value: '1'\n\nAcceptable values are '1', '3', or '8', which correspond to 'Good and unknown', 'Good, unknown and bad but critical', and 'Good only' respectively.\n\nUsed in STIG V-73521\n\n\n##### `allowtelemetry`\n\nDefault value: 'security'\n\nAcceptable values are 'security' and 'basic'.\n\nUsed in STIG V-73551\n\n\n##### `admin_account_name`\n\nDefault value: 'adminaccount'\n\nAcceptable values are any string. This is what Puppet will rename the Local Administrator account to.\n\nUsed in STIG V-73623\n\n\n##### `guest_account_name`\n\nDefault value: 'guestaccount'\n\nAcceptable values are any string. This is what Puppet will rename the built-in guest account to.\n\nUsed in STIG V-73625\n\n\n##### `legalnoticetext`\n\nDefault value: 'I\\'ve read \u0026 consent to terms in IS user agreement.'\n\nAcceptable values are any string. This will be the legal notice displayed when users log in.\n\nUsed in STIG V-73647\n\n\n##### `legalnoticetitle`\n\nDefault value: 'US Department of Defense Warning Statement'\n\nAcceptable values are any string. This will be the legal notice title displayed when users log in.\n\nUsed in STIG V-73649\n\n\n##### `scremoveoption`\n\nDefault value: '1'\n\nAcceptable values are 1 (Lock Workstation) or 2 (Force Logoff).\n\nUsed in STIG V-73807\n\n\n\n## Possible Limitations\nBelow are lists of vunerabilities that can **potentially break the client's application if the rights described in the listed vulnerability are essential to operation**.\n\n\n### Potentially Application-Breaking Rights Privileges\nBelow is a list of vulnerabilities that require extra care and attention. By default, these vulnerabilities enforce proper user permissions on the machine. However, it is possible that an application might require one of these user rights. In that case, vendor documentation must support the requirement for having the user right and the requirement must be documented with the ISSO. In addition, you should disable this module from managing that right on that node, as it could break that application. Instead, manage that right in your own Puppet code:\n- V-73731\n- V-73733\n- V-73735\n- V-73739\n- V-73743\n- V-73747\n- V-73749\n- V-73755\n- V-73783\n- V-73785\n- V-73787\n- V-73791\n- V-73793\n- V-73801\n- V-73803\n\n\n### Exemptions for Systems Dedicated to the Management of Active Directory\nBelow is a list of vulnerabilities that should not be applied to systems dedicated to the management of Active Directory. For such systems, do not enforce these vulnerabilities:\n- V-73759\n- V-73771\n- V-73775\n\n\n### Registry Key ACLs\nPuppet cannot enforce the default permissions on HKLM:security\\ because its default permissions are too restrictive to allow Puppet to inspect them. We can enforce the permissions on all other keys. This affects:\n- V-73255\n\n\n### FTP Servers\nThe following will remove the FTP feature on all servers. This will break any server that is suppsosed to be an FTP server. Disable this vulnerability on FTP servers:\n- V-73289\n\n\n### Screen Savers\nApplications requiring continuous, real-time screen display (e.g., network management products) must disable the following vulnerability that requires a screen saver:\n- V-73723\n\n\n### Audit Servers\nSystems that are configured to write events directly to an audit server can disable the following vulnerabilities:\n- V-73553\n- V-73555\n- V-73557\n\n\n## Coverage\n\n### Vulnerabilities Reported on but Not Changed\nThe following vulnerabilities will be reported on, but not changed. If Puppet detects that the system is not compliant with these vulnerabilities it will produce a warning that shows in the node's report, but will not make the corrective change on the system. These vulnerabilities have been determined to need manual review before making corrective changes due to their disruptive nature.\n- V-73237\n- V-73239\n- V-73247\n- V-73259\n- V-73261\n- V-73263\n- V-73305\n- V-73379\n- V-73513\n- V-73611\n\n\n### Non-Applicable to the System\nThe following vulnerabilities are not covered by `secure_windows`. This is due to them being process-oriented and not possible for Puppet to configure or report on.\n- V-73217\n- V-73219\n- V-73221\n- V-73223\n- V-73227\n- V-73229\n- V-73231\n- V-73233\n- V-73241\n- V-73243\n- V-73245\n- V-73257\n- V-73265\n- V-73267\n- V-73269\n- V-73271\n- V-73273\n- V-73275\n- V-73281\n- V-73283\n- V-73285\n- V-73383\n- V-73385\n- V-73401\n- V-73403\n- V-73613\n- V-73615\n- V-73617\n\n\n## Development\n\n### How to Contribute\n\nCreate a pull request and we will review your change. Log issues in the issues tab.\n\n\n### Running Tests\n\n\nThis module is built on PDK, which can be used for testing. Download PDK and run the following commands:\n\n```\npdk validate\npdk test unit\n```\n\nAlternatively, you can run the following to test the module:\n\n```\nbundle install\nbundle exec rake rubocop\nbundle exec rake syntax lint\nbundle exec rake metadata_lint\nbundle exec rake spec\n```\n\n### Contributors\n\nThis module is an open source project that was created and maintained by Autostructure. For a list of contributors, see the [list of contributors](https://github.com/autostructure/secure_windows/graphs/contributors).\n\n\n## Disclaimer\n\n\u003e This Work is provided \"as is.\" Any express or implied warranties,\nincluding but not limited to, the implied warranties of merchantability\nand fitness for a particular purpose are disclaimed. In no event shall\nthe authors be liable for any direct, indirect,\nincidental, special, exemplary or consequential damages (including, but\nnot limited to, procurement of substitute goods or services, loss of\nuse, data or profits, or business interruption) however caused and on\nany theory of liability, whether in contract, strict liability, or tort\n(including negligence or otherwise) arising in any way out of the use of\nthis Guidance, even if advised of the possibility of such damage.\n\u003e\n\u003e The User of this Work agrees to hold harmless and indemnify Autostructure,\nits agents, parent company, and employees from every claim or liability\n(whether in tort or in contract), including attorneys' fees,\ncourt costs, and expenses, arising in direct consequence of Recipient's\nuse of the item, including, but not limited to, claims or liabilities\nmade for injury to or death of personnel of User or third parties,\ndamage to or destruction of property of User or third parties, and\ninfringement or other violations of intellectual property or technical\ndata rights.\n\u003e\n\u003e Nothing in this Work is intended to constitute an endorsement, explicit\nor implied, by Autostructure of any particular manufacturer's\nproduct or service.\n\n## Copyrights\n\n\u003e All materials are copyright by their respective owners unless otherwise noted.\n\u003e\n\u003e Released under the [Apache License, Version 2](http://www.apache.org/licenses/LICENSE-2.0.html).\n\n\n## NIST 800 53 Controls\nEach of the controls listed below are classified as either Low, Moderate, or High, based on the potential impact a security breach could have on an organization's systems. This is based on the Windows Server 2012 and 2016 STIGs.\n\n\n\n\n| Low                 | Covered (x) | Moderate                       | Covered (x)          | High                                   | Covered (x)                  |\n|---------------------|-------------|--------------------------------|----------------------|----------------------------------------|------------------------------|\n| AC-1                |             | AC-1                           |                      | AC-1                                   |                              |\n| AC-2                |             | AC-2                           | (2) (4)              | AC-2                                   |                              |\n| AC-3                | x           | AC-3                           | x                    | AC-3                                   | x                            |\n|                     |             | AC-4                           |                      | AC-4                                   |                              |\n|                     |             | AC-5                           |                      | AC-5                                   |                              |\n|                     |             | AC-6 (1) (2) (5) (9) (10)      | (9) (10)             | AC-6 (1) (2) (3) (5) (9) (10)          |                              |\n| AC-7                | x           | AC-7                           | x                    | AC-7                                   | x                            |\n| AC-8                | x           | AC-8                           | x                    | AC-8                                   | x                            |\n|                     |             |                                |                      | AC-10                                  |                              |\n|                     |             | AC-11 (1)                      | x                    | AC-11 (1)                              | x                            |\n|                     |             | AC-12                          | x                    | AC-12                                  | x                            |\n| AC-14               |             | AC-14                          |                      | AC-14                                  |                              |\n| AC-17               |             | AC-17 (1) (2) (3) (4)          | (1) (2)              | AC-17 (1) (2) (3) (4)                  |                              |\n| AC-18               | N/A         | AC-18 (1)                      | N/A                  | AC-18 (1) (4) (5)                      | N/A                          |\n| AC-19               | N/A         | AC-19 (5)                      | N/A                  | AC-19 (5)                              | N/A                          |\n| AC-20               |             | AC-20 (1) (2)                  |                      | AC-20 (1) (2)                          |                              |\n|                     |             | AC-21                          | x                    | AC-21                                  | x                            |\n| AC-22               |             | AC-22                          |                      | AC-22                                  |                              |\n| AT-1                |             | AT-1                           |                      | AT-1                                   |                              |\n| AT-2                |             | AT-2 (2)                       |                      | AT-2 (2)                               |                              |\n| AT-3                |             | AT-3                           |                      | AT-3                                   |                              |\n| AT-4                |             | AT-4                           |                      | AT-4                                   |                              |\n| AU-1                |             | AU-1                           |                      | AU-1                                   |                              |\n| AU-2                |             | AU-2 (3)                       |                      | AU-2 (3)                               |                              |\n| AU-3                |             | AU-3 (1)                       | x                    | AU-3 (1) (2)                           |                              |\n| AU-4                | x           | AU-4                           | x                    | AU-4                                   | x                            |\n| AU-5                |             | AU-5                           |                      | AU-5 (1) (2)                           |                              |\n| AU-6                |             | AU-6 (1) (3)                   |                      | AU-6 (1) (3) (5) (6)                   |                              |\n|                     |             | AU-7 (1)                       |                      | AU-7 (1)                               |                              |\n| AU-8                |             | AU-8 (1)                       | a                    | AU-8 (1)                               |                              |\n| AU-9                | x           | AU-9 (4)                       |                      | AU-9 (2) (3) (4)                       |                              |\n|                     |             |                                |                      | AU-10                                  |                              |\n| AU-11               |             | AU-11                          |                      | AU-11                                  |                              |\n| AU-12               | x           | AU-12                          | x                    | AU-12 (1) (3)                          | (3)                          |\n| CA-1                |             | CA-1                           |                      | CA-1                                   |                              |\n| CA-2                |             | CA-2 (1)                       |                      | CA-2 (1) (2)                           |                              |\n| CA-3                |             | CA-3 (5)                       | x                    | CA-3 (5)                               | x                            |\n| CA-5                |             | CA-5                           |                      | CA-5                                   |                              |\n| CA-6                |             | CA-6                           |                      | CA-6                                   |                              |\n| CA-7                |             | CA-7 (1)                       |                      | CA-7 (1)                               |                              |\n|                     |             |                                |                      | CA-8                                   |                              |\n| CA-9                |             | CA-9                           |                      | CA-9                                   |                              |\n| CM-1                |             | CM-1                           |                      | CM-1                                   |                              |\n| CM-2                |             | CM-2 (1) (3) (7)               |                      | CM-2 (1) (2) (3) (7)                   |                              |\n|                     |             | CM-3 (2)                       |                      | CM-3 (1) (2)                           |                              |\n| CM-4                | x           | CM-4                           | x                    | CM-4 (1)                               |                              |\n|                     |             | CM-5                           |                      | CM-5 (1) (2) (3)                       |                              |\n| CM-6                | b           | CM-6                           |                      | CM-6 (1) (2)                           |                              |\n| CM-7                | x           | CM-7 (1) (2) (4)               | (2)                  | CM-7 (1) (2) (5)                       |                              |\n| CM-8                |             | CM-8 (1) (3) (5)               |                      | CM-8 (1) (2) (3) (4) (5)               |                              |\n|                     |             | CM-9                           |                      | CM-9                                   |                              |\n| CM-10               | x           | CM-10                          | x                    | CM-10                                  | x                            |\n| CM-11               |             | CM-11                          |                      | CM-11                                  |                              |\n| CP-1                |             | CP-1                           |                      | CP-1                                   |                              |\n| CP-2                |             | CP-2 (1) (3) (8)               |                      | CP-2 (1) (2) (3) (4) (5) (8)           |                              |\n| CP-3                |             | CP-3                           |                      | CP-3 (1)                               |                              |\n| CP-4                |             | CP-4 (1)                       |                      | CP-4 (1) (2)                           |                              |\n|                     |             | CP-6 (1) (3)                   |                      | CP-6 (1) (2) (3)                       |                              |\n|                     |             | CP-7 (1) (2) (3)               |                      | CP-7 (1) (2) (3) (4)                   |                              |\n|                     |             | CP-8 (1) (2)                   |                      | CP-8 (1) (2) (3) (4)                   |                              |\n| CP-9                |             | CP-9 (1)                       |                      | CP-9 (1) (2) (3) (5)                   |                              |\n| CP-10               |             | CP-10 (2)                      |                      | CP-10 (2) (4)                          |                              |\n| IA-1                |             | IA-1                           |                      | IA-1                                   |                              |\n| IA-2(1) (12)        | (1)         | IA-2 (1) (2) (3) (8) (11) (12) | (1) (2) (3) (8) (11) | IA-2 (1) (2) (3) (4) (8) (9) (11) (12) | (1) (2) (3) (4) (8) (9) (11) |\n|                     |             | IA-3                           |                      | IA-3                                   |                              |\n| IA-4                | e           | IA-4                           |                      | IA-4                                   |                              |\n| IA-5(1) (11)        |             | IA-5 (1) (2) (3) (11)          | 2a                   | IA-5 (1) (2) (3) (11)                  |                              |\n| IA-6                |             | IA-6                           |                      | IA-6                                   |                              |\n| IA-7                | x           | IA-7                           | x                    | IA-7                                   | x                            |\n| IA-8(1) (2) (3) (4) | x           | IA-8 (1) (2) (3) (4)           | x                    | IA-8 (1) (2) (3) (4)                   | x                            |\n| IR-1                |             | IR-1                           |                      | IR-1                                   |                              |\n| IR-2                |             | IR-2                           |                      | IR-2 (1) (2)                           |                              |\n|                     |             | IR-3 (2)                       |                      | IR-3 (2)                               |                              |\n| IR-4                |             | IR-4 (1)                       |                      | IR-4 (1) (4)                           |                              |\n| IR-5                |             | IR-5                           |                      | IR-5 (1)                               |                              |\n| IR-6                |             | IR-6 (1)                       |                      | IR-6 (1)                               |                              |\n| IR-7                |             | IR-7 (1)                       |                      | IR-7 (1)                               |                              |\n| IR-8                |             | IR-8                           |                      | IR-8                                   |                              |\n| MA-1                |             | MA-1                           |                      | MA-1                                   |                              |\n| MA-2                | c,d         | MA-2                           |                      | MA-2 (2)                               |                              |\n|                     |             | MA-3 (1) (2)                   |                      | MA-3 (1) (2) (3)                       |                              |\n| MA-4                | c           | MA-4 (2)                       |                      | MA-4 (2) (3)                           |                              |\n| MA-5                |             | MA-5                           |                      | MA-5 (1)                               |                              |\n|                     |             | MA-6                           |                      | MA-6                                   |                              |\n| MP-1                |             | MP-1                           |                      | MP-1                                   |                              |\n| MP-2                |             | MP-2                           |                      | MP-2                                   |                              |\n|                     |             | MP-3                           |                      | MP-3                                   |                              |\n|                     |             | MP-4                           |                      | MP-4                                   |                              |\n|                     |             | MP-5 (4)                       |                      | MP-5 (4)                               |                              |\n| MP-6                |             | MP-6                           |                      | MP-6 (1) (2) (3)                       |                              |\n| MP-7                |             | MP-7 (1)                       |                      | MP-7 (1)                               |                              |\n| PE-1                |             | PE-1                           |                      | PE-1                                   |                              |\n| PE-2                |             | PE-2                           |                      | PE-2                                   |                              |\n| PE-3                |             | PE-3                           |                      | PE-3 (1)                               |                              |\n|                     |             | PE-4                           |                      | PE-4                                   |                              |\n|                     |             | PE-5                           |                      | PE-5                                   |                              |\n| PE-6                |             | PE-6 (1)                       |                      | PE-6 (1) (4)                           |                              |\n| PE-8                |             | PE-8                           |                      | PE-8 (1)                               |                              |\n|                     |             | PE-9                           |                      | PE-9                                   |                              |\n|                     |             | PE-10                          |                      | PE-10                                  |                              |\n|                     |             | PE-11                          |                      | PE-11 (1)                              |                              |\n| PE-12               |             | PE-12                          |                      | PE-12                                  |                              |\n| PE-13               |             | PE-13 (3)                      |                      | PE-13 (1) (2) (3)                      |                              |\n| PE-14               |             | PE-14                          |                      | PE-14                                  |                              |\n| PE-15               |             | PE-15                          |                      | PE-15 (1)                              |                              |\n| PE-16               |             | PE-16                          |                      | PE-16                                  |                              |\n|                     |             | PE-17                          |                      | PE-17                                  |                              |\n|                     |             |                                |                      | PE-18                                  |                              |\n| PL-1                |             | PL-1                           |                      | PL-1                                   |                              |\n| PL-2                |             | PL-2 (3)                       |                      | PL-2 (3)                               |                              |\n| PL-4                |             | PL-4 (1)                       |                      | PL-4 (1)                               |                              |\n|                     |             | PL-8                           |                      | PL-8                                   |                              |\n| PS-1                |             | PS-1                           |                      | PS-1                                   |                              |\n| PS-2                |             | PS-2                           |                      | PS-2                                   |                              |\n| PS-3                |             | PS-3                           |                      | PS-3                                   |                              |\n| PS-4                |             | PS-4                           |                      | PS-4 (2)                               |                              |\n| PS-5                |             | PS-5                           |                      | PS-5                                   |                              |\n| PS-6                |             | PS-6                           |                      | PS-6                                   |                              |\n| PS-7                |             | PS-7                           |                      | PS-7                                   |                              |\n| PS-8                |             | PS-8                           |                      | PS-8                                   |                              |\n| RA-1                |             | RA-1                           |                      | RA-1                                   |                              |\n| RA-2                |             | RA-2                           |                      | RA-2                                   |                              |\n| RA-3                |             | RA-3                           |                      | RA-3                                   |                              |\n| RA-5                |             | RA-5 (1) (2) (5)               |                      | RA-5 (1) (2) (4) (5)                   |                              |\n| SA-1                |             | SA-1                           |                      | SA-1                                   |                              |\n| SA-2                |             | SA-2                           |                      | SA-2                                   |                              |\n| SA-3                |             | SA-3                           |                      | SA-3                                   |                              |\n| SA-4(10)            |             | SA-4 (1) (2) (9) (10)          |                      | SA-4 (1) (2) (9) (10)                  |                              |\n| SA-5                |             | SA-5                           |                      | SA-5                                   |                              |\n|                     |             | SA-8                           |                      | SA-8                                   |                              |\n| SA-9                |             | SA-9 (2)                       |                      | SA-9 (2)                               |                              |\n|                     |             | SA-10                          |                      | SA-10                                  |                              |\n|                     |             | SA-11                          |                      | SA-11                                  |                              |\n|                     |             |                                |                      | SA-12                                  |                              |\n|                     |             |                                |                      | SA-15                                  |                              |\n|                     |             |                                |                      | SA-16                                  |                              |\n|                     |             |                                |                      | SA-17                                  |                              |\n| SC-1                |             | SC-1                           |                      | SC-1                                   |                              |\n|                     |             | SC-2                           |                      | SC-2                                   |                              |\n|                     |             |                                |                      | SC-3                                   | x                            |\n|                     |             | SC-4                           | x                    | SC-4                                   | x                            |\n| SC-5                | x           | SC-5                           | x                    | SC-5                                   | x                            |\n| SC-7                |             | SC-7 (3) (4) (5) (7)           |                      | SC-7 (3) (4) (5) (7) (8) (18) (21)     |                              |\n|                     |             | SC-8 (1)                       | x                    | SC-8 (1)                               | x                            |\n|                     |             | SC-10                          | x                    | SC-10                                  | x                            |\n| SC-12               |             | SC-12                          |                      | SC-12 (1)                              |                              |\n| SC-13               | x           | SC-13                          | x                    | SC-13                                  | x                            |\n| SC-15               |             | SC-15                          |                      | SC-15                                  |                              |\n|                     |             | SC-17                          |                      | SC-17                                  |                              |\n|                     |             | SC-18                          |                      | SC-18                                  |                              |\n|                     |             | SC-19                          |                      | SC-19                                  |                              |\n| SC-20               |             | SC-20                          |                      | SC-20                                  |                              |\n| SC-21               |             | SC-21                          |                      | SC-21                                  |                              |\n| SC-22               |             | SC-22                          |                      | SC-22                                  |                              |\n|                     |             | SC-23                          |                      | SC-23                                  |                              |\n|                     |             |                                |                      | SC-24                                  |                              |\n|                     |             | SC-28                          | x                    | SC-28                                  | x                            |\n| SC-39               | x           | SC-39                          | x                    | SC-39                                  | x                            |\n| SI-1                |             | SI-1                           |                      | SI-1                                   |                              |\n| SI-2                |             | SI-2 (2)                       | x                    | SI-2 (1) (2)                           |                              |\n| SI-3                |             | SI-3 (1) (2)                   |                      | SI-3 (1) (2)                           |                              |\n| SI-4                |             | SI-4 (2) (4) (5)               |                      | SI-4 (2) (4) (5)                       |                              |\n| SI-5                |             | SI-5                           |                      | SI-5 (1)                               |                              |\n|                     |             |                                |                      | SI-6                                   |                              |\n|                     |             | SI-7 (1) (7)                   |                      | SI-7 (1) (2) (5) (7) (14)              |                              |\n|                     |             | SI-8 (1) (2)                   |                      | SI-8 (1) (2)                           |                              |\n|                     |             | SI-10                          |                      | SI-10                                  |                              |\n|                     |             | SI-11                          |                      | SI-11                                  |                              |\n| SI-12               |             | SI-12                          |                      | SI-12                                  |                              |\n|                     |             | SI-16                          | x                    | SI-16                                  | x                            |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fautostructure%2Fsecure_windows","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fautostructure%2Fsecure_windows","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fautostructure%2Fsecure_windows/lists"}