背景说明

扫描是一切入侵的基础,通过扫描来发现目标主机是否为活动主机、操作系统是什么版本、开放了哪些服务等。扫描技术纷繁复杂,新的扫描技术也层出不穷,不可能穷举所有扫描技术,下面按入侵步骤对主机扫描、端口扫描和服务扫描技术做一个简要分类与概述。

活动主机扫描可分为两类:1)ICMP echo扫描与Broadcast ICMP扫描;端口扫描也分为两类:1)开放扫描,这类扫描会产生大量的审计数据,容易被对方发现,但其可靠性高(例如TCP connect扫描);2)秘密扫描,这类扫描能有效的避免对方入侵检测系统和防火墙的检测,但这种扫描使用的数据包在通过网络时容易被丢弃从而产生错误的探测信息(例如SYN、FIN、ACK、NULL等扫描);最后一类为针对特定服务扫描,指对特定系统(OS型号与版本)的特定服务(网络服务与服务版本)的特定漏洞进行扫描,现有扫描软件一般都会以插件形式来增加对特定漏洞扫描支持,一旦扫描确认漏洞存在后可直接利用。例如针对WEB服务器的扫描,或针对FTP服务器扫描。

检测思路

不同的扫描技术与扫描方式,有不同的检测方法。但检测的总体思路是一致的,即利用iptables的配置策略来记录日志(具体配置策略请参考检测思路中不同场景的配置),再通过对日志的分析查找来检测可疑的扫描并发出报警。下面检测方案中,针对不同的扫描技术与扫描方式,利用不同的检测方案进行检查。

场景1:ICMP扫描痕迹检查

使用ICMP echo或Broadcast ICMP进行活动主机探测,会被配置了IPTABLES的系统记录在日志中

针对Broadcast ICMP包:

在配置了iptable的系统中,配置如下的日志记录策略:

iptables -A INPUT -p icmp --icmp-type echo-request -j LOG

查找协议类型为ICMP echo request的广播包,若发现此类型包的记录,发出报警。

针对ICMP echo包:

思路1

若能确定许可的IP地址范围,用白名单来发现可疑行为并报警;

思路2

若不能确定IP地址白名单,查找非工作时段(例如深夜)记录,若找到发出相应的可疑行为报警。

场景2:TCP Connect扫描痕迹检查

使用TCP三步握手来探测是否开放相应的端口与服务

思路1

首先维护操作系统与业务系统正常运行所需要开放的端口的白名单,并配置相应的iptables日志记录策略:

iptables -A INPUT -p tcp -m state --state NEW,ESTABLISHED -j LOG

在记录的日志中查找,若日志中记录的端口不在白名单中,发出报警。

思路2

用统计方法检测,分别针对低速扫描(1小时—2天发一个包)和常规扫描(1分钟—1小时会发N个包)有两种设置统计检测的方法。第一种针对常规扫描,若发现一段时间内(建议值为5分钟,可选范围为1—60分钟),来自同一IP地址对不同目标端口的记录超过一定计数阈值(建议值为3,建议范围为>3的值),则报警,以5分钟为步进值持续对日志进行统计查找;第二种针对低速扫描,若一段时间内(建议值为6小时,可选范围1小时—2天),来自同一IP地址对不同目标端口的记录超过一定计数阈值(建议值为3,建议范围为>3的值),则报警,
注:时间阈值和计数阈值的具体值还应根据实际情况设定

场景3:WEB扫描痕迹检查

利用GET请求WEB服务器发现服务器版本、漏洞等信息,进一步利用这些漏洞入侵对linux的WEB服务Apache,这种扫描会在WEB服务器日志access.log中记录,特点明显。即同一个IP持续10分钟每秒产生10多个get请求,很明显的web扫描痕迹。可以用时间阈值(建议值为5分钟,建议范围建议范围为1—1440分钟)与计数阈值(建议值为10,建议范围为>3的值)来过滤该IP的请求日志,分析攻击者是否入侵。另外,对于SQL注入、XSS注入、命令注入和路径遍历扫描可根据日志中的关键字识别潜在的WEB扫描与攻击痕迹。

