#include "utilsSSP.h" typedef NTSTATUS(WINAPI* KerbMakeKdcCall_t)(PVOID a, PVOID b, PVOID c); KerbMakeKdcCall_t Original_KerbMakeKdcCall = NULL; NTSTATUS NTAPI Rublon_ap_SpLogonUserEx2( PLSA_CLIENT_REQUEST ClientRequest, SECURITY_LOGON_TYPE LogonType, PVOID ProtocolSubmitBuffer, PVOID ClientBufferBase, ULONG SubmitBufferSize, PVOID* ProfileBuffer, PULONG ProfileBufferSize, PLUID LogonId, PNTSTATUS SubStatus, PLSA_TOKEN_INFORMATION_TYPE TokenInformationType, PVOID* TokenInformation, PUNICODE_STRING* AccountName, PUNICODE_STRING* AuthenticatingAuthority, PUNICODE_STRING* MachineName, PSECPKG_PRIMARY_CRED PrimaryCredentials, PSECPKG_SUPPLEMENTAL_CRED_ARRAY* SupplementalCredentials ); NTSTATUS NTAPI Rublon_ssp_SpLsaModeInitialize( ULONG LsaVersion, PULONG PackageVersion, PSECPKG_FUNCTION_TABLE* ppTables, PULONG pcTables ); NTSTATUS NTAPI Rublon_ssp_SpInitialize( ULONG_PTR PackageId, PSECPKG_PARAMETERS Parameters, PLSA_SECPKG_FUNCTION_TABLE FunctionTable ); NTSTATUS NTAPI Rublon_ssp_SpGetInfo( PSecPkgInfoW PackageInfo ); NTSTATUS NTAPI Rublon_ssp_SpShutDown( void ); NTSTATUS NTAPI Rublon_ssp_SpAcceptSecurityContext( LSA_SEC_HANDLE CredentialHandle, LSA_SEC_HANDLE ContextHandle, PSecBufferDesc InputBuffer, ULONG ContextRequirements, ULONG TargetDataRep, PLSA_SEC_HANDLE NewContextHandle, PSecBufferDesc OutputBuffer, PULONG ContextAttributes, PTimeStamp ExpirationTime, PBOOLEAN MappedContext, PSecBuffer ContextData ); NTSTATUS NTAPI Rublon_ssp_SpAcceptCredentials( SECURITY_LOGON_TYPE LogonType, PUNICODE_STRING AccountName, PSECPKG_PRIMARY_CRED PrimaryCredentials, PSECPKG_SUPPLEMENTAL_CRED SupplementalCredentials ); NTSTATUS NTAPI Rublon_ssp_SpAcquireCredentialsHandle( PUNICODE_STRING PrincipalName, ULONG CredentialUseFlags, PLUID LogonId, PVOID AuthorizationData, PVOID GetKeyFn, PVOID GetKeyArgument, PLSA_SEC_HANDLE CredentialHandle, PTimeStamp ExpirationTime ); NTSTATUS NTAPI Rublon_ssp_SpInitLsaModeContext( LSA_SEC_HANDLE CredentialHandle, LSA_SEC_HANDLE ContextHandle, PUNICODE_STRING TargetName, ULONG ContextRequirements, ULONG TargetDataRep, PSecBufferDesc InputBuffers, PLSA_SEC_HANDLE NewContextHandle, PSecBufferDesc OutputBuffers, PULONG ContextAttributes, PTimeStamp ExpirationTime, PBOOLEAN MappedContext, PSecBuffer ContextData ); NTSTATUS NTAPI Rublon_ssp_SpAcceptLsaModeContext( LSA_SEC_HANDLE CredentialHandle, LSA_SEC_HANDLE ContextHandle, PSecBufferDesc InputBuffer, ULONG ContextRequirements, ULONG TargetDataRep, PLSA_SEC_HANDLE NewContextHandle, PSecBufferDesc OutputBuffer, PULONG ContextAttributes, PTimeStamp ExpirationTime, PBOOLEAN MappedContext, PSecBuffer ContextData ); NTSTATUS NTAPI Rublon_ssp_LsaApLogonUserEx( PLSA_CLIENT_REQUEST ClientRequest, SECURITY_LOGON_TYPE LogonType, PVOID ProtocolSubmitBuffer, PVOID* ProfileBuffer, PULONG ProfileBufferLength, PLUID LogonId, PNTSTATUS SubStatus, PLSA_TOKEN_INFORMATION_TYPE TokenInformationType, PVOID* TokenInformation, PUNICODE_STRING* AccountName, PUNICODE_STRING* AuthenticatingAuthority ); NTSTATUS NTAPI Rublon_ssp_LsaApLogonUser( PLSA_CLIENT_REQUEST ClientRequest, SECURITY_LOGON_TYPE LogonType, PVOID ProtocolSubmitBuffer, PVOID ClientBufferBase, ULONG SubmitBufferLength, PVOID* ProfileBuffer, PULONG ProfileBufferLength, PLUID LogonId, PNTSTATUS SubStatus, PLSA_TOKEN_INFORMATION_TYPE TokenInformationType, PVOID* TokenInformation, PLSA_UNICODE_STRING* AccountName, PLSA_UNICODE_STRING* AuthenticatingAuthority ); NTSTATUS NTAPI Rublon_ssp_LsaApInitializePackage( ULONG AuthenticationPackageId, PLSA_DISPATCH_TABLE LsaDispatchTable, PSTRING Database, PSTRING Confidentiality, PSTRING* PackageName ); NTSTATUS WINAPI Hooked_KerbMakeKdcCall(PVOID a, PVOID b, PVOID c);