入侵排查之Linux
目录
1.黑客入侵后的利用思路
2.入侵排查思路
2.1.账号安全
2.1.1.用户信息文件/etc/passwd
2.1.2.影子文件/etc/shadow
2.1.3.入侵排查
2.1.3.1.排查当前系统登录信息
2.1.4.2.查询可以远程登录的账号信息
2.2.历史命令
2.2.1.基本使用
2.2.1.1.root历史命令
2.2.1.2.打开/home各账号目录下的.bash_history,查看普通账号的历史命令
2.2.1.3.历史操作命令清除
2.2.2.入侵排查
2.3.检查异常端口
2.4.检查异常进程
2.5.检查开机启动项
2.5.1.基本使用
2.5.1.1.系统运行级别示意图
2.5.1.3.开机启动配置文件
2.5.1.4.脚本开机自启案例
2.5.2.入侵排查
2.6.检查定时任务
2.6.1.使用crontab创建计划任务
2.6.1.1.基本命令
2.6.1.2.利用anacron实现异步定时任务调度
2.6.2.入侵排查
2.7.检查服务
2.7.1.服务自启动
2.7.1.1.第一种修改方法
2.7.1.2.第二种修改方法
2.7.2.入侵排查
2.8.检查异常文件
2.9.1.linux系统日志默认存放路径
2.9.2.常见服务的日志文件路径
2.9.3.日志分析技巧
2.9.3.1.定位有多少IP在爆破主机的root账号
2.9.3.2.登录成功的IP有哪些
2.9.3.3.增加一个用户kali日志
3.1.Rootkit查杀
3.1.1.chkrootkit
3.1.1.1.下载
3.1.1.2.使用方法
3.1.2.rkhunter
3.1.2.1.下载
3.1.2.2.使用方法
3.2.病毒查杀clamav
3.2.1.下载地址
3.2.2.安装
3.2.2.1.安装方式1
3.2.2.2.安装方式2
3.3.webshell查杀
3.4.linux安装检查脚本
1.黑客入侵后的利用思路
黑客入侵后的利用思路可以包括以下几个方面:
- 篡改网页:查找对应网站首页文件路径、查看文件时间、内容。
- 创建超级用户:查看password、shadow文件时间、内容;查看登录成功时间和不成功事件查看机器当前登录的全部用户;查看机器创建以来登陆过的用户;查看机器所有用户的连接时间(小时);查看历史命令;查看ssh远程连接情况:黑客删除登录日志文件(rm -rf /var/log/secure)、防守者恢复被黑客删除的文件(lsof grep /var/log/secure)
- 挖矿:查询异常进程所对应的执行脚本文件 ,top命令查看异常进程对应的PID
- 内网渗透:攻击者利用防守:反弹shell、植入cs/ms木马;防守思路:查看异常流量;使用tcpdump抓取网络包查看流量情况
2.入侵排查思路
2.1.账号安全
2.1.1.用户信息文件/etc/passwd
检查是否存在异常用户或未知用户。
关注用户权限设置,特别是特权用户(如root)。
root:x:0:0:root:/root:/bin/bash
account:password:UID:GID:GECOS:directory:shell
用户名:密码:用户ID:组id:用户说明:家目录:登陆之后shell
注意:无密码只允许本机登录,不允许远程登录
2.1.2.影子文件/etc/shadow
影子文件存储了用户的加密密码信息。
检查密码字段是否被篡改或存在异常。
注意:直接查看/etc/shadow文件需要root权限,且出于安全考虑,通常不会直接显示密码哈希值。
root:$6$oGLFhf899ckdeMC2p3ZetrE$X485ouEWFSEmSgsWEH78423UD4.kMHx6qgbTqwNVC5oOAouXvcjQSt.Ft7ql1WpkopY0UV9ajBwUt1DpYxTCVvI/:16809:0:99999:7:::
用户名:加密密码:密码最后一次修改日期:两次密码的修改时间间隔:密码有效期:密码修改到期到警告天数:密码过期之后的宽限天数:账号失效时间:保留
2.1.3.入侵排查
2.1.3.1.排查当前系统登录信息
使用who
或w
命令查看当前登录用户。
awk文本处理工具,用于模式扫描和处理语言
who #查看当前登录用户(tty表示本地登录,pts远程登录)
w #查看系统信息,想知道某一时刻用户的行为
uptime #查看登录多久、多少用户、负载
awk -F: '$3==0{print $1}' /etc/passwd
-F来指定分隔符,默认的字段分隔符是任意空白字符(空格或者TAB)
awk的数据字段变量:$0表示整行文本$1表示文本中第一个数据字段$2表示文本中第二个数据字段$n表示文本中第n个数据字段awk的用-F来指定分隔符
awk命令的完整语法:awk ‘BEGIN{commands}pattern{commands}END{commands}’ file1BEGIN是处理数据前执行的命令,END是处理数据后执行的命令,commands指的是awk里 面的子命令,并不是shell中的mkdir、ls等命令
2.1.4.2.查询可以远程登录的账号信息
检查/etc/ssh/sshd_config
文件中的AllowUsers
和DenyUsers
设置
grep -E '^AllowUsers|^DenyUsers' /etc/ssh/sshd_config
awk '/\$1|\$6/{print $1}' /etc/shadow
除root账号外,其他账号是否存在sudo权限,如非管理需要,普通账号应删除sudo权限。
more /etc/sudoers |grep -v "^#|^$" |grep "ALL=(ALL)"
usermod -L user #禁用账号,账号无法登录,/etc/shadow第二栏为!开头
userdel user #删除user用户
userdel -r user #将删除user用户,并且将/home目录下的user目录一并删除
2.2.历史命令
2.2.1.基本使用
2.2.1.1.root历史命令
history
使用history命令查看root用户的历史命令。
2.2.1.2.打开/home各账号目录下的.bash_history,查看普通账号的历史命令
为历史的命令增加登录的IP地址、执行命令时间等信息。将username
替换为具体用户的用户名。
cat /home/username/.bash_history
2.2.1.3.历史操作命令清除
清除当前shell会话的历史记录,要清除所有用户的历史记录,可以删除每个用户主目录下的.bash_history
文件。
history -c #此命令并不会清除保存在文件中的记录,因此需要手动删除.bash_profile文件中的记录
2.2.2.入侵排查
检查历史命令中是否存在异常操作,如未知命令、系统修改命令等
进入用户目录下:
cat .bash_history >> history.txt
2.3.检查异常端口
使用netstat
或ss
命令检查当前系统开放的端口,分析可疑端口、ip、PID
netstat -antlp|more
# 或
ss -tuln
关注非标准端口和未知服务的端口
2.4.检查异常进程
使用ps
命令查看当前系统中的进程。
相关文章:
入侵排查之Linux
目录 1.黑客入侵后的利用思路 2.入侵排查思路 2.1.账号安全 2.1.1.用户信息文件/etc/passwd 2.1.2.影子文件/etc/shadow 2.1.3.入侵排查 2.1.3.1.排查当前系统登录信息 2.1.4.2.查询可以远程登录的账号信息 2.2.历史命令 2.2.1.基本使用 2.2.1.1.root历史命令 2.2.…...

