信安404 2023-11-08 20:00 发表于天津
笔者在最近的工作中遇到多起利用Anydesk作为命令与控制(C2)的案子,这是个合法的远程管理软件,非常低调奢华有内涵,着实难以发现。工具本身用起来是类似于teamviewer,不过tv最近几年总被墙,所以用的少了。
低调1:该工具Windows下的安装包只有5M,支持大多数操作系统,默认使用模式是不用安装,相当于一个绿色软件直接可以跑起来。
低调2:只靠一个exe就能实现双向远控,自己作为远控的客户端或者远控的服务端,也就是说既能让外边连,也能连别人。只有anydesk.exe一个进程文件,合法证书签名。
低调3:不需要知道目标的系统账号密码,靠一个AnydeskID连过去,可以设置完全自主访问,不用目标机器点击同意按钮。
低调4:对外连接使用TCP 443、80、6568三个端口中的其中一个,基本没有可能在硬件防火墙上封杀80/443,默认通信方式为https,也可以是不用证书的TCP。
低调5:合法IP合法域名,使用*.net.anydesk.com以及对应的CDN IP,基本上都是白名单或者无法定性的CDN IP。
蛛丝马迹:1、软件执行起来后会对外请求域名*.net.anydesk.com。检查DNS日志/流量会有所帮助。
2、虽然是https,但在TLS1.2的第一个client hello包中的ALPN(Application Layer Protocol Negotiation,应用层协议协商)中有anydesk的版本信息,此处的anydesk/8.0.5/windows 为明文(某些其他启用了TLS server name 扩展的应用,也可以去SNI中看到host name,和这个类似)。使用NTA/NDR设备检查流量可以更进一步确认。
在云端的回包中的证书信息中有厂商信息,philandro Software此处也为明文。
证书交换ACK包中也有软件的明文信息。
3、终端侧信息,由于软件可以绿色执行,所以如果强制改名后执行的话,检查进程anydesk.exe可能不得行,常见的启动项、安装位置、服务基本上是没有,不过会有一些配置文件存在。使用EDR或者其他端点安全软件可以帮助我们得到更可靠的信息。
软件一旦运行,会在C:\Users\yourname\AppData\Roaming\AnyDesk中有相关文件,这个目录的名字和结构基本是固定的,这几个conf文件中会有软件ID、user hash、软件配置、厂商信息等。
最麻烦的是,如果组织中日常会用到Anydesk做运维工作,那就更难在合法行为中发现哪些是攻击行为了,可能需要建立一定的安全要求和基线以及配套的监测手段,确保出事后不至于这么被动。
|