예제 #1
0
        public static bool HollowProcess(ProcessHollowerContainer container)
        {
            var sourceProcessInfo = ProcessHelper.StartSuspendedProcess(container.SourceFileName);

            Console.WriteLine($"Suspended {container.SourceFileName} successfully...");

            // TODO: Remap shell code into target process
            // TODO: Read map on the fly

            ProcessHelper.CloseProcessHandles(sourceProcessInfo);

            Console.WriteLine($"Freed thread and handle on target process...");

            return(true);
        }
예제 #2
0
        static void Main(string[] args)
        {
            var container = new ProcessHollowerContainer(args);

            if (container.InError)
            {
                return;
            }

            var result = ProcessHollower.HollowProcess(container);

            if (!result)
            {
                Console.WriteLine("Failed to hollow process");
            }
        }