Linux 攻击防护基础排查
作者:Zzang
来源:cnblogs
原文:https://www.cnblogs.com/Zzang/p/LinuxHack.html
版权声明:本文为博主原创文章,转载请附上博文链接!
基本网络拓扑图
1. 准备阶段。配置云主机,模拟简单的ssh登录爆破入侵行为
- 步骤一:登录阿里云管理控制台。打开云主机。
- 步骤二:打开VMware,将kali虚拟机的网卡模式设置为NAT,打开kali。打开终端,测试ping云主机,需成功ping通,如下图所示
- 步骤三:通过SSH访问云主机,通过root账户登录云主机,前两次输入错误的密码,第三次输入正确的密码,并成功访问,如下图所示
- 步骤四:创建新用户hack,如下图所示
- 步骤五:为新用户设置密码“123456”,如下图所示
- 步骤六:再次打开一个终端,使用hack用户连接云主机,并输入错误的密码,如下图所示
自行配置hack账户的其他重要权限,或添加其他的账户,如空密码账户等等。并尝试远程登录使用。
2. Linux云主机ECS应急响应排查
1)账号安全
- 步骤一:查看账号,尝试找出异常账号,并分析账号的权限,并记录在实操报告中,如下图所示
- 步骤二:查看影子文件,并分析账号密码的设置情况,并记录在实操报告中,如下图所示
- 步骤三:使用下列命令,进一步分析账号信息,并记录在实操报告中,
- who 查看当前登录用户(tty本地登陆 pts远程登录)
- w 查看系统信息,想知道某一时刻用户的行为
- uptime 查看登陆多久、多少用户,负载who 查看当前登录用户(tty本地登陆 pts远程登录)
- w 查看系统信息,想知道某一时刻用户的行为
- uptime 查看登陆多久、多少用户,负载
2)入侵排查:
- 步骤一:查询特权用户(特权用户,uid为0)
[root@hostserver ~]#awk -F: '$3==0{print $1}' /etc/passwd
- 步骤二:查询可以远程登录的帐号信息
[root@hostserver ~]#awk '/\$1|\$6/{print $1}' /etc/shadow
- 步骤三:除root帐号外,其他帐号是否存在sudo权限。如非管理需要,普通帐号应删除sudo权限
[root@localhost ~]#more /etc/sudoers | grep -v "^#\|^$" | grep "ALL=(ALL)"
- 步骤四:禁用或删除多余及可疑的帐号
- useradd user 创建帐号
- usermod -L user 禁用帐号,帐号无法登录,/etc/shadow第二栏为!开头
- userdel user 删除user用户
- userdel -r user 将删除user用户,并且将/home目录下的user目录一并删除
3)历史命令查询
- 步骤一: 输入命令 history,查看
- 步骤二:查找文件 .bash_history所在目录,进入用户目录下,
输入命令:cat .bash_history >> history.txt, 查看文件history.txt.
或:tailf -200 /home/[指定username]/.bash_history
4)查看端口信息
- 步骤一:使用命令netstat –antlp | more ,如下图所示
5)查看进程信息和cpu等利用信息
- 步骤一:使用ps命令,并查看参考文献,使用ps命令的常用查看命令组合,并将结果记录在实操报告中。
- 步骤二:使用top命令,并查看参考文献,使用top命令的常用查看命令组合,并将结果记录在实操报告中。
6)查看开机启动项、定时任务、服务
- 步骤:查看参考文献,完成上述排查,并将结果记录在实操报告中。
7)查看系统日志
- 步骤一:
- 日志默认存放位置:/var/log/
- 查看日志配置情况:more /etc/rsyslog.conf
- 步骤二:定位有多少IP在爆破主机的root帐号
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有哪些:
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}'
- 步骤六:查看增加用户的日志信息
grep "useradd" /var/log/secure
3. 使用工具协助排查入侵
- 步骤一:安装Rootkit查杀工具。
./chkrootkit使用方法:
wget ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz
tar zxvf chkrootkit.tar.gz
cd chkrootkit-0.52 (先查看安装的目录)
make sense
#编译完成没有报错的话执行检查
./chkrootkit
4,病毒查杀
- 使用工具Clamav
ClamAV的官方下载地址为:http://www.clamav.net/download.html
作者:Zzang
来源:cnblogs
原文:https://www.cnblogs.com/Zzang/p/LinuxHack.html
版权声明:本文为博主原创文章,转载请附上博文链接!
Linux 攻击防护基础排查的更多相关文章
- Linux安全事件应急响应排查方法总结
Linux安全事件应急响应排查方法总结 Linux是服务器操作系统中最常用的操作系统,因为其拥有高性能.高扩展性.高安全性,受到了越来越多的运维人员追捧.但是针对Linux服务器操作系统的安全事件也非 ...
- kindedit编辑器和xxs攻击防护(BeautifulSoup)的简单使用
一.kindedit编辑器 就是上面这样的编辑输入文本的一个编辑器 这也是一个插件.那么怎么用呢? 1.下载:百度kindedit 2.引入: <script src="/static ...
- Ddos攻击防护
Ddos攻击防护 首先我们说说ddos攻击方式,记住一句话,这是一个世界级的难题并没有解决办法只能缓解 DDoS(Distributed Denial of Service,分布式拒绝服务)攻击的主要 ...
- Linux入侵类问题排查思路
深入分析,查找入侵原因 一.检查隐藏帐户及弱口令 检查服务器系统及应用帐户是否存在 弱口令: 检查说明:检查管理员帐户.数据库帐户.MySQL 帐户.tomcat 帐户.网站后台管理员帐户等密码设置是 ...
- Linux应急响应基础
文件排查 敏感目录文件分析 tmp目录 命令目录 /usr/bin /usr/sbin 开机启动项 /etc/init.d /etc/init.d是/etc/rc.d/init.d的软链接 文件时间 ...
- 几十万学费总结出来的Ddos攻击防护经验!
本人从事网络安全行业十余年年.有十年被骗经验.被骗了很多回(都说能防300G,500G,买完就防不住了),本文当然重点给大家说明,ddos攻击是什么,中小企业如何防护,用到成本等. 言归正传 首先我们 ...
- Linux 脚本编写基础
txt去重 http://man.linuxde.net/sort Linux 脚本编写基础 http://www.cnblogs.com/linn/archive/2007/03/05/664 ...
- linux发行版基础目录
linux发行版基础目录 linux 基础目录 linux基础目录 目录 作用 / 根目录,起源 /boot linux引导启动目录 /lib 库目录 /bin 常用内部命令 /sbin 常用内部管理 ...
- LINUX二十个基础命令
LINUX二十个基础命令 一. useradd命令 1.命令格式: useradd 选项 用户名 2.命令功能: 添加新的用户账号 3.常用参数: -c comment 指定一段注释性描述.-d 目录 ...
随机推荐
- spark 学习路线及参考课程
一.Scala编程详解: 第1讲-Spark的前世今生 第2讲-课程介绍.特色与价值 第3讲-Scala编程详解:基础语法 第4讲-Scala编程详解:条件控制与循环 第5讲-Scala编程详解:函数 ...
- iOS Programming NSUserDefaults
iOS Programming NSUserDefaults When you start an app for the first time, it uses its factory settin ...
- Linux下 SpringBoot jar项目后台运行、查看、停用
运行java jar: nohup java -jar **-0.0.1-SNAPSHOT.jar & 查看进程: 采用top或者ps aux命令.一般 如果后台是springboot,jar ...
- CAD嵌套打印(com接口版)
当用户需要打印两个CAD控件的图纸时,可以采用嵌套打印实现.实现嵌套打印功能,首先将两个CAD控件放入网页中,C#代码如下: private void BatchPrintDialog() { MxD ...
- springboot Tomcat connector configured to listen on port 8081 failed to start.
启动报 Tomcat connector configured to listen on port 8081 failed to start. The port may already be in ...
- H5实现调用本地摄像头实现实时视频以及拍照功能
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- vue hash模式和404页面的配置
1.设置我们的路由配置文件(/src/router/index.js): { path:'*', component:Error } 这里的path:’*’就是找不到页面时的配置,component是 ...
- NOIP专题复习2 图论-生成树
目录 一.知识概述 二.典型例题 1.口袋的天空 三.算法分析 (一)Prim算法 (二)Kruskal 四.算法应用 1.[NOIP2013]货车运输 五.算法拓展 1977: [BeiJing20 ...
- 笔试算法题(10):深度优先,广度优先以及层序遍历 & 第一个仅出现一次的字符
出题:要求实现层序遍历二元搜索树,并对比BFS与DFS的区别 分析:层序遍历也就是由上至下,从左到右的遍历每一层的节点,类似于BFS的策略,使用Queue可以实现,BFS不能用递归实现(由于每一层都需 ...
- 零基础入门学习Python(5)--闲聊之Python的数据类型
前言 本次主要闲聊一下python的一些数值类型,整型(int),浮点型(float),布尔类型(bool),还有e记法(科学计数法),也是属于浮点型. 数值类型介绍 整型 整型就是我们平时所说的整数 ...