Kali Linux下运行Sniffjoke出错的解决
由于Kali Linux版本的更新和Sniffjoke发布时间久远等问题,Sniffjoke在新版本的Kali Linux中运行存在各种问题。下面依次讲解一下解决办法。
第一个问题:从Kali Linux 2016.1开始,ifconfig命令的输出格式发生改变,这样导致Sniffjoke无法正确获取网络接口。由于Sniffjoke没有提供接口相关选项,并且该软件是C++编写,所以需要用户修改源代码,重新编译。
(1)到Kali Linux官网http://http.kali.org/pool/main/s/sniffjoke/,下载该软件的源码包sniffjoke_0.4.1.orig.tar.gz。
(2)解压该包,然后修改其中srcrvice/UserConf.cc文件,将原有第190行修改为如下:
snprintf(cmd, MEDIUMBUF, "ifconfig %s | grep \"inet \" | cut -b 14- | awk '{print $1}'",
(3)保存文件。
(4)在Kali Linux中安装cmake工具。
apt-get install cmake
(5)进入源码文件夹,执行以下命令,编译和安装Sniffjoke。
mkdir build
cd build
cmake ..
make
sudo -s
make install
第二个问题:由于Sniffjoke-auto命令要访问软件作者的官网http://www.delirandom.net/,以检测网络连接模式。但该网站现在无法访问,导致无法建立配置文件。解决办法如下:
(1)在公网建立一个PHP的网站,将源码文件夹中conf/sjA/pe.php文件上传到网站。
(2)在执行sniffjoke-auto命令,添加以下两个选项:
-s http://PHP网站/pe.php
-a PHP网站的IP地址
PS:在执行sniffjoke时,建议添加--foreground选项,可以看到错误提示,进行错误排除。