基于selenium的钓鱼工具:关于ReelPhish神器的使用

转载自公众号:newdooneSec

特此声明: 本文仅限于技术交流,禁止用于非法途径!!

前几周斗哥给大家介绍了一款自动化测试工具selenium,本周带来跟selenium应用相关的实时双因子钓鱼工具。什么是双因子认证?简单解释一下:正常的网站登录界面都需要账号密码(something you know)为登录凭证,但是某些安全性高的网站会开启双因子认证,即在原来的基础上再加上一重认证,比如常见的手机短信验证码、银行的U盾的PIN码(something you have)或者指纹以及其他生物识别的方法(something you are)等身份双因子认证。本篇文章重点想传递的信息是:使用双因子认证的网站并不能避免钓鱼网站的威胁,希望通过对该工具的测试来了解双因子钓鱼的原理,以此来更好的防范实时双因子钓鱼网站的危害,推动新的防御机制。

image

0x01****工具介绍****&****准备

ReelPhish实时双因子钓鱼工具是以命令的方式运行的,主要有两个组件,一个组件是嵌入钓鱼网站的PHP脚本(需根据确定的目标网站对脚本代码进行设置修改),用来获取钓鱼的数据(账户、密码、双因子验证等)并发送到攻击者电脑中的python脚本,另一个组件是用来监听钓鱼网站数据的ReelPhish.py(需要python2.7环境运行),当侦听到账户密码等信息时就会启动selenium框架驱动浏览器自动与HTML对象交互,以此来达到实时钓鱼的目的。

  1. 下载工具:ReelPhish实时双因子钓鱼工具github地址,下载后放到本地文件夹,打开文件如下图:
image

其中ReelPhish的两个组件分别以examplesitecode下的examplecode.php和ReelPhish.py两个脚本体现,其中examplecode.php需要放置到钓鱼网站的目录下并根据目标网站实际情况做修改。

  1. 另外除了下载好ReelPhish工具,我们还需下载相关的webdriver: Chrome:chromedriver_win32.zip
    这里斗哥给出 Chrome的win32为的下载地址,其他的小伙伴可自行根据需要下载。
    下载好chromedriver.exe一起放到ReelPhish-master文件夹下即可:
image
  1. 安装Selenium ,用来运行浏览器驱动程序的自动化框架,这里斗哥已经安装过了。
pip install selenium
image
image

0x02****环境说明****&****准备

为了模拟和测试ReelPhish实时双因子钓鱼工具的使用,斗哥找研发小姐姐搞了一个简单的网站用来模拟真实网站(这里斗哥模仿的是Google站点的登录过程),网站的登录步骤分为三步:输入邮箱->输入密码->输入短信验证码(手机号已绑定邮箱),
网站访问地址为:192.168.159.135/Paer/index.html

image

正式开始:

OK,这里假设我们确定好要钓鱼的网站就是上面的这个网站后,我们就可以开始搭建测试环境,整个测试环境的搭建主要分为两个部分,第一是ReelPhish.py组件的设置运行,第二个是钓鱼网站和php组件的设置,这个两个组件支持放在不同的服务器上,这里斗哥为了操作方便,将两个组件放置在同一个windows主机上,如果是运行在不同的服务器,则需要修改php组件中$local_url为实际ReelPhish.py组件服务器的IP地址即可。

image

如2135端口冲突或被占用则需要同步修改ReelPhish.py组件的端口,更换可以使用的端口,否则端口不做改变。

image

第一部分:

0x01****工具介绍****&****准备部分中我们已经完成具备运行ReelPhish.py组件的基本环境配置,除此之外我们还需要设置哪些参数呢?运行ReelPhish.py组件-h,我们可以查看组件所有要参数如下:

image

–browser 用来指定浏览器
–submit 用来指定登录页面的提交按钮的ID,默认只支持一个按钮
–url 用来指定真实网站的IP
–numpages 用来指定认证页面的数量
–logging 用来查看脚本运行的信息,这里使用debug看的信息最全。
–override 用来指定忽略报错信息

