#渗透测试#红蓝攻防#HW#SRC漏洞挖掘01之静态页面渗透
免责声明 本教程仅为合法的教学目的而准备,严禁用于任何形式的违法犯罪活动及其他商业行为,在使用本教程前,您应确保该行为符合当地的法律法规,继续阅读即表示您需自行承担所有操作的后果,如有异议,请立即停止本文章阅读。
目录
一、静态页面的定义
1、静态页面的特点
2、静态页面中的动态效果
二、静态页面安全性考虑
1. 内容管理
2. 数据保护
3. 网络传输
4. 用户输入
5. 服务器配置
三、伪静态
1、伪静态的生成方式
2、伪静态的作用
3、伪静态对SEO的影响
4、伪静态的优缺点
四、伪静态与动静态网站对比
1、静态网站
2、动态网站
五、如何确认一个网站是否是伪静态
1. 查看URL结构
2. 检查页面内容
3. 查看页面源代码
4. 使用在线工具
5. 查看服务器响应头
6. 分析网站的更新频率
举例!!
六、什么是纯静态页面?
七、纯静态页面和静态页面有什么区别
八、纯静态页面的漏洞点
一、静态页面的定义
静态页面,即静态网页,是实际存在的,无需经过服务器的编译,直接加载到客户浏览器上显示出来的页面。它是标准的HTML文件,文件扩展名通常为.htm、.html、.shtml等,可以包含文本、图像、声音、FLASH动画、客户端脚本和ActiveX控件及JAVA小程序等内容。
1、静态页面的特点
- 内容稳定性
- 每个静态网页的内容一经发布到网站服务器上,无论是否有用户访问,其内容都是保存在服务器上的,相对稳定。这一特性使得静态页面容易被搜索引擎检索,就像对常住人口进行管理一样,比较容易获取信息。
- 资源占用与更新管理
- 静态页面需要占一定的服务器空间,且不能自主管理发布更新的页面。如果想要更新网页内容,要通过FTP软件把文件下载下来,再用网页制作软件修改(通过fso等技术例外)1。
- 在没有数据库支持的情况下,网站制作和维护方面工作量较大,所以当信息量很大时完全依靠静态网页制作方式比较困难2。
- 功能交互性
- 静态网页是不含程序和不可交互的网页(相对于动态网页而言),交互性较差,在功能方面有较大的限制3。
- 页面关系
- 静态页面是一对一的关系,一个页面对应一个内容,而动态页面是一对多的关系,可以根据若干参数返回不同的数据1。
2、静态页面中的动态效果
虽然静态页面相对稳定,但也可以出现各种动态的效果,如GIF格式的动画、FLASH、滚动字幕等,容易被误解为只有.htm这类页面才是静态页面,实际上并非完全静态。
二、静态页面安全性考虑
静态页面由于其内容固定,不涉及服务器端的动态执行,因此在某些方面比动态页面更为安全。然而,这并不意味着静态页面完全没有安全问题。以下是一些关于静态页面安全性的考虑:
1. 内容管理
- 文件上传:如果允许用户上传文件到服务器,那么必须小心处理上传的文件,以防止恶意文件被上传并执行。这涉及到对文件类型、大小和内容的严格检查。
- 文件权限:确保服务器上的文件权限设置得当,防止未经授权的用户访问或修改静态页面。
2. 数据保护
- 敏感信息:静态页面不应包含任何敏感信息,如密码、信用卡号等。这些信息一旦被包含在静态页面中,就可能被任何人访问。
- 缓存和日志:服务器的缓存和日志文件可能会记录静态页面的内容,因此需要确保这些文件的安全性,防止敏感信息泄露。
3. 网络传输
- HTTPS加密:使用HTTPS协议来加密数据传输,防止中间人攻击和数据窃听。这不仅可以提高网站的安全性,还可以提升用户对网站的信任度。
- 内容分发网络(CDN):使用CDN可以提高静态页面的加载速度,同时也可以增加一层安全保护,防止DDoS攻击。
4. 用户输入
- 跨站脚本(XSS):虽然静态页面本身不涉及用户输入,但如果页面中包含了用户提供的内容(例如评论、论坛帖子等),则需要小心防止XSS攻击。可以通过转义特殊字符、使用安全的模板引擎等方式来防止XSS攻击。
- URL参数:如果静态页面通过URL参数传递信息,则需要小心防止参数注入攻击。可以通过验证和清理URL参数来防止这种攻击。
5. 服务器配置
- 服务器软件:确保服务器软件(如Apache、Nginx等)是最新版本,并且已经打上了所有的安全补丁。
- 错误页面:配置自定义的错误页面,以防止默认的错误页面泄露服务器信息。
三、伪静态
伪静态是一种将动态网页通过重写URL的方法实现去掉动态网页的参数,但在实际的网页目录中并没有必要实现存在重写的页面的技术。它在SEO优化中具有重要作用,可以帮助搜索引擎更好地抓取网页内容,提高网页的收录率和排名。
1、伪静态的生成方式
伪静态可以通过以下两种主要方式生成:
框架型伪静态:这种方式非常简单且易于识别。它的原理是创建一个静态的主框架页面,然后将动态内容嵌入副框架内。从URL上看,如果整个网站的URL都是一样的,那么就一定是框架伪静态的。
利用组件显示为静态:这种方法的原理较为复杂,它主要是利用一个组件强制性地将asp、aspx、PHP等文件的后缀显示为htm或html。对于用户来说,很难分辨出这些页面实际上是动态的,因为显示的链接确实是以.htm或.html结尾的。
2、伪静态的作用
伪静态的主要作用包括:
迎合搜索引擎:静态化的网页更容易被搜索引擎收录,从而提高网页的可见性和排名。
提高用户信任度:静态页面的URL通常比动态页面的URL更简洁和友好,这有助于提高用户对网页的信任度。
3、伪静态对SEO的影响
在SEO优化中,伪静态可以帮助提高网页的收录率和排名。例如,new_1234.html 比new.aspid=1234 更容易被搜索引擎收录。对于有独立服务器的用户,可以使用ISAPI_Rewrite的方式来写伪静态规则;而对于只有虚拟空间的用户,则可能需要使用一些ASP生成HTML的系统来帮助实现伪静态。
4、伪静态的优缺点
伪静态的优点包括:
- 对搜索引擎友好,容易被收录。
- 提高用户对网页的信任度。
然而,伪静态也有一些缺点:
- 可能会导致网页打开速度变慢,因为伪静态仍然需要读取数据库,并且多了一个重写网址的过程。
- 可能会造成大量的重复页面,因为做了伪静态后,原有的动态页面仍然可以访问。
- 需要服务器支持,这可能会增加成本。
四、伪静态与动静态网站对比
在网站开发和SEO优化中,伪静态、静态和动态网站各有其特点和应用场景。以下是对伪静态与静态、动态网站的对比分析:
1、静态网站
特点
真实存在:每个网页都有真实的物理路径,即每个页面都是一个独立的HTML文件。
加载速度快:因为不需要进行任何运算,服务器可以直接提供页面内容。
利于SEO:静态URL结构简单,易于记忆,且搜索引擎对静态页面的抓取效率较高。
优缺点
优点:
网站打开速度快。
URL结构友好,利于记忆和SEO。
缺点:
中大型网站会产生大量页面,难以管理。
更新和维护相对繁琐。
2、动态网站
特点
逻辑地址:URL只是一个逻辑地址,页面内容是根据用户请求动态生成的。
灵活性高:可以轻松更新和管理内容,适合中大型网站。
优缺点
优点:
适合中大型网站,内容更新方便。
占用硬盘空间较小。
缺点:
页面加载速度相对较慢。
URL结构复杂,不利于记忆和SEO。
伪静态网站
特点
动态生成静态页面:通过URL重写技术,将动态页面伪装成静态页面。
兼具静态和动态的优点:既能提高页面加载速度,又能保持内容的动态更新。
优缺点
优点:
对SEO友好,容易被搜索引擎收录。
提高用户对网页的信任度。
缺点:
可能导致页面加载速度变慢。
可能会造成重复页面,影响SEO效果。
对比总结
特性 静态网站 动态网站 伪静态网站 页面存在形式 真实存在的HTML文件 逻辑地址,动态生成 动态生成,伪装成静态页面 加载速度 快 较慢 较快,但可能受服务器负担影响 SEO友好度 高 中等 高 管理和维护 复杂,需手动更新 简单,内容更新方便 简单,内容更新方便 适用场景 小型网站,内容较少更新 中大型网站,内容频繁更新 中小型网站,需兼顾SEO和内容更新
五、如何确认一个网站是否是伪静态
1. 查看URL结构
伪静态网站的URL通常看起来像静态页面的URL,但实际上是通过服务器端脚本生成的。你可以观察网站的URL是否包含动态参数(如“?”、“=”等),这些参数通常是动态生成的。
2. 检查页面内容
伪静态网站的内容是动态生成的,但看起来像是静态页面。你可以尝试刷新页面,看看内容是否发生变化。如果内容不变,且URL看起来像是静态的,那么这个网站很可能是伪静态的。
3. 查看页面源代码
你可以右键点击页面,选择“查看源代码”或“检查元素”,看看页面的源代码是否包含动态生成的标记。如果源代码中包含大量的动态脚本或数据库查询语句,那么这个网站很可能是伪静态的。
4. 使用在线工具
有一些在线工具可以帮助你检测一个网站是否是伪静态。你可以在搜索引擎中搜索“伪静态检测工具”,然后输入你要检测的网站URL,工具会自动分析并给出结果。
5. 查看服务器响应头
你可以使用浏览器的开发者工具(通常按F12打开)查看服务器的响应头。如果响应头中包含“X-Powered-By”等信息,且显示的是动态脚本语言(如PHP、ASP等),那么这个网站很可能是伪静态的。
6. 分析网站的更新频率
伪静态网站通常会定期更新缓存文件,以确保内容的时效性。你可以观察网站的内容更新频率,如果更新频繁且URL不变,那么这个网站很可能是伪静态的。
举例!!
在渗透测试的时候我们得判断脚本语言,非静态网站的后缀名为脚本语言的后缀,如php、asp、jsp、aspx、py;静态网站的后缀,如html、htm、shtml等。
我们拿CSDN来做例子。
原理: 查看到的时间为当前时间的话, 那么它很有可能是伪静态的, 如果看到的日期是以前的,那么它很可能就是静态页面了。
◆ Chrome浏览器
先用Chrome浏览器打开一个网页如:http://www.xxx.com/ ,等网页完全打开后进入浏览器的控制台,方法:"开发者工具"-“错误控制台”,快捷键:shift+ctrl+J ,然后在控制台里面输入:
alert(document.lastModified);
,按回车键后查看最后修改时间并记录。
错误控制台
Chrome查看网页最后修改时间
多次刷新网页,用同样的方法,比较弹窗的时间,如果都是一样的,那就是真实的静态网页,否则就是伪静态(动态网页)。
六、什么是纯静态页面?
纯静态页面是指完全由HTML、CSS和JavaScript等静态资源组成的网页,这些资源在服务器上以文件形式存在,不需要服务器端动态生成内容。用户请求页面时,服务器直接将这些静态文件发送给客户端浏览器进行渲染。
纯静态页面的特点
快速加载:由于页面内容是预先生成的静态文件,服务器可以直接发送给客户端,减少了服务器处理时间,提高了页面加载速度。
易于缓存:静态页面可以被浏览器缓存,用户再次访问时可以直接从缓存中读取,减少了服务器请求次数。
安全性高:静态页面不涉及服务器端逻辑处理,减少了被攻击的风险。
部署简单:静态页面只需要将文件上传到服务器即可,不需要复杂的配置和部署过程。
纯静态页面的应用场景
内容展示型网站:如企业官网、个人博客、产品展示页面等,这些网站的内容相对固定,适合使用纯静态页面。
静态博客:使用静态博客生成器(如Jekyll、Hugo)生成的博客网站,内容以静态页面的形式存在。
单页应用(SPA):虽然单页应用通常使用JavaScript动态加载内容,但其初始页面和资源文件可以是静态的。
纯静态页面的局限性
内容更新不便:每次更新内容都需要手动修改HTML文件,不适合频繁更新的网站。
缺乏动态功能:无法实现服务器端动态生成的内容,如用户登录、数据库查询等。
SEO优化受限:搜索引擎可能无法很好地抓取动态生成的内容,影响SEO效果。
如何生成纯静态页面
手动编写:直接使用HTML、CSS和JavaScript编写页面。
静态站点生成器:使用工具如Jekyll、Hugo、Gatsby等,将Markdown或其他格式的内容转换为静态HTML页面。
前端框架:使用Vue.js 、React等前端框架构建单页应用,并通过构建工具(如Webpack)生成静态文件。
纯静态页面的未来趋势
随着前端技术的发展,纯静态页面结合现代前端框架和静态站点生成器,可以实现更复杂的功能和更好的用户体验。同时,静态页面与无服务器架构(Serverless)结合,可以进一步简化部署和扩展。
七、纯静态页面和静态页面有什么区别
纯静态页面和静态页面在概念上有一些细微的区别,尽管它们在很多情况下会被混为一谈。以下是它们的主要区别:
静态页面
静态页面指的是那些内容在生成后不会改变的网页,除非手动修改页面代码。静态页面可以是纯HTML文件,也可以包含一些客户端脚本(如JavaScript),但这些脚本在页面加载后不会改变页面的基本内容。静态页面的内容是固定的,不会根据用户请求或时间变化而变化。
纯静态页面
纯静态页面则更为严格,通常指的是那些完全由HTML代码构成,没有任何服务器端脚本或动态内容的网页。纯静态页面的内容在生成后是完全固定的,不会有任何变化,除非手动修改HTML文件。
区别总结
内容可变性:
静态页面: 可以包含一些客户端脚本,这些脚本可以在页面加载后执行,产生一些动态效果,但页面的基本内容是固定的。
纯静态页面: 完全没有动态内容,所有内容都是固定的HTML代码。
生成方式:
静态页面: 可以通过服务器端脚本生成,但一旦生成,内容就不会改变。
纯静态页面: 直接由HTML代码构成,没有任何服务器端脚本参与。
交互性:
静态页面: 可以包含一些简单的交互功能,如表单验证、图片轮播等,这些功能由客户端脚本实现。
纯静态页面: 没有任何交互功能,所有内容都是静态的。
适用场景
静态页面: 适用于需要一些简单交互功能,但主要内容是固定的网站。
纯静态页面: 适用于内容完全固定,不需要任何交互功能的网站。
八、纯静态页面的漏洞点
尽管纯静态页面相比动态页面来说更为安全,但这并不意味着它们完全没有漏洞点。以下是一些可能存在的漏洞点:
点击劫持(Clickjacking):
纯静态页面即使没有服务器端逻辑,也可能成为点击劫持的目标。攻击者可以通过嵌入透明或半透明的iframe,诱使用户点击某个按钮,从而触发恶意操作。
跨站脚本(XSS):
虽然纯静态页面不涉及服务器端数据处理,但如果页面中包含了用户输入的数据(如URL参数、Referer头信息等),且这些数据未经过适当的转义和过滤,就可能被用于注入恶意脚本,导致XSS攻击。
DOM-based XSS:
即使页面是静态的,如果前端JavaScript代码在处理DOM时不当,比如直接将用户可控的数据插入到DOM中,也可能导致DOM-based XSS漏洞。
文件包含漏洞:
静态页面中如果使用了文件包含机制(如SSI,Server-Side Includes),且包含的文件路径可控,可能会导致文件包含漏洞,允许攻击者包含恶意文件。
物理路径泄露:
静态页面在某些情况下可能会泄露服务器的物理路径,这虽然不是直接的安全漏洞,但可以为攻击者提供有用的信息,帮助他们进行进一步的攻击。
不安全的文件上传:
如果静态页面允许用户上传文件,而这些文件没有经过适当的验证和过滤,可能会导致恶意文件上传,进而引发安全问题。
内容篡改:
如果静态页面的文件在服务器上没有得到妥善保护,攻击者可能会直接篡改这些文件的内容,导致页面显示错误信息或恶意代码。
第三方库和插件:
静态页面中使用的第三方库和插件可能存在安全漏洞,如果这些漏洞未及时修复,可能会被攻击者利用,导致安全问题。
利用点:
对搜索框进行测试(注入测试)
对登录处进行测试(万能密码、注入)
对站点进行目录扫描(发现其他突破口)
未完待续~~~!!!!
相关文章:
#渗透测试#红蓝攻防#HW#SRC漏洞挖掘01之静态页面渗透
免责声明 本教程仅为合法的教学目的而准备,严禁用于任何形式的违法犯罪活动及其他商业行为,在使用本教程前,您应确保该行为符合当地的法律法规,继续阅读即表示您需自行承担所有操作的后果,如有异议,请立即停…...
开源POC库推荐
声明 学习视频来自 B 站UP主泷羽sec,如涉及侵权马上删除文章。 笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负。 ✍🏻作者简介:致…...
深度学习每周学习总结J6(ResNeXt-50 算法实战与解析 - 猴痘识别)
🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 | 接辅导、项目定制 目录 0. 总结ResNeXt基本介绍 1. 设置GPU2. 导入数据及处理部分3. 划分数据集4. 模型构建部分5. 设置超参数:定义损失函数&…...
用vite下载的react + TS的项目,组件会调用两次
解决方案: 去掉main.tsx文件中的StrictMode...
STM32F4----DCA数字量转换成模拟量
STM32F4----DCA数字量转换成模拟量 基本原理 上一节讲诉了ADC的具体原理与程序搭建https://blog.csdn.net/qq_35970934/article/details/143999874?spm1001.2014.3001.5501。这节讲DAC的原理和程序,在实际应用中,我们经常需要调节电压的输出大小&…...
springboot3如何集成knife4j 4.x版本及如何进行API注解
1. 什么是Knife4j knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案, 取名knife4j是希望她能像一把匕首一样小巧,轻量,并且功能强悍!knife4j的前身是swagger-bootstrap-ui,swagger-bootstrap-ui自1.9.6版本后,正式更名为knife4j为了契合微服务的架构发展,由于原来…...
【Linux网络 (二)】套接字编程
Linux: 网络 一、前言二、端口号 (port)1)port、套接字概念2)端口号 vs 进程id3)端口号和进程关系 三、认识TCP/Udp协议1)连接性解释2)可靠性解释3)面向数据报/字节流解释 四、网络字节序五、struct sockad…...
SQL 语句执行计划中的连接方式
SQL 语句执行计划中的连接方式 join操作 join操作基本分为3大类:外连接(细分为:左连接(Left outer join/ left join)、右连接(right outer join/ right join)、全连接(full outer …...
3、集线器、交换机、路由器、ip的关系。
集线器、交换机、路由器三者的关系 1、集线器2、交换机(每个交换机是不同的广播域,ip地址起到划分广播域的作用)3、 路由器4、ip地址 1、集线器 一开始两台电脑通信就需要网线就可以,但是三台或者更多主机通信时,就需…...
OpenCV相机标定与3D重建(3)校正鱼眼镜头畸变的函数calibrate()的使用
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 cv::fisheye::calibrate 函数是 OpenCV 中用于校正鱼眼镜头畸变的一个重要函数。该函数通过一系列棋盘格标定板的图像来计算相机的内参矩阵和畸变…...
【论文笔记】LLaVA-KD: A Framework of Distilling Multimodal Large Language Models
Abstract 大语言模型(Large Language Models, LLM)的成功,使得研究者为了统一视觉和语言的理解去探索多模态大预言模型(Multimodal Large Language Models, MLLM)。 但是MLLM庞大的模型和复杂的计算使其很难应用在资源受限的环境,小型MLLM(s-MLLM)的表现…...
C++内存管理和模板
文章目录 1. C内存管理1.1 new1.1.1 内置类型1.1.2 自定义类型1.1.3 定位new表达式1.1.4 new的优势与不足1.1.5 new的原理 1.2 delete1.2.1 内置类型1.2.2 自定义类1.2.3 delete和free1.2.4 delete原理 1.3 new和delete的对应1.3.1 内置类型1.3.2 自定义类型 2. 模板2.1 函数模…...
Docker 容器化开发 应用
Docker 常用命令 存储 - 目录挂载 存储 卷映射 自定义网络 Docker Compose语法 Dockerfile - 制作镜像 镜像分层机制 完结...
element-plus教程:Input Number 数字输入框
一、基础用法 要使用Input Number数字输入框,只需要在<el-input-number>元素中使用v-model绑定变量即可。例如: <template><el-input-number v-model"value" /> </template><script lang"ts" setup>…...
【Go语言成长之路】编写web应用
文章目录 编写Web应用一、介绍二、创建项目2.1 创建wiki数据结构2.2 介绍net/http包(小插曲)2.3 使用 net/http 提供 wiki 页面2.4 编辑Pages2.5 html/template包2.6 处理不存在的页面2.7 保存页面2.8 错误处理2.9 模板缓存2.10 验证2.11 函数文字和闭包…...
Java 对象头、Mark Word、monitor与synchronized关联关系以及synchronized锁优化
1. 对象在内存中的布局分为三块区域: (1)对象头(Mark Word、元数据指针和数组长度) 对象头:在32位虚拟机中,1个机器码等于4字节,也就是32bit,在64位虚拟机中࿰…...
安宝特分享 | 如何利用AR技术革新医疗实践:从远程急救到多学科协作
AR技术在国内外医院的应用 在现代医疗环境中,患者面临的挑战依然严峻:看病难、看病远、看病急。这些问题不仅影响了患者的治疗效果,也让医务工作者倍感压力。幸运的是,随着增强现实(AR)技术的发展…...
小米note pro一代(leo)线刷、twrp、magisk、TODO: android源码编译
本文主要说android5 整体思路 android 5.1 twrp magisk Zygisk(Riru) Dreamland(xposed) Riru不支持android5.1, 因此只能选择Zygisk : 如果你正在使用 Android 5,你必须使用 Zygisk 因为 Riru 并不支持 Android 5. 基于magisk之上的xposed 其中提到的 作者…...
vue2-基础核心
vue简介 动态构建用户界面的渐进式 JavaScript 框架 vue的特点: 遵循MVVM模式 采用组件化模式,提高代码复用率,让代码更好维护 声明式编码,无需直接操作DOM,提高开发效率,编码简洁、体积小,运行效率高 本…...
使用 前端技术 创建 QR 码生成器 API1
前言 QR码(Quick Response Code)是一种二维码,于1994年开发。它能快速存储和识别数据,包含黑白方块图案,常用于扫描获取信息。QR码具有高容错性和快速读取的优点,广泛应用于广告、支付、物流等领域。通过扫…...
天云数据参编行业标准|《Maas模型服务协议要求》标准正式发布
随着各行业对大模型的应用需求日益增多,模型即服务(MaaS)发展迅速,MaaS将AI模型以服务的方式提供给用户,降低模型使用门槛。当前产业界已推出诸多MaaS产品,并集成和提供了大量模型服务,然而对于…...
观察者模式和订阅模式
观察者模式和订阅模式在概念上是相似的,它们都涉及到一个对象(通常称为“主题”或“发布者”)和多个依赖对象(称为“观察者”或“订阅者”)之间的关系。然而,尽管它们有相似之处,但在某些方面也…...
Mac设置java环境变量
Mac电脑中存在多个jdk版本,如何配置java环境变量为指定版本jdk? 一、查看所有已安装的 JDK 版本 /usr/libexec/java_home -V二、临时设置 export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)三、永久设置 如果需要永久使用指定版...
Sentinel服务保护
Sentinel是阿里巴巴开源的一款服务保护框架,目前已经加入SpringCloudAlibaba中。官方网站: home | Sentinel Sentinel 的使用可以分为两个部分: 核心库(Jar包):不依赖任何框架/库,能够运行于 Java 8 及以…...
Linux内核USB2.0驱动框架分析--USB包
一, 包的组成 每个包都由SOP(包起始域)、SYNC(同步域)、Packet Content(包内容)、EOP(包结束域)四部分组成,其中SOP、SYNC、EOP为所有包共有的域,…...
SpringCloud Gateway转发请求到同一个服务的不同端口
SpringCloud Gateway默认不支持将请求路由到一个服务的多个端口 本文将结合Gateway的处理流程,提供一些解决思路 需求背景 公司有一个IM项目,对外暴露了两个端口8081和8082,8081是springboot启动使用的端口,对外提供一些http接口…...
win10局域网加密共享设置
1、创建共享账户 我的电脑右键选择管理 选择本地用户和组 -> 用户 双击用户 在空白区域右键,新建用户 然后创建用户 点击创建后 2、设置网络 右下角网络右键...
论文阅读——Performance Evaluation of Passive Tag to Tag Communications(一)
文章目录 摘要一、互耦对监听器标签输入阻抗的影响A. 无限细偶极子互阻抗的理论研究B. 电细偶极子的情况:理论与模拟C. 印刷偶极子的情况:电磁模拟与测量 二、T2T 通信系统的性能评估总结 论文来源:https://ieeexplore.ieee.org/document/970…...
Docker Registry(镜像仓库)详解
Docker Registry(镜像仓库)详解 Docker Registry,即Docker镜像仓库,是Docker生态系统中一个至关重要的组件。它负责存储、管理和分发Docker镜像,为Docker容器提供镜像资源。本文将深入探讨Docker Registry的功能、结构…...
17. 【.NET 8 实战--孢子记账--从单体到微服务】--记账模块--主币种设置
记账模块是我们项目的核心模块,也是用户使用最多的模块,因此这个模块的东西比较多,我们要分为多个部分编写代码。 一、需求 币种设置的需求涉及到了我们前面编写的代码,我们来具体看一下需求。 编号需求说明1主币种设置1. 用户…...
ChatPaper.ai:通过阅读文献高效学习英语的新思路
前言 作为一名学习者,我们常常会遇到这样的困境:想提高英语水平,但单纯背单词缺乏语境;想读专业文献,却被英语障碍所困扰。今天我要分享一个工具 ChatPaper.ai,它让我找到了将英语学习和专业阅读完美结合的…...
.NET9 - 新功能体验(二)
书接上回,我们继续来聊聊.NET9和C#13带来的新变化。 01、新的泛型约束 allows ref struct 这是在 C# 13 中,引入的一项新的泛型约束功能,允许对泛型类型参数应用 ref struct 约束。 可能这样说不够直观,简单来说就是Span、ReadO…...
探索Python PDF处理的奥秘:pdfrw库揭秘
文章目录 探索Python PDF处理的奥秘:pdfrw库揭秘1. 背景:为何选择pdfrw?2. pdfrw是什么?3. 如何安装pdfrw?4. 五个简单的库函数使用方法4.1 读取PDF信息4.2 修改PDF元数据4.3 旋转PDF页面4.4 提取PDF中的图片4.5 合并P…...
网络爬虫——爬虫项目案例
本节将全面讲解如何通过实战爬虫项目解决复杂问题。结合最新技术和实际开发需求,案例将涵盖完整开发流程,包括需求分析、实现代码、优化方法和常见问题解决。力求实现高效、可扩展的爬虫项目架构,帮助开发者提升实战能力。 案例 1:…...
JAVA中的Lamda表达式
JAVA中的Lamda表达式 Lambda 表达式的语法使用场景示例代码1.代替匿名内部类2. 带参数的 Lambda 表达式3. 与集合框架结合使用4. 使用 Stream 操作 总结 Java 的 Lambda 表达式是 Java 8 引入的一个新特性,用于简化代码,特别是在处理函数式编程时。Lambd…...
经典游戏:飞机大战游戏python设计与实现
《飞机大战》是一款经典的二维飞行射击游戏,其核心玩法是控制玩家飞机与敌机作战,通过击落敌机获取分数并尽量避免被敌机击中。根据提供的代码,飞机大战的设计和实现可以分为以下几个主要部分:游戏初始化、游戏界面设计、玩家控制…...
网络爬虫——常见问题与调试技巧
在开发网络爬虫的过程中,开发者常常会遇到各种问题,例如网页加载失败、数据提取错误、反爬机制限制等。以下内容将结合实际经验和技术方案,详细介绍解决常见错误的方法,以及如何高效调试和优化爬虫代码。 1. 爬虫过程中常见的错误…...
深入理解TensorFlow中的形状处理函数
摘要 在深度学习模型的构建过程中,张量(Tensor)的形状管理是一项至关重要的任务。特别是在使用TensorFlow等框架时,确保张量的形状符合预期是保证模型正确运行的基础。本文将详细介绍几个常用的形状处理函数,包括get_…...
macOS 无法安装第三方app,启用任何来源的方法
升级新版本 MacOS 后,安装下载的软件时,不能在 ”安全性与隐私” 中找不到 ”任何来源” 选项。 1. 允许展示任何来源 点击 启动器 (Launchpad) – 其他 (Other) – 终端 (Terminal): 打开终端后,输入以下代码回车: …...
Leetcode148. 排序链表(HOT100)
链接 我写的错误代码: class Solution { public:ListNode* sortList(ListNode* head) {if (!head || !head->next)return head;ListNode* fast head;ListNode* slow head;while (fast&&fast->next) {fast fast->next->next;slow slow->…...
Linux线程_线程互斥_线程同步
一.线程互斥 1.进程线程间的互斥相关概念 临界资源:多线程执行流共享的资源就叫做临界资源临界区:每个线程内部,访问临界资源的代码,就叫做临界区互斥:任何时刻,互斥保证有且只有一个执行流进入临界区&…...
【Spiffo】环境配置:VScode+Windows开发环境
摘要: 在Linux下直接开发有时候不习惯快捷键和操作逻辑,用Windows的话其插件和工具都更齐全、方便,所以配置一个Windows的开发环境能一定程度提升效率。 思路: 自己本地网络内远程连接自己的虚拟机(假定用的是虚拟机…...
DevExpress控件 基本使用
DevExpress控件 一、DevExpress简介 1、所有编辑器的公共功能 全部都可以绑定数据; 全部都可以独立使用或用于由 Developer Express 提供的容器控件 (XtraGrid、XtraVerticalGrid、XtraTreeList 和 XtraBars) 内的内置编辑; 全部都使用相同的样式、外…...
设计模式——装饰器模式
装饰器模式是结构型设计模式,在Python中有一个非常著名的装饰器wrapper,它的实现方法就是使用了该设计模式,装饰器可以修饰类也可以修饰函数。 从类的设计上说,他的本质是在不定义子类的情况下动态的给对象添加一些额外的功能。举…...
【编程题目】列表、元组及集合
一.列表的题目 题目1:列表反转与排序 描述:给定一个整数列表,首先反转该列表,然后对其进行升序排序。最后输出处理后的列表。输入:一个整数列表,例如 [3, 1, 4, 1, 5, 9]输出:处理后的列表,例如 [1, 1, 3, 4, 5, 9]示例:input_list = [3, 1, 4, 1, 5, 9] # 你的代码 …...
【大数据学习 | Spark-Core】RDD的缓存(cache and checkpoint)
1. 单应用缓存:cache 1.1 cache算子 cache算子能够缓存中间结果数据到各个executor中,后续的任务如果需要这部分数据就可以直接使用避免大量的重复执行和运算。 rdd 存储级别中默认使用的算子cache算子,cache算子的底层调用的是persist算子…...
自主研发,基于PHP+ vue2+element+ laravel8+ mysql5.7+ vscode开发的不良事件管理系统源码,不良事件管理系统源码
不良事件上报系统源码,不良事件管理系统源码,PHP源码 不良事件上报系统通过 “事前的人员知识培训管理和制度落地促进”、“事中的事件上报和跟进处理”、 以及 “事后的原因分析和工作持续优化”,结合预存上百套已正在使用的模板࿰…...
哈希表理解与底层模拟实现
内容摘要 本文内容包括红黑树和哈希表的性能比较逻辑分析及实现、哈希表的概念、哈希表映射关系建立的最常用的两种方法直接地址法和除留余数法介绍、介绍了哈希冲突的原因以及解决解决哈希冲突的方法、负载因子的概念、哈希表的扩容、开散列实现哈希表的思路及代码实现、闭散列…...
docker compose的安装和使用
1. Docker Compose 简介 Docker Compose 是一个工具,用于定义和运行多容器的 Docker 应用。通过编写一个 docker-compose.yml 文件,可以一次性启动所有容器,并且方便管理容器之间的依赖。 2. 安装 Docker Compose 前提条件 确保已安装 Do…...
17种Kubernetes安全检测工具详解
随着Kubernetes的广泛应用,确保其安全性就显得尤为重要。好在现有很多优秀的安全检测工具,可以帮助我们发现和修复Kubernetes集群中的安全隐患。本文将全面介绍17种常用的Kubernetes安全检测工具。 Kube-benchKube-hunterKubesec.ioTrivyKube-auditKube-secKube-vulnkube-scana…...