让木马 DNS 数据传输成为历史:看我怎么让 xshell 病毒失效

作者:马立伟 本文首发于 FreeBuf.com

基础词汇解释:

Dns A记录、txt记录传输:利用dns解析过程,在请求解析的域名中包含需外传的数据,如xxxxxx.hack.com。则最终hack.com的dns服务器会收到xxxxx这个数据回传。

dns的txt类型回包:一般指为某个主机名或域名设置的说明,可被黑客利用回传数据。终端请求某恶意域名的dns解析,dns返回txt记录,包含黑客需要的回传内容,如模块更新数据、指令等

正文

概述:

随着越来越多的公司安全意识提高,大量公司已封锁socket通信,仅允许员工通过http/https协议外网,同时采取了越来越多针对http协议的检测措施(如数据分析恶意url等)。为逃避检测,Dns传输已逐步成为越来越多的恶意软件隐蔽传输的方法,dns传输利用dns逐级解析过程最终把域名中的恶意内容传输到远端控制器,也利用dns的txt类型回包更新本地木马病毒。

为解决此问题,笔者提出基于全web代理的dns恶意传输屏蔽方案,通过禁止终端做dns解析,仅允许代理做dns,完全屏蔽pc的恶意dns传输的同时,保障终端可以通过web代理访问公网(备:这也是各大公司当前采取的上外网的方式通用方案),有效解决dns恶意传输问题。适用于各大公司彻底解决dns木马病毒传输通道问题。

基本思想与原理

具体原理如下所述:

1、固定pc的dns服务器配置,并禁止修改,防止木马病毒修改绕过安全策略,或用户修改配置无意降低安全标准

2、屏蔽pc外联的53端口访问,防止恶意程序在代码中使用自定义dns服务器

3、收紧pc终端的dns解析,dns服务器仅响应允许的白名单域名解析,其他不返回结果

4、pc通信全web代理,允许web代理自身做dns解析

最终实现完全屏蔽pc的恶意dns传输的同时,保障终端可以通过web代理访问公网,解决dns恶意传输问题。

系统架构

模块功能描述:

内网终端:内网用户使用的访问公网的终端,可包括pc、手机、平板等

Web代理: 提供web协议的代理,终端可通过此代理访问外网数据

Web服务:外网的web服务

内网终端专用dns服务器:给内网终端提供dns服务,仅限白名单域名的解析

白名单:允许被解析的域名,如baidu.com等

代理专用dns服务器:给web代理提供dns服务器,不提供黑名单解析,降低恶意web业务访问

黑名单:提供恶意域名清单,禁止代理专用dns解析,进而禁止代理访问恶意url

公网dns服务:外网dns服务器,包括各个递归服务器

其他dns服务器:内网终端专用服务器外的其他dns服务器,包括公网dns服务器、代理专用dns服务器等

实验环境演示:

1、 实验环境介绍

a) 一台内网终端,win7 x64系统

i. ip :192.168.187.139

ii. 网关:192.168.187.2

iii. dns:192.168.187.141(内网终端专用dns)

b) 一台dns服务器(内网终端专用dns),server 2008

i. ip:192.168.187.141

ii. 网关:192.168.187.2

iii. dns:192.168.187.2

c) 一台squid代理服务器,ubuntu系统

i. ip:192.168.187.136

ii. 网关:192.168.187.2

iii. dns:192.168.187.2(代理专用dns)

d) 防火墙,禁止内网终端非授权访问,仅允许网关、内网终端专用dns、代理访问,或白名单程序的socket连接(不支持web代理,联通需要内网终端专用dns白名单配合)

2、 配置过程:

a) 终端配置

i. 锁定dns配置,防止用户或木马病毒修改:

Xp系统可使用这个

Win7可使用此工具

ii. 配置代理,访问外网:

b) Dns服务器配置

i. 使用条件转发不允许解析白名单以为域名

  • 清空根提示(防止无法控制的递归)
  • 确认,不可禁止递归(否则无法实现条件转发)
  • 如果允许解析,则配置到代理专用dns,可实现递归解析

c) Squid配置

i. 配置黑名单,例如:淘宝、京东,防止员工上班购物,当然从安全角度可配置各种黑域名

ii. 配置代理专用dns(192.168.187.2),可解析任意域名

d) 防火墙配置(允许访问内网专用dns:192.168.187.141,允许访问网关192.168.187.2,允许访问代理192.168.187.141,其他均不允许),防止用户使用其他dns或socket

3、 效果展示:

a) 终端无法进行dns请求(除了白名单域名)

b) xshell外联失效(前后对比)

未实施策略前,可外传成功(有返回包)

实施策略后,无法外传(无回包)

c) 终端不配置代理,无法访问web服务器(终端无法进行dns解析,且无法直接访问外网)

d) 终端配置代理可正常上网,但无法访问黑名单网站,保障日常互联网需要,并防止访问恶意域名

原理细节详描

1、 终端使用web代理访问公网web服务,如下图

a) 终端不解析域名,将web请求直接抛给web代理

i. 浏览器可通过pac脚本等方式劫持终端到公网的流量经web代理中转

ii. 其他软件可通过配置web代理地址等方式

b) Web代理向代理专用dns服务器请求域名解析并获取结果,如下图

i. Web代理服务器向代理专用dns服务器请求域名

ii. 代理专用dns查询黑名单,如匹配则返回禁止解析,如不匹配则进一步向公网dns服务请求结果并返回

iii. 代理专用dns服务器返回结果给web代理,如为黑名单则返回默认警示页面地址

c) Web代理根据dns反馈结果访问公网

2、 禁止终端进行dns解析,仅开放白名单域名解析:

a) 屏蔽pc终端的dns解析(仅允许部分白名单域名解析),如下图:

i. 部分未配置http代理的程序请求dns解析,请求发送内网终端专用dns服务器

ii. 终端专用dns服务器查询白名单,如在白名单(例baidu.com等),则进一步向公网dns查询并返回结果,如不是白名单则返回无法解析

b) 固定pc的dns服务器配置并屏蔽pc到其他dns服务器的53端口访问,防止恶意程序自定义dns配置,如下图:

i. 通过防火墙等措施封闭终端出去的53端口(dns专用端口),仅开通到内网终端专用dns服务器的解析

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏FreeBuf

让木马病毒DNS数据传输成为历史:看我如何让XShell病毒失效

基础词汇解释: DnsA记录传输: 利用dns解析过程,在请求解析的域名中包含需外传的数据,如xxxxxx.hack.com。则最终hack.com的dns服务...

2497
来自专栏醒者呆

虚拟化明星——深挖轻量级容器docker

docker是一个轻量级容器,属于操作系统层面的虚拟化技术,封装了文件系统(AUFS)以及网络互联,进程隔离等特性。 传统虚拟化架构: ? docker虚拟化架...

3398
来自专栏分布式系统和大数据处理

基于Docker的持续集成方案(安装和配置Gogs源码仓库) - Part.4

不管技术还是生活,我现在都越来越喜欢简单、轻巧、专一、高效。因此我放弃了使用笨重、复杂的GitLab,而选择了这个轻量的源码管理工具。它的github地址是:g...

3505
来自专栏idba

supervisor 工具介绍

supervisor 是一款基于Python的进程管理工具,可以很方便的管理服务器上部署的应用程序。supervisor的功能如下:

931
来自专栏用户2442861的专栏

Nginx简单介绍以及安装与配置

一般来说,需要性能的web 服务,用nginx 。如果不需要性能只求稳定,那就apache 吧。后者的各种功能模块实现得比前者,例如ssl 的模块就比前者好,...

1082
来自专栏cloudskyme

vmware安装ubuntu12.04嵌套安装xen server(实现嵌套虚拟化)

环境准备 软件:vmware workstation 9.0      ubuntu-12.04.2-server-amd64(官方下载) 硬件:确认CPU支持...

3305
来自专栏测试驿栈

AutoMagic-开源自动化平台构建思路

最近在github上看到AutoMagic自动化平台开源了,一时手痒,就试着搭了一套环境,现在把思路和大家说一说。

2283
来自专栏小狼的世界

Linux下SVN的一些使用方法总结

近期的一个项目不方便 Check 到本地,需要在测试服务器上进行编写和测试,所以就研究了一下如何在 Linux 命令行下使用 SVN。

1224
来自专栏建站达人秀

如何搭建 LNMP 网站服务环境

LNMP指的是一个基于CentOS/Debian编写的Nginx、PHP、MySQL一键安装包。可以在VPS、独立主机上轻松的安装LNMP生产环境。LNMP代表...

1.2K9
来自专栏乐沙弥的世界

实验一:SQL server 2005高可用性之----日志传送

如转载,请注明出处:http://blog.csdn.net/robinson_0612/archive/2009/10/31/4751070.aspx

1302

扫码关注云+社区

领取腾讯云代金券