从0开始学习Linux——文件管理
往期目录: 从0开始学习Linux——简介&安装 从0开始学习Linux——搭建属于自己的Linux虚拟机 从0开始学习Linux——文本编辑器 从0开始学习Linux——Yum工具 从0开始学习Linux——远程连接工具 从0开始学习Linux——文件目录 从0开始学习Linux——网络配置 从0开…...

全面介绍软件安全测试分类,安全测试方法、安全防护技术、安全测试流程
一、软件系统设计开发运行安全 1、注重OpenSource组件安全检查和版本更新(black duck) 现在很多云、云服务器都是由开源的组件去搭成的,对于OpenSource组件应该去做一些安全检查和版本更新,尤其是版本管理,定期对在运…...
Leidenアルゴリズムの詳細解説:Pythonによるネットワーク分割の実装
Leidenアルゴリズムの詳細解説:Pythonによるネットワーク分割の実装 目次1. Leidenアルゴリズムの概要2. Python実装例3. グループ分けの結果分析4. なぜこのような分割になるのか5. Leidenアルゴリズムの仕組み6. 実践的な応用例7. 初心者へのアドバイス8. まとめ …...

安当ASP系统:适合中小企业的轻量级Radius认证服务器
安当ASP(Authentication Service Platform)身份认证系统是一款功能强大的身份认证服务平台,特别适用于中小企业。其中,简约型Radius认证服务器是安当ASP系统中的一个重要组成部分。以下是对该系统的详细介绍: 一、主要…...
Vue 组件间传值指南:Vue 组件通信的七种方法
前言 Vue 的组件系统非常强大,允许我们将应用程序拆分成独立且可复用的组件。随着前端开发的复杂性增加,组件间的数据传递和状态管理显得尤为重要。本文将详细介绍几种在 Vue 中常用的组件间传值方法,并结合实际代码示例,帮助您更…...

推荐一个超漂亮ui的网页应用设计
https://andi.cn/download/65211.html...

有什么初学算法的书籍推荐?
对于初学算法的读者,以下是一些值得推荐的书籍: 1、算法超简单:趣味游戏带你轻松入门与实践 作者:童晶 著 推荐理由:本书把趣味游戏应用于算法教学,提升读者的学习兴趣,并通过可视化的图解和动…...
自动化工作流建设指南
🚀 自动化工作流建设指南:CI/CD、Github Actions与自动化测试部署 打造现代化的自动化工作流,提升团队开发效率。今天咱们将深入探讨 CI/CD 最佳实践、Github Actions 实战经验以及自动化测试与部署策略。 📑 目录 CI/CD 最佳实践…...

