软件安全:漏洞利用与渗透测试剖析、流程、方法、案例
在数字时代,软件已深度融入生活与工作的方方面面,从手机应用到企业核心系统,软件安全至关重要。而漏洞利用与渗透测试,作为软件安全领域中相互关联的两个关键环节,一个是黑客攻击的手段,一个是安全防护的方法,二者的博弈推动着软件安全技术不断发展。
一、漏洞利用与渗透测试:概念与关联
(一)漏洞利用
软件漏洞,是指软件在设计、开发、部署或维护过程中产生的缺陷或弱点,这些缺陷可能导致软件功能异常,甚至被恶意攻击者利用。漏洞利用,就是攻击者发现并利用这些漏洞,非法获取系统权限、窃取敏感数据或破坏系统正常运行的过程。常见的软件漏洞类型包括缓冲区溢出漏洞、SQL 注入漏洞、跨站脚本(XSS)漏洞等 。例如,缓冲区溢出漏洞是由于程序在处理数据时,没有对输入数据的长度进行有效验证,导致数据写入超过缓冲区的边界,从而覆盖其他内存区域的数据,攻击者可以利用这一漏洞修改程序的执行流程,植入恶意代码。
(二)渗透测试
渗透测试则是从安全防护的角度出发,模拟黑客的攻击手段,对目标系统进行安全测试的过程。它通过主动探测和攻击目标系统,发现其中存在的安全漏洞,并评估这些漏洞可能带来的风险。渗透测试人员会利用公开的漏洞信息、自行开发的攻击工具或脚本,尝试突破系统的安全防线,以验证系统的安全性和防护能力。渗透测试可以分为黑盒测试、白盒测试和灰盒测试。黑盒测试是在不了解系统内部结构和代码的情况下进行测试,模拟外部攻击者的行为;白盒测试则是在完全了解系统代码和架构的基础上进行测试,能够更深入地发现潜在漏洞;灰盒测试介于两者之间,测试人员对系统有部分了解 。
(三)二者关系
漏洞利用是渗透测试的核心手段,渗透测试人员通过对漏洞的利用,来验证系统的安全性;而渗透测试则是发现和评估漏洞利用风险的有效方式。合理的渗透测试能够帮助企业和开发者及时发现软件中的漏洞,避免被恶意攻击者利用,从而提升软件的安全性。
二、渗透测试的流程
(一)前期准备
- 明确测试目标与范围:在开始渗透测试前,测试团队需要与客户充分沟通,明确此次测试想要达成的目标。例如,是检测 Web 应用程序的安全性,还是评估整个企业网络的防御能力。同时,确定测试范围,清晰界定哪些系统、网络、应用在测试范围内,哪些不在,避免对无关系统造成不必要的影响 。
- 收集信息:收集目标系统的相关信息是渗透测试的基础工作。这包括目标系统的网络拓扑结构、操作系统类型、开放的端口和服务、域名信息、应用程序的功能和架构等。可以通过公开渠道(如搜索引擎、企业官网、社交媒体等)获取信息,也可以使用专业的信息收集工具,如 Nmap 扫描目标主机的开放端口和服务,Whois 查询域名注册信息等。通过全面的信息收集,测试人员能够对目标系统有更深入的了解,为后续的漏洞探测和攻击做好准备 。
- 制定测试计划:根据测试目标和收集到的信息,制定详细的测试计划。计划中要明确测试的时间安排、人员分工、使用的工具和技术、测试的具体步骤等。同时,还需要考虑测试过程中的风险和应对措施,确保测试在可控范围内进行 。
(二)漏洞探测
- 漏洞扫描:使用自动化的漏洞扫描工具,对目标系统进行全面扫描。常见的漏洞扫描工具如 OpenVAS、Nessus 等,它们能够检测出系统中已知的漏洞,如操作系统补丁缺失、Web 应用程序的 SQL 注入漏洞、跨站脚本漏洞等。扫描工具会生成详细的漏洞报告,列出发现的漏洞及其风险等级 。
- 手工探测:虽然自动化扫描工具能够发现很多常见漏洞,但对于一些复杂的、隐藏较深的漏洞,还需要测试人员进行手工探测。例如,通过分析 Web 应用程序的输入输出,尝试构造特殊的输入数据,测试是否存在逻辑漏洞;对目标系统的通信协议进行分析,寻找可能被利用的安全缺陷 。
(三)漏洞利用与提权
- 漏洞利用:当发现漏洞后,测试人员会尝试利用这些漏洞,获取目标系统的访问权限。这可能需要使用公开的漏洞利用代码,或者根据漏洞原理自行编写攻击脚本。例如,对于 SQL 注入漏洞,可以使用 SQLMap 等工具进行自动化的注入攻击,获取数据库中的敏感数据;对于远程代码执行漏洞,可以通过上传恶意代码,在目标系统上执行命令 。
- 权限提升:在获取到一定权限后,测试人员还会尝试提升权限,获取更高的系统控制权。比如在 Windows 系统中,通过查找系统中的配置错误、漏洞,或者利用已知的提权工具,从普通用户权限提升到管理员权限,以便更深入地评估系统的安全性 。
(四)测试报告与修复建议
- 整理测试结果:测试人员将在测试过程中发现的漏洞、利用过程、获取到的数据等信息进行整理,详细记录每个漏洞的具体情况,包括漏洞的类型、位置、危害程度、利用方式等 。
- 编写测试报告:根据整理的测试结果,编写全面的渗透测试报告。报告不仅要清晰地列出发现的漏洞,还要对漏洞的风险进行评估,给出相应的修复建议。同时,报告中还可以包含测试过程的总结、经验教训以及对目标系统安全防护的改进建议 。
- 协助修复漏洞:测试完成后,测试团队可以与客户沟通,协助客户对发现的漏洞进行修复。提供技术支持和指导,确保漏洞得到有效解决,提升系统的安全性 。
三、渗透测试的方法
(一)黑盒测试
黑盒测试也称为外部测试,测试人员在完全不了解目标系统内部结构和代码的情况下进行测试。就像黑客从外部攻击系统一样,测试人员仅通过系统暴露在外部的接口(如 Web 页面、网络端口等)进行测试。主要依靠信息收集、漏洞扫描和手工探测等方法,尝试发现系统的安全漏洞。这种测试方法更贴近实际的攻击场景,能够检测出系统对外的安全防护能力,但由于缺乏对内部结构的了解,可能无法发现一些深层次的漏洞 。
(二)白盒测试
白盒测试则是在完全了解目标系统代码和架构的基础上进行测试。测试人员可以查看系统的源代码、数据库结构、网络配置等信息,从代码层面深入分析系统中可能存在的漏洞。例如,检查代码中是否存在未验证的输入、越权访问控制漏洞等。白盒测试能够更全面、深入地发现漏洞,但需要测试人员具备较高的编程和代码审计能力,并且测试过程相对复杂,耗费时间较长 。
(三)灰盒测试
灰盒测试介于黑盒测试和白盒测试之间,测试人员对目标系统有部分了解,如系统的架构、部分代码逻辑等。这种测试方法结合了黑盒测试和白盒测试的优点,既能够从外部模拟攻击,又可以利用对内部结构的了解,更有针对性地进行漏洞探测和利用。例如,在测试 Web 应用程序时,测试人员已知应用使用的框架和部分业务逻辑,就可以结合这些信息,更高效地发现和利用漏洞 。
渗透测试的流程和方法紧密配合,通过规范的流程和多样的方法,能够全面、深入地评估系统的安全性,为软件和系统的安全防护提供有力支持。
四、防范漏洞利用与强化渗透测试的策略
(一)加强漏洞管理
企业和开发者应建立完善的漏洞管理机制,及时关注公开的漏洞信息,定期对软件系统进行漏洞扫描和评估。当发现漏洞时,要迅速组织技术人员进行修复,对于一些暂时无法修复的漏洞,可采取临时防护措施,如关闭相关服务端口、设置访问限制等,降低漏洞被利用的风险。同时,鼓励内部员工和外部安全研究人员提交漏洞报告,并给予相应的奖励,形成全员参与漏洞管理的良好氛围 。
(二)规范渗透测试流程
在进行渗透测试时,要遵循规范的流程和标准。明确测试目标、范围和时间,制定详细的测试计划和方案。测试过程中,要严格记录测试步骤、发现的漏洞和测试结果,确保测试的可追溯性和准确性。测试结束后,要及时向相关人员提交详细的渗透测试报告,报告中不仅要列出发现的漏洞,还要提供漏洞的风险评估和修复建议,帮助企业和开发者有针对性地进行安全加固 。
(三)提升人员安全意识与技能
无论是软件开发人员还是系统管理人员,都应具备一定的安全意识和技能。软件开发人员要在开发过程中遵循安全编码规范,减少代码漏洞的产生;系统管理人员要及时更新系统补丁,配置安全策略,加强对系统的监控和管理。同时,企业要定期组织安全培训和应急演练,提高员工应对安全事件的能力,使员工在面对漏洞利用攻击时能够迅速做出反应,降低损失 。
漏洞利用与渗透测试在软件安全领域中扮演着重要角色。了解漏洞利用的危害,掌握渗透测试的方法,采取有效的防范策略,能够帮助我们更好地保障软件安全,抵御恶意攻击,为数字时代的稳定发展筑牢安全防线。
五、渗透测试成功案例分享
(一)某金融机构网络渗透测试
- 项目背景
某金融机构拥有庞大而复杂的网络系统,涵盖核心业务系统、办公网络以及对外服务的 Web 应用等。随着网络安全威胁的日益严峻,为了提前发现自身系统潜在的安全漏洞,避免遭受黑客攻击导致客户信息泄露、资金损失等严重后果,该金融机构决定聘请专业的安全团队进行全面的渗透测试。
- 测试过程
- 信息收集阶段:安全团队利用多种工具和技术,对金融机构的网络进行全方位信息收集。通过 Nmap 扫描,确定了网络中活跃主机的数量、开放的端口以及运行的服务,如发现大量主机开放了常见的金融业务相关端口,如 80(HTTP)、443(HTTPS)用于 Web 服务,1433(MSSQL)用于数据库服务等。同时,使用 Whois 查询获取了金融机构域名的注册信息,包括注册人、注册时间、DNS 服务器等,为后续分析提供基础。还通过搜索引擎对该金融机构的公开信息进行爬取,如官网公布的业务介绍、技术架构文档等,从中获取可能存在的敏感信息。
- 漏洞探测阶段:针对收集到的信息,测试人员使用自动化漏洞扫描工具 OpenVAS 对网络进行扫描,发现了部分主机存在操作系统层面的漏洞,如一些 Windows 服务器未及时安装关键安全补丁,存在 MS17 - 010 永恒之蓝漏洞风险。在 Web 应用方面,通过手工探测和专业的 Web 漏洞扫描工具相结合,发现了多处 SQL 注入漏洞。例如,在某业务查询页面的输入框中,测试人员输入特殊构造的 SQL 语句 “' OR '1'='1”,页面返回了错误信息,显示数据库类型及部分结构信息,初步判断存在 SQL 注入漏洞。进一步深入测试,发现可以通过精心构造的 SQL 语句,获取数据库中的客户账号、密码、交易记录等敏感信息。
- 漏洞利用阶段:对于发现的 SQL 注入漏洞,测试人员使用 SQLMap 工具进行自动化注入攻击。通过 SQLMap,成功获取了数据库的管理员权限,并导出了大量客户敏感数据,验证了漏洞的危害性。对于存在永恒之蓝漏洞的 Windows 主机,测试人员利用公开的漏洞利用代码,尝试在网络中进行横向渗透。虽然该金融机构网络内部设置了一定的访问控制策略,但部分区域由于策略配置不当,使得测试人员能够在获取一台主机权限后,利用漏洞成功入侵到同一子网内的其他主机,扩大了攻击范围。
- 测试成果与意义
此次渗透测试共发现高风险漏洞 15 个,中风险漏洞 30 个,低风险漏洞若干。根据漏洞的危害程度和影响范围,安全团队为每个漏洞提供了详细的修复建议。例如,针对 SQL 注入漏洞,建议开发人员对所有用户输入进行严格的过滤和验证,使用参数化查询代替拼接 SQL 语句;对于未打补丁的操作系统,建议及时更新微软官方发布的安全补丁。通过此次渗透测试,该金融机构及时发现并修复了系统中的安全隐患,避免了潜在的网络攻击风险,保障了客户信息安全和业务的正常运转,同时也提升了自身的网络安全防护水平和应急响应能力。
(二)某电商平台 Web 应用渗透测试
- 项目背景
在电商行业竞争激烈的当下,某电商平台为了确保用户数据安全,提升用户信任度,同时满足相关监管要求,决定开展 Web 应用渗透测试。该电商平台拥有功能丰富的网站和移动端应用,涉及用户注册登录、商品浏览购买、支付结算等多个关键业务环节,任何一个环节出现安全漏洞都可能给平台带来巨大损失。
- 测试过程
- 前期准备:测试团队与电商平台的技术团队进行了充分沟通,明确了测试范围,包括电商平台的主网站、各个子域名下的业务系统以及移动端应用的 Web 接口。获取了平台的基本架构信息,如使用的 Web 服务器类型(Nginx)、应用框架(Spring Boot)、数据库(MySQL)等,为后续针对性测试做准备。
- 漏洞探测:利用 Burp Suite 等工具对 Web 应用进行全面扫描,发现了跨站请求伪造(CSRF)漏洞。在用户修改收货地址功能中,测试人员构造了恶意的 CSRF 链接,当用户在已登录状态下访问该链接时,收货地址被恶意修改为攻击者指定的地址,而用户在不知情的情况下完成了操作。此外,还发现了部分页面存在信息泄露漏洞,例如在错误页面中,会显示详细的服务器内部错误信息,包括代码文件路径、变量值等,这为攻击者进一步挖掘漏洞提供了线索。
- 漏洞验证与利用:对于 CSRF 漏洞,测试人员通过编写 POC(概念验证)代码,成功演示了如何利用该漏洞进行恶意操作,如修改用户订单信息、收货地址等。对于信息泄露漏洞,测试人员利用获取到的服务器内部信息,进一步尝试探测其他潜在漏洞,发现了一处因服务器配置不当导致的目录遍历漏洞,通过构造特殊的 URL 请求,可以访问到服务器上的敏感文件,如数据库配置文件等。
- 测试成果与意义
此次渗透测试共发现各类安全漏洞 20 余个,其中高风险漏洞 5 个。测试团队提交的详细报告中,不仅包含漏洞的具体位置、危害描述,还提供了详细的修复方案。电商平台根据报告迅速组织技术人员进行修复,如在关键操作页面添加 CSRF 防护令牌,对错误页面进行优化,避免显示敏感信息,对服务器进行安全配置加固,防止目录遍历攻击等。通过这次渗透测试,电商平台有效提升了 Web 应用的安全性,增强了用户数据保护能力,为平台的稳定运营和业务发展奠定了坚实基础,同时也向用户展示了平台对安全的重视,提升了用户对平台的信任度。
(三)某政府部门内网渗透测试
- 项目背景
某政府部门负责管理大量涉及民生、政务等重要信息,其内网系统的安全性至关重要。为了加强网络安全防护,及时发现内部网络可能存在的安全隐患,该政府部门委托专业安全机构进行内网渗透测试。
- 测试过程
- 信息收集与侦查:测试人员通过社会工程学手段,如发送伪装成政府内部通知的钓鱼邮件,诱导部分员工点击链接,从而获取了一些员工的账号密码。同时,利用网络扫描工具对政府部门内网进行扫描,发现内部网络采用了分层架构,不同区域之间通过防火墙进行隔离,但部分防火墙规则存在配置不当的情况,导致一些本应限制访问的区域可以被探测到。
- 漏洞发现与利用:在获取到部分员工账号密码后,测试人员尝试登录内部办公系统,成功登录并发现该系统存在权限管理漏洞,普通员工账号可以通过一些操作绕过权限限制,访问到更高权限的文件和数据。进一步在内网中进行横向渗透,发现部分服务器存在弱口令问题,如一些服务器的管理员密码为简单的数字组合,测试人员利用这些弱口令成功登录服务器,并在服务器上发现了大量未加密的敏感文件,包括一些政策文件、内部会议纪要等。
- 权限提升与深度测试:测试人员利用服务器上已有的权限,通过查找系统中的漏洞和配置错误,尝试进行权限提升。例如,在一台 Windows 服务器上,发现了可利用的本地提权漏洞,通过执行特定的漏洞利用程序,将普通用户权限提升到了管理员权限,从而可以对服务器进行更深入的操作和数据访问。
- 测试成果与意义
此次渗透测试为该政府部门敲响了警钟,共发现严重安全问题 10 余个。安全机构提交的报告详细说明了漏洞的发现过程、危害程度以及修复建议。政府部门高度重视,立即采取措施进行整改,如加强员工安全意识培训,杜绝钓鱼邮件的影响;重新梳理和优化防火墙规则,确保网络访问控制的有效性;对所有服务器进行密码强度检查和修改,设置复杂密码策略;修复系统中的权限管理漏洞和本地提权漏洞等。通过此次渗透测试,政府部门完善了内网安全防护体系,有效保障了内部信息的安全,提升了应对网络安全威胁的能力,确保了政务工作的安全稳定运行。
相关文章:

