Linux应急响应——知攻善防应急靶场-Linux(1)

文章目录

  • 查看history历史指令
  • 查看开机自启动项
  • 异常连接和端口
  • 异常进程
  • 定时任务
  • 异常服务
  • 日志分析
  • 账户排查
  • 总结

靶场出处是知攻善防
Linux应急响应靶机 1

前景需要:
小王急匆匆地找到小张,小王说"李哥,我dev服务器被黑了",快救救我!!

挑战内容:
黑客的IP地址
遗留下的三个flag


开机后桌面找到题解脚本,终端运行起来即可。

靶机中相关账户密码:
defend/defend
root/defend

题目如下:
在这里插入图片描述

按照自己的思路看能找到多少个flag

查看history历史指令

当前用户是defend
备份一下.bash_history文件
然后查看,没发现异常
在这里插入图片描述
切换root用户查看
然后.bash_history同理也是先备份一份
在这里插入图片描述
发现一个flag:flag{thisismybaby}

然后看历史指令发现他动了rc.local开机自启动,所以断定这里肯定是不对劲的。
那就先顺着思路看开机自启动项

查看开机自启动项

cat /etc/rc.d/rc.lcal
一眼v我50,拿到flag:flag{kfcvme50}

在这里插入图片描述

异常连接和端口

netstat -alntup # 这里肯定没问题,因为我虚拟机是仅主机模式

异常进程

ps -ef 和 top 都可以查看是否有异常进程占用

也是没啥问题
ps -ef
在这里插入图片描述
top

在这里插入图片描述

定时任务

这里本来是到开机自启然后到定时任务的,因为我们history查看历史指令的时候已经发现动过开机自启了所以先去查看开机自启。
这里的 定时任务查看指令如下:
crontab -l #查看定时任务
还可以进入/var/spool/目录中对应查看定时任务。
这里的定时任务没有问题。

在这里插入图片描述

异常服务

查看所有自启动的服务,这里可以跟运维进行沟通是否有异常的,因为自己也看不出哪些是需要和哪些是不需要的,当然排除大佬一眼看出。
下面服务自启中都没有问题。
systemctl list-unit-files --type=service | grep enabled
在这里插入图片描述

日志分析

日志分析就要看他有哪些服务应用。
日志一般都放在/var/log中,直接进去看有哪些相关应用服务日志即可。
当然这一步是可以和运维沟通的哈。
我这里进入/var/log目录后看到有redis,那就直接看redis的日志

查看redis.log后,发现日志记录的是什么时候开启了redis和端口号是啥,还有连接情况,那么这里连接情况就是可以判断是否是黑客的入侵ip地址了。

在这里插入图片描述

看完后,发现redis连接成功了的日志信息包含“ Accepted”,那就筛选一下即可。

cat redis.log | grep ’ Accepted’
可以发现,外部地址连接进来的ip就可能是黑客的ip了。
所以这里记录一下疑似黑客ip为:192.168.75.129
在这里插入图片描述

账户排查

排查是否有黑客进来或者创建了用户,同事在这里也可以排查一下是否有黑客暴力破解ssh。

  • w #查看当前登录进来的用户操作

  • /etc/passwd #查看是否有可疑账号

  • /etc/shadow #查看影子文件是否有问题

  • 过滤特权用户
    查看是否有其他可疑的特权用户
    awk -F: ‘$3==0{print $1}’ /etc/passwd

  • 过滤远程登录用户
    查看是否有其他可疑远程登录用户
    awk ‘/$1|$6/{print $1}’ /etc/shadow


若发现可疑用户,跟运维沟通确认后直接删掉

usermod -L user    禁用帐号,帐号无法登录,/etc/shadow 第二栏为 ! 开头
userdel user       删除 user 用户
userdel -r user    将删除 user 用户,并且将 /home 目录下的 user 目录一并删除

到这里基本没有发现了。

整理一下成果:

flag{thisismybaby}

flag{kfcvme50}

192.168.75.129

还差一个flag,到这里基本没思路了,
由于是找flag,那就使出我的终极大招

find / -type f '*.*' | xargs -i grep 'flag{' {}

直接出来flag了,就问你牛不牛批,三个都出来了,我们前面一顿操作猛如虎,难道还不如一个指令??
其实不是的,这是个耍赖行为,做题目无非是提升自己的实力,所以还是按照正常思维做好,现实中的黑客不会给你写个flag就走了。
在这里插入图片描述

没思路就去看writeup,原来redis.conf文件中还存在一个flag
过滤一下就出来了:cat /etc/redis.conf | grep ‘flag’
flag{P@ssW0rd_redis}
在这里插入图片描述

总结

题解:

192.168.75.129
flag{thisismybaby}
flag{kfcvme50}
flag{P@ssW0rd_redis}

在这里插入图片描述

反思一下为什么没有想到配置文件,给他忽略了,flag藏在里面。
其实仔细想想确实有道理,因为黑客入侵后,基本的应急角度来看,他做的东西也有可能是掩耳盗铃,比如自启动和log日志中记录的一些攻击行为,让人觉得已经没有其他手脚被动过了。
但其实不然,配置文件中留下手脚这种被忽略后,照样能够通过这个后门进来。
一开始还想吐槽一下怎么flag还在配置文件中的,仔细一想,我确实被被摆了一道,配置文件后门没找出来,确实太菜了。。。。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/736583.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

视频格式怎么转换?9 个免费视频转换工具

前 9 款免费视频转换器有哪些?在此视频转换器评论中,我们收集了一些有用的提示并列出了顶级免费视频转换器软件,还找出了适合所有级别(从初学者到专家)的最佳免费视频转换器。 1. Geekersoft免费在线视频转换 最好的免…

【报错】JDBC SQL语句表名报错 解决办法

解决办法 修改检测等级 不是检测有问题吗,那就将idea的检测问题取消掉或者修改检测问题等级,根本问题上我们写的sql语句是一个字符串传过去,只要在mysql查询语句能够正确执行,不要这种检测也罢。

实际项目开发:Spring集成Redis,并实现短信登录功能

redis新手,学了几种基本数据类型,却不知道怎么使用? 总是一边学一边忘? 学会了Redis的大多数使用命令,却不知道如何在项目中使用? 本文将从实际出发,为大家解决这些问题。 我是蚊子码农&#xf…

TikTok账号运营:静态住宅IP为什么可以防封?

静态住宅IP代理服务是一种提供稳定、静态IP地址并可隐藏用户真实IP地址的网络代理服务。此类代理服务通常使用高速光纤网络来提供稳定、高速的互联网体验。与动态IP代理相比,静态住宅IP代理的IP地址更稳定,被封的可能性更小,因此更受用户欢迎…

JAVA学习过程中遇到的问题

前言 记录学习过程中遇见的各种问题。希望对你有帮助。 目录 前言 1、新建maven项目时,archetype项目骨架加载慢 2、maven的pop.xml添加依赖项无法检测到 3、java: 无效的目标发行版: 20 4、idea添加maven依赖太慢 5、CTRLCV复制粘贴太慢 6、Swagger写接口文…

20240621日志:大模型压缩-从闭源大模型蒸馏

目录 1. 核心内容2. 方法2.1 先验估计2.2 后验估计2.3 目标函数 3. 交叉熵损失函数与Kullback-Leibler(KL)损失函数 location:beijing 涉及知识:大模型压缩、知识蒸馏 Fig. 1 大模型压缩-知识蒸馏 1. 核心内容 本文提出在一个贝…

(Amazing!) 通过 vfox 在 Windows 上安装管理多个 Erlang/OTP 和 Elixir 的版本

大概一个多月前, 我写了篇关于如何使用跨平台版本管理工具 vfox 在 Linux 系统下安装管理多个 Erlang/OTP 版本的文章 -> 通过 vfox 安装管理多版本 Erlang 和 Elixir. 文章使用的示范操作系统是 Ubuntu 20.04 Linux 操作系统. 最近 vfox-erlang 和 vfox-elixir 插件的最新…

如何关闭软件开机自启,提升电脑开机速度?

如何关闭软件开机自启,提升电脑开机速度?大家知道,很多软件在安装时默认都会设置为开机自动启动。但是,有很多软件在我们开机之后并不是马上需要用到的,开机启动的软件过多会导致电脑开机变慢。那么,如何关…

xshell使用vi命令:bash:vim:command not found

你们好,我是金金金。 场景 此时我通过xshell客户端连接到了远程的虚拟机。想用vi命令编辑一个文件时,显示:bash: vim: command not found 排查 看报错提示就可以知道,没找到vim命令 解决 使用包管理器 apt 来安装 vim 更新你的软…

springboot+vue+mybatis旅游管理+PPT+论文+讲解+售后

随着人民生活水平的提高,旅游业已经越来越大众化,而旅游业的核心是信息,不论是对旅游管理部门、对旅游企业,或是对旅游者而言,有效的获取旅游信息,都显得特别重要.旅游管理系统将使旅游相关信息管理工作规范化、信息化、程序化,提供旅游景点、旅游线路,旅游新闻等服务本文以jsp…

ubuntu18.0.4安装gradio踩坑记

Collecting pandas (from gradio) Downloading http://mirrors.cloud.aliyuncs.com/pypi/packages/c3/e2/00cacecafbab071c787019f00ad84ca3185952f6bb9bca9550ed83870d4d/pandas-1.1.5-cp36-cp36m-manylinux1_x86_64.whl (9.5MB) 100% |████████████████…

Python学习打卡:day14

day14 笔记来源于:黑马程序员python教程,8天python从入门到精通,学python看这套就够了 目录 day14102、封装三大特性对用户隐藏的属性和行为私有成员使用私有成员 103、封装的课后习题104、继承单继承多继承 105、复写父类成员和调用父类成…

神经网络学习3-卷积层

膨胀卷积,也被称为空洞卷积或扩张卷积,是一种特殊的卷积运算,它在标准卷积的基础上引入了一个额外的超参数,即膨胀率(dilation rate)。这个超参数决定了在卷积核的元素之间插入多少额外的空间。通过这种方式…

图解注意力

图解注意力 Part #2: The Illustrated Self-Attention 在文章前面的部分,我们展示了这张图片来展示自注意力被应用于正在处理单词"it"的一层中: 在本节中,我们将看看这是如何完成的。请注意,我们将以一种试图理解单…

Linux系统编程--软/硬连接

真正找到磁盘上文件的并不是文件名,而是inode。 其实在linux中可以让多个文件名对应于同一个inode。 命令: 软连接:ln -s 原文件名 新文件名 硬链接:ln 原文件名 新文件名 删除链接文件:unlink 文件名执行上面两条命令…

linux 简单使用 sftp 和 lftp命令

目录 一. 环境准备二. sftp命令连接到SFTP服务器三. lftp命令3.1 连接FTP和SFTP服务器3.2 将文件从sftp服务器下载到本地指定目录 四. 通过WinSCP命令行从SFTP服务器获取文件到Windows 一. 环境准备 ⏹在安卓手机上下载个MiXplorer,用作SFTP和FTP服务器 官网: htt…

MySQL数据库(一):数据库介绍与安装

在嵌入式开发中,数据库的重要性体现在高效的数据存储和管理、数据持久化、复杂查询和处理、数据同步和共享、安全性和可扩展性。常见嵌入式数据库包括SQLite、MySQL、LevelDB等,应用于智能家居、工业控制、车载系统和物联网设备,提升了系统功…

网络编程篇:HTTP协议

一.预备知识 在客户端访问服务端时,要用ipport,但是在日常用户访问服务端的时候,并不会直接使用ip,而是使用域名,比如:百度(www.baidu,com)。 …

深度学习11-13

1.神经元的个数对结果的影响: (http://cs.stanford.edu/people/karpathy/convnetjs/demo/classify2d.html) (1)神经元3个的时候 (2)神经元是10个的时候 神经元个数越多,可能会产生…

在C++中,构造器(Builder)模式的思考(《C++20设计模式》及常规设计模式对比)

文章目录 一、前言二、为什么需要Builder Pattern,Builder Pattern到底解决了什么实际问题?为什么不用set()方法?2.1 初学者有那些对象的属性初始化方法呢?2.1.1 构造函数的弊端2.1.1.1 对于属性的初始化只能是固定的顺序 2.1.2 用set()函数初…