攻防演练,作为蓝方,centos的操作系统,怎么查看是不是有隐藏用户,有没有获取权限

本文主要是介绍攻防演练,作为蓝方,centos的操作系统,怎么查看是不是有隐藏用户,有没有获取权限,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在攻防演练中,作为蓝方(防守方),检查 CentOS 操作系统中是否存在隐藏的用户以及是否有未授权的权限获取是非常重要的。以下是一些检查步骤和工具的使用方法,这些可以帮助你确保系统的安全和完整性。

1. 检查系统用户

查看 /etc/passwd 文件

这个文件包含了系统上所有用户的列表。你可以通过以下命令查看:

cat /etc/passwd

这将列出所有用户和它们的信息,包括登录名、用户ID(UID)、组ID(GID)、家目录以及默认的shell。

检查没有登录shell的用户

有些隐藏用户可能没有分配有效的shell,这些通常是系统或服务账户,但也可能是潜在的隐藏用户:

awk -F: '$7 == "/sbin/nologin" {print $1}' /etc/passwd

或者检查 /usr/sbin/nologin/bin/false

awk -F: '($7 == "/sbin/nologin" || $7 == "/bin/false") {print $1}' /etc/passwd

2. 检查用户登录记录

查看当前登录的用户

使用 whow 命令查看当前登录到系统的用户:

who

或者

w

查看最近登录的用户

使用 last 命令可以查看系统最近用户登录的记录:

last

3. 查看系统进程和活动

检查当前运行的进程

使用 ps 命令检查所有运行的进程,并搜索非标准路径或者未知的执行文件:

ps aux

4. 检查特权获取和提升

查看有 root 权限的进程

ps aux | grep '^root'

检查 sudo 权限的历史记录

cat /var/log/secure | grep sudo

5. 检查启动项和服务

未授权的服务或者脚本可能被配置为启动时执行:

systemctl list-unit-files --type=service

检查 /etc/rc.local 和 Cron 任务:

crontab -l
cat /etc/crontab

6. 检查网络活动

查看当前网络连接

使用 netstatss 查看活动的网络连接:

netstat -tulnp

或者

ss -tulnp

7. 使用安全工具

可以使用如 Lynis 或 chkrootkit 这样的安全审计工具进行全面检查:

# Lynis
lynis audit system# chkrootkit
chkrootkit

通过上述步骤,你可以在一定程度上发现潜在的隐藏用户和未授权的权限获取行为。确保定期进行这些检查,以维护系统的安全性。

这篇关于攻防演练,作为蓝方,centos的操作系统,怎么查看是不是有隐藏用户,有没有获取权限的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/912042

相关文章

关于C++中的虚拟继承的一些总结(虚拟继承,覆盖,派生,隐藏)

1.为什么要引入虚拟继承 虚拟继承是多重继承中特有的概念。虚拟基类是为解决多重继承而出现的。如:类D继承自类B1、B2,而类B1、B2都继承自类A,因此在类D中两次出现类A中的变量和函数。为了节省内存空间,可以将B1、B2对A的继承定义为虚拟继承,而A就成了虚拟基类。实现的代码如下: class A class B1:public virtual A; class B2:pu

[职场] 护理专业简历怎么写 #经验分享#微信

护理专业简历怎么写   很多想成为一名护理方面的从业者,但是又不知道应该怎么制作一份简历,现在这里分享了一份护理方面的简历模板供大家参考。   蓝山山   年龄:24   号码:12345678910   地址:上海市 邮箱:jianli@jianli.com   教育背景   时间:2011-09到2015-06   学校:蓝山大学   专业:护理学   学历:本科

【Linux进阶】UNIX体系结构分解——操作系统,内核,shell

1.什么是操作系统? 从严格意义上说,可将操作系统定义为一种软件,它控制计算机硬件资源,提供程序运行环境。我们通常将这种软件称为内核(kerel),因为它相对较小,而且位于环境的核心。  从广义上说,操作系统包括了内核和一些其他软件,这些软件使得计算机能够发挥作用,并使计算机具有自己的特生。这里所说的其他软件包括系统实用程序(system utility)、应用程序、shell以及公用函数库等

Java面试八股之怎么通过Java程序判断JVM是32位还是64位

怎么通过Java程序判断JVM是32位还是64位 可以通过Java程序内部检查系统属性来判断当前运行的JVM是32位还是64位。以下是一个简单的方法: public class JvmBitCheck {public static void main(String[] args) {String arch = System.getProperty("os.arch");String dataM

电脑不小心删除的文件怎么恢复?4个必备恢复方法!

“刚刚在对电脑里的某些垃圾文件进行清理时,我一不小心误删了比较重要的数据。这些误删的数据还有机会恢复吗?希望大家帮帮我,非常感谢!” 在这个数字化飞速发展的时代,电脑早已成为我们日常生活和工作中不可或缺的一部分。然而,就像生活中的小插曲一样,有时我们可能会在不经意间犯下一些小错误,比如不小心删除了重要的文件。 当那份文件消失在眼前,仿佛被时间吞噬,我们不禁会心生焦虑。但别担心,就像每个问题

【操作系统】信号Signal超详解|捕捉函数

🔥博客主页: 我要成为C++领域大神🎥系列专栏:【C++核心编程】 【计算机网络】 【Linux编程】 【操作系统】 ❤️感谢大家点赞👍收藏⭐评论✍️ 本博客致力于知识分享,与更多的人进行学习交流 ​ 如何触发信号 信号是Linux下的经典技术,一般操作系统利用信号杀死违规进程,典型进程干预手段,信号除了杀死进程外也可以挂起进程 kill -l 查看系统支持的信号

ABAP怎么把传入的参数刷新到内表里面呢?

1.在执行相关的功能操作之前,优先执行这一段代码,把输入的数据更新入内表里面 DATA: lo_guid TYPE REF TO cl_gui_alv_grid.CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'IMPORTINGe_grid = lo_guid.CALL METHOD lo_guid->check_changed_data.CALL M

java中查看函数运行时间和cpu运行时间

android开发调查性能问题中有一个现象,函数的运行时间远低于cpu执行时间,因为函数运行期间线程可能包含等待操作。native层可以查看实际的cpu执行时间和函数执行时间。在java中如何实现? 借助AI得到了答案 import java.lang.management.ManagementFactory;import java.lang.management.Threa

操作系统实训复习笔记(1)

目录 Linux vi/vim编辑器(简单) (1)vi/vim基本用法。 (2)vi/vim基础操作。 进程基础操作(简单) (1)fork()函数。 写文件系统函数(中等) ​编辑 (1)C语言读取文件。 (2)C语言写入文件。 1、write()函数。  读文件系统函数(简单) (1)read()函数。 作者本人的操作系统实训复习笔记 Linux

Java研学-RBAC权限控制(八)

九 登录登出 1 登录作用   判断员工是否有权限访问,首先得知道现在操作的人是谁,所以必须先实现登录功能 2 登录流程   ① 提供登录页面,可输入用户名与密码信息,并添加执行登录的按钮。(登录页面不能被拦截)   ② 给按钮绑定点击事件(异步操作,POST请求)   ③ 事件中发送登录请求,使用 AJAX 方式提交。(使用 AJAX 原因:用户体验更好,既可保留用户刚输入的用户名和密码