void NTAPI LsaUnprotectMemory( __inout PVOID Buffer, __in ULONG BufferSize ); Buffer [in, out] On input, a pointer to the buffer to be decrypted. On output, a pointer to the decrypted buffer. BufferSize [in] The size, in bytes, of the Buffer buffer. Remarks A pointer to the LsaProtectMemory function is available in the LSA_SECPKG_FUNCTION_TABLE structure received by the SpInitialize function. Requirements Minimum supported client Windows XP Minimum supported server Windows Server 2003 Header Ntsecpkg.h
typedef enum _SECURITY_LOGON_TYPE { Interactive = 2, // Interactively logged on (locally or remotely) Network, // Accessing system via network Batch, // Started via a batch queue Service, // Service started by service controller Proxy, // Proxy logon Unlock, // Unlock workstation NetworkCleartext, // Network logon with cleartext credentials NewCredentials, // Clone caller, new default credentials RemoteInteractive, // Remote, yet interactive. Terminal server CachedInteractive, // Try cached credentials without hitting the net. CachedRemoteInteractive, // Same as RemoteInteractive, this is used internally for auditing purpose CachedUnlock // Cached Unlock workstation } SECURITY_LOGON_TYPE, *PSECURITY_LOGON_TYPE;
作者这么说的
Correct, crypted in memory but in reversible way (LsaProtectMemory/LsaUnprotectMemory, see : f86K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8X3u0D9L8$3N6Q4x3X3g2Y4k6h3&6@1K9h3I4C8K9i4N6A6i4K6u0W2j5$3!0E0i4K6u0r3L8h3W2E0K9h3E0S2N6s2A6Q4x3V1k6K6k6h3E0#2M7X3I4K6j5g2)9J5c8Y4N6V1K9h3N6W2M7%4c8Q4x3U0y4Y4k6i4c8i4c8r3W2Y4k6i4y4@1c8Y4g2F1j5%4c8A6L8$3&6K6 & 72eK9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8X3u0D9L8$3N6Q4x3X3g2Y4k6h3&6@1K9h3I4C8K9i4N6A6i4K6u0W2j5$3!0E0i4K6u0r3L8h3W2E0K9h3E0S2N6s2A6Q4x3V1k6K6k6h3E0#2M7X3I4K6j5g2)9J5c8Y4c8K6M7r3E0Y4i4K6t1K6k6$3g2@1g2s2y4b7K9$3N6r3N6h3&6U0N6r3W2G2L8Y4y4Q4x3U0W2Q4x3V1x3`. msv1_0 also use subcalls too for pass the hash.
Usualy, debug privilege is needed, but you can use system account too, (psexec -s or other tricks) and with it : no need of privilege :)
I disagree vulnerability, it's a weakness (but big fail ;))