常见溯源,反溯源,判断蜜罐手段

常见溯源,反溯源,判断蜜罐手段

  • 1.溯源手段
  • 2.反溯源手段
  • 3.如何判断蜜罐🍯
  • 4.案例:MySQL读文件蜜罐

1.溯源手段

  1. IP地址追踪:通过IP地址追踪可以确定攻击者的地理位置和ISP信息等;通过攻击IP历史解析记录/域名,对域名注册信息进行溯源分析
  2. ID追踪术:搜索引擎、社交平台、技术论坛、社工库匹配
  3. 日志分析:如登录失败、文件访问、网络流量等等。通过日志分析,可以确定攻击者的IP地址、攻击时间、攻击方式等信息
  4. 样本分析:提取样本特征、用户名、ID、邮箱、C2服务器等信息
  5. 流量分析:例如大量的传出流量、疑似数据包嗅探、网络扫描等等
  6. 威胁情报分析:使用威胁情报分析技术,收集、分析和利用公开和私人的威胁情报
  7. 电子邮件头分析:邮件头、邮件源代码中包含了一些关于发送方和接收方的信息,例如IP地址、电子邮件客户端类型等
  8. 数字取证:利用磁盘取证技术,可以分析硬盘中的数据和文件,找到攻击者留下的痕迹和证据
    利用内存取证技术,可以分析内存中的数据和进程
    利用网络取证技术,可以分析网络中的数据包和流量
  9. 蜜罐捕获: 使用蜜罐对攻击者进行诱导捕获

案例一:通过恶意样本分析进行溯源反制

在一次恶意软件攻击事件中,我们发现了一封携带恶意附件的电子邮件。通过对恶意样本的分析,我们提取出了样本的特征、用户名、ID、邮箱等信息。同时,通过对C2服务器的分析,我们发现了攻击者的命令和控制通道。结合这些信息,我们进一步同源分析了其他类似恶意样本,发现了一些共同的特征和手法。根据这些线索,我们成功定位到了攻击者的个人ID和QQ号。最终,我们通过社交平台和相关机构合作,找到了攻击者的真实身份并采取了相应的反制措施

案例二:通过域名解析信息进行溯源反制

在一次DDoS攻击事件中,我们发现攻击流量来自于大量的虚假IP地址。通过对流量的深入分析,我们发现这些虚假IP地址是通过域名解析的方式获得的。于是,我们对攻击IP的历史解析记录进行了溯源分析,发现这些记录与一个域名有关联。进一步查询该域名的注册信息,我们发现该域名是由一个组织注册的。最终,我们定位到了该组织为攻击者的身份并采取了相应的反制措施

案例三:通过IP定位技术进行溯源反制

在一次网络攻击事件中,安全设备报警显示有一台服务器被扫描。通过对日志和流量的分析,发现该服务器的IP地址在短时间内出现了大量的异常请求。为了查明攻击者的真实身份,我们采用了IP定位技术。通过反向查询攻击IP的历史解析记录,我们发现该IP地址与一个代理IP有关联。进一步溯源分析代理IP的注册信息,最终定位到了攻击者的地理位置和真实身份。随后,我们采取了相应的反制措施,包括关闭被攻击的服务器、报警并通知相关机构等


2.反溯源手段

  1. 攻击网络隐匿:流量统一经网关走VPN(网络接入点匿名、途径节点匿名且加密、使用的公网服务器匿名)进出;任何需要交互操作的地方,都需要挂上全局代理
  2. 杜绝安全恶习:所有工作均在虚拟机进行;不同需求(开发、渗透)分配不同虚拟机;绝不使用弱密码;账户混用(比如在项目A中用了一个匿名邮箱,或者其他什么账户,在项目B中继续使用);密码通用
  3. 不要留下蛛丝马迹:杜绝早期目标调研的时候用真实IP去访问;自写工具留下特征值
  4. 小心蜜罐🍯:看起来很多漏洞的站点,有明显的弱密码可以进后台,小心;做任何事之前,使用插件判断是否为蜜罐
  5. 删除日志
    kill <bash process ID> 终止bash进程
    set +o history 不写入历史记录
    unset HISTFILE 清除历史记录的环境变量

