作者: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,病毒查杀


作者:Zzang

来源:cnblogs

原文:https://www.cnblogs.com/Zzang/p/LinuxHack.html

版权声明:本文为博主原创文章,转载请附上博文链接!

Linux 攻击防护基础排查的更多相关文章

  1. Linux安全事件应急响应排查方法总结

    Linux安全事件应急响应排查方法总结 Linux是服务器操作系统中最常用的操作系统,因为其拥有高性能.高扩展性.高安全性,受到了越来越多的运维人员追捧.但是针对Linux服务器操作系统的安全事件也非 ...

  2. kindedit编辑器和xxs攻击防护(BeautifulSoup)的简单使用

    一.kindedit编辑器 就是上面这样的编辑输入文本的一个编辑器 这也是一个插件.那么怎么用呢? 1.下载:百度kindedit 2.引入: <script src="/static ...

  3. Ddos攻击防护

    Ddos攻击防护 首先我们说说ddos攻击方式,记住一句话,这是一个世界级的难题并没有解决办法只能缓解 DDoS(Distributed Denial of Service,分布式拒绝服务)攻击的主要 ...

  4. Linux入侵类问题排查思路

    深入分析,查找入侵原因 一.检查隐藏帐户及弱口令 检查服务器系统及应用帐户是否存在 弱口令: 检查说明:检查管理员帐户.数据库帐户.MySQL 帐户.tomcat 帐户.网站后台管理员帐户等密码设置是 ...

  5. Linux应急响应基础

    文件排查 敏感目录文件分析 tmp目录 命令目录 /usr/bin /usr/sbin 开机启动项 /etc/init.d /etc/init.d是/etc/rc.d/init.d的软链接 文件时间 ...

  6. 几十万学费总结出来的Ddos攻击防护经验!

    本人从事网络安全行业十余年年.有十年被骗经验.被骗了很多回(都说能防300G,500G,买完就防不住了),本文当然重点给大家说明,ddos攻击是什么,中小企业如何防护,用到成本等. 言归正传 首先我们 ...

  7. Linux 脚本编写基础

    txt去重    http://man.linuxde.net/sort Linux 脚本编写基础 http://www.cnblogs.com/linn/archive/2007/03/05/664 ...

  8. linux发行版基础目录

    linux发行版基础目录 linux 基础目录 linux基础目录 目录 作用 / 根目录,起源 /boot linux引导启动目录 /lib 库目录 /bin 常用内部命令 /sbin 常用内部管理 ...

  9. LINUX二十个基础命令

    LINUX二十个基础命令 一. useradd命令 1.命令格式: useradd 选项 用户名 2.命令功能: 添加新的用户账号 3.常用参数: -c comment 指定一段注释性描述.-d 目录 ...

随机推荐

  1. 一段js实现复制文本内容到剪切板

    <script type="text/javascript"> function copyUrl2() { var Url2=document.getElementBy ...

  2. win7打开网络看不到局域网的其他电脑

    双击打开桌面上的“网络”,在打开的窗口中看不到局域网的其他电脑/计算机.以前都可以看到的.可能是没有开启网络发现的原因,可是我并没有关闭网络发现.不知,怎么回事? Windows7查看网络邻居要开启g ...

  3. jmeter 连接 sqlite 进行压力测试

  4. ios开发介绍

    iOS开发概述 •什么是IOS •什么是IOS开发 •为什么要选择IOS开发 •学习IOS开发的准备   1.什么是iOS   •iOS是一款由苹果公司开发的操作系统(OS是Operating Sys ...

  5. Spring工作原理及其作用

    1.springmvc请所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责负责对请求进行真正的处理工作. 2.DispatcherServlet查询一个或多个Hand ...

  6. cmanformat - 不是命令啦,是个演示文件

    描述 DESCRIPTION cmanformat 是 man pages 格式的演示文件. 由于系统不同会有差异.在 XWindow 下会好些. __________________________ ...

  7. ALTER SEQUENCE - 更改一个序列生成器的定义

    SYNOPSIS ALTER SEQUENCE name [ INCREMENT [ BY ] increment ] [ MINVALUE minvalue | NO MINVALUE ] [ MA ...

  8. E. String Multiplication

    E. String Multiplication time limit per test 2 seconds memory limit per test 256 megabytes input sta ...

  9. Vue之x-template(2)

    将html结构写在一对script标签中,设置type=“x-template” <!DOCTYPE html> <html> <head lang="en&q ...

  10. 小程序调用支付报错:jsapi缺少参数: total_fee

    这种情况通常是因为在调用的时候,package参数有问题导致: wx.requestPayment中package参数必须是package:"prepay_id=wx21********** ...