win-exec-calc-shellcode
Petit shellcode sans octet nul qui exécute calc.exe.
Fonctionne sur les versions x86 et x64 de Windows 5.0-6.3 (2000, XP, 2003, 2008, 7, 8, 8.1), tous les service packs.
Tailles (build 306)
| plateforme | taille | alignement de pile | wrapper de fonction | fonction+registres sauvegardés | fonction+pile | fonction+pile+registres |
| x86 | 72 | 75 | 77 | 77 | 84 | 84 |
| x64 | 85 | 90 | 98 | 105 | 106 | 112 |
| x86+x64 | 113 | 118 | 179 | 188 | 188 | 196 |
Fonctionnalités
- Sans NUL
- Indépendant de la version de Windows et du service pack.
- ISA indépendant :
fonctionne sur l'architecture x86 (w32-exec-calc-shellcode) ou x64 (w64-exec-calc-shellcode)
ou les deux (win-exec-calc-shellcode).
- Le pointeur de pile peut être aligné si nécessaire (si vous constatez des plantages dans
WinExec, essayez la version avec alignement de la pile).
- Aucune hypothèse n'est faite sur les valeurs des registres ou de la pile.
- x86 : /3GB et
WoW64" compatible (les pointeurs
ne sont pas supposés être inférieurs à 0x80000000).
- DEP /
ASLR
compatible : les données ne sont pas exécutées, le code n'est pas modifié.
- Capable de sauvegarder et de restaurer les registres et de retourner, pour une utilisation dans du code de preuve de concept (PoC) qui appelle
le shellcode comme une fonction (en utilisant la convention d'appel
cdecl/stdcall/fastcall.
Crédits
Skylined et Peter Ferrie