渗透 如何防御ARP欺骗,LLMNR-MDNS-NBNS等协议的作用

2024-05-01 16:44

本文主要是介绍渗透 如何防御ARP欺骗,LLMNR-MDNS-NBNS等协议的作用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一. 如何防御ARP欺骗?

1.使用双向IP/MAC绑定;

2.使用静态ARP缓存表;

3.使用ARP服务器,通过服务器来查找ARP转换表来响应其他机器的广播;

4.使用ARP欺骗防护软件;

5.在网关设备上部署防ARP欺骗攻击功能,包括ARP表项固化功能、ARP表项严格学习功能、发送免费ARP报文等功能;

6.在接入设备上部署动态ARP检测功能;

7.利用接入交换机的ARP入侵检测(ARP Intrusion Inspection)功能,进行ARP欺骗攻击防御;

8.安装ARP防火墙或做ARP双向绑定。

二. 输入错误 dns有什么补救措施?

1.清除DNS缓存:DNS缓存可能会导致解析错误或过期的IP地址;

2.更改电脑的DNS服务器;

3.清除HOST缓存文件;

4.检查防火墙和安全软件设置。

三. LLMNR-MDNS-NBNS协议

一、LLMNR协议(Link-Local Multicast Name Resolution)
1.功能:

LLMNR(链路本地多播名称解析)是一种用于解析本地主机名到IP地址的协议。它允许在没有本地DNS服务器的情况下进行名称解析

2.工作原理:

(1)当主机需要解析本地主机名时,它会向网络上的多播地址发送LLMNR查询
(2)如果有其他主机知道所需的名称,则它们可以回复一个LLMNR响应,提供相应的IP地址。
(3)如果没有其他主机回复,则认为名称无法解析。

3.安全风险:

LLMNR欺骗攻击:攻击者可以发送虚假的LLMNR响应,诱导主机将数据发送到攻击者控制的主机上。

二、MDNS协议(Multicast DNS)
1.功能:

MDNS(多播DNS)是一种类似于LLMNR的协议,用于解析本地域名到IP地址。它也用于设备发现和服务发现,特别是在局域网内。

2.工作原理:

(1)设备使用多播地址发送MDNS查询,通常在UDP端口5353上。
(2)其他设备可以回复MDNS响应,提供所需的服务或资源的IP地址。

3.安全风险:

MDNS欺骗攻击:与LLMNR欺骗类似,攻击者可以发送虚假的mDNS响应,导致设备与恶意服务通信。

三、NBNS协议(NetBIOS Name Service)
1.功能:

NBNS(NetBIOS名称服务)是一种过时的协议,用于在局域网内解析NetBIOS名到IP地址。NetBIOS主要用于早期的Windows系统。

2.工作原理:

(1)主机使用UDP端口137发送NBNS请求。
(2)NBNS服务器回复响应,提供NetBIOS名的IP地址。

3.安全风险:

(1)NBNS欺骗攻击:攻击者可以发送虚假的NBNS响应,欺骗其他设备将数据发送到错误的地址。
(2)NetBIOS信息收集:攻击者可以通过NBNS查询获取网络上的NetBIOS名称和相关信息。

四. Content-Security-Policy

Content-Security-Policy的作用:是一种网页安全策略,现代浏览器使用它来增强网页的安全性。可以通过Content Security Policy来限制哪些资源(如JavaScript、CSS、图像等)可以被加载,从哪些url加载。

CSP本质上是白名单机制,开发者明确告诉浏览器哪些外部资源可以加载和执行,可以从哪些url加载资源。

CSP最初被设计用来减少跨站点脚本攻击(XSS),该规范的后续版本还可以防止其他形式的攻击,如点击劫持。

五. php文件上传相关问题

文件上传的临时文件为什么消失?

php在请求结束之后就会把该缓存文件删掉;使用sleep命令,然后进这个文件夹应该就能看到。

这篇关于渗透 如何防御ARP欺骗,LLMNR-MDNS-NBNS等协议的作用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/952176

相关文章

C++中detach的作用、使用场景及注意事项

《C++中detach的作用、使用场景及注意事项》关于C++中的detach,它主要涉及多线程编程中的线程管理,理解detach的作用、使用场景以及注意事项,对于写出高效、安全的多线程程序至关重要,下... 目录一、什么是join()?它的作用是什么?类比一下:二、join()的作用总结三、join()怎么

java中反射Reflection的4个作用详解

《java中反射Reflection的4个作用详解》反射Reflection是Java等编程语言中的一个重要特性,它允许程序在运行时进行自我检查和对内部成员(如字段、方法、类等)的操作,本文将详细介绍... 目录作用1、在运行时判断任意一个对象所属的类作用2、在运行时构造任意一个类的对象作用3、在运行时判断

python常用的正则表达式及作用

《python常用的正则表达式及作用》正则表达式是处理字符串的强大工具,Python通过re模块提供正则表达式支持,本文给大家介绍python常用的正则表达式及作用详解,感兴趣的朋友跟随小编一起看看吧... 目录python常用正则表达式及作用基本匹配模式常用正则表达式示例常用量词边界匹配分组和捕获常用re

如何在Spring Boot项目中集成MQTT协议

《如何在SpringBoot项目中集成MQTT协议》本文介绍在SpringBoot中集成MQTT的步骤,包括安装Broker、添加EclipsePaho依赖、配置连接参数、实现消息发布订阅、测试接口... 目录1. 准备工作2. 引入依赖3. 配置MQTT连接4. 创建MQTT配置类5. 实现消息发布与订阅

Java 继承和多态的作用及好处

《Java继承和多态的作用及好处》文章讲解Java继承与多态的概念、语法及应用,继承通过extends复用父类成员,减少冗余;多态实现方法重写与向上转型,提升灵活性与代码复用性,动态绑定降低圈复杂度... 目录1. 继承1.1 什么是继承1.2 继承的作用和好处1.3 继承的语法1.4 子类访问父类里面的成

使用Python进行GRPC和Dubbo协议的高级测试

《使用Python进行GRPC和Dubbo协议的高级测试》GRPC(GoogleRemoteProcedureCall)是一种高性能、开源的远程过程调用(RPC)框架,Dubbo是一种高性能的分布式服... 目录01 GRPC测试安装gRPC编写.proto文件实现服务02 Dubbo测试1. 安装Dubb

SpringBoot 中 CommandLineRunner的作用示例详解

《SpringBoot中CommandLineRunner的作用示例详解》SpringBoot提供的一种简单的实现方案就是添加一个model并实现CommandLineRunner接口,实现功能的... 目录1、CommandLineRunnerSpringBoot中CommandLineRunner的作用

$在R语言中的作用示例小结

《$在R语言中的作用示例小结》在R语言中,$是一个非常重要的操作符,主要用于访问对象的成员或组件,它的用途非常广泛,不仅限于数据框(dataframe),还可以用于列表(list)、环境(enviro... 目录1. 访问数据框(data frame)中的列2. 访问列表(list)中的元素3. 访问jav

Kotlin运算符重载函数及作用场景

《Kotlin运算符重载函数及作用场景》在Kotlin里,运算符重载函数允许为自定义类型重新定义现有的运算符(如+-…)行为,从而让自定义类型能像内置类型那样使用运算符,本文给大家介绍Kotlin运算... 目录基本语法作用场景类对象数据类型接口注意事项在 Kotlin 里,运算符重载函数允许为自定义类型重

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小