摘自:http://kczxsp.hnu.edu.cn/upload/20150504165623705.pdf 里面对于木马的实验过程写得非常清楚,值得一看。
 
木马是隐藏在正常程序中的具有特殊功能的恶意代码,是具备破坏、删除和
修改文件、发送密码、记录键盘、实施
DOS
攻击甚至完全控制计算机等特殊功
能的后门程序。它隐藏在目标的计算机里,可以随计算机自动启动并在某一端口
监听来自控制端的控制信息。
1
、木马的特性
木马程序为了实现某特殊功能,一般应该具有以下性质:
1
) 伪装性
:
程序把自己的服务器端伪装成合法程序,并且诱惑被攻击者执
行,使木马代码会在未经授权的情况下装载到系统中并开始运行。
2
) 隐藏性:木马程序同病毒一样,不会暴露在系统进程管理器内,也不会让
使用者察觉到木马的存在,它的所有动作都是伴随其它程序进行的,因此
在一般情况下使用者很难发现系统中有木马的存在。
3
) 破坏性:通过远程控制,攻击者可以通过木马程序对系统中的文件进行删
除、编辑操作,还可以进行诸如格式化硬盘、改变系统启动参数等个性破
坏操作。
4
) 窃密性:木马程序最大的特点就是可以窥视被入侵计算机上的所有资料,
这不仅包括硬盘上的文件,还包括显示器画面、使用者在操作电脑过程中
在硬盘上输入的所有命令等。
2
、木马的入侵途径
木马入侵的主要途径是通过一定的欺骗方
法,如更改图标、把木马文件与普
通文件合并,欺骗被攻击者下载并执行做
了手脚的木马程序,就会把木马安
装到被攻击者的计算机中。
3
、木马的种类
1
) 按照木马的发展历程,
可以分为四个阶段:
第一代木马是伪装型病毒,
将病毒伪装成一合法的程序让用户运行。第二代木马是网络传播型木
马,它具备伪装和传播两种功能,可以近些年歌迷马窃取、远程控制。
第三代木马在连接方式上有了改进,利用率端口反弹技术。第四代木
马在进程隐藏方面作了较大改动,让木马服务器运行时没有进程,网
络操作插入到系统进程或者应用进程完成。
2
) 按照功能分类
,
木马可以分为
:
破坏型木马,主要功能是破坏删除文
 
件;密码发送型木马,它可以找到密码并发送到指定的邮箱中;服务
型木马,它通过启动
FTP
服务或者建立共享目录,使黑客可以连接并
下载文件;
DOS
攻击型木马,
它可以作为被黑客控制的肉鸡实施
DOS
攻击;代理型木马,它作为黑客发起攻击的跳板;远程控制型木马,
可以使攻击者利用客户端软件完全控制。
4
、木马的工作原理
下面介绍木马的传统连接技术、反弹端口技术和线程插入技术。
1
) 木马的传统连接技术
一般木马都采用
C/S
运行模式,因此它分为两部分,即客户端和
服务器端木马程序。其原理是,当服务器端程序在目标计算机上被执
行后,一般会打开一个默认的端口进行监听,当客户端向服务器端主
动提出连接请求,服务器端的木马程序就会自动运行,来应答客户端
的请求,从而建立连接。
第一代和第二代木马都采用的是
C/S
连接方式,都属于客户端主
动连接方式。服务器端的远程主机开放监听端口等待外部的连接,当
入侵者需要与远程主机连接时,
便主动发出连接请求,
从而建立连接。
2
) 木马的反弹端口技术
随着防火墙技术的发展,它可以
有效拦截采用传统连接方式从
外部主动发起连接的木马程序。但防火墙对内部发起的连接请求则认
为是正常连接,第三代和第四代“反弹式”木马就是利用这个缺点,
其服务器端程序主动放弃对外连接请求,再通过某些方式连接到木马
的客户端,就是说“反弹式”木马是服务器端主动发起连接请求,而
客户端是被动的连接。
根据客户端
IP
地址是静态的还是动态的,反弹式端口连接可以
有两种方式。
反弹端口连接方式一要求入侵者在设置服务器
端的时候,指明客
户端的
IP
地址和待连接端口,
也就是远程被入侵的主机预先知道客户
端的
IP
地址和连接端口。所以这种方式只适用于客户端
IP
地址是静
态的情况。
反弹端口连接方式二在连接建立过程中,入侵者利用一个“代理
服务器”保存客户端的
IP
地址和待连接端口,在客户端的
IP
地址是
动态的情况下,只要入侵者更新“代理服务”中存放的
IP
地址预端
口号,远程被入侵主机就可以通过
先连接到“代理服务器”
。查询最
新木马客户端信息,再和入侵者
(
客户端)进行连接。因此,这种连接
方式适用于客户端和服务器端都是动态
IP
地址的情况,况且还可以
穿透更加严密的防火墙

