前段时间由于项目需要,所以就折腾了下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的原因,你可能根本下载不了。可以直接翻墙后把文件下载下来,然后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
option enabled_fsck config swap
option device /dev/sda1
option enabled

第十一步:

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=)
devpts on /dev/pts type devpts (rw,noatime,mode=)
/dev/sda2 on / type ext4 (rw,sync,relatime,user_xattr,barrier=,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 % /
/dev/root % /rom
tmpfs % /tmp
tmpfs % /dev
/dev/sda2 % /
root@Pineapple:~#

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

banner文件 /etc/banner

第十二步:

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

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

第十三步:

sudo wget -O upgrade-2.3..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..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[]

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

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

) {

    $_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

自己搭建Wifi Pineapple Mark V的更多相关文章

  1. WiFi Pineapple的Karma攻击与原理探究

    WiFi钓鱼是一种被炒烂了的安全威胁,你几乎每天都能从电视.网络媒体中看到因误连了恶意WiFi导致大笔资金失窃的案例,并且很多媒体语不惊人死不休的报道风格总是能把当事人的受害过程删减修饰到灵异的程度. ...

  2. 如何用路由器改成WiFi Pineapple系统镜像网络流量

    本文主要介绍利用自己现有的设备,如何制作和使用WiFi Pineapple镜像网络流量,利用DWall模块分析用户数据,然后根据自己的需求,给DWall加入了日志记录功能.最后介绍了如何防范wifi ...

  3. 利用WiFi Pineapple Nano渗透客户端获取SHELL

    前言: 前两篇文章介绍了The WiFi Pineapple Nano设备的一些主要功能模块,例如PineAP.SSLsplit和Ettercap等.今天给大家实际场景演示下如何利用Pineapple ...

  4. 初探无线安全审计设备WiFi Pineapple Nano系列之PineAP

    前言: 之前曾经介绍过国外无线安全审计设备The WiFi Pineapple Nano的SSLsplit模块和ettercap模块及实验. 在玩WiFi Pineapple Nano 设备的过程中, ...

  5. 使用Wifi pineapple(菠萝派)进行Wi-Fi钓鱼攻击

    简介: WiFi Pineapple 是由国外无线安全审计公司Hak5开发并售卖的一款无线安全测试神器. 特性: 用作 Wi-Fi 中间人攻击测试平台 一整套的针对 AP 的渗透测试套件 基于 WEB ...

  6. wifi pineapple 外接USB无线网卡桥接外网

    0:选择USB网卡 在没有有线网络的情况下,可以外挂一个usb无线网卡来桥接上网,目前支持3070L.8187L芯片的网卡,反正linux系统都用这些芯片, 免的安装驱动, 我选择的是 WN-722N ...

  7. Win7系统搭建WiFi热点详细攻略

    (转自:http://blog.csdn.net/gisredevelopment/article/details/16113889) 一.如果你之前没有在笔记本上搭建过WiFi,那么恭喜你,你的笔记 ...

  8. kali下搭建WiFi钓鱼热点

    在linux下建立无线热点并不像在windows下开启网络共享或者使用无线网卡驱动设置AP模式即可. linux下的无线共享要用到两个软件:hostapd(创建无线热点).dnsmasq(dns服务和 ...

  9. WIFI Pineapple 排雷

    1.在WEB界面中无法安装插件 解决:进入SSH,执行opkg update 2.ettercap无法运行,缺少动态连接库,libpcap.so.1.3 创建软连接   ln -s /usr/lib/ ...

随机推荐

  1. python 练习 10

    #!/usr/bin/python # -*- coding: UTF-8 -*- i = int(raw_input('净利润:')) arr = [1000000,600000,400000,20 ...

  2. [JavaScript] 函数同名问题

    存在同名函数时,最后的函数会覆盖掉以前的同名函数. var x = 1, y = z = 0; function add(n) { return n = n + 1; } y = add(x); fu ...

  3. js 继承inheritance/extends

    主要就是<javascript语言精粹>语言精粹中的内容 5.1伪类 Function.prototype.method = function(name,func){ this.proto ...

  4. nyoj------20吝啬的国度

    吝啬的国度 时间限制:1000 ms  |  内存限制:65535 KB 难度:3    描述 在一个吝啬的国度里有N个城市,这N个城市间只有N-1条路把这个N个城市连接起来.现在,Tom在第S号城市 ...

  5. OID,主键生成策略,PO VO DTO,get和load区别,脏检查,快照,java对象的三种状态

    主键生成策略 sequence 数据库端 native 数据库端 uuid  程序端 自动赋值 生成的是一个32位的16进制数  实体类需把ID改成String 类型 assigned  程序端 需手 ...

  6. addViewController之后view里面的点击事件不响应

    let dealsSeeMoreViewController = DealsSeeMoreViewController(owner: self) self.dealsStackView.addArra ...

  7. iOS 推送全解析

    本文旨在对 iOS 推送(以下简称 推送)进行一个完整的剖析,如果你之前对推送一无所知,那么在你认真地阅读了全文后必将变成一个推送老手,你将会对其中的各种细节和原理有充分的理解.以下是 pikacod ...

  8. jquery mobile 请求数据方法执行时显示加载中提示框

    在jquery mobile开发中,经常需要调用ajax方法,异步获取数据,如果异步获取数据方法由于网速等等的原因,会有一个反应时间,如果能在点击按钮后数据处理期间,给一个正在加载的提示,客户体验会更 ...

  9. Objective-C:Foundation框架-概述

    iOS的整体架构(以iOS8为例)图如下: 从Cocoa Touch到Core OS下面四层包含了开发iOS应用程序所用到的所有API(第三方框架也是基于这几个层的).每个层又都包含了许多框架.框架就 ...

  10. 交互设计师常用的web设计模式(转)

    交互设计师在设计线框图原型时,熟知常见的web设计模式很有帮助,做到“心中有数”才能创造出符合需求,用户易学易用的界面来.所谓“没有必要重复发明轮子”,模式往往容易解决常见问题,正确的模式能帮用户熟悉 ...