# 渗透测试# 1.安全见闻(6)通讯协议
安全见闻6 通讯协议 ##B站陇羽Sec##
潜在的安全问题所涉及的领域
无线电安全,协议分析,web渗透,逆向分析
通讯协议涉及的安全主要包括以下几个方面:
1.1 保密性问题
1.1.1 数据泄露风险
在通讯协议中,如果数据没有得到妥善的保护,就容易发生数据泄露。例如,当通讯协议采用明文传输数据时,攻击者可以通过网络嗅探工具轻松获取传输中的敏感信息,像用户的登录凭证、企业的机密业务数据等。在一些老旧的工业通讯协议中,数据可能直接在网络中以未加密的形式传播,这就给数据泄露带来了极大的风险。
对于某些通讯协议,若其缺乏对数据来源和目的地的有效验证机制,恶意攻击者可能伪装成合法的接收方获取数据,从而导致数据泄露。例如,攻击者可能伪造一个看似合法的服务器IP地址,欺骗发送方将数据发送到错误的目的地,进而获取到本不应被其获取的数据。
1.1.2 密钥管理不善
密钥是许多加密通讯协议保障数据保密性的关键因素。如果密钥管理不善,会引发一系列安全问题。例如,密钥长度过短,容易被暴力破解。一些早期的加密通讯协议可能采用了较短的密钥,随着计算能力的提升,这些密钥的安全性大大降低。
密钥的存储和分发也是关键环节。如果密钥在存储过程中没有进行加密存储,一旦存储设备被攻破,密钥就会泄露。在分发密钥时,如果没有安全的传输通道,密钥也可能被截获。例如,在一些网络环境中,若通过不安全的网络路径分发密钥,中间人攻击者就可能截获密钥,从而解密后续传输的加密数据,破坏通讯协议的保密性。
1.2 完整性问题
1.2.1数据篡改风险
在通讯协议中,数据在传输过程中可能会被恶意篡改。当数据没有足够的完整性保护机制时,攻击者可以拦截正在传输的数据,对其进行修改后再发送给接收方。例如,在物联网通讯场景下,攻击者可能篡改传感器传输的温度、湿度等数据,导致接收端依据错误数据做出错误决策。
如果通讯协议缺乏数字签名等验证手段,接收方无法确定接收到的数据是否与发送方原始发送的数据一致。对于金融交易等对数据准确性要求极高的通讯场景,数据篡改可能导致资金的错误转移等严重后果。
1.2.2重放攻击
重放攻击是指攻击者重复发送已经被截获的合法数据包来达到欺骗系统的目的。对于通讯协议而言,若没有针对重放攻击的防御机制,攻击者可以利用重放攻击获取敏感信息或者进行非法操作。例如,在身份认证过程中,攻击者截获了合法用户的认证数据包,然后重复发送这个数据包,就可能冒充合法用户通过认证。
重放攻击可能带来多种危害,如数据泄露(通过重放已截获的包含敏感信息的数据包获取用户名、密码等)、身份伪造(冒充合法用户进行非法操作)以及服务拒绝(连续发送重复请求导致系统资源过载)。为了防御重放攻击,可以采用多种方法,例如在数据包中添加随机数或时间戳,使每个请求具有唯一性;使用单次性令牌,每次认证生成新令牌并验证后销毁;在系统中引入回放攻击检测机制监测重复请求或异常行为;使用安全协议和标准(如HTTPS、TLS等)确保数据传输安全;还可以采用如序号验证、挑战应答机制等方法来防御重放攻击。
1.3 身份验证问题
1.3.1假冒身份风险
在通讯协议中,身份验证是确保通信双方真实身份的重要手段。如果身份验证机制存在漏洞,攻击者就有可能假冒合法用户的身份进行非法操作。例如,攻击者可能通过社会工程学手段获取用户的登录凭据,或者通过破解弱密码的方式获得访问权限。
在一些系统中,如果身份验证过程没有进行严格的双向验证,攻击者可能通过中间人攻击的方式,冒充服务器向客户端发送虚假的身份验证请求,诱导用户提供凭据。例如,在无线网络环境中,攻击者可能设置一个假冒的Wi-Fi热点,诱使用户连接并输入登录凭据,从而获取用户的敏感信息。
1.3.2身份验证漏洞
身份验证漏洞是指在身份验证过程中存在的安全缺陷,这些缺陷可能被攻击者利用来绕过身份验证机制。例如,一些系统可能使用了易被破解的加密算法或弱密码策略,使得攻击者可以通过暴力破解的方式获取用户凭据。
另外,一些系统可能没有实现有效的会话管理机制,导致攻击者可以通过会话劫持的方式获取用户的会话令牌,从而冒充用户进行操作。例如,在一些电子商务网站中,攻击者可能通过窃取用户的会话ID,冒充用户进行购物或修改订单信息。
1.4 可用性问题
1.4.1拒绝服务攻击
拒绝服务(DoS)攻击旨在使目标机器或网络停止提供服务,这是黑客常用的攻击手段之一。例如,攻击者可能通过向目标服务器发送大量的请求,耗尽服务器的资源(如带宽、内存、CPU等),从而使服务器无法正常响应合法用户的请求。
如UDP协议被曝漏洞(CVE - 2024 - 2169),攻击者可利用该漏洞发起名为“LoopDoS”的拒绝服务攻击。此攻击构建了一个无限通信环路,产生大量流量,由于UDP协议没有足够的数据包验证,易实现IP欺骗,攻击者可创建自我持续机制,无限制产生过大流量,导致目标系统或网络出现拒绝服务情况,可能造成易受攻击的服务超负荷运行、服务不稳定或无法使用,甚至对网络主干进行攻击导致其他服务网络中断。
还有HTTP/2协议存在“HTTP / 2 CONTINUATION Flood”漏洞,黑客可利用该漏洞向未设置END_HEADERS标志的易受攻击服务器发送HTTP请求,持续发送CONTINUATION帧流,最终使服务器内存不足而崩溃,成功发起拒绝服务攻击。
1.4.2协议漏洞导致的可用性问题
协议本身存在的漏洞可能会对系统或网络的可用性产生严重影响。例如,如果协议在设计时没有考虑到安全性,可能会存在缓冲区溢出漏洞。攻击者可以利用这个漏洞发送特制的数据,使程序缓冲区溢出,从而导致程序崩溃,影响服务的可用性。
以FTP协议中的cve - 2008 - 4501漏洞为例,Serv - U7.0.0.1到7.3中FTP服务器存在目录遍历漏洞,攻击者可通过RNTO命令中的特定字符覆盖或创建任意文件,利用此功能覆盖关键系统文件,从而导致拒绝服务(DoS)条件。另外,IEEE802.11协议虽然其基本机密机制中的安全漏洞已被广泛宣传,但对网络可用性的威胁却远未得到广泛认可,实际上它非常容易受到针对其管理和媒体访问协议的恶意攻击,影响基于IEEE802.11的无线接入网络的可用性。
1.5 协议实现问题
1.5.1编程错误
在协议实现过程中,编程错误是一个常见的问题。例如,在编写网络协议相关代码时,如果程序员对协议规范理解不准确,可能会导致代码逻辑错误。比如在实现TCP协议的连接建立过程中,如果没有正确处理三次握手的逻辑顺序,可能会导致连接无法正常建立或者出现异常断开的情况。
代码中的语法错误也可能影响协议的正确实现。以Python编写基于HTTP协议的网络应用为例,如果在解析HTTP请求头时出现语法错误,可能会导致无法正确理解客户端的请求,进而无法提供正确的响应,影响整个应用的功能和可用性。
1.5.2第三方库和组件的安全问题
许多协议实现会依赖第三方库和组件,然而这些第三方库和组件可能存在安全问题。例如,一些加密库可能存在漏洞,如果在协议实现中使用了有漏洞的加密库,可能会导致数据的保密性、完整性受到威胁。像OpenSSL库曾经被发现存在心脏滴血漏洞(Heartbleed),如果基于使用了有此漏洞的OpenSSL版本来实现SSL/TLS协议,攻击者就可以利用该漏洞获取服务器内存中的敏感信息,包括密钥等,这对协议的安全性是严重的破坏。
第三方组件的版本更新不及时也可能带来安全风险。如果协议实现依赖的某个组件存在已知的安全漏洞,而没有及时更新到修复版本,那么系统就会一直处于易受攻击的状态。例如,某网络协议应用依赖的JSON解析组件存在一个越界读取漏洞,若不及时更新组件版本,攻击者就可能利用该漏洞进行恶意操作,影响协议实现的安全性和可靠性。
1.6 协议涉及缺陷
1.6.1缺乏安全考虑的涉及
在协议设计阶段,如果缺乏对安全性的充分考虑,可能会留下安全隐患。例如,FTP协议在设计时并未考虑加密传输的需求,导致其在传输过程中容易被窃听,敏感数据容易泄露。此外,FTP协议也没有提供强的身份验证机制,容易遭受重放攻击或伪装攻击。
缺乏对拒绝服务攻击(DoS)的防范也是协议设计中常见的问题。例如,某些协议在设计时没有限制请求的速率或数量,攻击者可以利用这一点发送大量请求,导致服务器资源耗尽,无法正常提供服务。如HTTP协议在早期版本中没有内置的速率限制机制,使得攻击者可以轻易发动DoS攻击。
1.6.2协议升级带来的安全风险
虽然协议升级可以修复已知的安全问题,增强安全功能和性能,但升级过程本身也可能带来安全风险。例如,固件升级可能导致交换机的不稳定性,甚至无法工作。这是因为升级过程中可能会出现异常情况,如文件损坏、配置丢失等,导致设备无法正常运行。
升级还可能导致一些应用程序不兼容。新的固件版本可能会对设备的性能和功能进行更改,这可能会导致一些原先正常运行的应用程序出现兼容性问题。例如,操作系统升级后,某些老旧的应用程序可能不再支持新的API或系统调用,导致无法继续使用。
1.7 移动通讯协议安全问题
1.7.1无线网络的特殊性
开放性:无线网络是开放的通信媒介,相比有线网络更容易被攻击者接入。例如,在Wi - Fi网络中,黑客可以通过破解较弱的Wi - Fi密码或者利用Wi - Fi协议漏洞来未经授权接入网络。一旦接入,就可能窃听网络中的数据传输,这对移动通讯协议安全构成威胁。
信号传播特性:无线网络信号的传播容易受到干扰和衰减。攻击者可以利用信号干扰设备发射干扰信号,破坏正常的通信。而且由于信号的传播范围可能超出预期的安全区域,例如在公共Wi - Fi热点附近,信号可能被附近的恶意用户捕获,导致数据泄露风险增加。
移动性:移动设备在不同基站间切换时,可能存在安全风险。在移动通讯协议中,如LTE协议,当移动设备从一个基站切换到另一个基站时,需要进行一系列的认证和数据传输过程。如果这个过程中的安全机制不完善,攻击者可能会利用切换过程中的漏洞进行中间人攻击或者伪装基站进行攻击。
1.7.2移动应用的安全风险
数据存储风险:移动应用可能存在数据存储安全问题。许多移动应用将用户数据存储在本地设备上,如果缺乏足够的加密措施,当设备丢失或者被恶意获取时,数据就可能被泄露。例如,一些金融类移动应用如果没有对用户账户信息、交易记录等进行加密存储,攻击者获取设备后就能轻易获取这些敏感信息。
身份验证与授权漏洞:移动应用的身份验证和授权机制可能存在缺陷。一些应用可能使用简单的用户名 - 密码验证方式,且密码强度要求不高,容易被暴力破解。而且在授权方面,如果没有严格的权限控制,可能会导致恶意应用获取过多权限,从而访问用户的敏感信息或者执行恶意操作。例如,一个恶意应用可能通过获取的权限读取用户联系人列表并发送垃圾信息。
通信安全风险:移动应用在与服务器进行通信时,可能面临通信被窃听或篡改的风险。如果没有采用安全的通信协议(如SSL/TLS)或者没有正确配置这些协议,攻击者可以在通信链路中截获数据,窃取用户的登录凭据、个人信息等,甚至修改通信内容,导致用户受到欺诈或者遭受其他损失。
1.8 物联网通讯协议安全问题
1.8.1大量设备的管理难题
设备识别与跟踪
在物联网环境中,存在着海量的设备,这些设备的类型和功能各异。识别每个设备并准确跟踪其状态是一个挑战。例如,在一个大型的智能工厂中,可能有成千上万的传感器和执行器,要为每个设备分配唯一的标识符并确保其在网络中的可识别性并非易事。如果设备识别出现混乱,可能会导致安全管理的漏洞,例如攻击者可能伪装成合法设备混入网络。
设备的动态加入和离开网络也增加了管理的复杂性。新设备不断加入物联网网络,旧设备可能因为故障、升级或其他原因离开网络。对于网络管理员来说,及时准确地掌握设备的动态变化情况,并确保新加入设备的合法性以及离开设备的数据安全处理是很困难的。例如,在智能家居场景下,当用户频繁添加或更换智能设备时,网络需要及时更新设备信息以保障安全。
配置管理
大量的物联网设备需要进行正确的配置才能安全运行。不同类型的设备可能有不同的配置要求,而且这些配置可能需要根据具体的应用场景进行调整。统一管理众多设备的配置是一个难题。例如,对于一些安全敏感的物联网设备,如医疗设备或工业控制系统中的传感器,错误的配置可能会导致严重的安全风险,如数据泄露或设备被恶意控制。
配置的更新也是一个挑战。由于物联网设备的数量众多,确保每个设备及时更新到最新的安全配置是很困难的。设备制造商可能会发布安全补丁或新的配置文件来修复安全漏洞,但在大规模的物联网环境中,将这些更新推送到每个设备并确保其正确安装是一项艰巨的任务。
1.8.2异构型带来的安全问题
协议兼容性
物联网中的设备使用多种不同的通信协议,如ZigBee、ZWave、Bluetooth - LE、Wi - Fi802.11等。这些异构协议之间的兼容性问题可能导致安全漏洞。例如,当不同协议的设备需要进行交互通信时,可能由于协议转换过程中的不规范或漏洞,被攻击者利用来进行中间人攻击或者数据篡改。
不同协议的安全机制差异较大,有些协议可能本身的安全防护较弱。例如,一些低功耗的物联网设备所使用的简单通信协议,可能缺乏加密或身份认证机制,这就使得整个物联网网络在与这些设备交互时存在安全风险。
安全策略统一
由于物联网设备的异构性,很难制定一套统一的安全策略适用于所有设备。不同类型的设备可能有不同的安全需求和风险容忍度。例如,消费类的智能手环可能更关注用户数据的隐私保护,而工业物联网中的监控设备可能更注重防止恶意控制。这种差异使得难以构建一个全面且有效的物联网安全防护体系,容易出现安全防护的薄弱环节。
1.9 工业控制系统西医安全问题
1.9.1实时性要求与安全的冲突
安全措施的延迟影响
工业控制系统(ICS)通常对实时性有很高的要求,例如在电力系统中,控制系统需要实时监测电网的状态并及时做出调整,以确保电力供应的稳定。然而,一些安全措施,如加密和身份认证等操作,可能会引入一定的延迟。例如,加密大量的实时数据传输可能会增加处理时间,导致数据到达目的地的延迟。如果延迟超过了工业控制系统可接受的范围,可能会影响系统的正常运行,甚至可能引发诸如电力波动、生产中断等问题。
在某些工业场景下,如高速自动化生产线,设备之间的交互是在极短的时间内完成的。如果为了安全而进行的深度数据包检查等操作花费过多时间,可能会使设备错过操作的最佳时机,从而影响生产效率和产品质量。
安全更新与连续运行的矛盾
工业控制系统往往需要长时间连续运行,很少有机会进行停机维护。而安全更新,如安装系统补丁或更新安全软件,通常需要系统重启或者短暂的停机时间。这就产生了矛盾,一方面系统需要不断更新安全措施以应对新的威胁,另一方面又不能轻易中断运行。例如,在石油化工生产过程中,停产进行安全更新可能会造成巨大的经济损失,并且在重启过程中还可能面临新的风险,如设备启动顺序错误等。
1.9.2与传统IT系统的融合带来的风险
安全策略差异的协调困难
工业控制系统和传统IT系统有着不同的安全策略重点。传统IT系统更关注数据的保密性、完整性和可用性,强调防止数据泄露、恶意软件入侵等。而工业控制系统更注重系统的可靠性、实时性和安全性,以确保工业生产过程的稳定运行。当两者融合时,协调这两种不同的安全策略是一个挑战。例如,传统IT系统的访问控制策略可能比较严格,而工业控制系统为了保证实时性可能会有一些相对宽松的访问设置,融合时需要重新平衡。
工业控制系统中的一些设备可能使用专门的操作系统或协议,与传统IT系统的兼容性有限。在融合过程中,需要对安全策略进行调整以适应这种差异,但这可能会引入新的安全风险。例如,将工业控制系统中的设备接入企业的传统IT网络后,传统网络的安全防护措施可能无法完全适用于这些特殊设备,从而使它们暴露在安全威胁之下。
攻击面的增加
工业控制系统与传统IT系统融合后,整个系统的攻击面会扩大。传统IT系统面临的网络攻击威胁,如黑客攻击、恶意软件感染等,现在也可能会波及到工业控制系统。例如,企业内部网络中的一台普通办公电脑感染了病毒,在融合的网络环境下,病毒可能会通过网络传播到工业控制系统中的关键设备上,从而影响工业生产的正常进行。而且,融合后的系统可能会有更多的接口和连接点,这些都可能成为攻击者的入口点,增加了系统被攻击的风险。
相关文章:
# 渗透测试# 1.安全见闻(6)通讯协议
安全见闻6 通讯协议 ##B站陇羽Sec## 潜在的安全问题所涉及的领域 无线电安全,协议分析,web渗透,逆向分析 通讯协议涉及的安全主要包括以下几个方面: 1.1 保密性问题 …...
[Gdiplus/Gdi]_[中级]_[实现多行文本的多种颜色绘制-富文本绘制]
场景 在开发WTL/WIN32界面程序时,有时候需要绘制多行的段落文本,但是文本里的数值需要设置红色以便能让人第一时间关注到它。这种文本可以称之为富文本。GDI的DrawText和GDIPlus的DrawString方法都只能连续绘制某个颜色的文本。怎么实现?说明 在《绘图实现单行文本的多种颜色…...