软件安全:漏洞利用与渗透测试剖析、流程、方法、案例
在数字时代,软件已深度融入生活与工作的方方面面,从手机应用到企业核心系统,软件安全至关重要。而漏洞利用与渗透测试,作为软件安全领域中相互关联的两个关键环节,一个是黑客攻击的手段,一个是安全防护的方…...

Haproxy的基础配置
1、参考文档 官方文档:HAProxy version 2.2.22 - Configuration Manual 运维派配置手册:Haproxy-基础配置详解 - 运维派 Haproxy 的配置文件haproxy.cfg由两大部分组成,分别是global和proxies部分。 2、haproxy global 配置 global&…...

考研系列—操作系统:冲刺笔记(1-3章)
目录 第一章 计算机系统概述 1.基本概念 2.内核态和用户态 3.中断(外中断)、异常(内中断-与当前执行的) 4.系统调用 5.操作系统引导程序 2021年真题: 6.操作系统结构 大纲新增 (1)分层结构 (2)模块化 (3)外核 7.虚拟机 第二章 进程管理 1.画作业运行的顺序和甘…...
使用 Docker Compose 部署 Jenkins(LTS 版)持续集成环境
一、前言 Jenkins 是目前最流行的开源持续集成工具之一。本教程将手把手带你使用 Docker Compose 快速部署 Jenkins LTS(长期支持版本),同时保留数据持久化、Docker 命令转发等功能,适合用于生产或本地开发测试环境。 二、环境准…...

