beef局域网内模拟攻击
0x0环境
主机A win10:10.51.20.60(wifi)
主机A中的虚拟机kali(攻击者):192.168.110.129(NAT)
主机A中的虚拟机win2003(受害者):192.168.110.132(NAT)
0x1 配置
0x11 beef配置
Beef的配置文件在 /usr/share/beef-xss/config.yaml
Host:kali IP
Port:beef监听端口默认3000
public:主机A(接入外网的电脑IP)
public_port:主机A中空闲的端口,我设置的是20000
0x12 虚拟机端口映射
修改虚拟机网关的端口映射,简单来说,就是设置后,所有访问主机A的20000端口的请求都会被转发到192.168.110.129的3000端口,也就是kali的3000端口上
虚拟网络编辑器在VM编辑栏
0x2 模拟攻击
0x21 kali
启动beef
Beef弹出浏览器打开beef的后台管理,这里注意,原本应该是打开上图中的地址,但出了点问题(最后总结会说),所以我们要把ip改成kali的ip,也就是192.168.110.129:3000/ui/authentication
用户名/密码:beef/beef
这就是beef的界面,复制basic demo link:http://192.168.110.129:3000/demos/basic.html
0x22 win2003,win10
地址转换:
复制的地址是:http://192.168.110.129:3000/demos/basic.html
受害者Win2003输入的地址应该是端口映射后的地址:10.51.20.60:20000/demos/basic.html
成功打开,此时应该是成功了才对(。。。。。。)
查看kali中的beef管理界面,并没有win2003的信息(慌了。。。)
此时,我试了下在主机A中打开hook地址,成功了
再看beef,有了主机A的信息了,hook成功了(摸不着头脑???)
尝试利用social engineering(社会工程学模块)骗取facebook密码
再打开主机A上的页面,成功了
输入hello后,再回到kali看攻击效果
0x3 总结,思考
0x31关于beef配置的host
根据参考文章,一开始beef配置的host我是没有改动,也就是默认的0.0.0.0
但出现了如下图的问题,成功打开了demo,但是demo上的js一直不成功,原因是无法连接(Error connection)
后来把host改成了kali的ip,js连接上了,但是beef的管理页面,也就是127.0.0.1:3000/ui/panel却无法打开了,试了下192.168.110.129:3000/ui/authentication倒是成功了,但是这其中的原因我还没明白
0x32 win2003的失败
0x22中说到,win2003成功打开了demo,但是beef这没有收到信息
换成主机A尝试成功后,我又转回来研究2003失败的原因,因为只有ie,而且是旧版本的,没办法F12看具体的请求状况,我下了个47版本的火狐装上后,再次尝试访问demo,这次beef成功收到信息了,也就是2003被成功hook住了(我又摸不着头脑了???)
Beef页面
0x33 关于beef配置的public
因为此次用的是wifi,所以beef配置中的public填的是wlan的ip地址,如果是用网线,
应该要改成192.168.110.1
0x34 实际环境攻击的想法
这次是虚拟机网络模拟攻击,如果在实际情况下
根据参考文档A
需要一台能访问(有独立ip)的主机
服务器装好beef后,要修改后台管理页面的URL和用户名密码,因为你能登陆管理页面,别人也能登陆
还要修改host为主机的独立ip,port自设要大于1024
Public和public_port不用设置
以下来自文档A
### 指定某个网段,只有在这个网段的浏览器才能被hook
permitted_hooking_subnet: "0.0.0.0/0" ### 指定某个网段,只有在这个网段的浏览器才能访问管理UI
permitted_ui_subnet: "0.0.0.0/0" ### 上面这两项都是可以被绕过的,只要使用X-Forwarded-For首部绕过,一般不需要设置 ### 设置beef服务器的主机, 如果有自己的域名, 那么可以设置自己的域名, 没有就使用默认
host: "0.0.0.0" ### 设置beef服务器监听的端口, 可以自己定一个,比如8080, 记得端口号需要大于1024
port: "" ### 受害浏览器轮询beef主机的时间, 默认为1秒,可以设置为更低。
xhr_poll_timeout: #public: "" # public hostname/IP address
#public_port: "" # experimental
### 这是让BeEF运行在一个反向代理或者NAT环境下才需要设置的。 ### 管理页面的URI, 默认是/ui, 建议修改,这样就不会让别人找到你的管理页面
web_ui_basepath: "/ui" ### hook_file 的名称, 建议修改, 可以修改为jquery.js之类的来提升隐蔽性
hook_file: "/hook.js" ### 管理页面登录的用户名和密码, 这个一定要改,两个都改是最好的
credentials:
user: "beef"
passwd: "beef"
0x4参考文档
A:https://www.freebuf.com/articles/web/175755.html
B:https://www.cnblogs.com/heijuelou/p/7804771.html
两篇文章的作者都有对beef的进一步研究,可以看看
beef局域网内模拟攻击的更多相关文章
- 中间人攻击-Arp之局域网内DNS欺骗
基础知识 网关是啥? 网关是工作在OSI七层模型中的传输层或者应用层,用于高层协议的不同网络之间的连接,网关就好比一个房间通向另一个房间的一扇门. ARP协议 假设A(192.168.1.2)与B(1 ...
- ARP攻击之Kali Linux局域网断网攻击
特别声明: 我们学习研究网络安全技术的目的应是为了维护网络世界的安全,保护自己和他人的私有信息不被非法窃取和传播.请您遵守您所在地的法律,请勿利用本文所介绍的相关技术做背离道德或者违反法律的事情. S ...
- Kali下进行局域网断网攻击
今天我就来演示一下在kali下的局域网断网攻击,即ARP地址欺骗,下图所要用到的arp地址欺骗状态图: 则: 第一步:假设主机A访问某网站,那么要告知某网站我的IP和MAC地址,但这是以广播的方式告知 ...
- 【漏洞复现】局域网 ARP 中间人攻击 获取他人账号密码
日期:2019-07-18 14:24:42 更新: 作者:Bay0net 介绍:如何在局域网内,窃取其他用户的账号密码? 0x01. 漏洞环境 攻击工具 arpspoof 基本用法: arpspoo ...
- 局域网内利用gitlab,jenkins自动生成gitbook并发布(nginx)
安装了GitBook,内网使用,没法用上gitbook的网页. 用gitbook serve只能展示一本书,而且也不利于长期维护. 于是使用gitlab,jenkins,和nginx配合gitbook ...
- Snmp协议应用-扫描局域网内打印机
.h2cls { background: #6fa833 none repeat scroll 0 0 !important; color: #fff; font-family: "微软雅黑 ...
- Windows下查看局域网内某台计算机的MAC地址
我们知道在局域网中,在Windows下,查看局域网内其他主机的ip和对应mac地址的命令是: arp -a 这样可以看到ip和mac地址的对应关系,还是比较方便的 但是有些时候使用arp命令并不能列出 ...
- 查询局域网内在线电脑IP
COLOR 0A CLS @ECHO Off Title 查询局域网内在线电脑IP :send @ECHO off&setlocal enabledelayedexpansion ECHO 正 ...
- 怎么在手机浏览器上访问电脑本地的文件,局域网内,自建WiFi也可以
首先,电脑要有Mysql+Apache+PHP环境,我直接用Wampsever,开启环境后手机和电脑要再同一个局域网内,然后电脑上打开win+R,输入cmd,再输入ipconfig,就可以看着这台的电 ...
随机推荐
- 第 14 章 结构和其他数据形式(names)
*--------------------------------- names1.c -- 使用指向结构的指针 ---------------------------------*/ #includ ...
- 【Alpha 冲刺】 7/12
今日任务总结 人员 今日原定任务 完成情况 遇到问题 贡献值 胡武成 建立数据库 已完成 孙浩楷 完成作业列表界面 已完成 胡冰 完成作业展示页面 已完成 练斐弘 完成课件列表页面 未完成 时间不够 ...
- 【Ansible 文档】【译文】动态inventory
Dynamic Inventory 动态inventory 配置管理系统的用户经常想要保存inventory到不同的软件系统中.Ansible提供了一个基本的基于文本的系统,正如inventory中描 ...
- Python在Win10系统的安装和使用配置
Python是一种计算机程序设计语言.你可能已经听说过很多种流行的编程语言,比如非常难学的C语言,非常流行的Java语言,适合初学者的Basic语言,适合网页编程的JavaScript语言等等. 下载 ...
- 使用mysql乐观锁解决并发问题思路
本文摘自网络,仅供个人学习之用 案例说明: 银行两操作员同时操作同一账户.比如A.B操作员同时读取一余额为1000元的账户,A操作员为该账户增加100元,B操作员同时为该账户扣除50元,A先提交,B后 ...
- 运行metamascara时出现的一些错误
The difference between mascara and the extension Mascara Is in alpha and some of it's behaviors are ...
- kvm安装配置使用centos6.5
# yum -y install kvm virt-* libvirt && yum -y groupinstall Virtualization 'Virtualization C ...
- 使用Android绘图技术绘制一个椭圆形,然后通过触摸事件让该椭圆形跟着手指移动
引言:在图形绘制中,控制一个图形(圆形,椭圆形,矩形,三角形)移动时,其实计算的都是该图形的中心点移动.在绘制过程中,首先计算出中心点,然后根据中心点的位置计算重图形的上下左右位置.我们假设图形左边为 ...
- P3195 [HNOI2008]玩具装箱TOY
列出DP方程式:设f[i]表示分组完前i件物品的最小花费,为方便计算,设sum[i]表示是前i件物品的长度和. f[i]=min(f[j]+(sum[i]-sum[j]+i-j-L-1)^2) [0& ...
- jqgrid 基础应用
jqgrid 是一个在jquery基础上做的一个表格插件,以ajax的方式和服务器端通信. 一个jqgrid的基础示例(基础参数说明)如下: $("#jqGrid").jqGrid ...