Ubuntu如何创建一个子用户并赋与管理员权限
在Ubuntu操作系统中,如何创建一个子用户并赋与管理员权限 一、创建用户 sudo useradd -m -s /bin/bash test详细解释: sudo:以超级用户(root)权限执行该命令。useradd 命令通常需要管理员权限,因此需要加上 sudo。 useradd:创建新用户的命令。 -m:指示系统为新用户创建…...

【Linux | IO多路复用】epoll的底层原理详解
epoll 是一种高效的 I/O 多路复用机制,广泛用于 Linux 系统中,用于处理大量并发的文件描述符。它比传统的 select 和 poll 方法具有更好的性能,特别是在处理大量并发连接时。 1.epoll的设计思路 epoll是在select 出现 N 多年后才被发明的&a…...

npm run serve 提示异常Cannot read property ‘upgrade‘ of undefined
npm run serve 提示Cannot read property ‘upgrade’ of undefined 一般是proxy的target代理域名问题导致的,如下: 解决方案: proxy: { “/remoteDealerReportApi”: { target: ‘http://demo-.com.cn’, //此域名有问题,会导致…...
Muggle OCR 是一个高效的本地OCR(光学字符识别)模块
Muggle OCR 是一个高效的本地OCR(光学字符识别)模块,专为“麻瓜”设计,用于简化文本识别的过程。这个模块特别适用于处理印刷文本和解析验证码1。 以下是一些关于 Muggle OCR 的主要特点和使用方法: 特点:…...
【SpringBoot】万字源码解析——启动流程
Spring Boot启动流程 Spring Boot 的入口类: SpringBootApplication public class IntelGradingApplication {public static void main(String[] args) {SpringApplication.run(IntelGradingApplication.class, args);} }Spring Boot 的启动过程可以分为两方面&am…...

Nginx 配置初步 下
Nginx 配置初步(下) 一行代表一个指令; 每个指令有其上下文环境,比如 listen 指令只能在 http 指令块中出现,不能单独出现。1. Http 服务配置初步 1.1 常用指令 Nginx 的所有模块,打开模块我们就能看到模块中支持的指令。最常用…...

可视化ETL平台-Kettle的安装及简单使用
本章知识简介 主线A: 自连接查询; 主线B: 安装JDK与Kettle; 主线C: 使用Kettle工具. 本章目标: 1: 知道使用一张表可以实现自连接查询; [了解]注意: 左表、右表都是同一张表 2: 了解Kettle环境的安装流程; [了解]a.安装JDKb.安装Kettle 3: 熟悉使用kettle将txt数…...
java8 动态加载jar包至系统的classpath
1. io.test包 创建MyMain.java类,创建addJarToClasspath方法将jar包动态加载进系统的classpath中 package io.test;import java.io.File; import java.net.URL; import java.net.URLClassLoader; import java.lang.reflect.Method;public class MyMain {public st…...
C++二级题 计算好数:1数大于0数(二进制的位运算)
1、题目 若将一个正整数化为二进制数,在此二进制数中,我们将数字1的个数多于数字0的个数的这类二进制数称为好数。 例如: (13)10 (1101)2,其中1的个数为3,0的个数为1,则此数是好数; (10)10 (1…...

数字孪生城市:智慧城市的未来蓝图
在当今数字化时代,智能技术的广泛应用正在改变人们的生活和工作方式。数字孪生城市作为未来新型智慧城市演进的重要方向,数字孪生城市是一种将城市物理世界的各个方面转化为数字形式的技术,通过网络空间与物理世界之间的实时数据交换和仿真分…...

Java篇图书管理系统
目录 前言 一. 图书管理系统的核心 二. 图书管理系统基本框架 2.1 book包 2.1.1 Book(书籍类) 2.1.2 Booklist (书架类) 2.2 user包 2.2.1 User类 2.2.2 Administrator(管理员类) 2.2.3 Visitor(用户类) 2.…...

BUUCTF之web篇
第一题 [极客大挑战 2019]EasySQL 打开靶机后可以看到这是一个登陆的页面 我们可以尝试两种方式登录 弱口令爆破(burpsuite) 通过SQL注入里的万能密码来跳过账户和密码验证的过程 这里就需要万能密码aor true # 在这里单引号的作用是结束用户名或者密码…...

010——二叉树(2)线索化
引入: 问题1: n个节点的二叉树,用二叉链表存储,问在这个二叉链表中一共有 __个指针域? 其中,有 __个指针域不为NULL,__个指针域为NULL? 答:2n n-1 n1 在二叉链表中…...
鸿蒙拍照小助手02
项目文件目录 为了确保项目文件目录清晰,以下是完整的项目文件目录结构: code 拍照小助手/ │ ├── entry/ │ ├── src/ │ │ ├── main/ │ │ │ ├── js/ │ │ │ │ └── 默认/ │ │ │ │ ├── 页面/ │ │ │ │ │ ├── 主页/ │ │ │ │ │ │ ├…...
lua while循环
软考鸭微信小程序 过软考,来软考鸭! 提供软考免费软考讲解视频、题库、软考试题、软考模考、软考查分、软考咨询等服务 Lua作为一种小巧精致的语言,特别适用于嵌入其他程序提供脚本支持。在编程中,循环结构是不可或缺的一部分,而while循环则是…...

JAVA篇之类和对象
目录 一. 面向对象 1.1 面向对象和面向过程 二. 类的定义和使用 2.1 什么是类 2.2 类的定义格式 三. 类的实例化 四. this引用 4.1 this引用的作用 五. 构造方法 5.1 构造方法重载 5.2 通过this调用其他构造方法 5.3 默认初始化 结语 一. 面向对象 Java 是一门面向对…...
IO流详解_CoderLix
主要内容 File类IO流字节流字符流异常处理Properties缓冲流转换流序列化流打印流 File类 1.1 概述 java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建、查找和删除等操作。 1.2 构造方法 public File(String pathname) :通过…...

241023-RHEL非管理员安装Docker并开放指定宿主机端口部署Gitlab
A. RHEL非管理员安装Docker 要在没有管理员权限的情况下离线安装 Docker 和 Docker Compose,虽然受到一定限制,仍有一些可行的步骤可以帮助你在有限权限下完成这项任务。需要注意的是,这种方式适用于本地用户环境下的 Docker 安装࿰…...

RocketMQ延迟消息机制
两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数,对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后…...
脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)
一、数据处理与分析实战 (一)实时滤波与参数调整 基础滤波操作 60Hz 工频滤波:勾选界面右侧 “60Hz” 复选框,可有效抑制电网干扰(适用于北美地区,欧洲用户可调整为 50Hz)。 平滑处理&…...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...
使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装
以下是基于 vant-ui(适配 Vue2 版本 )实现截图中照片上传预览、删除功能,并封装成可复用组件的完整代码,包含样式和逻辑实现,可直接在 Vue2 项目中使用: 1. 封装的图片上传组件 ImageUploader.vue <te…...

【单片机期末】单片机系统设计
主要内容:系统状态机,系统时基,系统需求分析,系统构建,系统状态流图 一、题目要求 二、绘制系统状态流图 题目:根据上述描述绘制系统状态流图,注明状态转移条件及方向。 三、利用定时器产生时…...
Angular微前端架构:Module Federation + ngx-build-plus (Webpack)
以下是一个完整的 Angular 微前端示例,其中使用的是 Module Federation 和 npx-build-plus 实现了主应用(Shell)与子应用(Remote)的集成。 🛠️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...
【Java学习笔记】BigInteger 和 BigDecimal 类
BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点:传参类型必须是类对象 一、BigInteger 1. 作用:适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...
return this;返回的是谁
一个审批系统的示例来演示责任链模式的实现。假设公司需要处理不同金额的采购申请,不同级别的经理有不同的审批权限: // 抽象处理者:审批者 abstract class Approver {protected Approver successor; // 下一个处理者// 设置下一个处理者pub…...
IP如何挑?2025年海外专线IP如何购买?
你花了时间和预算买了IP,结果IP质量不佳,项目效率低下不说,还可能带来莫名的网络问题,是不是太闹心了?尤其是在面对海外专线IP时,到底怎么才能买到适合自己的呢?所以,挑IP绝对是个技…...

【Redis】笔记|第8节|大厂高并发缓存架构实战与优化
缓存架构 代码结构 代码详情 功能点: 多级缓存,先查本地缓存,再查Redis,最后才查数据库热点数据重建逻辑使用分布式锁,二次查询更新缓存采用读写锁提升性能采用Redis的发布订阅机制通知所有实例更新本地缓存适用读多…...