网站开发学什么语言好做水暖的网站

张小明 2026/1/12 7:30:49
网站开发学什么语言好,做水暖的网站,东莞保安公司电话,传媒公司做网站编辑_如何?文章目录 一、漏洞背景二、实验环境准备三、靶场核心代码实现3.1 核心功能文件#xff08;node_loader.py#xff09;3.2 恶意投毒文件#xff08;custom_nodes/malicious_node.py#xff09; 四、实验执行步骤与结果4.1 实验执行流程4.2 实验结果输出 五、漏洞总结与安全建…文章目录一、漏洞背景二、实验环境准备三、靶场核心代码实现3.1 核心功能文件node_loader.py3.2 恶意投毒文件custom_nodes/malicious_node.py四、实验执行步骤与结果4.1 实验执行流程4.2 实验结果输出五、漏洞总结与安全建议5.1 漏洞核心成因5.2 安全防护建议本文复现了 AI 插件生态中的典型供应链攻击场景攻击者对原本合法的插件包进行投毒在其中植入恶意 Python 代码。当受害者从不受信任渠道下载并部署该被篡改的插件后插件的自动节点加载逻辑在无任何校验的情况下执行恶意代码从而触发远程代码执行RCE。实验通过构建一个模拟靶场展示受害者在正常加载插件时如何被动执行恶意逻辑导致敏感数据被读取、系统命令被执行。一、漏洞背景在当前代码审计场景中AI辅助开发工具的应用日益广泛许多AI插件具备自动加载指定目录文件并完成更新的功能以实现自定义节点扩展等特性。这一便捷性背后潜藏着显著安全风险攻击者通过篡改 / 伪造合法 AI 插件的方式即「插件投毒」在插件包中植入恶意 Python 文件当开发者下载并部署该投毒插件后插件的自动加载逻辑会在无校验的情况下执行恶意代码直接触发远程代码执行RCE 漏洞导致服务器被控制、数据泄露、系统被篡改等严重后果。本文通过构建模拟靶场复现该漏洞的触发过程剖析漏洞成因并提供风险警示。二、实验环境准备本次实验环境搭建简单无需复杂依赖具体要求如下编程语言环境Python 3.7及以上版本依赖说明仅使用Python标准内置库无额外第三方依赖包三、靶场核心代码实现靶场由两部分核心代码构成一是存在漏洞的AI插件节点加载脚本二是用于模拟攻击的恶意文件。以下为完整代码实现代码部分保持原始逻辑未作修改。3.1 核心功能文件node_loader.py该脚本模拟AI插件的自定义节点加载功能通过动态导入指定目录下的Python文件实现节点扩展但未对加载文件的合法性进行任何校验存在明显安全缺陷importosimporttimeimportlogging# 节点映射表# 用于存储自定义节点的类映射关系初始化为空字典NODE_CLASS_MAPPINGS{}# folder_paths 工具类# 模拟自定义节点目录路径获取工具类通过匿名类创建对象# 包含get_folder_paths方法入参x无实际作用返回固定的自定义节点目录列表folder_pathstype(obj,(object,),{get_folder_paths:lambdax:[./custom_nodes]# 当前目录下的custom_nodes文件夹路径})# 导入并执行Python文件defload_custom_node(module_path,base_node_names,module_parentcustom_nodes): 加载指定路径的自定义节点模块 参数: module_path (str): 自定义节点模块的文件路径 base_node_names (set): 加载前已存在的节点名称集合用于对比 module_parent (str): 模块的父包名默认值为custom_nodes 返回: bool: 加载成功返回True失败返回False try:# 拼接模块名父包名 模块文件名去除.py后缀module_namef{module_parent}.{os.path.basename(module_path)[:-3]}# 动态导入模块执行模块内的代码完成节点注册__import__(module_name)returnTrueexceptExceptionase:# 捕获导入过程中的所有异常记录错误日志logging.error(f加载失败{e})returnFalse# 初始化函数definit_external_custom_nodes(): 初始化外部自定义节点 1. 获取当前已注册的节点名称 2. 遍历自定义节点目录加载所有有效Python文件 3. 记录每个节点的加载耗时并输出日志 # 获取加载前节点映射表中的节点名称集合用于后续对比base_node_namesset(NODE_CLASS_MAPPINGS.keys())# 获取自定义节点目录路径列表node_pathsfolder_paths.get_folder_paths(custom_nodes)# 初始化列表用于存储每个节点的加载耗时、路径和加载状态node_import_times[]# 遍历每个自定义节点目录forcustom_node_pathinnode_paths:# 获取目录下的所有文件/文件夹名称列表possible_modulesos.listdir(os.path.realpath(custom_node_path))# 移除__pycache__目录Python编译缓存目录无需处理if__pycache__inpossible_modules:possible_modules.remove(__pycache__)# 遍历目录下的每个文件/文件夹forpossible_moduleinpossible_modules:# 拼接完整的模块文件路径module_pathos.path.join(custom_node_path,possible_module)# 过滤非Python文件如果是文件且后缀不是.py则跳过ifos.path.isfile(module_path)andos.path.splitext(module_path)[1]!.py:continue# 过滤已禁用的节点文件后缀为.disabled的文件ifmodule_path.endswith(.disabled):continue# 记录加载前的时间高精度计时器time_beforetime.perf_counter()# 执行节点加载函数获取加载结果successload_custom_node(module_path,base_node_names)# 计算加载耗时并存入列表耗时、模块路径、加载状态node_import_times.append((time.perf_counter()-time_before,module_path,success))# 如果有加载记录输出每个节点的加载耗时日志iflen(node_import_times)0:logging.info(\nImport times for custom nodes:)# 按加载耗时排序后遍历输出forninsorted(node_import_times):# 根据加载状态拼接提示信息失败则添加导入失败标识import_message (IMPORT FAILED)ifnotn[2]else# 输出格式化日志耗时6位小数 状态提示 模块路径logging.info(%.6f seconds%s: %s%(n[0],import_message,n[1]))# 主程序入口if__name____main__:# 配置日志输出设置日志级别为INFO指定日志格式时间-级别-信息logging.basicConfig(levellogging.INFO,format%(asctime)s - %(levelname)s - %(message)s)# 执行自定义节点初始化函数init_external_custom_nodes()3.2 恶意投毒文件custom_nodes/malicious_node.py在脚本指定的加载目录custom_nodes下植入该恶意文件文件包含两类恶意行为读取服务器敏感文件与执行系统命令用于模拟攻击者的攻击意图。# 恶意代码1读取服务器敏感文件try:withopen(rC:\Users\86177\Desktop\passwd.txt,r)asf:sensitive_dataf.read()print(f\n读取敏感文件内容\n{sensitive_data})exceptExceptionase:print(f\n读取敏感文件失败{e})# 恶意代码2执行系统命令importos resultos.system(dir)print(f\n执行系统命令: \n{result})四、实验执行步骤与结果4.1 实验执行流程1.在当前代码目录下手动创建名为“custom_nodes”的文件夹2.将上述恶意文件“malicious_node.py”放入“custom_nodes”文件夹中3.在终端执行漏洞加载脚本触发节点加载逻辑命令如下python node_loader.py4.2 实验结果输出脚本执行后将同时输出日志信息与恶意代码执行结果典型输出如下敏感文件路径及系统命令结果需结合实际环境结果分析从输出可见漏洞脚本成功加载了恶意文件并执行其中代码——敏感文件“passwd.txt”的内容被读取并打印系统命令“dir”列出目录内容也正常执行证明RCE漏洞已成功触发。五、漏洞总结与安全建议5.1 漏洞核心成因本次复现的RCE漏洞根源在于插件加载机制的安全校验缺失具体表现为两点一是对加载目录下的文件未进行合法性校验无论文件是否为可信节点代码均会被无差别加载二是通过__import__函数动态导入模块时未限制模块的执行权限直接导致恶意代码获得与脚本相同的运行权限。5.2 安全防护建议针对此类AI插件加载漏洞需从文件校验、权限控制等维度构建防护体系核心建议如下1.文件白名单校验仅允许加载符合命名规范、数字签名可信的文件拒绝未知来源文件的加载请求2.代码执行沙箱化将自定义节点的加载与执行置于沙箱环境中限制其文件读取、系统命令执行等敏感权限3.加载日志审计完善插件加载日志记录所有加载文件的路径、时间及执行结果便于异常行为追溯4.目录权限管控严格限制“custom_nodes”等加载目录的写入权限防止攻击者通过非法手段植入恶意文件。通过上述措施可有效降低AI插件自动加载功能带来的安全风险避免因文件投毒引发RCE等严重安全事件。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

