远程控制程序

远程控制程序(Spy)是作者在学习网络编程时编写的一个网络程序,其功能有:

1、实现远程文件操作(上传,下载,复制,删除等);

2、远程启动命令提示符 ; (果受控端装有卡巴,启动CMD可能会被阻止)

3、远程启动自己编写控制台程序;

注:该软件仅用于交流和学习,请不要用于非法用途!

该程序包含3个程序:

1、spysvc    服务端(受控端)

2、spycmd   命令行客户端(控制端)

3、spy         GUI客户端(控制端,需安装.NET Framework 2.0

 

使用方法:

1.启动受控端

(1)输入验证(如果控制端要连接到该受控端,需输入相同的验证)

注:如果spysvc.exe同目录下的文件spysvc.ini中Validate不为空且不是prompt则不弹出该对话框,而是使用Validate的值作为验证

2.连接到受控端的文件系统

启动spy,点击连接->文件系统,输入受控端IP和验证

如连接成功,则显示文件界面:


3.启动命令行提示符:

注:如果服受控端装有卡巴,启动CMD可能会被阻止

启动spy,点击连接->远程控制台,输入受控端IP,验证和要启动程序(命令行提示符输入CMD)

如连接成功,则显示命令行界面:

您也可以自己编写一个控制台程序(不包括DOS程序),传送到受控端运行,并远程操作这个程序,但必须在程序开始时调用RedirectCRT函数:(包含io.h头文件)

void RedirectCRT()
{
    FILE *hf;
    int hCrt;
    hCrt = _open_osfhandle((long)GetStdHandle(STD_OUTPUT_HANDLE),_O_TEXT);
    if(hCrt!=-1)
    {
        hf = _fdopen( hCrt, "w" );
        if(hf)
        {
            *stdout = *hf;
            setvbuf( stdout, NULL, _IONBF, 0 );
        }
    }
    hCrt = _open_osfhandle((long)GetStdHandle(STD_INPUT_HANDLE),_O_TEXT);
    if(hCrt!=-1)
    {
        hf = _fdopen( hCrt, "r" );
        if(hf)
        {
            *stdin = *hf;
            setvbuf( stdin, NULL, _IONBF, 0 );
        }
    }
    hCrt = _open_osfhandle((long)GetStdHandle(STD_ERROR_HANDLE),_O_TEXT);
    if(hCrt!=-1)
    {
        hf = _fdopen( hCrt, "w" );
        if(hf)
        {
            *stderr = *hf;
            setvbuf( stderr, NULL, _IONBF, 0 );
        }
    }
}

4.退出服务端

按Ctrl+Alt+Shift+F12

posted @ 2009-02-19 19:22  卢春城  阅读(5631)  评论(32编辑  收藏  举报