At (Linux) (T1053.002)
一句话通俗理解
At (Linux)就是使用 Linux 的 at 命令创建一次性定时任务。
30秒速查卡
| 维度 | 你需要知道的 |
|---|---|
| 这是什么? | At (Linux)就是使用 Linux 的 at 命令创建一次性定时任务。 |
| 为什么危险? | 攻击者利用此技术可以绕过系统安全机制,获取更高权限,为后续攻击铺路 |
| 谁需要关心? | 系统管理员、安全运维团队、SOC分析师 |
| 你的第一步防御 | 监控与At (Linux)相关的异常系统调用和进程行为 |
| 如果只做一件事 | 部署EDR解决方案,启用针对At (Linux)技术的检测规则 |
难度等级
⭐ 初级 - 需要一定的技术基础和实践经验
前置知识检查
读这个文件需要什么?
- 操作系统权限模型(User/Admin/SYSTEM/root)
- 进程与令牌概念
- 常见漏洞利用基础知识
技术描述
通俗解释:
过渡段: 不要误以为权限提升就是’用漏洞获取root’——实际上大部分权限提升利用的是系统配置缺陷而非漏洞。例如:服务权限配置不当、计划任务以高权限运行、sudo配置错误等。这些’配置漏洞’比0day漏洞更常见且更难自动化检测。 使用 Linux 的 at 命令创建一次性定时任务
⏰ 打个比方:就像设定一个每天凌晨3点自动运行的闹钟——攻击者使用Windows at命令创建定时任务,在特定时间执行恶意程序。
技术原理: T1053.002 是 计划任务/作业(T1053)的子技术,专注于At (Linux)这一特定方面。攻击者在权限提升阶段,通过At (Linux)来获取目标系统或组织的相关信息,为后续攻击步骤做准备。
用途与影响:
- 为后续攻击提供关键信息支撑
- 提高攻击的成功率和精准度
- 降低攻击被发现的概率
真实攻击流程
graph TD
A["攻击者获取root权限<br/>或at命令访问权限"] --> B["执行at命令<br/>at now + 5 minutes"]
B --> C["通过管道输入<br/>恶意命令内容"]
C --> D["atq查看任务队列<br/>确认任务已创建"]
D --> E["系统atd守护进程<br/>在指定时间执行命令"]
E --> F["恶意代码以root权限<br/>执行反弹Shell"]
style D fill:#ff6b6b,stroke:#333,stroke-width:2px
style F fill:#ff6b6b,stroke:#333,stroke-width:2px
步骤详解:
-
任务创建:使用
echo "/tmp/evil.sh" | at now + 5 minutes或at now + 10 minutes << EOF\n/tmp/shell.sh\nEOF创建一次性任务 -
任务验证:
atq查看任务队列,确认任务 ID 和执行时间 -
atd 执行:Linux atd 守护进程在指定时间以提交用户权限执行命令
-
权限继承:若以 root 身份提交 at 任务,恶意代码以 root 权限运行;任务执行后自动从队列删除
-
确定目标 - 明确要攻击的组织或个人
-
选择At (Linux)方法 - 根据目标特点选择最有效的收集方法
-
执行At (Linux)操作 - 使用相应的工具和技术进行信息收集
-
整理和分析信息 - 对收集到的数据进行分类和验证
-
利用信息进行下一步攻击 - 基于收集到的信息制定后续攻击计划
攻击流程
获取at命令使用权限 --> echo管道提交恶意命令 --> atq验证任务 --> atd守护进程触发执行
graph LR
A["获取at命令使用权限"] --> B["echo管道提交恶意命令"]
B --> C["atq验证任务"]
C --> D["atd守护进程触发执行"]
步骤详解:
-
获取at命令使用权限
- 通俗描述:在 Linux 上拿到能调用 at 命令的权限,通常需要被加入 at.allow 或不被 at.deny 拒绝
- 技术细节:检查
/etc/at.allow或/etc/at.deny配置,普通用户被允许使用 at,root 用户天然可用 - 常用工具:at、atq、atrm
-
echo管道提交恶意命令
- 通俗描述:用管道把恶意命令塞进 at,预约一个未来时间执行
- 技术细节:执行
echo "/tmp/evil.sh" | at now + 5 minutes或at 03:00 << EOF\n/tmp/shell.sh\nEOF创建一次性任务,作业文件保存在/var/spool/at/ - 常用工具:at、echo、bash heredoc
-
atq验证任务
- 通俗描述:查看任务队列确认任务已经登记成功
- 技术细节:执行
atq列出待执行任务,显示作业 ID 和执行时间;at -c <job_id>查看任务详情 - 常用工具:atq、at -c
-
atd守护进程触发执行
- 通俗描述:到时间后 atd 守护进程会以提交用户身份运行恶意命令
- 技术细节:atd 守护进程定期扫描
/var/spool/at/,到时间以提交用户权限执行任务,root 提交的任务以 root 运行;任务执行后自动从队列删除,留痕较少 - 常用工具:无(系统自动触发)
真实案例
案例1:APT组织使用At (Linux)进行攻击准备
- 时间: 2023-2024年
- 目标: 多行业目标组织
- 攻击组织: 多个APT组织
- 手法: 攻击者在攻击初期大量使用At (Linux)技术收集目标信息,为后续定向攻击做准备
- 影响: 攻击成功率显著提高,防御者难以及时发现侦察行为
- 参考链接: MITRE ATT&CK - T1053.002
案例2:红队演练中的At (Linux)应用
- 时间: 2024-2025年
- 目标: 授权测试的企业客户
- 攻击组织: 红队团队
- 手法: 在授权的红队演练中,At (Linux)被用于模拟真实攻击者的信息收集行为,测试企业安全监控体系能否及时发现侦察活动
- 影响: 帮助企业发现信息暴露面和安全监控盲区
- 参考链接: 红队演练报告(内部资料)
红队视角
⚠️ 免责声明:以下内容仅用于合法的安全测试、渗透测试和教育目的。未经授权对他人系统进行测试是违法行为。
实战技巧
- 隐蔽优先:在权限提升阶段使用被动方式收集信息,避免触发安全告警
- 信息验证:对收集到的信息进行交叉验证,确保准确性和时效性
- 工具选择:根据目标环境选择合适的工具,避免使用已被广泛检测的工具
- OPSEC意识:使用匿名网络、临时环境进行操作,防止溯源
常用工具
| 工具名称 | 用途 | 平台 |
|---|---|---|
| 专用收集工具 | At (Linux)相关操作 | 全平台 |
| 信息分析工具 | 对收集到的数据进行分析和整理 | 全平台 |
注意事项
- 仅在授权范围内使用At (Linux)技术
- 注意操作的隐蔽性,避免被蓝队发现
- 记录操作日志,用于后续分析和报告编写
蓝队视角
检测要点
- 异常信息收集行为:监控来自内部系统的异常数据查询和收集行为
- 可疑工具使用:检测与At (Linux)相关的工具在内部网络中的使用
- 异常网络流量:监控对外部信息收集平台的可疑网络连接
- 权限异常:关注非授权用户的信息收集和查询行为
监控建议
- 部署信息收集行为的检测规则
- 建立基准行为模型,及时发现异常
- 定期审计敏感信息的访问记录
避坑指南
红队新手常见错误:一上来就找内核漏洞提权。
检测建议
网络层检测
检测方法: 监控与At (Linux)相关的网络流量特征
具体规则/命令示例:
# 监控异常DNS查询
tcpdump -i eth0 port 53 | grep -E "可疑域名"
主机层检测
Windows事件ID:
- 事件ID 4688:可疑进程创建
- 事件ID 4104:PowerShell脚本块日志
Linux日志:
- 日志文件:
/var/log/syslog - 关键字段:可疑命令执行
用人话说: Linux的at命令允许用户在指定时间执行一次性任务。攻击者如果获得了低权限shell但该用户在/etc/at.allow中或被/etc/at.deny放行,可以用echo "chmod +s /bin/bash" | at now + 1 minute让系统在1分钟后以root权限执行命令(如果atd服务以root运行)。更常见的是,攻击者通过写权限修改/etc/cron.allow或利用配置错误让at任务以更高权限执行。
Sigma规则示例:
title: Suspicious At (Linux) Activity
status: experimental
description: Detects potential At (Linux) behavior
logsource:
category: process_creation
product: windows
detection:
selection:
Image|endswith: '\\可疑工具.exe'
condition: selection
level: medium
tags:
- attack.T1053/002
应用层检测
Sigma规则示例:
**用人话说:**在实际环境中,需要结合上下文判断异常行为。建议针对本技术的特征指标设置告警阈值,并关联多个数据源进行交叉验证。
yaml title: Detected Suspicious Activity - T1053.002 status: experimental description: Detects potential T1053.002 related suspicious behavior logsource: category: process_creation product: windows detection: selection: EventID: 4688 condition: selection level: medium tags:
- attack.T1053.002
缓解措施
优先级1:关键措施
措施名称: 敏感信息保护
具体实施步骤:
- 识别和分类组织内的敏感信息
- 对敏感信息实施访问控制和加密
- 部署信息泄露防护(DLP)解决方案
优先级2:重要措施
措施名称: 员工安全意识培训
具体实施步骤:
- 定期开展信息安全意识培训
- 教育员工识别社交工程攻击
- 建立信息报告和响应机制
优先级3:建议措施
措施名称: 安全配置加固
具体实施步骤:
- 限制公开可访问的系统信息
- 配置合适的日志记录和告警策略
- 定期进行安全评估和渗透测试
动手实验
⚠️ 重要提示:所有实验必须在隔离的实验室环境中进行,禁止对未授权的真实系统进行测试。
实验环境准备
推荐靶场/实验平台:
| 平台名称 | 类型 | 难度 | 链接 |
|---|---|---|---|
| 本地虚拟机 | 虚拟环境 | 初级 | 本机搭建 |
| TryHackMe | 在线靶场 | 初级 | https://tryhackme.com |
所需工具:
- 根据具体技术需求准备相应工具
环境搭建:
# 准备隔离的实验环境
# 具体命令根据实验内容而定
实验1:基础实践(初级)
实验目标: 理解和练习At (Linux)的基本操作
实验步骤:
- 在隔离环境中搭建实验系统
- 按照技术描述执行基本操作
- 观察和记录实验现象
预期结果: 成功完成At (Linux)的基本操作
学习要点: 理解At (Linux)的原理和操作方法
术语解释
| 术语 | 英文原名 | 通俗解释 |
|---|---|---|
| At (Linux) | At Linux | At (Linux)的基本概念和操作方法 |
| 侦察 | Reconnaissance | 收集目标信息的过程,为后续攻击做准备 |
| OPSEC | Operational Security | 操作安全,保护行动信息不被对手发现 |
被引用情况
以下父技术文档引用了本子技术: