自己搭建Wifi Pineapple Mark V

简介:

前段时间由于项目需要,所以就折腾了下wifi pineapple。时间间隔有点久,根据回忆记录下。

淘宝货:TP-Link TL-MR3020 一百来块钱

先刷openwrt 所以可以看openwrt对路由器的支持列表。

http://wiki.openwrt.org/toh/start

下面是刷机教程,找了几篇刷机教程,但是教程有坑~~~~

第一步:

下载MR3020的固件

wget http://downloads.openwrt.org/attitude_adjustment/12.09-rc1/ar71xx/generic/openwrt-ar71xx-generic-tl-mr3020-v1-squashfs-factory.bin

固件升级包

wget http://downloads.openwrt.org/attitude_adjustment/12.09-rc1/ar71xx/generic/openwrt-ar71xx-generic-tl-mr3020-v1-squashfs-sysupgrade.bin

第二步:

配置电脑ip地址

ip:192.168.0.*

gateway:192.168.0.1

路由器后台

192.168.0.254 账号密码 admin admin

第三步:

“System Tools” -> “Firmware Upgrade” -> “Browse” 选择固件升级包 进行升级 然后会重启路由。

第四步:

改ip地址,跟你的路由在一个网段,然后改管理密码。

第五步:

设置wifi 配置dhcp获取

第六步:

ssh root@openwrt-ip

第七步:

安装一些package,但是由于GFW的原因,你可能根本下载不了。可以直接FQ后把文件下载下来,然后scp过去直接安装。

opkg update
opkg install kmod-usb-storage
opkg install kmod-fs-ext4
opkg install block-mount

第八步:

u盘格式化一下,使用GParted分区 kali下有这工具。

2GB swap (sda1) 6GB ext4 (sda2)

第九步:

然后u盘插入路由器

复制代码
​mkdir -p /mnt/sda2
mount /dev/sda2 /mnt/sda2
mkdir -p /tmp/cproot
mount –bind / /tmp/cproot
tar -C /tmp/cproot -cvf – . | tar -C /mnt/sda2 -xf –
umount /tmp/cproot
umount /mnt/sda2
复制代码

第十步:

复制代码
/etc/init.d/fstab enable
/etc/init.d/fstab start

vi /etc/config/fstab

config mount
option target /
option device /dev/sda2
option fstype ext4
option options rw,sync
option enabled 1
option enabled_fsck 0

config swap
option device /dev/sda1
option enabled 1
复制代码

第十一步:

reboot 然后ssh再连接上去 看挂载到根目录是否成功。

复制代码
root@Pineapple:~# mount
rootfs on / type rootfs (rw)
/dev/root on /rom type squashfs (ro,relatime)
proc on /proc type proc (rw,noatime)
sysfs on /sys type sysfs (rw,noatime)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,noatime,size=14612k)
tmpfs on /dev type tmpfs (rw,noatime,size=512k,mode=755)
devpts on /dev/pts type devpts (rw,noatime,mode=600)
/dev/sda2 on / type ext4 (rw,sync,relatime,user_xattr,barrier=1,data=ordered)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
none on /proc/bus/usb type usbfs (rw,relatime)
root@Pineapple:~# df
Filesystem           1K-blocks      Used Available Use% Mounted on
rootfs                11489348    594632  10318256   5% /
/dev/root                 2048      2048         0 100% /rom
tmpfs                    14612       120     14492   1% /tmp
tmpfs                      512         0       512   0% /dev
/dev/sda2             11489348    594632  10318256   5% /
root@Pineapple:~#
复制代码

这里可以修改下banner信息来判断是否是从u盘启动的openwrt系统

banner文件 /etc/banner

第十二步:

拔下U盘 插到电脑上 开始准备刷机啦