3.如何判断蜜罐🍯

1、基于蜜罐指纹的识别

对蜜罐而言会留下属于它独特的指纹信息,所以识别直接部署的开源蜜罐比较简单,使用工具跑已知指纹即可

除了开源蜜罐外,一些商业蜜罐也会留下指纹信息,除了蜜罐的客户端外,蜜罐的管理端也可以通过指纹进行识别

2、基于溯源方式的识别

很多商业蜜罐都会使用各大厂商(如淘宝、百度、京东等)的前端漏洞来获取攻击者的身份信息。该技术主要依靠主流厂商的jsonp或xss漏洞,将这些漏洞积聚成前端的js水坑代码,当用户浏览器解析到这些js请求时,跨域获取该用户在这些主流应用中的指纹信息,从而达到身份溯源的目的(chrome80以后不行了)

实际执行jsonp或xss的请求是在用户侧进行的,这个原生请求是无法做加密或混淆的。当我们发现在访问某个应用系统时有大量对各大主流厂商的ajax请求时大概率就是遇到蜜罐了

3、基于配置失真的识别

蜜罐系统为了捕获攻击行为,会让自己变得“特别容易被识别”,从而导致配置失真,通常该类蜜罐会在server、header、title等字段里会返回大量的特征信息,如从server里发现一个系统既是iis也是apache的,这在逻辑上就是不合理的,是典型的蜜罐特征

除此之外,蜜罐系统开放的端口也可能导致配置失真。如一台服务器同时开放了22和3389端口,或是8080端口显示windows,而8081显示ubuntu。以上都是不符合常理的端口配置

4、检测虚拟机特征

我们可以通过检测虚拟机特征来初步判断是否处在一个蜜网内

  • VM虚拟机常用mac地址前缀:00-05-69,00-0C-29,00-50-56等
  • 判断 OpenVZ/Xen PV/UML,此方式是一种常见且比较准确的识别虚拟机的方式

5、基于伪造场景的识别

在一些高交互的蜜罐中,为了引诱攻击者对系统进行攻击,蜜罐通常设置的非常真实,不仅贴合业务并且在还在攻击者的一些常用攻击套路上“设坑诱捕”

例如手机号诱捕识别,手机号诱捕主要基于让用户自发输入手机号来获得其真实电话号码,常用的场景来在于短信验证码。使用手机号诱捕的核心思路还是在于如何引诱攻击者使用自身手机号来收取验证码完成系统敏感操作。蜜罐会构造一些特殊的场景来实现反制的隐蔽性,例如故意泄漏陷阱站点的源码文件,然后在源码文件中预设上传漏洞,在上传漏洞的利用条件里加上必须返回短信验证码才能实现成功上传,攻击者按照一套流程走下来后往往会放心戒心,认为这并不是一个蜜罐,为了获取webshell而使用自身的手机号,从而获取到该类信息


4.案例:MySQL读文件蜜罐

在MySQL中LOAD DATA INFILE 语句可以从文本文件中读取行到表中

该功能默认是关闭的,开启之后我们就可以通过如下命令进行文件读取并且写入到表中:

load data local infile 'C:/1.txt' into table test fields terminated by '\n';

在MySQL协议中,客户端本身不存储自身的请求,而是通过服务端的响应来执行操作,也就是说我们如果可以伪造Greeting包和伪造的文件名对应的数据包,我们就可以让攻击者的客户端给我们把我们想要的文件拿过来

过程大致如下:

1、首先我们将Greeting包发送给要连接的客户端,这样如果客户端发送查询之后,我们返回一个Response TABULAR数据包,并且附上我们指定的文件,我们也就完成了整个任意文件读取的过程

2、我们传输这个文件读取的数据包时,需要等待一个来自客户端的查询请求才能回复这个读文件的请求,幸运的是,大多数MySQL客户端以及程序库都会在握手之后至少发送一次请求,以探测目标平台的指纹信息

