什么是WiFiPineapple?

关于这个问题,相信各位心里都有自己的答案,这里引用下radiowar的介绍:

自从2008开始,WiFi PineApple成为了最受欢迎的安全测试设备,在开源无线安全审计软件社区的支持,WiFiPineApple具有简单易用的中间人***操作,到现在第四代硬件发布后,将会越来越简单、易用。WiFiPineApple是由Hak5的Darren Kitchen和Robin Wood共同研究而生的

更多的介绍请访问:http://radiowar.org/hardware/what-is-wifipineapple.html

http://radiowar.org/hardware/what-is-wifipineapple-2.html


简单了解完菠萝后,咱们就要迅速步入正题:自制WiFiPineapple


准备工具:

#1 无线便携3G路由器

  说明:路由器需要满足几点需求:1、配置USB口 2、Flash存储大于4M 3、可以刷openwrt。

  推荐TL-WR703N/TL-WR720N,703N用的人貌似更多一些,国外的教程都在用,并且有openwrt官方的固件包;720N也没问题,因为笔者用WR720N做的测试,所以下文以WR720N操作为准。

#2 闪迪(SanDisk)酷豆(CZ33)

  这里不是做广告啊,如果你能找到比他更小巧更适合长期挂路由器上的优盘当然更好啦


第一步:刷openwrt

这一步很灵活,大家可以依照自己路由器的型号刷不同版本的openwrt。

官方链接:http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/


选择WR703N的朋友可以直接下载http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin

注意:原厂固件刷“factory”,已经是OpenWrt的刷“sysupgrade”


选择WR720N的朋友,建议下载南浦月修改版固件,因为openwrt官网没有放出WR720N的固件,720N与703N的差别主要是720N多一个网口,并且自带电源插头。所以网上的720N固件大都是根据703修改编译的,其中不乏很多优秀的固件,比如石像鬼等等,详情请访问恩山WIFI论坛响应板块http://www.right.com.cn/forum/forum-72-1.html


南浦月TP-LINK TL-WR720N V3 OpenWrt 固件下载 http://blog.nanpuyue.com/2012/011.html  注意选择usb扩展版,mini版不能正确识别优盘。


刷机特别简单,登陆路由器管理后台,选择“系统工具”-“固件升级” 选择下载好的bin固件文件 点击确定 待路由器安装固件并重启就完成了


注意TPlink默认管理地址是192.168.1.253  刷完openwrt后会修改为192.168.1.1,


第二步:配置openwrt

首先设置管理员密码,选择“系统”-“管理权”修改管理密码

然后配置网络,选择“网络”-“接口”,点击LAN口,配置地址,笔者为避免与家用路由器冲突配置192.168.0.1/24,物理设置eth1与无线桥接,DHCP高级设置3,192.168.0.1  6,8.8.8.8 即DHCP分配网关为192.168.0.1 DNS服务器为8.8.8.8

wKiom1NOgVih1lN5AAH01201r9U274.jpg

点击“WAN”口,选择协议为“DHCP客户端”

选择“网络”-“无线”开启无线功能,并设置无线SSID及密码。

现在可以通过无线来访问openwrt


第三步 配置USB外挂优盘

首先需要安装软件使路由支持mount以及识别ext4格式USB存储:

通过SSH访问设备 ssh 192.168.0.1

输入root密码进行登陆

然后依次执行

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

PS:南浦月固件已集成 不需要进行安装

接下来需要对优盘进行格式化 2GB格式化为swap(sda1)其余的格式化为ext4(sda2)

然后将优盘插入路由器,执行下列操作

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

重启后执行df看看根目录是否已经替换为优盘,当然也可以到WEB界面查看

wKiom1NOhSjiOYLWAAFK3ZidgYA070.jpg

接下来就可以尽情安装各种软件了


opkg update  更新列表

opkg install nano 安装软件  下边的可以选择部分进行安装

opkg install htop
opkg install bash
opkg install netcat
opkg install tar
opkg install openssh-sftp-client
opkg install nmap
opkg install tcpdump
opkg install aircrack-ng
opkg install kismet-client
opkg install kismet-server
opkg install nbtscan
opkg install snort
# karma should be installed
opkg install karma
opkg install samba36-client
opkg install elinks
opkg install yafc
opkg install python
opkg install uhttpd
opkg install at
opkg install ethtool
opkg install ettercap
opkg install macchanger
opkg install netstat-nat
opkg install reaver
opkg install sslsniff
opkg install sslstrip
opkg install wget
opkg install wput
opkg install curl
# libnids should be installed
opkg install libnids
# php5 and php5-cgi should be installed
opkg install php5
opkg install php5-cgi


第四步 安装配置wifipineapple

下载wifipineapple固件到电脑上

wget http://wifipineapple.com/index.php?downloads&downloadUpgrade=2.8.1

安装unsquashfs工具

sudo apt-get install squashfs-tools

释放固件文件

unsquashfs upgrade-2.8.1.bin


拷贝部分文件到openwrt中

在拷贝wpad之前需要先关闭无线,否则拷贝失败,关闭无线后执行

scp /root/squashfs-root/usr/sbin/wpad root@192.168.0.1:/usr/sbin


重新开启无线,然后继续拷贝hostapd_cli和hostapd.sh

