玄机蓝队靶场_应急响应_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 ...
随机推荐
- podman+openresty+openssl,https双向认证demo测试
前言 暂不讨论https原理,单论配置的话: 1. https单项认证 server: server.crt + server.key client: server_ca.crt 2. https双向 ...
- ComfyUI进阶篇:ComfyUI核心节点(一)
ComfyUI进阶篇:ComfyUI核心节点(一) 前言: 学习ComfyUI是一场持久战.当你掌握了ComfyUI的安装和运行之后,会发现大量五花八门的节点.面对各种各样的工作流和复杂的节点种类,可 ...
- 谈谈你对MVVM开发模式和MVT的理解?
MVVM分为Model.View.ViewModel三者. Model 代表数据模型,数据和业务逻辑都在Model层中定义: View 代表UI视图,负责数据的展示: ViewModel 负责监听 M ...
- tp5 为什么使用单例模式
首先我们要知道明确单例模式这个概念,那么什么是单例模式呢?单例模式顾名思义,就是只有一个实例.作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例, 这个类我们 ...
- CF709B 题解
洛谷链接&CF 链接 本篇题解为此题较简单做法及较少码量,并且码风优良,请放心阅读. 题目简述 给定 \(N\) 个点,在一条数轴上,位置为 \(x_1,-,x_n\),你的位置为 \(p\) ...
- .NET Core 3.x 基于Autofac的AOP缓存
一.依赖包 二.定义一个简单的缓存接口 /// <summary> /// 简单的缓存接口,只有查询和添加,以后会进行扩展 /// </summary> public inte ...
- 软件设计 软件设计模式之SOLID原则
软件设计模式之SOLID原则 By:授客 QQ:1033553122 #单一职责原则(SRP) 定义:任何一个软件模块都只对某一类行为者负责 说明:这里"软件模块",在大部分情况下 ...
- 从DDPM到DDIM(三) DDPM的训练与推理
从DDPM到DDIM(三) DDPM的训练与推理 前情回顾 首先还是回顾一下之前讨论的成果. 扩散模型的结构和各个概率模型的意义.下图展示了DDPM的双向马尔可夫模型. 其中\(\mathbf{x}_ ...
- fragment的查找和移除
FragmentManager fragmentmanger = getSupportFragmentManager(); FragmentTransaction fragmenttransactio ...
- java程序设计期末复习总结&复盘
java复习 java的特点:简单.面向对象.可移植.跨平台.分布式.多线程.稳定安全.高性能 一个数组可以存放许多不同类型的数值. (F) StringBuffer类是线程安全的,StringBui ...