任何想法为什么Ettercap过滤器没有看到数据包数据?

时间:2011-02-24 14:10:27

标签: security testing

我正在使用Ettercap过滤器来检测从远程计算机上的特定服务返回的查询响应。当我看到来自服务的响应时,我正在搜索数据包中的数据以查看偏移量是否是特定值,如果是,我将更改另一个偏移量的值。

麻烦的是,当我在新的虚拟机上尝试这个时,我构建了我的Ettercap过滤器,不再获得DATA.data变量中的任何数据。

if(ip.proto == TCP && tcp.src == 17867) {
  msg("Response seen!\n");

  if(DATA.data + 2 == "\0x01") {
    msg("Flag detected!\n");

    DATA.data + 5 = 0x09;
  }
}

过滤器已应用于流量,因为“看到了响应!”消息由Ettercap打印出来。但是,“检测到标志!”消息没有。我认为 DATA.data确实是空的,因为如果我更改第二个“if”语句以检查DATA.data == "",那么“检测到标志!”消息被打印出来。

为什么会发生这种情况的任何想法?!

另外,如果这是一个错误的网站提出这样的问题,请告诉我。我不确定它是否适合这里或超级用户或服务器故障。

2 个答案:

答案 0 :(得分:0)

这可能是编码问题。出于调试目的,尝试打印DATA.data + 2的值以查看它实际上是什么以及长度是否匹配。

答案 1 :(得分:0)

我遇到了同样的问题。 (ettercap接收null (0x00)个字符或0x20(DECODED ONE))。我试图从源代码编译ettercap,一切正常。 尝试使用ettercap过滤器记录LOG收到的内容,然后查看收到的内容。如果它是nullszeros,你的问题可能就像我的一样! 这似乎是etterfilter或ettercap本身的一些问题。

更改您的ettercap版本,它会起作用(我的确如此)。 我的问题出在5 r1的回溯中,它是ettercap。我更新了ettercap,一切正常。