Partilhar via


APIs Vertdll disponíveis em enclaves VBS

Aplica-se a:✅ Windows 11 Build 26100.2314 ou posterior ✅ Windows Server 2025 ou posterior

Enclaves são usados para criar ambientes de execução confiáveis. Essas APIs Vertdll estão disponíveis para desenvolvedores em enclaves VBS.

Funções exportadas pelo Vertdll.dll

As seguintes APIs exportadas por Vertdll.dll estão disponíveis para serem chamadas em enclaves VBS.

API Cabeçalho Descrição
IsProcessorFeaturePresent processthreadsapi.h Determina se o recurso de processador especificado é suportado pelo computador atual.
LdrDisableThreadCalloutsForDll - Desabilita a conexão de threads e desanexa textos explicativos a uma DLL.
NtTerminateProcess
Consulte TerminateProcess
processthreadsapi.h Encerra o processo especificado e todos os seus threads.
RtlCaptureContext winnt.h Recupera um registro de contexto no contexto do chamador.
RtlGetLastNtStatus
Consulte GetLastError
- Obtém o último valor NTSTATUS.
RtlLookupFunctionEntry winnt.h Pesquisa nas tabelas de funções ativas uma entrada que corresponde ao valor especificado do PC.
RtlPcToFileHeader winnt.h Recupera o endereço base da imagem que contém o valor de PC especificado.
RtlRaiseStatus
Consulte RaiseException
- Gera uma exceção, com apenas um parâmetro dwExceptionCode. RtlRaiseStatus invoca RaiseException , passando EXCEPTION_NONCONTINUABLE para indicar que uma exceção não continuável foi encontrada.
RtlTimeFieldsToTime WDM.H Converte TIME_FIELDS informações em um valor de tempo do sistema.
RtlUnhandledExceptionFilter
Consulte UnhandledExceptionFilter
- Uma função definida pelo aplicativo que passa exceções não tratadas para o depurador, se o processo estiver sendo depurado.
RtlUnwind winnt.h Inicia um desenrolar de quadros de chamada de procedimento.
RtlUnwindEx winnt.h Inicia um desenrolar de quadros de chamada de procedimento.
RtlVirtualUnwind winnt.h Recupera o contexto de invocação da função que precede o contexto de função especificado.
RtlGetSystemGlobalData - Obtém o endereço da área de dados global do sistema.
memcmp memory.h ou
string.h
Compara caracteres em dois buffers.
memcpy memory.h ou
string.h
Copia bytes entre buffers.
memmove string.h Move um buffer para outro.
memset memory.h ou
string.h
Define um buffer para um caractere especificado.
OutputDebugStringW debugapi.h Envia uma cadeia de caracteres para o depurador para exibição.
CallEnclave enclaveapi.h Chama uma função dentro de um enclave.
EnclaveGetEnclaveInformation winenclaveapi.h Obtém informações sobre o enclave atualmente em execução.
GetCurrentProcess processthreadsapi.h Recupera um pseudoidentificador para o processo atual.
TerminateEnclave enclaveapi.h Termina a execução dos threads que estão sendo executados dentro de um enclave.
TerminateProcess processthreadsapi.h Encerra o processo especificado e todos os seus threads.
GetLastError errhandlingapi.h Recupera o valor do código de último erro do thread de chamada.
SetLastError errhandlingapi.h Define o código do último erro para o thread de chamada.
RaiseException errhandlingapi.h Gera uma exceção no thread de chamada.
SetUnhandledExceptionFilter errhandlingapi.h Permite que um aplicativo substitua o manipulador de exceções de nível superior de cada thread de um processo.
GetProcessHeap heapapi.h Recupera um identificador para o heap padrão do processo de chamada.
GetProcessHeaps heapapi.h Retorna o número de heaps ativos e recupera identificadores para todos os heaps ativos para o processo de chamada.
HeapAlloc heapapi.h Aloca um bloco de memória de uma pilha. A memória alocada não é móvel.
HeapCompact heapapi.h Retorna o tamanho do maior bloco livre comprometido no heap especificado.
HeapCreate heapapi.h Cria um objeto de heap privado que pode ser usado pelo processo de chamada.
HeapDestroy heapapi.h Destrói o objeto de pilha especificado. Ele desconfirma e libera todas as páginas de um objeto de heap privado e invalida o identificador para o heap.
HeapFree heapapi.h Libera um bloco de memória alocado de uma pilha pelo HeapAlloc ou função de HeapReAlloc.
HeapLock heapapi.h Tenta adquirir o objeto de seção crítica, ou bloqueio, que está associado a um heap especificado.
HeapReAlloc heapapi.h Realoca um bloco de memória de uma pilha. Esta função permite-lhe redimensionar um bloco de memória e alterar outras propriedades do bloco de memória.
HeapSize heapapi.h Recupera o tamanho de um bloco de memória alocado de uma pilha pelo HeapAlloc ou função de HeapReAlloc.
HeapUnlock heapapi.h Libera a propriedade do objeto de seção crítica, ou bloqueio, que está associado a um heap especificado. Ele reverte a ação da função HeapLock.
InitializeSListHead interlockedapi.h Inicializa o cabeçalho de uma lista vinculada individualmente.
InterlockedFlushSList interlockedapi.h Remove todos os itens de uma lista vinculada individualmente.
InterlockedPopEntrySList interlockedapi.h Remove um item da frente de uma lista vinculada individualmente.
InterlockedPushEntrySList interlockedapi.h Insere um item na frente de uma lista vinculada individualmente.
InterlockedPushListSList interlockedapi.h Insere uma lista vinculada individualmente na frente de outra lista vinculada individualmente.
InterlockedPushListSListEx interlockedapi.h Insere uma lista vinculada individualmente na frente de outra lista vinculada individualmente.
QueryDepthSList interlockedapi.h Recupera o número de entradas na lista de links individuais especificada.
DisableThreadLibraryCalls libloaderapi.h Desativa as notificações de DLL_THREAD_ATTACH e DLL_THREAD_DETACH para a DLL especificada.
GetModuleHandleExW libloaderapi.h Recupera um identificador de módulo para o módulo especificado e incrementa a contagem de referência do módulo, a menos que GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT seja especificado.
GetProcAddress libloaderapi.h Recupera o endereço de uma função ou variável exportada da DLL especificada.
SetThreadStackGuarantee processthreadsapi.h Define o tamanho mínimo da pilha associada ao thread de chamada ou fibra que estará disponível durante quaisquer exceções de estouro de pilha.
VirtualAlloc memóriaapi.h Reserva, confirma ou altera o estado de uma região de páginas no espaço de endereço virtual do processo de chamada.
VirtualFree memóriaapi.h Libera, anula a confirmação ou libera e desconfirma uma região de páginas dentro do espaço de endereço virtual do processo de chamada.
VirtualProtect memóriaapi.h Altera a proteção em uma região de páginas confirmadas no espaço de endereço virtual do processo de chamada.
VirtualQuery memóriaapi.h Recupera informações sobre um intervalo de páginas no espaço de endereço virtual do processo de chamada.
AcquireSRWLockExclusive synchapi.h Adquire um bloqueio fino de leitor/gravador (SRW) no modo exclusivo.
AcquireSRWLockShared synchapi.h Adquire um bloqueio fino de leitor/gravador (SRW) no modo compartilhado.
DeleteCriticalSection synchapi.h Libera todos os recursos usados por um objeto de seção crítica não proprietário.
DeleteSynchronizationBarrier synchapi.h Exclui uma barreira de sincronização.
EnterCriticalSection synchapi.h Aguarda a propriedade do objeto de seção crítica especificado. A função retorna quando o thread de chamada recebe propriedade.
EnterSynchronizationBarrier synchapi.h Faz com que o thread de chamada aguarde em uma barreira de sincronização até que o número máximo de threads tenha entrado na barreira.
InitializeConditionVariable synchapi.h Inicializa uma variável de condição.
InitializeCriticalSection synchapi.h Inicializa um objeto de seção crítica.
InitializeCriticalSectionAndSpinCount synchapi.h Inicializa um objeto de seção crítica e define a contagem de rotação para a seção crítica.
InitializeCriticalSectionEx synchapi.h Inicializa um objeto de seção crítica com uma contagem de rotação e sinalizadores opcionais.
InitializeSRWLock synchapi.h Inicialize um bloqueio fino de leitor/gravador (SRW).
InitializeSynchronizationBarrier synchapi.h Inicializa uma nova barreira de sincronização.
LeaveCriticalSection synchapi.h Libera a propriedade do objeto de seção crítica especificado.
ReleaseSRWLockExclusive synchapi.h Libera um bloqueio fino de leitor/gravador (SRW) que foi adquirido no modo exclusivo.
ReleaseSRWLockShared synchapi.h Libera um bloqueio fino de leitor/gravador (SRW) que foi adquirido no modo compartilhado.
SetCriticalSectionSpinCount synchapi.h Define a contagem de rotação para a seção crítica especificada.
SleepConditionVariableCS synchapi.h Suspende na variável de condição especificada e libera a seção crítica especificada como uma operação atômica.
SleepConditionVariableSRW synchapi.h Suspende na variável de condição especificada e libera o bloqueio especificado como uma operação atômica.
TryAcquireSRWLockExclusive synchapi.h Tenta adquirir um bloqueio fino de leitor/gravador (SRW) no modo exclusivo. Se a chamada for bem-sucedida, o thread de chamada assume a propriedade do bloqueio.
TryAcquireSRWLockShared synchapi.h Tenta adquirir um bloqueio fino de leitor/gravador (SRW) no modo compartilhado. Se a chamada for bem-sucedida, o thread de chamada assume a propriedade do bloqueio.
TryEnterCriticalSection synchapi.h Tenta entrar em uma seção crítica sem bloquear. Se a chamada for bem-sucedida, o thread de chamada assume a propriedade da seção crítica.
WaitOnAddress synchapi.h Aguarda que o valor no endereço especificado seja alterado.
WakeAllConditionVariable synchapi.h Acorde todos os threads aguardando na variável de condição especificada.
WakeByAddressTodos os synchapi.h Ativa todos os threads que estão aguardando a alteração do valor de um endereço.
WakeByAddressSingle synchapi.h Ativa um thread que está aguardando a alteração do valor de um endereço.
WakeConditionVariable synchapi.h Despertar um único thread aguardando na variável de condição especificada.
GetCurrentThread processthreadsapi.h Recupera um pseudoidentificador para o thread de chamada.
GetCurrentThreadId processthreadsapi.h Recupera o identificador de thread do thread de chamada.
TlsAlloc processthreadsapi.h Aloca um índice de armazenamento local de thread (TLS).
TlsFree processthreadsapi.h Libera um índice TLS, disponibilizando-o para reutilização.
TlsGetValue processthreadsapi.h Recupera o valor no slot TLS do thread de chamada para o índice TLS especificado.
TlsSetValue processthreadsapi.h Armazena um valor no slot TLS do thread de chamada para o índice TLS especificado.
EnclaveGetAttestationReport winenclaveapi.h Obtém um relatório de atestado de enclave que descreve o enclave atual e é assinado pela autoridade responsável pelo tipo de enclave.
EnclaveSealData winenclaveapi.h Gera um objeto binário grande criptografado (blob) a partir de dados não codificados.
EnclaveUnsealData winenclaveapi.h Descriptografa um objeto binário grande criptografado (blob).
EnclaveVerifyAttestationReport winenclaveapi.h Verifica um relatório de atestado que foi gerado no sistema atual.
WideCharToMultiByte stringapiset.h Mapeia uma cadeia de caracteres UTF-16 (caractere largo) para uma nova cadeia de caracteres.

Nota: A única página de código disponível para VBS Enclaves é CP_UTF8.
MultiByteToWideChar stringapiset.h Mapeia uma cadeia de caracteres para uma cadeia de caracteres UTF-16 (caractere largo).

Nota: A única página de código disponível para VBS Enclaves é CP_UTF8.
LdrResolveDelayLoadedAPI
Consulte ResolveDelayLoadedAPI
- Localiza a função de destino da importação especificada e substitui o ponteiro da função no thunk de importação pelo destino da implementação da função.

Ver também