Java调用大模型API实战指南
文章目录 前言调用大模型的流程概述和基本原理获取 DeepSeek 的 API keyJava 实现调用大模型 API 的Demo进阶扩展建议 前言 随着大语言模型(如 OpenAI、DeepSeek、通义千问等)的发展,我们可以很方便地用 API 接口调用这些强大的智能助手。在…...
C#中的路由事件(Routed Events)
路由事件的基本概念 路由事件是WPF中特有的事件系统,它允许事件在可视化树中"路由"传递,具有以下特点: 事件路由方向: 冒泡(Tunneling):从事件源向根元素传递 隧道(Bubbling):从根元素向事件源…...
[蓝桥杯]通电
通电 题目描述 2015 年,全中国实现了户户通电。作为一名电力建设者,小明正在帮助一带一路上的国家通电。 这一次,小明要帮助 nn 个村庄通电,其中 1 号村庄正好可以建立一个发电站,所发的电足够所有村庄使用。 现在…...

单片机0-10V电压输出电路分享
一、原理图 二、芯片介绍 GP8101是一个PWM信号转模拟信号转换器,相当于一个PWM信号输入,模拟信号输出的DAC。此 芯片可以将占空比为0%到100%的PWM信号线性转换成0-5V或者0-10V的模拟电压,并且输出电压 精度小于1%。GP8101M可以处理高频调制的…...
从零开始,搭建一个基于 Django 的 Web 项目
🎯 主要步骤概述 1️⃣ 安装 Python 和 pip 2️⃣ 创建虚拟环境 3️⃣ 安装 Django 4️⃣ 创建 Django 项目 5️⃣ 运行开发服务器 6️⃣ 创建一个简单的应用(app) 7️⃣ 配置数据库并迁移 8️⃣ 创建超级用户(admin)…...

