Path: blob/master/lib/rex/proto/ms_crtd.rb
21532 views
# -*- coding: binary -*-1# frozen_string_literal: true23module Rex::Proto4module MsCrtd5# see: https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-crtd/4c6950e4-1dc2-4ae3-98c3-b8919bb7382267# [2.4 flags Attribute](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-crtd/6cc7eb79-3e84-477a-b398-b0ff2b68a6c0)8CT_FLAG_AUTO_ENROLLMENT = 0x000000209CT_FLAG_MACHINE_TYPE = 0x0000004010CT_FLAG_IS_CA = 0x0000008011CT_FLAG_ADD_TEMPLATE_NAME = 0x0000020012CT_FLAG_IS_CROSS_CA = 0x0000080013CT_FLAG_IS_DEFAULT = 0x0001000014CT_FLAG_IS_MODIFIED = 0x0002000015CT_FLAG_DONOTPERSISTINDB = 0x0000100016CT_FLAG_ADD_EMAIL = 0x0000000217CT_FLAG_PUBLISH_TO_DS = 0x0000000818CT_FLAG_EXPORTABLE_KEY = 0x000000101920# [2.26 msPKI-Enrollment-Flag Attribute](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-crtd/ec71fd43-61c2-407b-83c9-b52272dec8a1)21CT_FLAG_INCLUDE_SYMMETRIC_ALGORITHMS = 0x0000000122CT_FLAG_PEND_ALL_REQUESTS = 0x0000000223CT_FLAG_PUBLISH_TO_KRA_CONTAINER = 0x0000000424#CT_FLAG_PUBLISH_TO_DS = 0x0000000825CT_FLAG_AUTO_ENROLLMENT_CHECK_USER_DS_CERTIFICATE = 0x0000001026#CT_FLAG_AUTO_ENROLLMENT = 0x0000002027CT_FLAG_PREVIOUS_APPROVAL_VALIDATE_REENROLLMENT = 0x0000004028CT_FLAG_USER_INTERACTION_REQUIRED = 0x0000010029CT_FLAG_REMOVE_INVALID_CERTIFICATE_FROM_PERSONAL_STORE = 0x0000040030CT_FLAG_ALLOW_ENROLL_ON_BEHALF_OF = 0x0000080031CT_FLAG_ADD_OCSP_NOCHECK = 0x0000100032CT_FLAG_ENABLE_KEY_REUSE_ON_NT_TOKEN_KEYSET_STORAGE_FULL = 0x0000200033CT_FLAG_NOREVOCATIONINFOINISSUEDCERTS = 0x0000400034CT_FLAG_INCLUDE_BASIC_CONSTRAINTS_FOR_EE_CERTS = 0x0000800035CT_FLAG_ALLOW_PREVIOUS_APPROVAL_KEYBASEDRENEWAL_VALIDATE_REENROLLMENT = 0x0001000036CT_FLAG_ISSUANCE_POLICIES_FROM_REQUEST = 0x0002000037CT_FLAG_SKIP_AUTO_RENEWAL = 0x0004000038CT_FLAG_NO_SECURITY_EXTENSION = 0x800003940# [2.27 msPKI-Private-Key-Flag Attribute](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-crtd/f6122d87-b999-4b92-bff8-f465e8949667)41CT_FLAG_REQUIRE_PRIVATE_KEY_ARCHIVAL = 0x0000000142#CT_FLAG_EXPORTABLE_KEY = 0x0000001043CT_FLAG_STRONG_KEY_PROTECTION_REQUIRED = 0x0000002044CT_FLAG_REQUIRE_ALTERNATE_SIGNATURE_ALGORITHM = 0x0000004045CT_FLAG_REQUIRE_SAME_KEY_RENEWAL = 0x0000008046CT_FLAG_USE_LEGACY_PROVIDER = 0x0000010047CT_FLAG_ATTEST_NONE = 0x0000000048CT_FLAG_ATTEST_REQUIRED = 0x0000200049CT_FLAG_ATTEST_PREFERRED = 0x0000100050CT_FLAG_ATTESTATION_WITHOUT_POLICY = 0x0000400051CT_FLAG_EK_TRUST_ON_USE = 0x0000020052CT_FLAG_EK_VALIDATE_CERT = 0x0000040053CT_FLAG_EK_VALIDATE_KEY = 0x0000080054CT_FLAG_HELLO_LOGON_KEY = 0x002000005556# [2.28 msPKI-Certificate-Name-Flag Attribute](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-crtd/1192823c-d839-4bc3-9b6b-fa8c53507ae1)57CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT = 0x0000000158CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT_ALT_NAME = 0x0001000059CT_FLAG_SUBJECT_ALT_REQUIRE_DOMAIN_DNS = 0x0040000060CT_FLAG_SUBJECT_ALT_REQUIRE_SPN = 0x0080000061CT_FLAG_SUBJECT_ALT_REQUIRE_DIRECTORY_GUID = 0x0100000062CT_FLAG_SUBJECT_ALT_REQUIRE_UPN = 0x0200000063CT_FLAG_SUBJECT_ALT_REQUIRE_EMAIL = 0x0400000064CT_FLAG_SUBJECT_ALT_REQUIRE_DNS = 0x0800000065CT_FLAG_SUBJECT_REQUIRE_DNS_AS_CN = 0x1000000066CT_FLAG_SUBJECT_REQUIRE_EMAIL = 0x2000000067CT_FLAG_SUBJECT_REQUIRE_COMMON_NAME = 0x4000000068CT_FLAG_SUBJECT_REQUIRE_DIRECTORY_PATH = 0x8000000069CT_FLAG_OLD_CERT_SUPPLIES_SUBJECT_AND_ALT_NAME = 0x000000087071end72end737475