說明
AmsiOpenSession是amsi.dll檔案中的一個功能,作為Windows中反惡意軟體掃描介面(AMSI)的一部分提供。AmsiOpenSession功能用於為呼叫應用程式創建新的AMSI Session。
AmsiOpenSession功能可用於通過設置Session的內容和行為來配置AMSISession。例如,應用程式可以設定Session的內容,以指定正在掃描的資料的內容類型,例如Script或Binary資料。
簡單說明amsi.dll中反組譯AmsiOpenSession功能:
有一個test指令,它基本上在它本身上執行位元AND運算(rcx,rcx),如果結果為零,則設置零旗標(ZF=1)。
如果零旗標被設置,它將跟隨JE(跳轉等於)指令0x180008244(這是一個錯誤分支),表示0x80070057。
現在,如果我們可以修改JE指令為JNE(跳轉不等於),錯誤分支將永遠不會發生,這樣就可以執行任何命令而不被標記。
參考
https://infosecwriteups.com/amsi-bypass-new-way-2023-d506345944e9