太仓有做网站的地方吗深圳网站制作公司 讯

游戏数据导出革命:3步解锁自动化脚本的统计分析能力 【免费下载链接】AzurLaneAutoScript Azur Lane bot (CN/EN/JP/TW) 碧蓝航线脚本 | 无缝委托科研,全自动大世界 项目地址: https://gitcode.com/gh_mirrors/az/AzurLaneAutoScript 还在为繁琐的…

张小明 2026/1/3 2:18:23 网站建设

海尔建设网站的内容广州协会网站建设

一般的介绍通过安装VcXsrv提供XServer。如果经常使用远程终端,并且安装了MobaXTerm,这个软件就已经附带了XServer,可以运行MobaXTerm后,在wsl中export DISPLAY:0.0完成设置。

张小明 2025/12/31 11:35:42 网站建设

数据来源网站怎么做脚注报考二级建造师证需要什么条件

本课时介绍如何让任务睡眠,从而让任务暂停运行指定的时间。 为什么要延时 在实际项目中,我们经常会用到让任务睡眠相关的接口,从而实现以下功能。 避免CPU占用过多(如忙等)控制执行节奏(如LED闪烁、采样…

张小明 2025/12/27 2:35:03 网站建设

建设银行全球门户网站阿里云快速做网站

文章目录具体实现截图主要技术与实现手段关于我本系统开发思路java类核心代码部分展示结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 同行可拿货,招校园代理 小程序springboot校园智能垃圾分类回收预约平台_myez9h59…

张小明 2025/12/26 2:30:39 网站建设

电商网站设计公司力推亿企邦制作静态网站需要什么

项目概述 Vercel AI-Chatbot 是一个基于 Next.js 16 构建的、功能丰富的全栈现代化 Web 应用。其核心特点是深度集成 AI 功能,并具备实时协作、数据管理和代码编辑等复杂能力。 演示视频 下面是一个 Vercel AI-Chatbot 项目的演示视频,展示了应用的主…

张小明 2026/1/1 12:24:06 网站建设

如何找外贸网站建设公司怎么用Visio studio做网站

当你已经通过 LeakCanary 或其他方式获取到 .hprof 文件(堆转储文件),可以使用 Android Studio Profiler 或 MAT (Memory Analyzer Tool) 来深入分析内存泄漏问题。以下是详细操作步骤:✅ 一、准备工作 1. 确保你有 .hprof 文件 通…

张小明 2025/12/27 5:09:46 网站建设