1.前言
最近在做一个节点信息收集的时候,偶然想到一种可以进入服务器的一种方法,这里记录下,需要先运行服务器程序,再通过客户端来添加帐号,提升权限,删除帐号等操作
2.思路
1.做一个可以远程执行命令行的程序
2.通过命令行增加一个新帐号,提升为admin权限,通过微软远程进入,做完后,在服务器上注销账号,通过命令行删除用户,结束
3.我购买了一台阿里云,百度云,腾讯云,华为云这种方法都可以轻松进入
3.具体实现
服务器端部分程序
bool ExecCmdRet(const std::string &strcmd, std::string &strrecv)
{
SECURITY_ATTRIBUTES sa;
HANDLE hRead,hWrite;
bool bret = false;
sa.nLength = sizeof(SECURITY_ATTRIBUTES);
sa.lpSecurityDescriptor = NULL;
sa.bInheritHandle = TRUE;
if (!CreatePipe(&hRead,&hWrite,&sa,0))
return bret;
char szcommand[1024] = {
0};
strcpy(szcommand,"Cmd.exe /C ");
strcat(szcommand,strcmd.c_str());
STARTUPINFOA si;
PROCESS_INFORMATION pi;
si.cb = sizeof(STARTUPINFOA);
GetStartupInfoA(&si);
si.hStdError = hWrite;
si.hStdOutput = hWrite;
si.wShowWindow = SW_HIDE;
si.dwFlags = STARTF_USESHOWWINDOW | STARTF_USESTDHANDLES;
if (!CreateProcessA(NULL, szcommand, NULL,NULL,TRUE,NULL,