[免费]SpringBoot+Vue3校园宿舍管理系统(优质版)【论文+源码+SQL脚本】
大家好,我是java1234_小锋老师,看到一个不错的SpringBootVue3校园宿舍管理系统(优质版),分享下哈。 项目视频演示 【免费】SpringBootVue3校园宿舍管理系统(优质版) Java毕业设计_哔哩哔哩_bilibili 项目介绍 随着信息技术的不断发展&…...
SNK施努卡 - 机器人测温取样系统
机械手测温取样系统 有色行业自动化 机器人:机械手测温取样系统是以工业机器人为平台,技术相对成熟稳定,利用机器人的灵活性,自动往测温取样枪上安装探头,自动将探头伸进高温铜水内进行测温取样,自动拆除废…...
goframe开发一个企业网站 验证码17
Go验证码功能实现详解 目录结构 ├── internal │ ├── controller │ │ └── captcha │ │ └── captcha.go │ ├── logic │ │ └── captcha │ │ └── captcha.go │ └── service │ └── captcha.go1. Serv…...

【JavaEE初阶 — 多线程】单例模式 & 指令重排序问题
目录 1. 单例模式 (1) 饿汉模式 (2) 懒汉模式 1. 单线程版本 2. 多线程版本 2. 解决懒汉模式产生的线程安全问题 (1) 产生线程安全的原因 (2) 解决线程安全问题 1. 通过加锁让读写操作紧密执行 方法一 方法二 2. 处理加锁引入的新问题 问题描述 …...
MySQL电商多级分类表设计方案对比
MySQL电商多级分类表设计方案对比 在电商系统中,多级分类是一个常见的需求,用于组织和管理商品类别,合理的设计可以提高系统的性能和可维护性。本文将详细介绍三种不同的多级分类表设计方案,我们将使用宠物分类作为示例数据&…...

网络安全工程师需要知道哪些IPSec的基本原理?
IPSec是一种端到端的安全协议,为IP数据包提供认证、完整性和加密服务。它通过在IP层实现安全功能,确保数据在传输过程中的机密性、完整性和真实性。IPSec广泛应用于VPN、远程访问和企业内部网络通信等领域,是保护互联网通信安全的重要手段。 …...

leetcode 148. 排序链表 中等
给你链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表 。 示例 1: 输入:head [4,2,1,3] 输出:[1,2,3,4] 示例 2: 输入:head [-1,5,3,4,0] 输出:[-1,0,3,4,5]示例 3: …...
动态规划与贪心算法:核心区别与实例分析
动态规划与贪心算法:核心区别与实例分析 动态规划和贪心算法是计算机科学中用于解决优化问题的两种著名方法。它们各自的思路和应用场景有显著的区别,理解这些区别对解决相关问题至关重要。本文将详细探讨这两种算法的最优子结构、解法策略、适用场景&a…...
.NET 公共语言运行时(Common Language Runtime,CLR)
.NET 的公共语言运行时(Common Language Runtime,CLR)是 .NET Framework 和 .NET Core 的核心组件,负责运行和管理 .NET 程序。CLR 提供了一个高效、安全和稳定的执行环境,支持多种编程语言并处理各种系统级的任务。下…...

SpringBoot使用TraceId日志链路追踪
项目场景: 有时候一个业务调用链场景,很长,调了各种各样的方法,看日志的时候,各个接口的日志穿插,确实让人头大。为了解决这个痛点,就使用了TraceId,根据TraceId关键字进入服务器查询…...
YOLO11 旋转目标检测 | OBB定向检测 | ONNX模型推理 | 旋转NMS
本文分享YOLO11中,从xxx.pt权重文件转为.onnx文件,然后使用.onnx文件,进行旋转目标检测任务的模型推理。 用ONNX模型推理,便于算法到开发板或芯片的部署。 本文提供源代码,支持不同尺寸图片输入、支持旋转NMS过滤重复…...
synchronized 学习
学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...

智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql
智慧工地管理云平台系统,智慧工地全套源码,java版智慧工地源码,支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求,提供“平台网络终端”的整体解决方案,提供劳务管理、视频管理、智能监测、绿色施工、安全管…...
React Native在HarmonyOS 5.0阅读类应用开发中的实践
一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强,React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 (1)使用React Native…...

【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例
文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...

Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...
镜像里切换为普通用户
如果你登录远程虚拟机默认就是 root 用户,但你不希望用 root 权限运行 ns-3(这是对的,ns3 工具会拒绝 root),你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案:创建非 roo…...
Nginx server_name 配置说明
Nginx 是一个高性能的反向代理和负载均衡服务器,其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机(Virtual Host)。 1. 简介 Nginx 使用 server_name 指令来确定…...

视频字幕质量评估的大规模细粒度基准
大家读完觉得有帮助记得关注和点赞!!! 摘要 视频字幕在文本到视频生成任务中起着至关重要的作用,因为它们的质量直接影响所生成视频的语义连贯性和视觉保真度。尽管大型视觉-语言模型(VLMs)在字幕生成方面…...
python如何将word的doc另存为docx
将 DOCX 文件另存为 DOCX 格式(Python 实现) 在 Python 中,你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是,.doc 是旧的 Word 格式,而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...

如何在网页里填写 PDF 表格?
有时候,你可能希望用户能在你的网站上填写 PDF 表单。然而,这件事并不简单,因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件,但原生并不支持编辑或填写它们。更糟的是,如果你想收集表单数据ÿ…...