Analyse de rétro-ingénierie d'un shellcode Python qui effectue une injection APC dans AnyDesk, exfiltre vers un C2 via HTTPS avec AES/RSA, et persiste via des clés de Registre GUID.
Cette vue x64dbg révèle que le shellcode Python utilise des opérations sur fichiers (CreateFileW, DeleteFileA/W) et des trampolines JMP pour appeler dynamiquement des API Windows.
CreateFileW – Crée ou ouvre un fichier (dépôt de payload).DeleteFileA / DeleteFileW – Supprime des fichiers (nettoyage des traces).DefineDosDeviceW – Définit un périphérique DOS (manipulation de lecteur).jmp qword ptr ds:[<API>] – résout dynamiquement les adresses d'API.INT3 (0xCC) – Pièges anti-débogage.C:\Users\dkaan\OneDrive\Desktop\output\shellcode.exe.
Vue x64dbg montrant CreateFileW, DeleteFileA/W et les trampolines JMP.
Cette vue x64dbg révèle que le shellcode Python appelle GetCommandLineW pour lire les arguments de la ligne de commande, tout en utilisant des pièges INT3 pour l'anti-débogage.
jmp qword ptr ds:[<GetCommandLineW>] – Trampoline JMP vers GetCommandLineW.&"Sun" – Une chaîne d'argument de ligne de commande.mov [rsp+8], rbx, sub rsp, 0x20, xor ebx, ebx.test rdx, rdx, je kernel32.7FFBEC730A9.mov rdx, rsi, mov r8, rdi.GetCommandLineW à l'exécution.
Vue x64dbg montrant GetCommandLineW, l'analyse de la ligne de commande et les pièges INT3.
L'analyse mémoire avec Process Hacker révèle que le shellcode Python effectue une injection APC dans AnyDesk.exe et utilise des algorithmes cryptographiques avancés pour l'exfiltration de données.
AnyDesk.exe (PID 8064) – un outil de bureau à distance légitime.AES for x86 / AES for Intel AES-NI – chiffrement symétrique.RSA for x86 – chiffrement asymétrique.SHA256 block transform – hachage.RC4 for x86 – chiffrement par flux.Vector Permutation AES – AES accéléré par SIMD.GHASH for x86 – authentification GCM.Montgomery Multiplication – accélération RSA.ECP_NISTZ256 for x86 – cryptographie sur courbes elliptiques.CreateRemoteThread – aucun nouveau thread n'est créé.
Vue Process Hacker montrant l'injection AnyDesk et les algorithmes cryptographiques (AES, RSA, SHA256, RC4).
L'analyse TCPView révèle que le shellcode Python utilise AnyDesk.exe pour exfiltrer des données vers 141.227.178.79 sur le port 443 (HTTPS).
AnyDesk.exe (PID 5068) – outil de bureau à distance légitime.141.227.178.79443 (HTTPS – se fond avec le trafic légitime).Established (connexion active).
Vue TCPView montrant AnyDesk.exe se connectant à 141.227.178.79 sur le port 443.
L'analyse Simplewall révèle que bien que le shellcode Python tente d'exfiltrer des données vers 141.227.178.79 via le port 443 (HTTPS) en utilisant AnyDesk.exe, il essaie d'établir une connexion vers une autre adresse légitime (92.38.180.106) lorsqu'il est bloqué.
AnyDesk.exe (PID 5068) – outil de bureau à distance légitime.92.38.180.106443 (HTTPS – se fond avec le trafic légitime).Blocked (connexion bloquée).
Vue Simplewall montrant Anydesk.exe bloqué vers 92.38.180.106 sur le port 443.
L'analyse du registre révèle que le shellcode Python crée des clés basées sur des GUID sous HKLM\SYSTEM\CurrentControlSet\Control\ pour la persistance.