scp /root/squashfs-root/usr/sbin/hostapd_cli root@192.168.0.1:/usr/sbin
scp /root/squashfs-root/lib/wifi/hostapd.sh root@192.168.0.1:/lib/wifi


下载Pineapple Web Interface源文件到本地根目录下test目录

sudo apt-get install git

git clone https://github.com/PenturaLabs/web-interface /root/test/pineapple


拷贝源文件到openwrt目录

scp -r /root/test/pineapple/ root@192.168.0.1:/


下载配置文件 https://github.com/PenturaLabs/Pineapple-Confs/tree/master/etc


复制squashfs-root/usr/sbin/目录下工具到openwrt /usr/sbin/

scp /root/squashfs-root/usr/sbin/autossh root@192.168.0.1:/usr/sbin/
scp /root/squashfs-root/usr/sbin/chat root@192.168.0.1:/usr/sbin/
scp /root/squashfs-root/usr/sbin/dnsspoof root@192.168.0.1:/usr/sbin/
scp /root/squashfs-root/usr/sbin/dsniff root@192.168.0.1:/usr/sbin/
scp /root/squashfs-root/usr/sbin/empty root@192.168.0.1:/usr/sbin/
scp /root/squashfs-root/usr/sbin/filesnarf root@192.168.0.1:/usr/sbin/
scp /root/squashfs-root/usr/sbin/macof root@192.168.0.1:/usr/sbin/
scp /root/squashfs-root/usr/sbin/mailsnarf root@192.168.0.1:/usr/sbin/
scp /root/squashfs-root/usr/sbin/msgsnarf root@192.168.0.1:/usr/sbin/
scp /root/squashfs-root/usr/sbin/sshmitm root@192.168.0.1:/usr/sbin/
scp /root/squashfs-root/usr/sbin/sshow root@192.168.0.1:/usr/sbin/
scp /root/squashfs-root/usr/sbin/tcpkill root@192.168.0.1:/usr/sbin/
scp /root/squashfs-root/usr/sbin/tcpnice root@192.168.0.1:/usr/sbin/
scp /root/squashfs-root/usr/sbin/urlsnarf root@192.168.0.1:/usr/sbin/
scp /root/squashfs-root/usr/sbin/update-usbids.sh root@192.168.0.1:/usr/sbin/
scp /root/squashfs-root/usr/sbin/webmitm root@192.168.0.1:/usr/sbin/


注意一定不要复制替换libuClibc-0.9.33.2.so文件 看国外教程有这一步 因为复制替换把路由搞down好多次 路由down掉后优盘拔掉可以正常启动 需要重新执行第三步挂载操作


复制配置文件到squashfs-root

scp -r /root/squashfs-root/etc/chatscripts root@192.168.0.1:/etc/
scp -r /root/squashfs-root/etc/gcom root@192.168.0.1:/etc/
scp -r /root/squashfs-root/etc/usb_modeswitch.d root@192.168.0.1:/etc/


scp /root/squashfs-root/www/* root@192.168.0.1:/www/


并复制拷贝到openwrt 建议不对network dhcp文件替换 因为会修改网络配置 不影响wifipineapple安装 原来的WAN口LAN口设置的就挺好的 其他文件可以做备份后替换 必须复制替换的有php.ini uhttpd

另外复制工作可以将通过优盘直接完成 建议关机状态对优盘进行插拔操作,并在linux进行复制操作


关闭wifipineapple升级 在openwrt上执行

touch index.php /www/
mv /pineapple/pages/upgrade.php /pineapple/pages/not-upgrade.php
touch /pineapple/pages/upgrade.php


添加开机启动:

nano /etc/rc.local

hostapd_cli -p /var/run/hostapd-phy0 karma_enable


vi /etc/config/httpd.conf

末尾附加

/:root:$p$root


然后执行重启

reboot


重启后访问http://192.168.0.1:1471 通过openwrt密码进行登陆

wKiom1NOjd6iIpVhAAOcVggmhS4923.jpg



到这里基本就完成了

结语:

    表示第一次玩便携路由,也是第一次接触openwrt和wifipineapple,期间走了不少弯路,最开始刷了一个网友自制的openwrt固件,因为剩余ROM不够,而且刷其他固件总是提示出错,彻底囧翻了,后来查了不少资料知道可以MTD强刷,并且是直接刷回最初的出厂固件,最初看网上刷回出厂固件都是拆机用刷机线刷的,总算松了口气。然后鼓起勇气继续尝试其他固件,最后找到了适合自己的固件,后边刷wifipineapple因为libuClibc-0.9.33.2.so的原因,路由搞down好几次,每次路由灯都变得闪个不停,最开始慌忙用MTD大法刷回去了,再后来发现原来拔掉优盘路由可以切回自身ROM存储继续工作,然后把优盘格式化重新来。再后来又搞down了,发现只需要把优盘挂上去就可以了,不用格式化。后来因为network文件改变网络了,配置网络折腾了很久,网上的配置文件只保留一个网卡,折腾来折腾去又改回原来的了,备份文件起了作用。折腾就是这个样子,期间都想把720退了换个跟网上教程接近的703,后来总算弄好了。不过菠萝还不太会用,继续折腾。。。


参考:http://samiux.blogspot.kr/2013/05/howto-tp-link-tl-mr3020-pocket-router.html