mkdir ~/mr3020
sudo cp -R /media/1234….1123/* ~/mr3020/
sudo cp -R ~/mr3020/lib ~/mr3020/lib-original

第十三步:

sudo wget -O upgrade-2.3.0.bin https://wifipineapple.com/index.php?downloads&download_mk5_upgrade=2.3.0

我用的kali安装firmware-mod-kit

wget https://firmware-mod-kit.googlecode.com/files/fmk_099.tar.gzcd ~/Desktop/fmk/
chmod +x
sudo ./extract-firmware.sh upgrade-2.3.0.bin
cd fmk/rootfs

然后复制到u盘

复制代码
sudo cp -R bin/* /media/1234….1123/bin/
sudo cp -R sbin/* /media/1234….1123/sbin/
sudo cp -R usr/* /media/1234….1123/usr/
sudo cp -R etc/* /media/1234….1123/etc/
sudo cp -R www/* /media/1234….1123/www/
sudo cp -R pineapple /media/1234….1123/
sudo cp -R lib/firmware/* /media/1234….1123/lib/firmware/
sudo cp lib/* /media/1234….1123/lib/
sudo cp lib/wifi/* /media/1234….1123/lib/wifi/

sudo cp ~/mr3020/etc/config/fstab /media/1234….1123/etc/config/
sudo cp ~/mr3020/etc/passwd /media/1234….1123/etc/
sudo cp ~/mr3020/etc/shadow /media/1234….1123/etc/
sudo cp -R ~/mr3020/lib-original /media/1234….1123/
复制代码

这里有个坑

不能替换libuClibc-0.9.33.2.so

不能替换libuClibc-0.9.33.2.so

不能替换libuClibc-0.9.33.2.so

重要的事情要说三遍!!!

第十四步:

配置下network

复制代码
cat /etc/config/network

config interface 'loopback'
    option ifname 'lo'
    option proto 'static'
    option ipaddr '127.0.0.1'
    option netmask '255.0.0.0'

config interface 'lan'
    option type 'bridge'
    option proto 'static'
    option ipaddr '172.16.42.1'
    option netmask '255.255.255.0'
    option dns '8.8.8.8'

config interface 'wiredwan'
    option ifname 'eth0'
    option proto 'static'
    option netmask '255.255.255.0'
    option ipaddr '192.168.1.50'
    option gateway '192.168.1.1'

config interface 'wan'
    option proto 'dhcp'

config interface 'usb'
    option ifname 'usb0'
    option proto 'dhcp'

config interface 'wan2'
    option ifname ' '
    option proto ' '
    option service ' '
    option device ' '
    option apn ' '
    option username ' '
    option password ' '
    option defaultroute ' '
    option ppp_redial ' '
    option peerdns ' '
    option dns ' '
    option keepalive ' '
    option pppd_options ' '
复制代码

别以为这一切就结束了,访问http://172.16.42.1:1471/#

发现登录还需要密码!!!密码还是灯的颜色。

修改php代码可以直接绕过

修改welcome.inc.php文件

复制代码
if (array_search($post['amber'], $action_array) == $current_state[0]

    && array_search($post['blue'], $action_array) == $current_state[1]

    && array_search($post['red'], $action_array) == $current_state[2]

) {

    $_SESSION['verified'] = true;

    return passwordForm();

  }
复制代码

修改为

if (true)
{
    $_SESSION['verified'] = true;
    return passwordForm();

参考链接

http://blog.khairulazam.net/2015/02/10/wifi-pineapple-mark-v-mr3020-bypass-verify_pineapple-led-pattern/

http://wiki.khairulazam.net/index.php?title=Wifi_Pineapple_Mark_V_on_TP-Link_MR3020


本文转自 K1two2 博客园博客,原文链接:http://www.cnblogs.com/k1two2/p/5466881.html  ,如需转载请自行联系原作者

相关文章
|
数据安全/隐私保护 网络架构
自己搭建Wifi Pineapple Mark V
创业搞得自己很累,不过一切都是值得的。抽空写下文章,确实好久未更新了。 前段时间由于项目需要,所以就折腾了下wifi pineapple。时间间隔有点久,根据回忆记录下。 淘宝货:TP-Link TL-MR3020 一百来块钱 先刷openwrt 所以可以看openwrt对路由器的支持列表。
2401 0
|
8月前
|
Android开发 Python
Python封装ADB获取Android设备wifi地址的方法
Python封装ADB获取Android设备wifi地址的方法
176 0
|
8月前
|
XML API Android开发
Android WIFI使用简述(上)
Android WIFI使用简述(上)
332 0
|
8月前
|
Android开发
Android 状态栏WiFi图标的显示逻辑
Android 状态栏WiFi图标的显示逻辑
199 0
|
8月前
|
Android开发
Android获取当前连接的wifi名称
Android获取当前连接的wifi名称
355 6
|
8月前
|
Android开发
android连接指定wifi
android连接指定wifi
133 0
|
8月前
|
Java Android开发
Android 9在连接以太网情况下 还能连接WiFi
Android 9在连接以太网情况下 还能连接WiFi
78 0
|
8月前
|
Java Android开发 开发者
rk3399 android以太网和wifi共存
rk3399 android以太网和wifi共存
242 0
|
8月前
|
缓存 Java Android开发
Android 9.0 WiFi 扫描结果上报和获取流程
Android 9.0 WiFi 扫描结果上报和获取流程
334 0
|
8月前
|
Android开发
Android 获取Wifi开关状态、控制Wifi开关
Android 获取Wifi开关状态、控制Wifi开关
250 0