IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 蓝队应急响应之Linux篇 -> 正文阅读

[系统运维]蓝队应急响应之Linux篇

LINUX

分析敏感文件或目录

TMP临时目录

tmp目录是一个放置临时文件的目录,普通用户对其目录内的文件都具有读写的权限,因此tmp目录通常用于提权

请添加图片描述


开机自启动文件分析

查看自启动文件:ls -alh /etc/init.d/ (-h显示文件大小)
请添加图片描述
请添加图片描述
请添加图片描述


查询敏感文件

以下是常用到的find命令:

查询一些敏感的文件后缀名, 例如php, aspx, jsp等webshell常用后缀

find ./ mtime 0 name "*.php"   //查找24小时内修改过的指定文件 mtime(修改时间) 0表示24小时
find ./ ctime -2 name "*.php"  //查找72小时内生成的指定文件  ctime(创建时间) 
find ./ iname "*.php*" -perm 777   //查找权限为777的指定文件  iname表示不区分大小写 perm表示权限

请添加图片描述

分析可疑进程

分析网络连接

常用命令:

netstat -pantl ,列出TCP相关的服务连接。

netstat -pantl | grep "ESTABLISHED",查看已建立的TCP服务连接。


以下是netstat的使用参数

-a (all)显示所有选项,默认不显示LISTEN相关
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。
-l 仅列出有在 Listen (监听) 的服務状态

-p 显示建立相关链接的程序名
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计
-c 每隔一个固定时间,执行该netstat命令。

对进程文件分析

以下是常用到的linux命令

  • ps -aux :列出所有的进程

  • ps -aux | grep pid:列出指定pid的进程

  • lsof -i:端口号:列出指定端口的进程

  • kill -9 pid : 关闭指定pid进程

请添加图片描述

请添加图片描述


分析异常登录

在linux的操作都会被记录在系统日志中,可以通过查询日志信息判断是否有异常登录

last -i | grep -v 0.0.0.0 : 查询非本地登录的日志信息,-i表示IP

请添加图片描述


w命令 : 实时查看登录日志

请添加图片描述

分析异常用户

提权root用户实操

新建用户,随后修改用户uid为0, 以此获取root权限

useradd test

passwd test {输入密码}

vim /etc/passwd    //修改用户uid为0

请添加图片描述

请添加图片描述


排查异常用户

grep "0:0" /etc/passwd : 查找root权限用户

请添加图片描述


ls -l /etc/passwd : 查看用户文件最近修改时间

请添加图片描述


awk -F: '$3==0 {print $1}' /etc/passwd : 查看root权限用户

请添加图片描述

请添加图片描述


awk -F: '$2=="!" {print $1}' /etc/shadow : 查看空密码用户

请添加图片描述


禁用以及删除可疑账号

usermod -L user   //禁用帐号,帐号无法登录

userdel user    //删除

userdel -r user   //将删除user用户,并且将/home目录下的user目录一同删去

分析历史命令

linux系统之前执行的命令会保存在/root/.bash_history文件中,以下是查看history的命令。

cat /root/.bash_history

请添加图片描述

history

请添加图片描述


常见的可疑历史命令: wegt(远程下载)、ssh(连接内网)、tar zip(压缩打包)

特别要注意, 有些黑客还会修改你的系统命令,例如把netstat命令给改成别的了,从而导致无法使用此命令


分析计划任务

crontab命令排查计划任务

crontab -l    //列出计划任务

crontab -r	  //删除计划任务

crontab -e    //编辑计划任务

请添加图片描述

请添加图片描述


anacron命令实现异步定时任务调度

vi /etc/anacrontab  

@daily   10   example.daily  /bin/bash /home/shell.sh  //每天机器开机十分钟之后运行shell.h。

more命令查询计划任务目录

