实时僵尸网络控制者追踪的初步探索
1. 未加密流量实验
在未加密的情况下,追踪僵尸网络控制者相对容易,因为所有IRC消息都包含发送者的昵称。因此,可以根据测试僵尸程序的昵称轻松分离出带有水印的数据包。
在实验中,psyBNC代理被配置为在64个数据包的流中注入32位水印。为了从测试僵尸程序生成流量,控制者登录并发出 .list 命令,使僵尸程序发送所有有效命令及其描述的列表。实验捕获了离开水印代理、到达跳板机以及到达控制者的所有流量。在十次使用不同(随机)32位水印的试验中,在三个监控位置(马里兰州的水印代理、加利福尼亚州的跳板机和德国的控制者)都能正确解码完整的32位水印。
2. 混合长度 - 时间算法(加密流量)
为了测试混合长度 - 时间算法,实现了一个简单的IRC僵尸程序,它以特定间隔发送带有长度水印的消息。同时,在频道上使用“干扰僵尸程序”来生成可控数量的干扰流量。即使存在大量干扰流量,也能以较高的成功率恢复水印。
2.1 混合长度 - 时间编码器
混合编码算法以Perl程序实现,该程序读取先前仅基于长度添加水印的消息流,并在特定时间发送这些消息。为了实现高精度的定时,使用了 Time::HiRes Perl包,它提供微秒级分辨率的定时器。程序启动时,通过 Math::Random::MT 包使用Mersenne Twister伪随机数生成器(PRNG)为所有要发送的消息生成一个出发时间列表。每条消息在先前消息发送后的2到2.35秒之间随机选择的时间发送,2秒的最小间隔可避免IRC服务器的数据包限流。
超级会员免费看
订阅专栏 解锁全文
36

被折叠的 条评论
为什么被折叠?