注:时间阈值和计数阈值的具体值还应根据实际情况设定,且可变更

作者:jz

Linux入侵痕迹检测方案【华为云技术分享】的更多相关文章

  1. 挑战10个最难的Java面试题(附答案)【上】【华为云技术分享】

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/devcloud/article/deta ...

  2. OpenCV图像识别初探-50行代码教机器玩2D游戏【华为云技术分享】

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...

  3. 【我的物联网成长记6】由浅入深了解NB-IoT【华为云技术分享】

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...

  4. 性能达到原生 MySQL 七倍,华为云 Taurus 技术解读【华为云技术分享】

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...

  5. 【华为云实战开发】9.如何进行PHP项目的快速搭建并实现CICD?【华为云技术分享】

    1 概述 1.1 文章目的 本文主要想为研发PHP项目的企业或个人提供上云指导,通过本文中的示例项目 “workerman-todpole”,为开发者提供包括项目管理,代码托管,代码检查,编译构建,测 ...

  6. 华为云·寻找黑马程序员#海量数据的分页怎么破?【华为云技术分享】

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...

  7. AIOps产品与架构浅析【华为云技术分享】

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...

  8. Spring Boot 最流行的 16 条实践解读!【华为云技术分享】

    置顶:华为云618大促火热进行中,全场1折起,免费抽主机,消费满额送P30 Pro,点此抢购. Spring Boot是最流行的用于开发微服务的Java框架.在本文中,将与大家分享自2016年以来笔者 ...

  9. 成为高手前必懂的TCP干货【华为云技术分享】

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...

随机推荐

  1. [考试反思]1007csp-s模拟测试63:朦胧

    别找了原来没有写过叫<朦胧>的我check过了.(慌的一匹) 总算是比较早的改完了一套题. 但是考的是个啥啊... 前两道题都很卡常导致我想到了正解但是都放弃了. 2e8的复杂度怎么可能能 ...

  2. MQ应用之解耦

    简介 消息队列 MQ 既可为分布式应用系统提供异步解耦和削峰填谷的能力,同时也具备互联网应用所需的海量消息堆积.高吞吐.可靠重试等特性. 应用场景 削峰填谷:诸如秒杀.抢红包.企业开门红等大型活动时皆 ...

  3. JDBD连接MySQL中的驱动与时区问题

    1.在进行jdbc与mysql连接的时候应注意,加载驱动的方式根据MySQL版本内容来说 有变化 5.7版本之前: String driver= "com.mysql.jdbc.Driver ...

  4. Docker笔记(十二):Docker Compose入门

    1. Compose简介 Docker Compose是Docker官方的用于对Docker容器集群实现编排,快速部署分布式应用的开源项目.Docker Compose通过docker-compose ...

  5. WordPress 添加title中的logo

    WordPress 添加title中的logo <!--网页标题左侧显示--> <link rel="icon" href="/favicon.png& ...

  6. nyoj 4 ASCII码排序

    ASCII码排序 时间限制:3000 ms  |  内存限制:65535 KB | 难度:2   描述 输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符.   输入 第一 ...

  7. fiddler工具使用大全

    Fiddler基础知识 Fiddler是强大的抓包工具,它的原理是以web代理服务器的形式进行工作的,使用的代理地址是:127.0.0.1,端口默认为8888,我们也可以通过设置进行修改. 代理就是在 ...

  8. Win32 COM组件 x Android Service (二)

    继续上一篇. 如果不使用AIDL(Android Interface Definition Language接口描述语言)编写服务接口的话,(COM组件,CORBA组件,ICE组件以及其它远程调用框架 ...

  9. HTML的标签认识

    <!--      html标签     h1~h6 标题标签(只有1~6,依次减小)     p 段落标签     span 无意义的行标签     div 无意义的块标签     b 加粗 ...

  10. Spring Cloud Alibaba(四)实现Dubbo服务消费

    本项目演示如何使用 Spring Cloud Alibaba 完成 Dubbo 的RPC调用. Spring Cloud与Dubbo Spring Cloud是一套完整的微服务架构方案 Dubbo是国 ...