使用more命令查询以下目录,重点查询/etc/cron.d/*目录

/var/spool/cron/* 

/etc/crontab

/etc/cron.d/*

/etc/cron.daily/* 

/etc/cron.hourly/* 

/etc/cron.monthly/*

/etc/cron.weekly/

/etc/anacrontab

/var/spool/anacron/*

分析自启动项

设置开机自启动

ls /etc/init.d/ 查看开机自启动文件

update-rc.d apache2 enable 设置apache2服务开机自启动

通过创建软连接设置自启动,将脚本文件放在/etc/init.d目录下,然后在/etc/rc.d/rc*.d中建立软连接即可。

S100ssh是sshd脚本的软连接,S表示运行级别加载时自启动,K则表示加载时需关闭

ln -s /etc/init.d/sshd /etc/rc.d/rc3.d/S100ssh   

ln -s /etc/init.d/sshd /etc/rc.d/rc3.d/K100ssh

关闭开机自启动

update-rc.d apache2 disable 取消apache2服务开机自启动


排查启动项文件

more /etc/rc.local 

more /etc/rc.d/rc[0~6].d

ls -l /etc/rc.d/rc3.d/

分析服务自启动项

修改服务自启动

1、使用chkconfig命令(红帽linux)

命令参数:chkconfig [--level 运行级别][独立服务名][on|off]

chkconfig –level  2345 httpd on  //自动启动http服务

chkconfig httpd on  //若没填写level参数,默认值为2345

2、修改/etc/rc.local文件,加入 /etc/init.d/httpd start

请添加图片描述

3、使用ntsysv命令管理自启动,该命令适用于红帽linux


入侵排查

chkconfig --list   //查看服务自启动状态,可以看到所有的RPM包安装的服务

ps aux | grep crond    //查看当前服务

查看3与5级别下的启动项

chkconfig --list | grep "3:启用|5:启用"  //中文环境下


chkconfig --list | grep "3:on|5:on"  //英文环境下

$PATH变量异常

$PATH就是环境变量,分析是否有异常环境变量

echo $PATH : 输出环境变量目录

请添加图片描述

export PATH=$PATH:/usr/lol/theshy 添加环境变量,临时有效,重启无效

请添加图片描述

vim /etc/profile,随后添加export PATH=$PATH:/usr/lol/faker,再source /etc/profile。这个是永久修改$PATH变量的方法

请添加图片描述

请添加图片描述


系统日志分析

日志存放位置

日志默认存放位置:/var/log/

查看日志配置:more /etc/rsyslog.conf

日志文件说明
/var/log/cron记录定时任务日志
/var/log/cups记录打印信息日志
/var/log/mailog记录邮件信息日志
/var/log/message记录系统重要信息日志,若出问题,首先检查该日志
/var/log/btmp记录错误信息日志,二进制文件,要用lastb命令查看
/var/log/lastlog记录所有用户最后一次登录时间日志,二进制文件
/var/log/wtmp记录所有用户的登录、注销信息,同时记录系统的启动、重启等事件,是个二进制文件
/var/log/utmp记录当前登录用户信息,会随着用户注销而不断变化,只能通过w,who,users命令查看

日志分析技巧

注意:Centos系统登录日志记录在/var/log/secure,Ubuntu系统登录日志记录在/var/log/auth.log。

1、分析爆破root账户的ip相关信息

查看爆破root用户的IP数量

grep "Failed password for root" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more 

查看爆破的IP以及时间

grep "Failed password" /var/log/secure|grep -E -o "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)"|uniq -c

查看爆破所用到的用户名字典

grep "Failed password" /var/log/secure|perl -e 'while($_=<>){ /for(.*?) from/; print "$1\n";}'|uniq -c|sort -nr

2、分析登录成功的ip

查看所有的登录成功的ip

grep "Accepted " /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more

查看登录成功的ip,用户及日期

grep "Accepted " /var/log/secure | awk '{print $1,$2,$3,$9,$11}'

3、查看用户操作的日志

grep "useradd" /var/log/secure   //查看“useradd”命令的操作日志

grep "userdel" /var/log/secure   //查看“userdel”命令的操作日志

rkhunter工具使用

rkhunter工具会自动为我们排查linux系统的加固安全隐患

安装工具:apt-get install rkhunter

常用命令:rkhunter --check --sk //–sk表示自动补全

请添加图片描述
请添加图片描述


安全加固

阻止非root用户登录

touch /etc/nologin

给密码文件设置权限

chmod命令的使用可以看我linux专栏的文章,这里不过多解释

chmod 644 /etc/passwd

chmod 600 /etc/shadow

chmod 644 /etc/group

修改文件默认权限

umask=027

给日志或其他重要文件加固

chattr +a /var/log/messages    //设置此文件只能追加数据

chattr +i /var/log/messages.*  //设置文件不能被修改且删除

chattr +i /etc/shadow          

chattr +i /etc/passwd 

chattr +i /etc/group 

屏蔽banner信息

vi /etc/ssh/sshd_config   将banner设置成NONE

请添加图片描述


增强秘钥

authconfig --passalgo=sha512 --update  //启用 SHA512 替代 MD5加密

限制登录次数

auth required pam_tally2.so deny=3 unlock_time=5 even_deny_root root_unlock_time=120  
//登录三次后锁定账户,普通用户5秒后解锁,root用户120秒后解锁

设置历史命令最大保存条数

vim /etc/profile,修改HISTSIZE为20(默认是1000)

请添加图片描述

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-08-19 19:40:15  更:2022-08-19 19:43:24 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 10:05:53-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码