3、综上,我们可以恶意模拟一个MySQL服务端的身份认证过程,之后等待客户端发起一个SQL查询,之后响应的时候我们将我们构造的Response TABULAR发送给客户端,也就是我们LOAD DATA INFILE的请求,这样客户端根据响应内容执行上传本机文件的操作,我们也就获得了攻击者的文件信息

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/800898.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

书生·浦语大模型-第三节课笔记/作业

笔记 作业 原版 prompt控制节奏&#xff0c;实现类似关键词检索、主题、信息抽取等功能注意这里根据llm返回的topic (prompt: 告诉我这句话的主题&#xff0c;直接说主题不要解释)进行召回检索(CacheRetriever), 并再次让大模型判断query与返回的检索的相关程度. 如果本地检索…

蓝桥杯 子串简写(暴力)

题目&#xff1a;子串简写 代码1&#xff1a; #include<algorithm> #include<iostream> #include<cstring> #include<queue> #include<cmath>using namespace std;char c1,c2; int k; char s[100010]; int a[100010]; int b[100010]; int cnt; …

Nginx服务 高级配置

五、高级配置 1. 网页的状态页 基于 nginx 模块 ngx_http_stub_status_module 实现&#xff0c;在编译安装nginx的时候需要添加编译参数 --with-http_stub_status_module&#xff0c;否则配置完成之后监测会是提示语法错误注意。状态页显示的是整个服务器的状态&#xff0c;而…

关于SpringBoot的配置文件

1 配置的读取顺序 1.1 application配置文件的读取顺序 读取顺序由内而外: (1) - (2) - (3) - (4)&#xff0c;后读取到会覆盖先读取到&#xff0c;所以优先级正好反过来: (4) - (3) - (2) - (1) /optmy-spring-boot-project.jarapplication.yml (1)/configapplicat…

VPS入门指南:理解并有效利用虚拟专用服务器

VPS&#xff0c;即虚拟专用服务器&#xff08;Virtual Private Server&#xff09;&#xff0c;是一种流行的托管服务&#xff0c;它利用虚拟化技术&#xff0c;将一台服务器分割成多个虚拟服务器。每个VPS在一个更大的物理服务器上运行自己的操作系统副本&#xff0c;使用户可…

Python学习之-logging模块及彩色日志详解

前言&#xff1a; Python的logging模块是内建的、功能强大的日志系统&#xff0c;可通过简单的配置&#xff0c;就能满足基本到复杂的日志管理需求。它可以让你以各种方式记录错误、调试信息、以及其他运行时的信息&#xff0c;这些都是应用程序健壯性、可维护性的关键。 1 基…

SpringBoot实现增删改查

Spring Boot 是一个非常流行的 Java 开发框架&#xff0c;它简化了基于 Spring 框架的应用程序的开发过程。下面是一个简单的示例&#xff0c;展示了如何使用 Spring Boot 实现增删改查功能。 首先&#xff0c;你需要确保你的项目中已经添加了 Spring Boot 的依赖&#xff0c;…

分公司=-部门--组合模式

1.1 分公司不就是一部门吗&#xff1f; "我们公司最近接了一个项目&#xff0c;是为一家在全国许多城市都有分销机构的大公司做办公管理系统&#xff0c;总部有人力资源、财务、运营等部门。" "这是很常见的OA系统&#xff0c;需求分析好的话&#xff0…

CTK插件框架学习-服务工厂(06)

CTK插件框架学习-信号槽(05)https://mp.csdn.net/mp_blog/creation/editor/137240105 一、服务工厂定义 注册插件时使用服务工厂注册&#xff0c;使用getService根据调用者插件资源文件内容获取在服务工厂内的对应实现在服务工厂中可以知道是哪个插件正在调用服务工厂懒汉模式…

Day5-Hive的结构和优化、数据文件存储格式

Hive 窗口函数 案例 需求&#xff1a;连续三天登陆的用户数据 步骤&#xff1a; -- 建表 create table logins (username string,log_date string ) row format delimited fields terminated by ; -- 加载数据 load data local inpath /opt/hive_data/login into table log…

开源免费的多功能PDF工具箱

