我不能使用ettercap过滤器。我正在写我能想到的最简单的过滤器:

if (ip.proto == TCP){
    msg("Ran Filter\n");
}


但是,即使那样也不行。当我使用etterfilter编译并运行时:

sudo ettercap -F /tmp/filter.ef -T -M arp -i wlan1 /192.168.1.6/ //消息未打印。通过数据包可视化,我确实看到了TCP数据包,但是即使ettercap说“从/tmp/filter.ef加载内容过滤器”,该过滤器似乎也无法正常工作。

为了解决这个问题,我尝试启用ip_forward,并尝试删除/etc/etter.conf中的“#”符号,以便它将redip_command使用iptables(行168-169)

我也尝试过将其放在askubuntu.com上

https://askubuntu.com/questions/251866/ettercap-filtering-doesnt-work

你知道如何使过滤工作吗?

我在ettercap NG-0.7.4.2上使用Ubuntu 12.10

最佳答案

终于找到答案了。
问题是由于ettercap中的错误!
从手册页:

You can also load a script  without enabling it by appending :0 to the filename


并从代码:

/* enable a loaded filter script? */
uint8_t f_enabled = 0;
/* is there a :0 or :1 appended to the filename? */
if ( (opt_end-optarg >=2) && *(opt_end-2) == ':' ) {
        *(opt_end-2) = '\0';
        f_enabled = !( *(opt_end-1) == '0' );
}


从代码中可以看到,并且与手册页上的说明相反,必须将“:1”附加到过滤器的文件名中才能加载。否则,将不使用过滤器。

那么为什么它暗地发生在我身上呢?
那是因为我使用的版本是0.7.4.2,这是我在Ubuntu上apt-get install ettercap时下载的版本。这与ettercap网站相反,指出"The latest Ettercap release is: 0.7.4.1"

解决该错误的补丁已发送给ettercap开发人员。

关于ubuntu - ettercap过滤不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14737322/

10-11 10:46