大模型模型部署和暴露接口
创建环境 激活案件 安装相关依赖 conda create -n fastApi python3.10 conda activate fastApi conda install -c conda-forge fastapi uvicorn transformers pytorch pip install safetensors sentencepiece protobuf 新建文件夹 mkdir App cd App touch main.py 复制代码…...

2025服装收银系统推荐:智能管理助力服装商家高效经营
在服装批发零售行业,一套高效的收银系统不仅能简化日常经营流程,还能通过数据分析帮助商家优化库存、提升销售。随着AI技术的普及,现代收银系统已不再局限于简单的记账功能,而是能提供智能选品、库存预警、精准营销等进阶服务。 …...

Microsoft Copilot Studio - 尝试一下Agent
1.简单介绍 Microsoft Copilot Studio以前的名字是Power Virtual Agent(简称PVA)。Power Virutal Agent是2019年出现的,是低代码平台Power Platform的一部分。当时Generative AI还没有出现,但是基于已有的Conversation AI技术,即Microsoft L…...

【Python 算法零基础 4.排序 ⑨ 堆排序】
目录 一、问题描述 二、算法对比 1.朴素算法 ① 数组模拟容器 ② 有序数组模拟容器 2.二叉堆 ① 二叉堆特点 ② 数组表示二叉树 ③ 堆 ④ 大顶堆 ⑤ 小顶堆 ⑥ 元素插入 ⑦ 获取堆顶 ⑧ 堆顶元素删除 三、代码分析 1.工具函数 2.调整大顶堆函数 Ⅰ、计算子节点索引 Ⅱ、找出最…...