木马——本质就是cs socket远程控制,反弹木马是作为c端向外发起网络请求的更多相关文章

  1. 反弹木马——本质上就是一个开80端口的CS程序,伪造自己在浏览网页

    反弹端口型木马分析了防火墙的特性后发现:防火墙对于连入的链接往往会进行非常严格的过滤,但是对于连出的链接却疏于防范.于是,与一般的木马相反,反弹端口型木马的服务端(被控制端)使用主动端口,客户端(控制 ...

  2. 木马suppoie 处理的几个思路 木马文件的权限所有者 属主数组 定时任务 目录权限

    木马suppoie 处理的几个思路  木马文件的权限所有者  属主数组  定时任务   目录权限

  3. JAVA之旅(三十二)——JAVA网络请求,IP地址,TCP/UDP通讯协议概述,Socket,UDP传输,多线程UDP聊天应用

    JAVA之旅(三十二)--JAVA网络请求,IP地址,TCP/UDP通讯协议概述,Socket,UDP传输,多线程UDP聊天应用 GUI写到一半电脑系统挂了,也就算了,最多GUI还有一个提示框和实例, ...

  4. java 网络编程基础 TCP/IP协议:服务端ServerSocket;客户端Socket; 采用多线程方式处理网络请求

    1.Java中客户端和服务器端通信的简单实例 Java中能接收其他通信实体连接请求的类是ServerSocket,ServerSocket对象用于监听来自客户端的Socket连接,如果没有连接,它将一 ...

  5. web框架的本质(使用socket实现的最基础的web框架、使用wsgiref实现的web框架)

    import socket def handle_request(client): data = client.recv(1024) client.send("HTTP/1.1 200 OK ...

  6. puppet开源的软件自动化配置和部署工具——本质就是CS,服务端统一管理配置

    1.  概述 puppet是一个开源的软件自动化配置和部署工具,它使用简单且功能强大,正得到了越来越多地关注,现在很多大型IT公司均在使用puppet对集群中的软件进行管理和部署,如google利用p ...

  7. 浅谈android Socket 通信及自建ServerSocket服务端常见问题

    摘  要:TCP/IP通信协议是可靠的面向连接的网络协议,它在通信两端各建立一个Socket,从而在两端形成网络虚拟链路,进而应用程序可通过可以通过虚拟链路进行通信.Java对于基于TCP协议的网络通 ...

  8. java socket 多线程通讯 使用mina作为服务端

    客户端代码不变,参照 http://www.cnblogs.com/Westfalen/p/6251473.html 服务端代码如下: import java.io.IOException; impo ...

  9. linux socket编程:简易客户端与服务端

    什么是socket? socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,都可以用“打开open –> 读写write/read –> 关闭close”模式来 ...

随机推荐

  1. HDU 4301 Contest 1

    开始时设的是第一.二行前i,j列有k种的方法数,但是,这根本转移不了--! 难点在于1,2行的讨论啊... 设f[i][j][0]为前i列分成j个部分,且第i列的两个为同一部分的方法数. f[i][j ...

  2. MySQL5.7 的 错误堆栈缓冲

    什么是错误缓冲堆栈呢? 举个非常简单的样例,比方运行以下一条语句:mysql> INSERT INTO t_datetime VALUES(2,'4','5');ERROR 1292 (2200 ...

  3. iOS 常见小问题

    1. iOS 编译后上下有黑边 ? 缺少启动图片 2.Failed to instantiate the default view controller for UIMainStoryboardFil ...

  4. m-orchastration system

    m-orchastration system 1.bootstrap上面有很多前台的页面代码可以用 2.H-ui里面的案例我可以去看看,这个网站也有后台框架 H-ui案例 - H-ui前端框架官方网站 ...

  5. (转载)Android自定义ProgressDialog进度等待框

    Android自定义ProgressDialog进度等待框 作者:无缘公子 字体:[增加 减小] 类型:转载 时间:2016-01-11我要评论 这篇文章主要介绍了Android自定义Progress ...

  6. Codeforces 988F. Rain and Umbrellas

    解题思路:动态规划 遍历点i,如果从前一个点i-1走到这个点i不需要伞,则疲劳值不变dp[i] = dp[i-1]. 如果前一个点i-1走到这一个点i需要伞,则从前面找一把伞. 即遍历前面的每个点j, ...

  7. XML学习(一)——xml内容简介

    一.什么是XML xml全称为Extensible Markup Language,意思是可扩展的标记语言.XML语法上和HTML比较相似,但是HTML中的元素是固定的,而XML的标签是可以用户定义的 ...

  8. [ Docker ] 映射資料夾

    - docker run -v <host path>:<container path> - 例如:docker run -v /home/adrian/data:/data ...

  9. 【原创】使用Kettle的一些心得和经验

    用kettle做etl也有段时间了,遇到很多问题,总结了一下. [关于版本的问题] kettle常用的版本有4.1和4.4,对于4.1版本: 1.该版本的兼容性有点差,在某些机器上运行会启动失败,或者 ...

  10. POJ 2739 Sum of Consecutive Prime Numbers【素数打表】

    解题思路:给定一个数,判定它由几个连续的素数构成,输出这样的种数 用的筛法素数打表 Sum of Consecutive Prime Numbers Time Limit: 1000MS   Memo ...