【请求拦截】

1

恶意软件发起恶意域名请求通常也不会fork新的进程。和正常的应用程序一样,恶意软件通常会在其已有的进程上下文中使用网络API来执行DNS查询。这样做更加高效,因为fork新进程会消耗更多的系统资源,并且可能会引起安全软件的注意。
恶意软件通常会尽量避免引起注意,因此它们倾向于使用以下方法之一来发起DNS请求:

直接在应用程序中发起请求:恶意软件可以直接使用标准的网络库函数(如getaddrinfo)在其当前进程中发起DNS请求。

使用系统工具:恶意软件可能会使用系统上已有的工具(如nslookup、dig等)来发起DNS请求,这些工具可能会创建新的进程,但这是工具自身的行为,而不是恶意软件直接使用fork。

异步或后台线程:恶意软件可能会在后台线程中发起DNS请求,这样可以避免阻塞主执行线程,同时保持对系统资源的低消耗。

利用已有的网络连接:如果恶意软件已经建立了与其控制服务器的网络连接,它可能会通过这个已有的连接来发送DNS查询请求,而不是直接与DNS服务器通信。

利用其他进程:在某些情况下,恶意软件可能会注入代码到其他进程中,利用这些进程来发起DNS请求,以隐藏其活动并绕过安全检测。

在所有这些情况中,恶意软件的目标通常是最小化其在系统上的可见性和资源占用,同时执行其恶意活动。因此,除非有特定的技术需求或策略目的,恶意软件通常不会仅仅为了发起DNS请求而fork新的进程。

2

这段话似乎混合了两个不同的概念:拦截恶意域名请求和拦截fork调用。让我们分开来看:

拦截恶意域名请求:
拦截恶意域名请求通常是通过监控DNS查询来实现的。这可以通过网络层的监控工具、防火墙、DNS过滤服务或者本地代理来完成。这些工具会检查发出的DNS请求,并与已知的恶意域名数据库进行比对。如果发现请求的域名是已知的恶意域名,请求可以被阻止,并返回一个错误或者假的IP地址给请求者。

通过preload机制hook fork调用:
这是一个不同的技术,通常用于改变或监控进程创建行为。通过设置LD_PRELOAD环境变量,可以在进程启动时加载一个自定义的共享库。如果这个库提供了一个与fork同名的函数,那么所有对fork的调用都会被重定向到这个自定义函数。在这个自定义的fork函数中,可以实现逻辑来决定是否允许进程分叉,或者在分叉前后执行特定的操作。

将这两个概念结合起来,可能的情况是:

有一个自定义的共享库,它使用LD_PRELOAD来hook进程的创建(fork调用)。
在这个自定义的fork函数中,可能会有逻辑来监控子进程的行为,包括它们发起的DNS请求。
如果监测到子进程试图发起到恶意域名的DNS请求,这个自定义的fork函数可以决定阻止这个请求,或者阻止子进程的创建。

然而,这种方法并不是拦截DNS请求的常规做法,因为它侧重于监控和控制进程的创建,而不是直接监控网络活动。拦截DNS请求通常更直接地在网络层或者应用层进行,而不需要通过fork调用的hook来实现。可能这段话的意思是在进程创建时(通过fork)就开始监控其网络行为,包括DNS请求,但这样的描述并不准确。

3

DNS lookup,或称为DNS查询,是指将域名转换为与之对应的IP地址的过程。这个过程是由DNS(Domain Name System)客户端功能实现的,它可以是操作系统内置的一部分,也可以是某些应用程序提供的功能。
当你在浏览器中输入一个网址或者当一个应用程序尝试连接到互联网上的某个服务时,DNS查询就会被触发。这个查询会经过以下几个步骤:

本地缓存检查:系统首先检查本地DNS缓存,看看之前是否已经解析过这个域名。如果有缓存的条目,就可以直接使用,无需进一步查询。

