
Amsi Bypass payload that works on Windwos 11
Les détails techniques se trouvent dans l'article : https://medium.com/@gustavshen/bypass-amsi-on-windows-11-75d231b2cac6
HRESULT AmsiOpenSession(
[in] HAMSICONTEXT amsiContext,
[out] HAMSISESSION *amsiSession
);
Ce script PowerShell peut être utilisé pour contourner AMSI en patchant AmsiOpenSession. D'après les codes assembleur, si l'une des conditions suivantes est remplie, la fonction se terminera avec l'erreur E_INVALIDARG.

Ce script patche AmsiOpenSession en définissant RCX à 0.

Patcher AmsiOpenSession ne permet pas de contourner AMSI pour Assembly.Load()
HRESULT AmsiScanBuffer(
[in] HAMSICONTEXT amsiContext,
[in] PVOID buffer,
[in] ULONG length,
[in] LPCWSTR contentName,
[in, optional] HAMSISESSION amsiSession,
[out] AMSI_RESULT *result
);
Ce script PowerShell peut être utilisé pour contourner AMSI en patchant AmsiScanBuffer. Le script patche AmsiScanBuffer en définissant RAX à la valeur de l'erreur E_INVALIDARG et en retournant immédiatement.

Patcher AmsiScanBuffer permet de contourner AMSI pour Assembly.Load()

Ce fichier contient des payloads one-liner qui peuvent être utilisés dans la session PowerShell actuelle et contourner immédiatement AMSI. Cependant, cela ne permet pas de contourner AMSI pour Assembly.Load().
Les détails se trouvent dans ce fichier.