通常我们对一个域名进行DNS请求,尤其是A记录,一般在一段时间内是不变的,其结果的异同也就是可能因地域而得到不同的结果。当然这个结果可能是个集合,也可能是一个IP地址。因为我们要考虑到CDN、LVS和Cache这几种情况。
随着网站运营主体的发展速度越来越快,出现了对高速切换、迁移服务的需求。如何才能快速切换、迁移服务而又不对客户的用户体验产生过多的影响呢?答案就是快速修改或者是动态进行DNS应答。通过快速更换DNS解析,来达到网站运营主体的需求。于是FastFlux诞生了。不仅满足了这种客户需求,同时也可以支持LVS等需求。
一般的,攻击过去一般使用的C&C的控制端回连主控服务器时候是硬编码的IP地址或者域名,而且域名一般是不变化的,直接回导致一个问题,直接逆向一下或者直接放在Sandbox里面跑一下就清楚的知道了相关的域名、IP、URL等等IOC,可以进行封堵,追踪溯源甚至报警抓人等等。于是黑客就想到了一个方法,在C&C主控端中只写域名,在DNS解析中快速更换域名的相关解析,导致IP快速变化,难以通过流量分析封锁住IP和进行追踪溯源,提高了软件的对抗性和黑客组织的安全性,一般来说有两种方式Single-FastFlax和Double-FastFlux
攻击者提供最底层的DNS服务器,在该DNS服务器中对C&C域名的解析是快速变化的,可能有数百上千个甚至更多,被控机器上的主控端会连接该DNS服务器进行域名解析,从而实现快速变化IP的功能。
攻击者部署多台底层域名服务器,底层域名服务器会有不同的解析,然后顶级域名服务器会以一定的慢些的速度修改迭代查询的底层服务器的IP,这样被控主机先去查顶级域名服务器,根据顶级域名服务器迭代查询的底层域名服务器获取最终IP,还是可以快速变化。
可以根据一些FastFlux的特征来进行判断
我们溯源到的IP列表,也大多数属于Proxy,真正的主控端依然隐藏在后面,进一步溯源还有很长的路要走。