Deepseek/cherry studio中的Latex公式复制到word中
需要将Deepseek/cherry studio中公式复制到word中,但是deepseek输出Latex公式,比如以下Latex代码段,需要通过Mathtype翻译才能在word中编辑。 $$\begin{aligned}H_1(k1) & H_1(k) \frac{1}{A_1} \left( Q_1 u_1(k) Q_{i1} - Q_2 u_2(k…...
测试设计技术全解析:黑盒与白盒测试的七种武器与覆盖率指标
在软件开发的生命周期中,测试设计技术扮演着至关重要的角色,它直接影响着产品质量和用户体验。测试设计技术主要分为黑盒测试技术和白盒测试技术两大类,它们各有优势和适用场景。黑盒测试技术侧重于从用户视角验证软件功能是否符合需求&#…...
AWS中国区IAM相关凭证自行管理策略(只读CodeCommit版)
目标 需要从CodeCommit读取代码。除了设置AWS托管策略:AWSCodeCommitReadOnly。还需要自定义策略,让用户能够自行管理IAM自己的相关凭证。 IAM自定义策略 {"Version": "2012-10-17","Statement": [{"Sid": &…...
极限复习c++
一、核心语法必背 1. 指针 vs 引用(简答题高频) 区别指针引用定义存储地址的变量,可改指向变量的别名,绑定后不可改初始化可空(nullptr)、延迟初始化必须初始化,不能引用空值访问需解引用&…...
32单片机——窗口看门狗
1、WWDG的简介 WWDG:Window watchdog,即窗口看门狗 窗口看门狗本质上是能产生系统复位信号和提前唤醒中断的递减计数器 WWDG产生复位信号的条件: (1)当递减计数器值从0x40减到0x3F时复位(即T6位跳变到0&a…...
javascript中Cookie、BOM、DOM的使用
Cookie 在客户端存储小型文本数据(通常 ≤ 4KB),常用于会话管理、个性化设置等场景。 名称描述作用生命周期存储位置安全性会话 Cookie临时存储,浏览器关闭后自动删除会话管理、个性化设置浏览器关闭内存高持久 Cookie设置过期时…...

IDEA 中 Undo Commit,Revert Commit,Drop Commit区别
一、Undo Commit 适用情况:代码修改完了,已经Commit了,但是还未push,然后发现还有地方需要修改,但是又不想增加一个新的Commit记录。这时可以进行Undo Commit,修改后再重新Commit。如果已经进行了Push&…...

DAY43打卡
浙大疏锦行 kaggle找到一个图像数据集,用cnn网络进行训练并且用grad-cam做可视化 进阶:并拆分成多个文件 fruit_cnn_project/ ├─ data/ # 存放数据集(需手动创建,后续放入图片) │ ├─ train/ …...

Leetcode 1892. 页面推荐Ⅱ
1.题目基本信息 1.1.题目描述 表: Friendship ---------------------- | Column Name | Type | ---------------------- | user1_id | int | | user2_id | int | ---------------------- (user1_id,user2_id) 是 Friendship 表的主键(具有唯一值的列的组合…...

进程——环境变量及程序地址空间
目录 环境变量 概念 补充:命令行参数 引入 其它环境变量 理解 程序地址空间 引入 理解 虚拟地址存在意义 环境变量 概念 环境变量一般是指在操作系统中用来指定操作系统运行环境的一些参数。打个比方,就像你布置房间,这些参数就类…...
(4-point Likert scale)4 点李克特量表是什么
文章目录 4-point Likert scale 定义4-point Likert scale 的构成4-point Likert scale 的特点4-point Likert scale 的应用场景 4-point Likert scale 定义 4-point Likert scale(4 点李克特量表)是一种常用的心理测量量表,由美国社会心理学…...
亚矩阵云手机实测体验:稳定流畅背后的技术逻辑
最近在测试一款云手机服务时,发现亚矩阵的表现出乎意料地稳定。作为一个经常需要多设备协作的开发者,我对云手机的性能、延迟和稳定性要求比较高。经过一段时间的体验,分享一下真实感受,避免大家踩坑。 1. 云手机能解决什么问…...

VR视频制作有哪些流程?
VR视频制作流程知识 VR视频制作,作为融合了创意与技术的复杂制作过程,涵盖从初步策划到最终呈现的多个环节。在这个过程中,我们可以结合众趣科技的产品,解析每一环节的实现与优化,揭示背后的奥秘。 VR视频制作有哪些…...
NodeJS全栈WEB3面试题——P2智能合约与 Solidity
2.1 简述 Solidity 的数据类型、作用域、函数修饰符。 数据类型: 值类型(Value Types):uint, int, bool, address, bytes1 到 bytes32, enum 引用类型(Reference Types):array, struct, mappin…...
某水表量每15分钟一报,然后某天示数清0了,重新报示值了 ,如何写sql 计算每日水量
要计算每日电量,需处理电表清零的情况。以下是针对不同数据库的解决方案: 方法思路 识别清零点:通过比较当前值与前一个值,若当前值明显变小(如小于前值的10%),则视为清零。分段累计ÿ…...

Ubuntu 系统部署 MySQL 入门篇
一、安装 MySQL 1.1 更新软件包 在终端中执行以下命令,更新系统软件包列表,确保安装的是最新版本的软件: sudo apt update 1.2 安装 MySQL 执行以下命令安装 MySQL 服务端: sudo apt install mysql-server 在安装过程中&…...

【MATLAB代码】制导——平行接近法,三维,目标是运动的,订阅专栏后可直接查看MATLAB源代码
文章目录 运行结果简介代码功能概述运行结果核心模块解析代码特性与优势MATLAB例程代码调整说明相关公式视线角速率约束相对运动学方程导引律加速度指令运动学更新方程拦截条件判定运行结果 运行演示视频: 三维平行接近法导引运行演示 简介 代码功能概述 本代码实现了三维空…...