递归查询:如果本地缓存中没有找到,系统的DNS客户端会向配置的DNS服务器发送查询请求。这通常是一个递归查询,意味着你的本地DNS服务器会代表你向其他DNS服务器查询,直到找到答案。

迭代查询:在某些情况下,如果DNS服务器没有设置为递归查询,或者是在更高级的DNS查询工具中,DNS客户端可能会执行迭代查询。在这种情况下,DNS客户端会从根DNS服务器开始,逐步向下查询,直到找到权威DNS服务器,然后获取到最终的IP地址。

在大多数操作系统中,DNS查询是透明的,用户通常不需要手动执行。但是,如果你想手动进行DNS查询,可以使用如nslookup、dig或host这样的命令行工具。这些工具允许用户查询DNS记录,并提供关于域名解析过程的详细信息。
例如,在命令行中使用nslookup:
nslookup example.com

这个命令会显示example.com域名对应的IP地址,以及执行查询的DNS服务器信息。

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

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

相关文章

免费SSL通配符证书/SSL泛域名证书获取教程

我们先基本了解什么是SSL证书以及其作用。SSL证书是一种数字证书,它通过为网站提供身份验证和数据加密服务,从而保护网站的用户信息安全。当我们在浏览器的地址栏看到“https”和绿色锁标志时,就表示该网站使用了SSL证书。 那么什么又是通配…

idea 开发serlvet汽车租赁管理系统idea开发sqlserver数据库web结构计算机java编程layUI框架开发

一、源码特点 idea开发 java servlet 汽车租赁管理系统是一套完善的web设计系统sqlserver数据库 系统采用serlvetdaobean mvc 模式开发,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。 java se…

34470A是德科技34470A数字万用表

181/2461/8938产品概述: Truevolt数字万用表(34460A、34461A、34465A、34470A)利用是德科技的新专利技术,使您能够快速获得见解、测量低功耗设备并保持校准的测量结果。Truevolt提供全方位的测量能力,具有更高的精度、…

C++【组合模式】

简单介绍 组合模式是一种结构型设计模式, 只有在可以将对象拆分为【树状结构】的情况下使用。并且像使用独立对象一样使用它们。 常用于表示与图形打交道的用户界面组件或代码的层次结构。 基础理解 Q:为什么要用组合模式 ? A:在…

蓝桥杯刷题day14——盖印章【算法赛】

一、问题描述 小 Z 喜欢盖印章。 有一天,小 Z 得到了一个 nm 的网格图,与此同时,他的手上有两种印章(分别称为 A,B),如下图所示。 他想将这两种印章盖在这个网格图上。 由于小 Z 是一个有原则的人,他将按照以下规则进行操作。 每个印章所形成的图案的边必须和网格图…

plasmo浏览器插件框架使用react和ant.design框架创建页面内容脚本UI样式注入

使用plasmo开发浏览器插件的时候,想要使用内容脚本UI注入自定义的UI组件,官方文档:Content Scripts UI – Plasmo,最好是搭配上好看的UI样式,所以可以集成ant.design的UI组件库,但是只集成组件还不行&#…

[C语言]——动态内存经典笔试题分析

