时隔3年再次拿起iodine做研究,有了新的理解,iodine的DNS隧道非常不一样,刚刚开始建立隧道的时候用的是迭代型DNS隧道,用的操作码是0,表示正常DNS请求。后续进行C&C数据通信的时候用的是直连型DNS隧道,用的操作码是3,表示未分配的DNS通信,而且都是应答,交易ID还都是一样的。利用大量异常操作码通信的DNS报文,应该被及时的注意,而不是直接忽略。
ailx10
网络安全优秀回答者
网络安全硕士
去咨询
步骤一:在A记录里面添加C&C服务器(c2.hackbiji.top)的IP地址
步骤二:在NS记录里面添加一条记录,表示任意僵尸域名(bot.hackbiji.top)都由C&C服务器解析
步骤三:在C&C服务器上运行iodine服务端程序
步骤四:在bot主机上运行iodine客户端程序
步骤五:在C&C主机上ssh登陆bot主机,需要知道bot的用户名和密码
同样,也可以在bot主机上ssh登陆C&C服务器,需要C&C服务器的用户名和密码
步骤六:抓包分析
发现只有在构建DNS隧道的过程时,能够抓到我的DNS隧道域名,这个时候属于迭代型DNS隧道
而在后面的ssh隧道通信的时候,虽然走的是DNS隧道,但是抓到的DNS都是异常的,无法解析的未知操作,并且是直接和C&C服务器进行DNS通信,属于直接型DNS隧道,交易ID全部都是一样的,而且全部都是应答类型的DNS数据包
转载此文是出于传递更多信息目的。若来源标注错误或侵犯了您的合法权益,请与本站联系,我们将及时更正、删除、谢谢。
https://www.414w.com/read/251062.html