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

简介:

反弹端口型木马分析了防火墙的特性后发现:防火墙对于连入的链接往往会进行非常严格的过滤,但是对于连出的链接却疏于防范。于是,与一般的木马相反,反弹端口型木马的服务端(被控制端)使用主动端口,客户端(控制端)使用被动端口,木马定时监测控制端的存在,发现控制端上线立即弹出端口主动连结控制端打开的主动端口,为了隐蔽起见,控制端的被动端口一般开在80,这样,即使用户使用端口扫描软件检查自己的端口,发现的也是类似 TCP UserIP:1026 ControllerIP:80 ESTABLISHED的情况,稍微疏忽一点你就会以为是自己在浏览网页。(防火墙也会这么认为的,我想大概没有哪个防火墙会不给用户向外连接80端口吧,嘿嘿)看到这里,有人会问:那服务端怎么能知道控制端的IP地址呢?难道控制端只能使用固定的IP地址?哈哈,那不是自己找死么?一查就查到了。

实际上,这种反弹端口的木马常常会采用固定IP的第三方存储设备来进行IP地址的传递。举一个简单的例子:事先约定好一个个人主页的空间,在其中放置一个文本文件,木马每分钟去GET一次这个文件,如果文件内容为空,就什么都不做,如果有内容就按照文本文件中的数据计算出控制端的IP和端口,反弹一个TCP链接回去,这样每次控制者上线只需要FTP一个INI文件就可以告诉木马自己的位置,为了保险起见,这个IP地址甚至可以经过一定的加密,除了服务和控制端,其他的人就算拿到了也没有任何的意义。对于一些能够分析报文、过滤TCP/UDP的防火墙,反弹端口型木马同样有办法对付,简单的来说,控制端使用80端口的木马完全可以真的使用HTTP协议,将传送的数据包含在HTTP的报文中,难道防火墙真的精明到可以分辨通过HTTP协议传送的究竟是网页还是控制命令和数据?

一般使用反弹型木马,比如灰鸽子,你可以先申请一个免费主页空间,里面建立一个文件,然后配置灰鸽子读取里面的数据,你每次上线后修改这个文件,让他指向你的Ip,就可以了,你的肉鸡自动连接到你的机器。

 


                        图2 反弹式木马骗取防火墙信任


那么,如何防范这类反弹式木马呢?

1、我们推荐大家使用个人防火墙,其采用独特的“内墙”方式——应用程序访问网络规则,专门对付存在于用户计算机内部的各种不法程序对网络的应用。从而可以有效的防御像“反弹式木马”那样的骗取系统合法认证的非法程序。当用户计算机内部的应用程序访问网络的时候,必须经过防火墙的内墙的审核。合法的应用程序被审核通过;而非法的应用程序将会被防火墙个人版的“内墙”所拦截。 

2、再就是老生常谈了,千万不要随便运行陌生的程序;收到邮件一定要先查看附件,再运行;不要隐藏文件后缀,发现是“.EXE”一定要小心。这些都是对付木马程序应该注意的地方,在此就不赘述了。

 

 

木马的传播方式主要有两种:一种是通过E-MAIL,控制端将木马程序以附件的形式夹在邮件中发送出 去, 收信人只要打开附件系统就会感染木马;另一种是软件下载,一些非正规的网站以提供软件下载为 名义, 将木马捆绑在软件安装程序上,下载后,只要一运行这些程序,木马就会自动安装。
















本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/bonelee/p/7649255.html,如需转载请自行联系原作者


相关文章
|
4月前
|
Java 应用服务中间件 Linux
linux安装jdk1.8 +nginx +springboot 实现通过nginx80转发8888端口访问springboot程序
linux安装jdk1.8 +nginx +springboot 实现通过nginx80转发8888端口访问springboot程序
96 0
|
5月前
|
网络协议 前端开发 Java
windows系统下重启springboot项目时,提示端口被占用,却找不到占用端口的程序
windows系统下重启springboot项目时,提示端口被占用,却找不到占用端口的程序
|
6月前
|
开发框架 .NET Windows
windows 本地443端口被占用,ASP.NET Core程序拒绝访问
windows 本地443端口被占用,ASP.NET Core程序拒绝访问背景:本地的ASP.NET Core程序在配置了HTTPS并且监听443端口,通过https访问被拒绝,提示没有权限,输入swagger路径访问swagger也提示未找到相关页面。解决:一般情况下,访问我们的ASP.NET Core 程序的swagger页面并不需要什么权限,而且本地调试运行swagger文档也没有什...
58 1
|
8月前
|
Python
【从零学习python 】74. UDP网络程序:端口问题与绑定信息详解
【从零学习python 】74. UDP网络程序:端口问题与绑定信息详解
116 0
|
10月前
|
数据库
19c初始化数据库提示端口1521占用,但查不到占用的程序[DBT-06103]
19c初始化数据库的时候,提示端口占用,但查不到占用的程序。这个问题很诡异,如果按照提示的思路去查,找占用端口的进程,就走入了错误的方向。
|
11月前
|
数据库
19c初始化数据库提示端口1521占用,但查不到占用的程序[DBT-06103]
19c初始化数据库的时候,提示端口占用,但查不到占用的程序
|
网络协议 Ubuntu 测试技术
阿里云服务器域名加端口网页不能访问问题记录
新申请的阿里云域名,下文都叫域名A.com吧,注册申请成功之后从DNS解析里面添加了一条记录
阿里云服务器域名加端口网页不能访问问题记录
|
Linux 应用服务中间件 nginx
Linux 系统systemd(pid=1)占用80端口导致web程序无法启动
Linux 系统systemd(pid=1)占用80端口导致web程序无法启动
Linux 系统systemd(pid=1)占用80端口导致web程序无法启动
|
Windows
windows系统下快速的查出某个端口被程序占用,并快速关闭
windows系统下快速的查出某个端口被程序占用,并快速关闭
84 0
windows系统下快速的查出某个端口被程序占用,并快速关闭
|
网络协议 开发工具 Android开发
【Android 逆向】Android 逆向通用工具开发 ( adb forward 网络端口重定向命令 | PC 端逆向程序主函数分析 )
【Android 逆向】Android 逆向通用工具开发 ( adb forward 网络端口重定向命令 | PC 端逆向程序主函数分析 )
280 0
【Android 逆向】Android 逆向通用工具开发 ( adb forward 网络端口重定向命令 | PC 端逆向程序主函数分析 )