Linux  入侵检测小结

0x00 审计命令

在linux中有5个用于审计的命令:

  • last:这个命令可用于查看我们系统的成功登录、关机、重启等情况;这个命令就是将/var/log/wtmp文件格式化输出。
  • lastb:这个命令用于查看登录失败的情况;这个命令就是将/var/log/btmp文件格式化输出。
  • lastlog:这个命令用于查看用户上一次的登录情况;这个命令就是将/var/log/lastlog文件格式化输出。
  • who:这个命令用户查看当前登录系统的情况;这个命令就是将/var/log/utmp文件格式化输出。
  • w:与who命令一致。

关于它们的使用:man last,last与lastb命令使用方法类似:

#!bash
last [-R] [-num] [ -n num ] [-adFiowx] [ -f file ] [ -t YYYYMMDDHHMMSS ] [name...] [tty...]
lastb [-R] [-num] [ -n num ] [ -f file ] [-adFiowx] [name...] [tty...]
who [OPTION]... [ FILE | ARG1 ARG2 ]

参数说明:

  1. 查看系统登录情况

    last:不带任何参数,显示系统的登录以及重启情况   last

  2. 只针对关机/重启

    使用-x参数可以针对不同的情况进行查看   
    last -x reboot

  3. 只针对登录

    使用-d参数,并且参数后不用跟任何选项    last -d

  4. 显示错误的登录信息

    lastb

  5. 查看当前登录情况

    who、w

0x01 日志查看

在Linux系统中,有三类主要的日志子系统:

  • 连接时间日志: 由多个程序执行,把记录写入到/var/log/wtmp和/var/run/utmp,login等程序会更新wtmp和utmp文件,使系统管理员能够跟踪谁在何时登录到系统。(utmp、wtmp日志文件是多数Linux日志子系统的关键,它保存了用户登录进入和退出的记录。有关当前登录用户的信息记录在文件utmp中; 登录进入和退出记录在文件wtmp中; 数据交换、关机以及重启的机器信息也都记录在wtmp文件中。所有的记录都包含时间戳。)
  • 进程统计: 由系统内核执行,当一个进程终止时,为每个进程往进程统计文件(pacct或acct)中写一个记录。进程统计的目的是为系统中的基本服务提供命令使用统计。
  • 错误日志: 由syslogd(8)守护程序执行,各种系统守护进程、用户程序和内核通过syslogd(3)守护程序向文件/var/log/messages报告值得注意的事件。另外有许多Unix程序创建日志。像HTTP和FTP这样提供网络服务的服务器也保持详细的日志。

日志目录:/var/log(默认目录)

  1. 查看进程日志

    cat /var/log/messages

  2. 查看服务日志

    cat /var/log/maillog

0x02 用户查看

Linux不同的用户,有不同的操作权限,但是所有用户都会在/etc/passwd /etc/shadow /etc/group /etc/group- 文件中记录;

  1. 查看详细

    • less /etc/passwd:查看是否有新增用户
    • grep :0 /etc/passwd:查看是否有特权用户(root权限用户)
    • ls -l /etc/passwd:查看passwd最后修改时间
    • awk -F: '$3==0 {print $1}' /etc/passwd:查看是否存在特权用户
    • awk -F: 'length($2)==0 {print $1}' /etc/shadow:查看是否存在空口令用户

    注:linux设置空口令:passwd -d username

0x03 进程查看

  1. 普通进程查看

    进程中我们一般使用ps来查看进程;man ps

    • ps -aux:查看进程
    • lsof -p pid:查看进程所打开的端口及文件
  2. 检查隐藏进程

    • ps -ef | awk '{print }' | sort -n | uniq >1
    • ls /proc | sort -n |uniq >2
    • diff 1 2

    注:以上3个步骤为检查隐藏进程

0x04 其他检查

    1. 检查文件

      • find / -uid 0 -print:查找特权用户文件
      • find / -size +10000k -print:查找大于10000k的文件
      • find / -name "..." -prin:查找用户名为...的文件
      • find / -name core -exec ls -l {} \;:查找core文件,并列出详细信息
      • md5sum -b filename:查看文件的md5值
      • rpm -qf /bin/ls:检查文件的完整性(还有其它/bin目录下的文件)
    2. 检查网络

      • ip link | grep PROMISC:正常网卡不应该存在promisc,如果存在可能有sniffer
      • lsof -i
      • netstat -nap:查看不正常端口
      • arp -a:查看arp记录是否正常
    3. 计划任务

      • crontab -u root -l:查看root用户的计划任务
      • cat /etc/crontab
      • ls -l /etc/cron.*:查看cron文件是变化的详细
      • ls /var/spool/cron/
    4. 检查后门

      对于linux的后门检查,网络上有一些公开的工具,但是在不使用这些工具的前提时,我们可以通过一些命令来获取一些信息。

      首先就是检测计划任务,可以参考上面;
      第二:查看ssh永久链接文件:vim $HOME/.ssh/authorized_keys
      第三:lsmod:检查内核模块
      第四:chkconfig --list/systemctl list-units --type=service:检查自启
      第五:服务后门/异常端口(是否存在shell反弹或监听)
      其它:
      ls /etc/rc.d
      ls /etc/rc3.d

