入侵排查之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_history2.2.1.3.历史操作命令清除
清除当前shell会话的历史记录,要清除所有用户的历史记录,可以删除每个用户主目录下的.bash_history文件。
history -c  #此命令并不会清除保存在文件中的记录,因此需要手动删除.bash_profile文件中的记录2.2.2.入侵排查
检查历史命令中是否存在异常操作,如未知命令、系统修改命令等
进入用户目录下:
cat .bash_history >> history.txt2.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过滤重复…...
2024年赣州旅游投资集团社会招聘笔试真
2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...
什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南
文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果 
【Oracle】分区表
个人主页:Guiat 归属专栏:Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...
 
【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...
 
技术栈RabbitMq的介绍和使用
目录 1. 什么是消息队列?2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...
动态 Web 开发技术入门篇
一、HTTP 协议核心 1.1 HTTP 基础 协议全称 :HyperText Transfer Protocol(超文本传输协议) 默认端口 :HTTP 使用 80 端口,HTTPS 使用 443 端口。 请求方法 : GET :用于获取资源,…...
Qt 事件处理中 return 的深入解析
Qt 事件处理中 return 的深入解析 在 Qt 事件处理中,return 语句的使用是另一个关键概念,它与 event->accept()/event->ignore() 密切相关但作用不同。让我们详细分析一下它们之间的关系和工作原理。 核心区别:不同层级的事件处理 方…...
提升移动端网页调试效率:WebDebugX 与常见工具组合实践
在日常移动端开发中,网页调试始终是一个高频但又极具挑战的环节。尤其在面对 iOS 与 Android 的混合技术栈、各种设备差异化行为时,开发者迫切需要一套高效、可靠且跨平台的调试方案。过去,我们或多或少使用过 Chrome DevTools、Remote Debug…...
HTML前端开发:JavaScript 获取元素方法详解
作为前端开发者,高效获取 DOM 元素是必备技能。以下是 JS 中核心的获取元素方法,分为两大系列: 一、getElementBy... 系列 传统方法,直接通过 DOM 接口访问,返回动态集合(元素变化会实时更新)。…...
 
数据结构:泰勒展开式:霍纳法则(Horner‘s Rule)
目录 🔍 若用递归计算每一项,会发生什么? Horners Rule(霍纳法则) 第一步:我们从最原始的泰勒公式出发 第二步:从形式上重新观察展开式 🌟 第三步:引出霍纳法则&…...