那么根据上面我们的测试环境,设置–browser为Chrome; 真实网站是的–url为http://192.168.159.135/Paer/index.html ;登录的页面有三个–numpages设为3,通过审查元素可以查看各个页面的下一步按钮(这里由于是斗哥自己搭建的网站因此将下一步按钮的name均设置为Next),即这里–submit设置为Next;

image

注:其实–submit参数这里有个坑点,该参数按照ReelPhish.py的默认情况下仅支持接收一个按钮的name,那么如果多个页面的下一步的按钮的名称不一样则需要对ReelPhish.py做修改以支持接收多个参数。

那么我们第一部分的ReelPhish.py的运行参数设置具体如下:

ReelPhish.py –browser Chrome –url http://192.168.159.135/Paer/index.html –numpages 3 –submit Next –logging debug
image

第二部分:

第二部分主要是钓鱼网站的搭建和php组件的具体设置:

这里斗哥将钓鱼环境部署在phpstudy上,并且通过右键保存网站源码的方式直接克隆网站(就是这么简单粗暴),或者可以使用kali下自带的SET(Social Engineering Tool)等专业工具对目标网站进行克隆。
运行PHPstudy,将网页修改为php后缀文件保存到本地的PHPstudy下的/www/phishing目录下:

image

认证流程分别由三个页面and登录成功的页面,这里分别保存为user.php、pass.php、phone.php、succeed.htm。

image

由于每三个页面都需要将获取的数据(从HTTP POST请求中获取用户邮箱、密码、短信验证码等凭证)发送到ReelPhish.py组件进行实时交互,因此这里php组件需要设置三个脚本,这里分别创建命名为get_user.php、get_pass.php、get_phone.php 。

image

在编辑器中打开上述文件,进行分析:

1.修改user.php的表单action,使get_user.php获取到表单提交的email参数的值

2.将获取到的数据发送到ReelPhish.py组件,此时接收到数据的ReelPhish.py组件自动打开浏览器输入获取到的邮箱数据,实时进行交互

3.get_user.php的header(‘Location: ./pass.php’);跳转到输入密码页面(pass.php)

4.重复步骤1的设置

eq:以user.php和get_user.php的页面交互为例,具体修改设置如下:

image

以上我们完成了整体测试环境的搭建和设置。

image

0x03****模拟受害者登录钓鱼网站过程

下面我们模拟受害者访问虚假的页面地址并开始认证的过程:

image

与此同时攻击者的系统就会收到受害者的消息,并自动启动新的web浏览器,访问真实网站的页面,提交受害者的用户凭证进行登录。

ReelPhish.py接收数据:
image

ReelPhish.py打开浏览器自动化交互过程:

image

防止钓鱼网站的威胁,目前最主要还是要加强自身的防范意识,当然本篇的重点是想告诉大家采用双因子认证的网站并不能有效的避免钓鱼的威胁。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,457评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,837评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,696评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,183评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,057评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,105评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,520评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,211评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,482评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,574评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,353评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,213评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,576评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,897评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,174评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,489评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,683评论 2 335

推荐阅读更多精彩内容

  • sqlmap是一个开源的渗透测试工具,可以用来进行自动化检测,利用SQL注入漏洞,获取数据库服务器的权限。它具有功...
    道书简阅读 1,385评论 0 0
  • 4 创建一个社交网站 在上一章中,你学习了如何创建站点地图和订阅,并且为博客应用构建了一个搜索引擎。在这一章中,你...
    lakerszhy阅读 2,145评论 0 7
  • 云中歌已经读完了!初看之时已经发现它是大漠谣的续集,讲的是玉儿与霍去病女儿霍云歌的故事!故事也是从无边的大漠开始,...
    竹林逍遥阅读 156评论 0 0
  • 中国古人早就说:一命二运三风水。四积功德五读书。或许可以稍微改变一下命运,正如一颗子弹或许可以让一颗小行星偏转。
    梦里寻梦阅读 160评论 0 0
  • (五)先端着 (六)雨露均沾? 跪着的诸女见情形不对,身子伏的更低了一些,倒是中间一名女子突得抬起头来,语调悲切:...
    笔间流年阅读 426评论 0 3