它支持修改PDF、编辑PDF书签、导出PDF书签、导入书签、生成、合并、拆分、提取页面内容、提取图片、OCR 功能介绍: 修改PDF信息&#xff1a;修改文档属性、页码编号、页面链接、页面尺寸&#xff1b;删除自动打开网页等动作&#xff0c;去除复制及打印限制&#xff1b;设置阅读…

SQLite数据库的性能问题并不是单纯地由数据量的大小决定的,而是受到多种因素的综合影响。以下是一些可能导致SQLite性能问题的因素

SQLite数据库的性能问题并不是单纯地由数据量的大小决定的&#xff0c;而是受到多种因素的综合影响。以下是一些可能导致SQLite性能问题的因素&#xff1a; 数据量&#xff1a;当SQLite数据库中的数据量增长到一定程度时&#xff0c;查询、插入和更新等操作可能会变得缓慢。这…

进程替换exec系列介绍

ececl,execlp,execle,execv,execvp //库函数 execve //系统调用 1.execl which ps #include <stdio.h> #include <stdlib.h> #include <unistd.h> int main() {printf("main pid%d\n",getpid());execl("/usr/bin/ps","ps&qu…

.Net HttpClient应用

.NET HttpClient 是一个类型&#xff0c;在 System.Net.Http 命名空间中&#xff0c;用于发送 HTTP 请求和接收 HTTP 响应。它是 .NET 框架和 .NET Core 中用于处理 HTTP 通信的主要工具。HttpClient 提供了一个高级别的 API&#xff0c;用于向 Web 服务发送请求并接收响应&…

数据仓库作业四:第7章 数据的属性与相似性

目录 第7章 数据的属性与相似性作业题 第7章 数据的属性与相似性 作业题 1、设有10个二元属性&#xff0c;3个数据对象的数据集&#xff08;表1&#xff09;。 id A 1 A_1 A1​ A 2 A_2 A2​ A 3 A_3 A3​ A 4 A_4 A4​ A 5 A_5 A5​ A 6 A_6 A6​ A 7 A_7 A7​ A 8 A_8 A8​…

工业通信原理——Modbus-TCP通信C语言程序代码

工业通信原理——Modbus-TCP通信C语言程序代码 前言 简单的Modbus-TCP通信的C语言程序代码示例,包括底层驱动层和应用层。 C语言程序代码详解 底层驱动层(modbus_driver.c): #include <stdio.h> #include <stdint.h> #include <stdbool.h>// 定义Mo…

蓝桥杯 试题 基础练习 十六进制转八进制

资源限制 内存限制&#xff1a;512.0MB C/C时间限制&#xff1a;1.0s Java时间限制&#xff1a;3.0s Python时间限制&#xff1a;5.0s 问题描述   给定n个十六进制正整数&#xff0c;输出它们对应的八进制数。输入格式   输入的第一行为一个正整数n &#xff08;1&…

别再抱怨学鸿蒙没方向了! 这鸿蒙全栈(南北双向)开发学习路线收藏好!

在互联网技术不断发展的现在&#xff0c;鸿蒙操作系统的出现标志着是能技术领域的一次重大突破&#xff0c;鸿蒙作为华为推出的一代操作系统&#xff0c;鸿蒙不仅达代表了自主创新的力量&#xff0c;还因为独特的分布式架构和全场景适配能力而备受关注。随着鸿蒙生态的不断完善…

2024.4.7周报

摘要 在本周阅读的文献中&#xff0c;提出了基于Transformer的GAN模型&#xff0c;GAN的生成器和鉴别器&#xff0c;都是基于Transformer的编码器架构构建的&#xff0c;通过处理图像的方式处理时间序列数据作为该模型的输入。该模型能够生成各种长度的多维时间序列数据&#…

7.1.4 Selenium 爬取京东商品信息实战

目录 1、实战内容 2、思路 3、分析 url 4、开始操作 1、得到 Cookies 2、访问页面&#xff0c;得到 response 3、解析页面 4、存入 MySQL 5、1-3步总代码 1、实战内容 爬取京东笔记本电脑商品的信息(如&#xff1a;价格、商品名、评论数量)&#xff0c;存入 MySQL 中…