目录 一.题目1 1.运行结果 2.分析 3.问题所在 4.更正 二.题目2 1.运行结果 2.分析 3.问题所在 4.更正 三.题目3 1.问题所在 2.更正: 四.题目4 一.题目1 void GetMemory(char *p){p (char *)malloc(100);}void Test(void){char *str NULL;GetMemory…

2024春算法训练4——函数与递归题解

一、前言 感觉这次的题目都很好,但是E题....(我太菜了想不到),别人的题解都上百行了,晕; 二、题解 A-[NOIP2010]数字统计_2024春算法训练4——函数与递归 (nowcoder.com) 这种题目有两种做法:…

泛微OA 自定义多选浏览框

1、建模引擎-》应用建模-》表单 2、建模引擎-》应用建模-》模块 3、建模引擎-》应用建模-》查询 4、把查询页面挂到前端页面。 效果展示: 5、建模引擎-》应用建模-》浏览框 6、流程表单中字段应用

Windows Edge浏览器的兼容性问题及解决方案

1、Windows Edge(了解 Microsoft Edge): 简单介绍: Microsoft Edge是一款由微软开发的网页浏览器,最初于2015年伴随Windows 10推出,作为Internet Explorer的继任者,旨在提供更快、更安全、更现代…

CV论文--2024.4.8

1、OW-VISCap: Open-World Video Instance Segmentation and Captioning 中文标题:OW-VISCap:开放世界视频实例分割和字幕 简介:开放世界视频实例分割是一项重要的视频理解任务,然而现有的方法存在一些限制。大多数方法要么只能在…

Springer旗下28年老刊,仅1个月录用,首个CCF推荐将被剔除?

毕业推荐 SSCI • 社科类,分区稳步上升(最快13天录用) IEEE: • 计算机类,1区(TOP),CCF推荐 SCIE • 计算机工程类,CCF推荐(最快16天录用) 近日更新报道新增5本期刊…

智能网联汽车自动驾驶数据记录系统DSSAD数据配置

目录 第一章 数据配置一般要求 第二章 数据配置文件中的文件描述 第三章 数据配置文件中的数据描述 第四章 数据配置文件中的数据字典 表A.1 数据字典格式定义 第一章 数据配置一般要求 数据配置文件数据内容应为可读的十进制数据。 数据配置文件应以文件的形式存储在自动驾驶…

Day79:服务攻防-中间件安全IISApacheTomcatNginx弱口令不安全配置CVE

目录 中间件-IIS-短文件&文件解析&蓝屏&写权限 HTTP.SYS(CVE-2015-1635)主要用作蓝屏破坏,跟权限不挂钩 IIS短文件(iis全版本都可能有这个问题) IIS文件解析 IIS写权限 中间件-Nginx-文件解析&目录穿越漏洞&CRLF …

Leetcode 142. 环形链表 II和Leetcode 242. 有效的字母异位词

文章目录 Leetcode 142. 环形链表 II题目描述C语言题解解题思路 Leetcode 242. 有效的字母异位词题目描述C语言题解和思路解题思路 Leetcode 142. 环形链表 II 题目描述 给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返…

MySQL【查询】

与查询直接相关的语句 基本查询语句:包括SELECT、INSERT、UPDATE和DELETE等SQL语句,用于执行常见的数据操作。 **WHERE子句:**用于指定条件,限制SELECT语句返回的行。 SELECT语句示例: -- 检索所有列的数据 SELECT…

rust 异步zip解压缩

在使用actix-web框架的时候,如果使用zip解压任务将会占用一个工作线程,因为zip库是同步阻塞的,想用异步非阻塞需要用另一个库,下面列出同步解压,跟异步解压的两个方法实现,异步解压不会占用工作线程。 阻塞…

Git 配置BCompare工具

一、Git配置BCompare工具 1、安装BCompare工具 下载BCompare安装包,打开安装包直接安装即可,如下: 2、禁止BCompare访问网络 网络进出站进行配置,限制BCompare访问网络,如果不进行上网限制,可能存在被封的…

接口新增方法

JDK8开始接口新增的方法 JDK7以前:接口只能定义抽象方法 JDK8的新特性:接口中可以定义有方法体的方法。(默认、静态) JDK9的新特性:接口中可以定义私有方法 JDK8以后接口中新增的方法: 允许在接口中定义默认…

【24届数字IC秋招总结】实习面试经验——华为芯片与器件设计工程师实习生

文章目录 前言一、笔试和性格测试二、面试2.1 技术面2.2 hr面前言 实习:笔试 + 1轮技术面 + 1轮主管面 一、笔试和性格测试 笔试题链接 1、网上可以找到很多以往的题目,需要注意的是数字芯片岗位会考到很多验证、中后端的知识,主打一个全栈,不要只看设计或者只看验证的东…