利用WiFi Pineapple Nano渗透客户端获取SHELL
前言:
前两篇文章介绍了The WiFi Pineapple Nano设备的一些主要功能模块,例如PineAP、SSLsplit和Ettercap等。今天给大家实际场景演示下如何利用Pineapple Nano来攻击客户端并且获取客户端SHELL的过程。
0×01 Evil Portal模块
首先,我们还是先介绍模块的基本功能,再进行实验过程的展示,本次实验中我们主要使用到的模块是Evil Portal和PineAP,关于PineAP模块的功能及用法,在我的其他文章中已经提过,这里就不重复介绍。Evil Portal模块不是Pineapple Nano自带的模块,需要在Modules中使用Manager Modules功能添加该模块及安装软件依赖包。
在Evil Portal模块安装完成后,如下图所示:
Evil Portal模块主要有以下几个部分组成:
1、Controls:点击CaptivePoral,启用模块;
2、Word Bench:创建工作目录,包含门户页面的php文件(可以包含php、js等)
3、White List:客户端白名单,即不需要通过门户认证页面跳转的IP地址列表
4、Authorized Clients:当前通过门户页面认证跳转过的IP地址列表
5、Live Preview:门户页面预览
总体来说,Evil Portal模块和我们前面文章介绍过的Landing Page功能很像,区别在于Landing Page仅能够提供一个强制跳转显示页面的效果,不具有认证、白名单以及更自由化的门户页面自定义功能。Evil Portal能够实现像现在的商业WiFi接入访问一样,提供一个由我们自定义的认证页面,引导客户端用户完成认证及跳转功能。
比如我们这里新建一个名为“Test1”的项目,Evil Portal会默认生成一个门户页面给我们使用。
在新建名为“Test1”的项目后,点击Test1的名称,即看到默认生成的3个页面。
我们可以自由编辑这3个文件,达到自己想要的效果:
或者我们干脆删除默认页面,SSH登录到Nano的系统中,找到Evil Portal的配置文件夹直接将我们编辑好的页面copy进去。
另外有一点需要注意的是,在编辑好页面之后,需要启用该项目,即点击Test1下的“Activate”,便可以在预览功能(Live Preview)下看到我们的页面情况,例如默认页面是这样的:
0×02 启用PineAP
在上面我们配置好Evil Portal模块后,我们随即开启PineAP功能,这里不详细介绍PineAP模块的具体用法,有疑问的同学,请参考我之前发布的其他文章。
首先,我们按照正常的配置,启用PineAP模块,等待客户端的连接。
通过Logging模块的PineAP Log功能,查看周围客户端的连接请求记录
等待一段时间后,发现有客户端连上了我们的Pineapple Nano设备。
0×03 攻击客户端
在发现有客户端连接到我们的设备上后,我们就可以正式开始我们的攻击客户端流程。
Kali中运行metasploit同时兼作为我们Pineapple Nano的控制端
攻击流程采用metasploit中的browser_autopwn2模块在客户端访问我们准备的Evil Portal门户页面时,重定向到我们设定好的browser_autopwn2中的payload地址上,此时browser_autopwn2模块自动针对客户端浏览器发起一系列基于flash player的攻击,如果客户端浏览器未更新打补丁的话,便有机会被我们攻击成功。
另外需要注意的是metasploit中有两个browser_autopwn模块,一个是针对java jre环境的,另一个是针对flash的,大家可是视情况选用。
下面我们实际演示一下:运行msfconsole
找到browser_autopwn2模块,设置好SRVHOST和路径。
设置好后,我们show options检查一下
我们可以查看到该模块加载了一共21个exploits,我们设定的地址是“http://172.16.42.203/”。
接下来我们看下客户端在访问任意网站前(此处以freebuf为例),会默认显示我们的Evil Portal定义的页面
只要点击下方“Authorize”时,我们在这里做个重定向操作,把客户端的浏览器导向到我们预先设置好的browser_autopwn2的页面上,然后在通过客户端“认证”后,客户端再次刷新页面就能够访问成功freebuf。
这时我们也可以查看Evil Portal的日志来看到,确实有客户端通过了我们准备的认证页面:
当有客户端访问过我们预先准备的browser_autopwn2的payload后,我们回到metasploit中查看是否有攻击成功,我们看到meterpreter已经成功打开了一个会话。
关于metepreter的使用不是本章的重点,这里就不展开多说。
直接访问会话,已经成功拿到客户端的SHELL。
可能我们上面准备的Evil Portal页面实在太简陋,本着出于测试实验的目的,我没有做过多的修饰,其实页面可以美化一下,还是比较能唬人的,类似下图:
0×04 后记
重要的事情说一遍:要多关注厂商发布的版本升级信息,及时升级软件版本。
利用WiFi Pineapple Nano渗透客户端获取SHELL的更多相关文章
- 初探无线安全审计设备WiFi Pineapple Nano系列之PineAP
前言: 之前曾经介绍过国外无线安全审计设备The WiFi Pineapple Nano的SSLsplit模块和ettercap模块及实验. 在玩WiFi Pineapple Nano 设备的过程中, ...
- 如何用路由器改成WiFi Pineapple系统镜像网络流量
本文主要介绍利用自己现有的设备,如何制作和使用WiFi Pineapple镜像网络流量,利用DWall模块分析用户数据,然后根据自己的需求,给DWall加入了日志记录功能.最后介绍了如何防范wifi ...
- WiFi Pineapple的Karma攻击与原理探究
WiFi钓鱼是一种被炒烂了的安全威胁,你几乎每天都能从电视.网络媒体中看到因误连了恶意WiFi导致大笔资金失窃的案例,并且很多媒体语不惊人死不休的报道风格总是能把当事人的受害过程删减修饰到灵异的程度. ...
- 获取Shell后的操作
对于Windows系统主机和Linux系统主机,获取Shell后的操作都不同. Windows 当我们通过对Web服务器进行渗透,拿到了该Web服务器的shell后,可以执行系统命令后,我们该如何操作 ...
- 利用window.name+iframe跨域获取数据详解
详解 前文提到用jsonp的方式来跨域获取数据,本文为大家介绍下如何利用window.name+iframe跨域获取数据. 首先我们要简单了解下window.name和iframe的相关知识.ifra ...
- 自己搭建Wifi Pineapple Mark V
创业搞得自己很累,不过一切都是值得的.抽空写下文章,确实好久未更新了. 前段时间由于项目需要,所以就折腾了下wifi pineapple.时间间隔有点久,根据回忆记录下. 淘宝货:TP-Link TL ...
- 利用phpcms后台漏洞渗透某色情网站
本文来源于i春秋学院,未经允许严禁转载 phpcms v9版本最近爆了好几个漏洞,网上公开了不少信息,但没有真正实战过,就不能掌握其利用方法,本次是在偶然的机会下,发现一个网站推荐楼凤信息,通过分析, ...
- iframe 跨域问题解决方案 利用window.name+iframe跨域获取数据详解
详解 前文提到用jsonp的方式来跨域获取数据,本文为大家介绍下如何利用window.name+iframe跨域获取数据. 首先我们要简单了解下window.name和iframe的相关知识.ifra ...
- GitHub客户端和Shell的基本操作和理解
GitHub客户端和Shell指令的简单实用 客户端操作, web端操作, shell指令操作. 掌握了这三种操作,基本上就可以很好的运用gitHub了. 创建项目, 可以通过web端进行创建. 可以 ...
随机推荐
- 如何在运行时改变App的图标
在你完成应用程序的beta版本后,最后会有些人去帮你测试,使你去完善应用程序……或者会有投资青睐.但是如果测试人员有一种简单地方式去检查构建版本的应用程序会不会有帮助呢? 这个教程将会向你展示这些,向 ...
- dialog - 从 shell 显示对话框
总览 (SYNOPSIS) dialog --clear dialog --create-rc file dialog --print-maxsize dialog common-options bo ...
- 智能指针unqiue_ptr
unique_ptr unique_ptr 对它指向的对象在同一时刻是独占的.它要么在构造的时候使用内置指针初始化,要么使用reset给其赋值.当unique_ptr被销毁时,它所指向的对象也被销毁. ...
- 标准库中的智能指针shared_ptr
智能指针的出现是为了能够更加方便的解决动态内存的管理问题.注:曾经记得有本书上说可以通过vector来实现动态分配的内存的自动管理,但是经过试验,在gcc4.8.5下是不行的.这个是容易理解的,vec ...
- mysql中使用load data infile导入数据的用法
有时需要将大量数据批量写入数据库,直接使用程序语言和Sql写入往往很耗时间,其中有一种方案就是使用mysql load data infile导入文件的形式导入数据,这样可大大缩短数据导入时间. LO ...
- python之 集合 学习笔记
""" 集合内的元素是无序的,集合内的元素必须是可哈希的集合内元素的唯一的,不存在重复列表和字典不能存在集合里面,因为列表字典可变 可哈希集合也是不可哈希的 unhash ...
- Educational Codeforces Round 50 (Rated for Div. 2)的A、B、C三题AC代码
A题链接:https://codeforces.com/contest/1036/problem/A A题AC代码: #include <stdio.h> #include <std ...
- 如何在小程序实现图片lazy-load懒加载效果
自从跳一跳出现之后小程序又开始频繁出现了,在学习过程中发现小程序虽然好但是由于api不完善导致开发过程中有很多的坑,重点是网上相对小程序出现坑时解决方案显然比较少,小程序最让人觉得痛心疾首之一就是无法 ...
- 洛谷P4779 Dijkstra 模板
这道题很久之前做过 今天复习(复读)一遍 有疑问的就是pair的专属头文件#include<utility> 但是据说iostream和vector等已经包含了这个 #include< ...
- ArrayLIst练习之获取满足要求的元素
ArrayListTest2.java import java.util.ArrayList; /* * 1.给定一个字符串数组;{"张三丰","宋远桥",&q ...