AWD比赛常规套路
作者:Leafer 本文属于Arctic shell原创内容计划文章,转载请注明原文地址!
比赛环境:纯净win10,最新版kali,securecrt或者WinSCP
在进入服务器后应进行的常规操作:
1备份网站文件
2 修改数据库默认密码
3 修改网页登陆端一切弱密码
4 查看是否留有后门账户
5 关闭不必要端口,如远程登陆端口
6 使用命令匹配一句话特性
7 关注是否运行了“特殊”进程
8 权限高可以设置防火墙或者禁止他人修改本目录
1 备份网站
tar -zcvf web.tar.gz /var/www/
2 修改数据库密码
速度战:修改自己数据库的密码,你的即是他人的
使用命令mysql -u root -pxxxx进入数据库
set PASSWORD = password(‘123456’);
如果在不知道数据库密码的情况下,
1 进入/etc/my.cnf,在mysqld 下面增加一行skip-grant-tables
2 保存完之后重启服务。
3 直接输入mysql -u root -p ,最后回车进入数据库,根据流程来修改密码
use mysql; 更改数据库
UPDATE user SET PASSWORD =password(“mima”) WHERE USER = ‘root’; 重置密码
flush privileges; 刷新系统权限相关表
4 删除配置文件中的内容,重启Mysql服务。
3查看是否有弱口令,更改一切弱口令
4 查看是否留有后门账户
查看自己的系统中是否有主办方留下的后门账户。因为用户的UID大于500的都是非系统账号,500以下的都为系统保留的账号,所以查看more /etc/passwd查看是否有后门账户。发现后门账户后userdel 命令删除它。
5 关闭不必要端口,如远程登陆端口
关闭不必要的端口,要求的服务端口不能关
netstat -anp #查看端口被哪个进程占用
kill -9 PID 杀掉进程
如
Netstat- anp | more 查看当前开启了哪些端口
22端口对方开放了sshd服务,进程是4386
使用命令kill 4386杀死进程
如果对方的ssh端口没有关闭的话,你可以使用ssh <-p 端口> 用户名@IP 登陆人家的机器
6 使用命令匹配一句话特性
因为本环境中没有d盾等软件,只能使用命令来查找木马
grep -r --include=*.php '[^a-z]eval($_POST' .
find /var/www/ -type f -name "*.php" | xargs grep "eval(" |more
7 关注是否运行了“特殊”进程
当对方已经通过ssh登入自己系统时,可以netstat -anp |more 查看链接服务的端口号
用kill -9 xxx 杀掉它
一开始进程是4634端口,可当我杀死它后,它自己换端口了,变成了4638,继续杀死4638后才结束了链接,然后关闭22号端口,删除登陆账户,避免他人再次登陆。
8 权限高可以设置防火墙或者禁止他人修改本目录
如果拥有root权限的话(感觉不可能)可以使用chattr -R +i /var/www命令,让所有人包括root都无法对文件夹进行修改删除操作
可以使用lsattr查看此权限
使用chattr -R -i 取消此权限
参考链接:
https://www.anquanke.com/post/id/86984
https://edwardchoijc.github.io/CTF%E7%BA%BF%E4%B8%8BAWD%E7%BB%8F%E9%AA%8C%E6%80%BB%E7%BB%93.html
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 你所不知道的 C/C++ 宏知识
· 聊一聊 操作系统蓝屏 c0000102 的故障分析
· SQL Server 内存占用高分析
· .NET Core GC计划阶段(plan_phase)底层原理浅谈
· .NET开发智能桌面机器人:用.NET IoT库编写驱动控制两个屏幕
· 我干了两个月的大项目,开源了!
· 推荐一款非常好用的在线 SSH 管理工具
· 千万级的大表,如何做性能调优?
· 聊一聊 操作系统蓝屏 c0000102 的故障分析
· .NET周刊【1月第1期 2025-01-05】