玄机应急响应上
应急响应:
应急响应-webshell查杀:
靶机账号密码 root xjwebshell |
当你启动环境的一瞬间(你就没了0.5元),我这里使用的是finalshell,他会给你一些数字什么的,比如:44.444.444.44 /10.10.10.10
你使用finalshell连接,名称随便填,主机:44.444.444.44 账号和密码root xjwebshell 然后连接成功。就进入了终端
首先cd进入var/www/html(记得把html这个文件给他下载了)
文件作用:
用途与作用:它是 Linux 系统中存放 Web 应用程序文件的默认目录之一。通常,当搭建一个基于 Linux 的 Web 服务器时,如使用 Apache 或 Nginx 等服务器软件,会将网站的所有静态文件(如 HTML、CSS、JavaScript 文件)以及动态脚本(如 PHP、Python 脚本等)放置在这个目录下,以便 Web 服务器能够正确地读取和处理这些文件,并将相应的网页内容展示给访问者。安全风险与关注点 |
因此这个文件是非常重要 然后根据题说黑客留下了后门,也就是小🐎,然后到这个文件夹里面执行linux命令查看后缀是php以及含有eval的文件
find ./ -name "*.php" | xargs grep "eval(" |
发现回显出来 gz.php 和shell.php(刚才ls看的时候看他就像一个小🐎) 和 .Mysqli.php
然后一个个查看发现gz.php里面注释好像flag(应该是),然后看题说看他是哪个工具的shell 使用,(然后和lww以及h1php0q出去吃饭,回来上坡的时候和lww成为六驱驱动了)然后这个我去我那个渗透工具那看了看发现是哥斯拉,ok了,然后把html放到d盾上面扫一下发现没有.Mysqli.php,那这个肯定就是隐藏的shell了,然后在d盾上面还出来一个top.php,那这个应该就是最后的那个了
应急响应-Linux日志分析:
账号root密码linuxrz |
对于linux日志的话要先看他的系统版本因为不同版本的 Linux 系统在功能、配置和日志记录方式上可能存在差异。
命令(通过lsb_release 命令查询操作系统版本(可以与uname -a
配合使用)):
lsb_release -a |
发现是debian,根据题目描述推断发现是查询ssh相关日志
日志文件 |
---|
/var/log/cron 记录与系统定时任务相关的日志 |
/var/log/cups/ 记录打印信息的日志 |
/var/log/dmesg 记录了系统在开机时内核自检的信息。也可以使用dmesg命令直接查看内核自检信息 |
/var/log/btmp 记录错误登陆的日志。这个文件是二进制文件,不能直接用Vi查看,而要使用lastb命令查看。命令如下:[root@localhost log]#lastb root tty1 Tue Jun 4 22:38 - 22:38 (00:00) #有人在6月4日22:38便用root用户在本地终端1登陆错误 |
/var/log/lasllog 记录系统中所有用户最后一次的登录时间的日志。这个文件也是二进制文件。不能直接用Vi查看,而要使用lastlog命令查看 |
/var/log/maillog 记录邮件信息的日志 |
/var/log/messages 它是核心系统日志文件,其中包含了系统启动时的引导信息,以及系统运行时的其他状态消息。I/O错误、网络错误和其他系统错误都会记录到此文件中。其他信息,比如某人的身份切换为root,已经用户自定义安装软件的日志,也会在这里列出。 |
/var/log/secure 记录验证和授权方面的信息,只要涉及账户和密码的程序都会记录,比如系统的登录、ssh的登录、su切换用户,sudo授权,甚至添加用户和修改用户密码都会记录在这个日志文件中 |
/var/log/wtmp 永久记录所有用户的登陆、注销信息,同时记录系统的启动、重启、关机事件。同样,这个文件也是二进制文件。不能直接用Vi查看,而要使用last命令查看 |
/var/tun/ulmp 记录当前已经登录的用户的信息。这个文件会随着用户的登录和注销而不断变化,只记录当前登录用户的信息。同样,这个文件不能直接用Vi查看,而要使用w、who、users等命令查看 |
在debian中,ssh登录日志通常保存在/var/log/auth.log
.
我们用grep "sshd:" /var/log/auth.log
来读取文件发现只能读取到我们登录后的数据,查看/var/log/
发现存在点auth.log.1
,读取为发现题目描述相关联的日志。
问题一:在爆破root账号日志会出现Failed password for root from
+ip的字段,我们可以利用文档查找功能手动筛选出来。
同时我们也可以利用linux命令来提取
cat /var/log/auth.log.1 | grep -a "Failed password for root from" | awk '{print $11}' | sort | uniq -c | sort -nr | more |
也同样查询到三个ip
4 192.168.200.2 |
按照顺序排序flag{192.168.200.2,192.168.200.32,192.168.200.31}
二:同理,爆破root账号爆破成功的ip会在日志出现Accepted password for root from
+ip的字段。
cat /var/log/auth.log.1 | grep -a "Accepted password for root from" | awk '{print $11}' | sort | uniq -c |
可得:flag{192.168.200.2}
三:在ssh连接的用户名不存在时会在日志“Failed password for invalid user ”+用户名的记录于是匹配得到(就是爆破字典中字典的内容):
cat /var/log/auth.log.1 | grep -a "Failed password for invalid " | awk '{print $11}' | sort | uniq -c |
由于 存在“ Failed password for invalid user from” 出现form其实为” “(但flag没有包含这个),同时“root“登录时提示”Failed password for root “要各外添加。
所以答案为:
flag{user,hello,root,test3,test2,test1} |
四:这个是看你192.168.200.2 爆破了几次
cat /var/log/auth.log.1 | grep -a "Failed password for root from" | awk {'if($11=="192.168.200.2")print $11}' | sort | uniq -c | sort -nr | more |
五:后门用户是指在系统中被恶意创建或修改的用户账户,目的是为了绕过正常的安全检查和控制,以便攻击者可以随时访问系统。这种用户通常是由黑客或恶意软件创建的,用于在未来的攻击中保持对系统的访问权限。首先在日志/var/log/auth.log.1
用 grep
命令搜索与创建用户的关键字,如 new user
。 查看新建用户,命令如下:
cat /var/log/auth.log.1 | grep -a "new user" |
登录成功的IP只有192.168.200.2,那么第二条信息肯定就不是了,那就是test2了