
Bibliothèque d'exécution de code WNF utilisant C#
WnfExec est une bibliothèque de preuve de concept en C# qui injecte du shellcode dans un processus en détournant un rappel d'abonnement WNF, puis en déclenchant un changement d'état. Il n'y a rien de nouveau ici et ce projet a été construit à partir des recherches d'autres personnes. Mon intention était de consolider le concept dans ma tête, de documenter le cheminement et de fournir mon code au fur et à mesure.
Suivez-moi sur Twitter pour d'autres sorties d'outils très bientôt ! @ustayready
byte[] shellcode = new byte[] { .... };
var client = new WNF(shellcode);
client.InjectProcess("explorer");
Comme je l'ai mentionné lors de la conférence que Beau Bullock (@dafthack) et moi-même avons donnée au WWHF 2018, la majeure partie de mes recherches sur WNF est due au fait que je me suis appuyé sur les épaules de géants qui m'ont précédé. Bien que la liste ne soit pas exhaustive, les travaux et recherches antérieurs suivants m'ont aidé à saisir les fondamentaux nécessaires pour intégrer ces types de techniques dans les services de red team que nous proposons chez CrowdStrike.
Alex Ionescu et Gabrielle Viala
Recherches de Redplait
Odzhan
Amit Klein et Itzik Kotler
Exemples de code