Linux 入侵检测小结的更多相关文章

  1. Linux入侵检测工具 - RKHunter

    RKHunter是Linux系统平台下的一款开源入侵检测工具 特点 (1)安装便捷,运行快速 (2)扫描范围全,能够检测各种已知的rootkit特征码.端口扫描.常用程序文件的变动情况检查 主要功能 ...

  2. Linux入侵检测工具

    原文:https://www.cnblogs.com/lvcisco/p/4045203.html 一.rootkit简介 rootkit是Linux平台下最常见的一种木马后门工具,它主要通过替换系统 ...

  3. Linux 入侵检测

    一.检查系统日志 检查系统错误登陆日志,统计IP重试次数 # 这里使用了lastb命令,该命令需要root权限,可以显示所有登陆信息.这里仅仅显示的root用户的,读者可以更具实际情况自行确定,或者直 ...

  4. Linux入侵检测常用命令

    find / -mtime 0 #0代表目前时间,表示从现在开始到24小时以前,有改动过内容的文件全都会被列出来.如果是3天前24小时内,则使用find / -mtime 3 find /etc -n ...

  5. linux入侵检测系统snort安装配置

    队长让俺瞅瞅snort,没想到安装配置都遇到问题...整理下过程,给跟我一样的家伙看看.. 由于本人机器是ubuntu,apt-get 几下就可以了,其实网上有不少这样的文章...之所以还要写就是.. ...

  6. 安全运维之:Linux后门入侵检测工具的使用

    安全运维之:Linux后门入侵检测工具的使用 https://blog.csdn.net/exitgogo/article/details/39547113

  7. Linux主机入侵检测

    检查系统信息.用户账号信息 ● 操作系统信息 cat /proc/version 用户信息 用户信息文件 /etc/passwd root:x:0:0:root:/root:/bin/bash 用户名 ...

  8. Linux 上搭建 Snort+BASE 入侵检测系统

    配置实验环境 由于本人电脑的存储空间不足,无法再承担安装一个虚拟机的开销,因此在阿里云上申请了一个云服务器进行本次实验.服务器配置如下: 1 核 - 2GB 内存 - 40GB 系统盘 操作系统:Ub ...

  9. 入侵检测课设之Libnids开发包

    Libnids开发包介绍     Libnids是一个用于网络入侵检测开发的专业编程接口,它使用了Libpcap所以它具有捕获数据包的功能.同时,Libnids提供了TCP数据流重组功能,所以对于分析 ...

随机推荐

  1. Ubuntu 16.04+GTX970 黑屏无法安装解决方法

    参考http://www.linuxidc.com/Linux/2017-01/139318.htm http://blog.sciencenet.cn/blog-655584-877622.html ...

  2. Mysql服务配置优化

    mysql服务器优化包含 硬件优化.操作系统配置优化(cpu调度.网络.内存.虚拟内存.磁盘io).Mysql服务配置优化(最大连接数.表缓存等.存储引擎).表结构优化.索引优化 总共5个方面. 本片 ...

  3. 【转载】关于nginx以及内核参数的配置

    nginx应用总结(2)--突破高并发的性能优化  原文地址:https://www.cnblogs.com/kevingrace/p/6094007.html 在日常的运维工作中,经常会用到ngin ...

  4. python语法之函数

    函数: 将特定功能代码编写在一个函数里 便于阅读和复用 对一组表达特定功能表达式的封装 使程序模块化 python内置函数: input(),print(),eval()... 函数定义 函数语法格式 ...

  5. 拉格朗日乘子法&KKT条件

    朗日乘子法(Lagrange Multiplier)和KKT(Karush-Kuhn-Tucker)条件是求解约束优化问题的重要方法,在有等式约束时使用拉格朗日乘子法,在有不等约束时使用KKT条件.前 ...

  6. Altera FPGA SoC搭建步骤

    Altera SoC 官方搭建指南: https://rocketboards.org/foswiki/Documentation/EmbeddedLinuxBeginnerSGuide 官方文档中除 ...

  7. linux rpm方式安装mysql

    01.搜索 mysql linux 网盘地址    http://pan.baidu.com/s/1qYOC6cs 02.把下载好的mysql 使用 xftp传到 linux中 software 文件 ...

  8. 关于使用JPA中@Query注解传递表名/视图名参数的问题

    因碰到需要动态查询不同视图的结果,自己尝试使用@Query注解中传递视图名称参数: @Query("select * from ?1") List<Object> ge ...

  9. ffmpeg 视频 转 gif

    将视频 MP4 转化为 GIF ffmpeg -i small.mp4 small.gif 转化视频中的一部分为 GIF ffmpeg -t -ss :: -i small.webm small-cl ...

  10. Linux 测试常用命令

    ls :列出文件 ls -l ls -t  按时间排序 ls -rt 按时间倒序 ls -a  列出所有文件(包括隐藏的) ll : ll = ‘ls -l ’ cd: 进入文件目录 cd 不带目录名 ...