首页 > 系统服务 > 详细

Linux安全攻防:使用TRAP实现持续控制和提权

时间:2021-07-11 14:15:21      阅读:28      评论:0      收藏:0      [点我收藏+]

ATT&CK TRAP技术说明

在ATT&CK中,TRAP属于事件触发执行的一种技术,可以用于持续控制(persistence)和提权(privilege escalation)。
技术分享图片

TRAP语法

trap arg signal
trap command signal
trap ‘action‘ signal1 signal2 signalN
trap ‘action‘ SIGINT 
trap ‘action‘ SIGTERM SIGINT SIGFPE SIGSTP
trap ‘action‘ 15 2 8 20

Linux signal类型和含义

Number SIG     Meaning
0     0        On exit from shell
1     SIGHUP   Clean tidyup
2     SIGINt   Interrupt (CTRL-C)
3     SIGQUIT  Quit
6     SIGABRT  Cancel
9     SIGKILL  Die Now (cannot be trap‘ped)
14    SIGALRM  Alarm Clock
15    SIGTERM  Terminate

示例说明

假如存在以下文件/tmp/a.txt,在接受到CTRL+C信号后,执行删除该文件的操作,则可以在命令行通过TRAP如下设置

$ trap ‘rm /tmp/a.txt‘ SIGINT

完成后按下CTRL+C,会发现/tmp/a.txt文件已经被删除。

TRAP攻击分析

  • 持续控制:攻击者可以将TRAP的command指定为需要执行的恶意脚本,在系统运行过程中发生了相应的信号时,即可触发恶意脚本执行,类似于定时任务,实现恶意脚本持久化
  • 提权:假如普通用户可以编辑所属用户为root的脚本,并在其中加入恶意内容,通过TRAP将该脚本设置为接受到特定信号执行的命令,当信号触发后,将以root权限执行攻击者编写的恶意指令,从而达到提权的目的。

参考

https://attack.mitre.org/techniques/T1546/005/
https://bash.cyberciti.biz/guide/Trap_statement
https://ss64.com/bash/trap.html

Linux安全攻防:使用TRAP实现持续控制和提权

原文:https://www.cnblogs.com/init0ne/p/14998260.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!