玄机蓝队靶场_应急响应_01:linux日志分析
个人感觉这个靶场主要考验对linux的命令的基础掌握,对日志路径的基本了解。
一:解题
(1)ssh连接靶场,先用命令lsb_release -a看看是什么系统。然后发现是Debian GNU/Linux 10 (buster),不太熟悉,结合AI,了解到linux系统日志基本是在/var/log路径,结合搜索,登录相关日志基本上在auth和secure文件中,但是debian没有secure日志。
cd /var/log
ls -al
##发现两个文件auth.log和auth.log.1,.1肯定是日志备份文件。
##又因为auth.log只有本机连接靶机的记录,所以应该看auth.log.1,
##原本应该很顺利对auth.log.1文件进行grep搜索,结果莫名其妙报错说二进制文件不支持,
##后面看别人WP没有这个问题好像,在这上面卡了挺久
##结合AI找到了解决办法:
xxd -p ./auth2.log | tr -d '\n' | sed 's/../& /g' | xxd -r -p | tr -cd '\11\12\15\40-\176' > ascii_output.txt
##把二进制变成ASCII编码保存,然后再cat再grep就没事了。
##查看对root爆破的ip的命令:
grep -E "root" ./ascii_output.txt | sort | uniq -c | sort -nr
##或者这个
grep -E "pam_unix\(sshd:auth\): authentication failure" ./ascii_output.txt | sort | uniq -c | sort -nr
(2)这个就一个,简单
(3)这个账户名字典卡了半个多钟,
test1,test2,test3,user,hello,root
没想到是按照出现频率来排列。
(4)刚开始觉得是19,错了之后意识到IP只算爆破root账户的次数,那就是4.
(5)没用日志分析,直接
cat /etc/passwd
发现两个账户,debian和test2.
正确姿势:
grep -a "new user" auth.log.1
二:收获
(1):了解到自己对linux命令还是不够熟悉:
使用到的命令:
lsb_release -a
xxd -p ./auth2.log | tr -d '\n' | sed 's/../& /g' | xxd -r -p | tr -cd '\11\12\15\40-\176' > ascii_output.txt
grep -E "sshd.*Accepted password|pam_unix\(sshd:auth\): authentication failure" /var/log/auth.log* /var/log/secure* /var/log/auth.log /var/log/audit/audit.log 2>/dev/null | awk '{print $(NF-3)}' | sort | uniq -c | sort -nr
grep -E "root" ./ascii_output.txt | sort | uniq -c | sort -nr
grep -E "pam_unix\(sshd:auth\): authentication failure" ./ascii_output.txt | sort | uniq -c | sort -nr
grep -a "Failed password for root" /var/log/auth.log.1 | awk '{print $11}'| sort | uniq
grep -a "new user" auth.log.1
对于grep命令:
-E 用于扩展正则表达式,允许更复杂的模式匹配。
-a 用于将二进制文件视为文本,确保能够读取和处理其中的文本行。(直接代替那个xxd重新ASCII编码了)
对于uniq:
-c:输出每一行及其出现的次数。
对于sort
-n:表示按照数字进行排序。这个选项会将输入的内容当作数字进行排序,而不是字母或字符的排序。
-r:表示以递减(降序)顺序进行排序。默认情况下,sort 是按升序排序的,加上 -r 选项后,会以相反的顺序排列。
另外还有:
awk '{ print $1, $3 }' file.txt ##打印第1和第3列
| awk '{print $11}' ##打印对应的第11列
(2)对于linux文件系统结构中日志文件存放路径不清晰:
根目录(/): 所有目录和文件的起始点。根目录包含了整个文件系统的基本结构。
/bin: 存放系统命令(二进制文件)的目录。这里包含了许多用户和系统都需要使用的基本命令,如ls、cp、mv等。
/boot: 存放启动系统所需的文件,包括内核文件和引导加载程序(Bootloader)。
/dev: 包含设备文件,每个硬件设备在这个目录下都有相应的文件表示。
/etc: 存放系统配置文件的目录。这里包含了许多系统的配置文件,如网络配置、用户配置等。
/home: 用户的主目录。每个用户在这个目录下都有一个独立的子目录,用于存放个人文件和配置。
/lib和/lib64: 存放系统和应用程序所需的共享库文件。
/mnt: 用于挂载其他文件系统的临时挂载点。
/opt: 用于存放第三方软件的安装目录。
/proc: 虚拟文件系统,提供了内核和进程的信息,可以通过读取这里的文件获取系统状态。
/root: 超级用户(root)的主目录。
/sbin: 存放系统命令(二进制文件),与/bin类似,不过这里的命令通常是供超级用户使用的。
/tmp: 用于存放临时文件的目录。
/usr: 存放系统用户和系统管理器命令的目录,也包含了一些共享的系统资源。
/var: 存放经常变化的文件,如日志文件、缓存文件等。
其中日志文件路径通常在:
/var/log/auth.log* /var/log/secure* /var/log/auth.log /var/log/audit/audit.log
可以参考:https://mp.weixin.qq.com/s/oYkXES5vXecBJyk64ghxoQ
另外,关于这类好用的日志分析工具,听说有个splunk,没用过,有机会试试。
玄机蓝队靶场_应急响应_01:linux日志分析的更多相关文章
- 6.【应急响应】Linux入侵排查思路
0x01 入侵排查思路 一.账号安全 基本使用: 1.用户信息文件/etc/passwd root:x:0:0:root:/root:/bin/bash account:password:UID:GI ...
- 【应急响应】Linux安全加固
一.补丁管理 1.查看系统信息 uname -a 2.配置yun源 CentosOS 可以直接升级 RHEL系列可以配置使用CentosOS源 3.升级软件包 yum –y update 二.安全工具 ...
- Linux安全事件应急响应排查方法总结
Linux安全事件应急响应排查方法总结 Linux是服务器操作系统中最常用的操作系统,因为其拥有高性能.高扩展性.高安全性,受到了越来越多的运维人员追捧.但是针对Linux服务器操作系统的安全事件也非 ...
- 红蓝对抗 - 蓝队手册(BTFM)(转载)
本文已发表在嘶吼RoarTalk,未经授权,请勿转载! http://www.4hou.com/technology/10173.html 最佳阅读体验版:https://stackedit.io/v ...
- Linux应急响应(三):挖矿病毒
0x00 前言 随着虚拟货币的疯狂炒作,利用挖矿脚本来实现流量变现,使得挖矿病毒成为不法分子利用最为频繁的攻击方式.新的挖矿攻击展现出了类似蠕虫的行为,并结合了高级攻击技术,以增加对目标服务器感染 ...
- Window应急响应(四):挖矿病毒
0x00 前言 随着虚拟货币的疯狂炒作,挖矿病毒已经成为不法分子利用最为频繁的攻击方式之一.病毒传播者可以利用个人电脑或服务器进行挖矿,具体现象为电脑CPU占用率高,C盘可使用空间骤降,电脑温度升 ...
- Linux应急响应入侵排查思路
0x00 前言 当企业发生黑客入侵.系统崩溃或其它影响业务正常运行的安全事件时,急需第一时间进行处理,使企业的网络信息系统在最短时间内恢复正常工作,进一步查找入侵来源,还原入侵事故过程,同时给出解 ...
- Linux应急响应(一):SSH暴力破解
0x00 前言 SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议,主要用于给远程登录会话数据进行加密,保证数据传输的安全.SSH口令长度太短或者复杂度不够,如仅包含数字,或仅包 ...
- Linux应急响应思路详谈
一.主机篇: 1.自动化初筛,建议使用RootkitHunter (1)安装 $sudo wget https://jaist.dl.sourceforge.net/project/rkhunter/ ...
- 最全Linux应急响应技巧 【转】
概述 Linux环境下处理应急响应事件往往会更加的棘手,因为相比于Windows,Linux没有像Autorun.procexp这样的应急响应利器,也没有统一的应急响应处理流程.所以,这篇文章将会对L ...
随机推荐
- 如何查看docker容器的volume挂载情况
准备在docker容器当中编写个日常维护的脚本,但容器里连yum和vim命令都没有,所以就想到通过容器映射在本机的volume里编写脚本这样在容器中不就可以直接用了吗,那么在这之前你首先得知道dock ...
- Ubuntu 22.04扩容LVM空间
今天为了编译ThingsBoard的源代码,发现原来给虚拟机分配的40个G不够用了.于是乎在VMWare Workstation中扩容了40G的磁盘空间.但是此时lvm是不会自动扩容的,因此我们需要手 ...
- Power BI实用技巧:轻松打造专业级甘特图
Power BI实用技巧:轻松打造专业级甘特图 大家好,今天我们要一起探索Power BI中一个既实用又强大的功能--制作甘特图.甘特图以其直观展示项目时间线和任务进度的特点,在项目管理中扮演着重要角 ...
- map端join和reduce端join的区别
MapReduce Join MapJoin和ReduceJoin区别及优化 maptask处理后写到本地,如果再到reduce,又涉及到网络的拷贝. map端join最大优势,可以提前过滤不需要的数 ...
- PromQL全方位解读:监控与性能分析的关键技术
本文全面探索PromQL,从基础语法到高级操作,详细介绍了数据聚合.时间序列分析及内置函数应用,旨在提升用户构建复杂监控策略和性能分析的能力. 关注[TechLeadCloud],分享互联网架构.云服 ...
- CF1800E 题解
发现一个神奇的事实:显然不限制交换次数可以实现交换任意字符. 因此可以直接判断字符集是否相等. 在考虑哪些地方可以交换. 根据题意可知可以交换的区间为 \([1,n - k]\) 以及 \([k + ...
- 2023年台州市初赛Misc
2023年台州市初赛Misc 这是神马 冰蝎流量,找到key <?php @error_reporting(0); session_start(); $key="144a6b22963 ...
- MyBatis xml文件头
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC & ...
- JDK9之后 Eureka依赖
<!--Eureka添加依赖开始--> <dependency> <groupId>javax.xml.bind</groupId> <artif ...
- CvT:微软提出结合CNN的ViT架构 | 2021 arxiv
CvT将Transformer与CNN在图像识别任务中的优势相结合,从CNN中借鉴了多阶段的层级结构设计,同时引入了Convolutional Token Embedding和Convolutiona ...