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

上心师傅的思路分享(二)

                                Druid monitor 与Springboot常见报错界面渗透小技巧

目录

前言

1.Druid monitor介绍

2.Druid未授权(1rank)

 3.druid弱口令

4.Druid进一步利用 

4.1 URL监控 

4.2 Session监控

利用思路

EditThisCookie(小饼干插件)

5.SpringBoot Actuator未授权访问漏洞

5.1 简介

5.2 具体利用

5.3 个人利用方式

5.4 fuzz字典

5.5 使用工具 

1. SpringBoot-Scan

2. 存在误报的情况

3.  出现端点泄露站点

4. 进一步利用

4.1 heapdump泄露

4.2 SwaggerUI泄露

 6.总结


前言

        最近回顾看一下上心师傅在上课时分享的渗透思路,结合我个人的实战案例与利用方式加以总结和记录,其中包含上心师傅上课时讲的我之前遇到过的Springboot报错界面druid的渗透思路以及我自己在springboot界面遇到的漏洞利用方式进行总结,下面的思路中的漏洞都是我遇到过的,刚好进行一波复盘.

                                                                免责声明

        博文中涉及的方法可能带有危害性,博文中的图片中的域名展示仅供参考,并不具有威胁性,仅供安全研究与教学之用,读者将其方法用作做其他用途,由读者承担全部法律及连带责任,文章作者不负任何责任.

下面是上心师傅上课讲的一些思路与我个人当时想到的思路与方式:

1.Druid monitor介绍

     Druid是一个非常好用的数据库连接池,但是他的好并不止体现在作为一个连接池加快数据访问性能上和连接管理上,他带有一个强大的监控工具:Druid Monitor。不仅可以监控数据源和慢查询,还可以监控Web应用、URI监控、Session监控、Spring监控。

想知道如何进行在本地搭建的师傅可以看下面师傅的这篇文章

Druid Monitor监控-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/rgh520219/article/details/103107914#:~:text=Druid%E6%98%AF%E4%B8%80%E4%B8%AA%E9%9D%9E%E5%B8%B8%E5%A5%BD%E7%94%A8%E7%9A%84%E6%95%B0%E6%8D%AE%E5%BA%93%E8%BF%9E%E6%8E%A5%E6%B1%A0%EF%BC%8C%E4%BD%86%E6%98%AF%E4%BB%96%E7%9A%84%E5%A5%BD%E5%B9%B6%E4%B8%8D%E6%AD%A2%E4%BD%93%E7%8E%B0%E5%9C%A8%E4%BD%9C%E4%B8%BA%E4%B8%80%E4%B8%AA%E8%BF%9E%E6%8E%A5%E6%B1%A0%E5%8A%A0%E5%BF%AB%E6%95%B0%E6%8D%AE%E8%AE%BF%E9%97%AE%E6%80%A7%E8%83%BD%E4%B8%8A%E5%92%8C%E8%BF%9E%E6%8E%A5%E7%AE%A1%E7%90%86%E4%B8%8A%EF%BC%8C%E4%BB%96%E5%B8%A6%E6%9C%89%E4%B8%80%E4%B8%AA%E5%BC%BA%E5%A4%A7%E7%9A%84%E7%9B%91%E6%8E%A7%E5%B7%A5%E5%85%B7%EF%BC%9ADruid,Monitor%E3%80%82%20%E4%B8%8D%E4%BB%85%E5%8F%AF%E4%BB%A5%E7%9B%91%E6%8E%A7%E6%95%B0%E6%8D%AE%E6%BA%90%E5%92%8C%E6%85%A2%E6%9F%A5%E8%AF%A2%EF%BC%8C%E8%BF%98%E5%8F%AF%E4%BB%A5%E7%9B%91%E6%8E%A7Web%E5%BA%94%E7%94%A8%E3%80%81URI%E7%9B%91%E6%8E%A7%E3%80%81Session%E7%9B%91%E6%8E%A7%E3%80%81Spring%E7%9B%91%E6%8E%A7%E3%80%82

2.Druid未授权(1rank)

在springboot常见报错界面直接拼接常见路径(可构造未授权拼接尝试):

html:
ip/druid/index.html 		 	##Druid Index
ip/druid/sql.html				##Druid sql监控页面
ip/druid/weburi.html			##Druid Web URI监控页面
ip/druid/websession.html		##Druid Web Session监控页面json:
ip/druid/weburi.json			##Druid Web URI json
ip/druid/websession.json		##Druid Web Session jsonDruid 登录接口:
ip/druid/login.html				##Druid登录认证页面

下面就是springboot常见的爆粗界面

        未授权,就是如下这种情况,经典springboot报错.我通常会尝试拼接/druid看是否会直接进入后台页面,或是出现登录界面

        或是出现登录界面拼接上面路径下对应的下面路径,看能进入出现如下图所示的页面,代表存在druid未授权,1 rank到手

下面的接口路径是url如果是第一条,出现登录界面,可以尝试下面的语句,看是否存在未授权登录

        如下图所示,拼接/druid后出现登录界面,尝试弱口令无法进入,尝试拼接未授权页面,发现进入后台页面

 如果出现登录界面无法弱口令尝试无效时,可尝试通过未授权进入

/druid/login.html/druid/index.html/prod-api/druid/login.html/prod-api/druid/index.html/dev-api/druid/login.html/dev-api/druid/index.html/api/druid/login.html/api/druid/index.html/admin/druid/login.html/admin-api/druid/login.html

 3.druid弱口令

ruoyi/123456 是我个人碰到的常见组合

常见用户:admin ruoyi druid

常见密码:123456 12345 ruoyi admin druid admin123 admin888

4.Druid进一步利用 

                        其中 URL Session Spring这三个我们需要重点关注的监控

4.1 URL监控 

        URL监控可以实时查看别人访问的url路径,这里我们可以去查看有没有一些敏感信息的接口,比如说获取用户信息的一些接口,登录界面(可以和下面进行配合)等

        可惜我当时监控的时候,并没有什么有价值的路径,但是可以耐心等待,如果有管理员或其他用户访问一些重要的信息的接口话,访问后获取到信息就能拿到中危以及高危了,这里接口也比较少,我就尝试了几个

/page/list
/page/info/2
/page/control/params/list/2
/page/control/params/7
/media/video/list/page
/media/video/list
/media/image/list/3
/media/image/list/2
/media/image/list/1

        出现下面的代表有权限访问,并且成功拿到数据,如果出现401显示未授权的话,那就要利用到下面的Session监控了,当然有可能接口时POST请求的话,就要通过burp抓包了 

假如说在url中出现下面两的url

/xx.action

/xxx.do

都可以打一波Struts2最终getshell

低版本默认 shiro 默认 key:kPH+bIxk5D2deziIxcaaaA==

4.2 Session监控

利用思路

        如果出现上面访问接口时出现401如果我们要获取数据,就得想办法拿到更高的权限了,可以通过查看Session监控,因为这个也是实时监控的,所以做好等工作或是上班时间,可能访问的用户会多一些,出现session后,我们可以将页面中的Seesion数据收集起来,通过burp尝试去跑

        如果是未授权进来的话,只需要在跑URL接口的数据时,进行Session遍历,查看是否获取到了数据,我们的目的就是找到管理员或是更高权限的用户的session

        如果是登录界面的,我们可以在登录界面进行抓包,然后将session替换为获取到的session遍历,然后查看是否进入,进入的话我们在进行抓包然后上面的接口获取数据的操作

EditThisCookie(小饼干插件)


                                        具体如何使用可以看下面师傅的这篇博文

EditThisCookie使用-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/ss810540895/article/details/109775087

5.SpringBoot Actuator未授权访问漏洞

         这个漏洞也是Springboot报错页面常见的漏洞之一我也捡到过一个洞,具体利用方式如下

5.1 简介

        Spring Boot Actuator是Spring Boot项目中的一个模块,它提供了一组用于监控和管理Spring Boot应用程序的端点。这些端点可以用来检索应用程序的运行状态、查看应用程序的统计数据、查看应用程序中的配置信息等。此外,还可以使用Actuator执行一些安全操作,如关闭应用程序。使用Actuator可以更好的监控、管理和维护Spring Boot应用程序。

5.2 具体利用

        尝试在报错界面拼接下面的端点,当然如果拼接无法返回数据的话,也有可能是api的路径不对,尝试fuzz目录或是接口,然后再进行拼接

其中以下是它端点:

Http路径描述

get

/autoconfig

提供了一份自动配置报告,记录哪些自动配置条件通过了,哪些没通过

get

/configprops

描述配置属性(包含默认值)如何注入 Bean

get

/beans

描述应用程序上下文里全部的 Bean,以及它们的关系

get

/dump

获取线程活动的快照

get

/env

获取全部环境属性

get

/env/{name}

根据名称获取特定的环境属性值

get

/health

报告应用程序的健康指标,这些值由 HealthIndicator 的实现类提供

get

/info

获取应用程序的定制信息,这些信息由 info 打头的属性提供

get

/mappings

描述全部的 URI 路径,以及它们和控制器(包含 Actuator 端点)的映射关系

get

/metrics

报告各种应用程序度量信息,比如内存用量和 HTTP 请求计数

get

/metrics/{name}

报告指定名称的应用程序度量值

post

/shutdown

关闭应用程序,要求 endpoints.shutdown.enabled 设置为 true(默认为 false)

get

/trace

提供基本的 HTTP 请求跟踪信息(时间戳、HTTP 头等)

get

/heapdump

获取正在运行的JVM的堆转储

5.3 个人利用方式

我个人会尝试选择拼接这个路径,如果出现很多端点,那么OK,可以直接搜索,比较重要的几个端点

        如果设置了 management.endpoints.web.exposure.include 为 *,就可以在 /actuator 看到所有存在的端点,截图如下:

/actuator   

5.4 fuzz字典

 或者尝试使用burp进行fuzz,这种时候不确定路径的时候,需要先找出准确的的API返回路径

如下所示.正常我们是在报错接口的跟路径下尝试,当然也存在可能是在别的路径下进行拼接

http://xxxx.xxx.xxx.xxx:xx/api/actuator
api-docs
actuator
actuator/./env
actuator/auditLog
actuator/auditevents
actuator/autoconfig
actuator/beans
actuator/caches
actuator/conditions
actuator/configurationMetadata
actuator/configprops
actuator/dump
actuator/env
actuator/events
actuator/exportRegisteredServices
actuator/features
actuator/flyway
actuator/health
actuator/healthcheck
actuator/httptrace
actuator/hystrix.stream
actuator/info
actuator/integrationgraph
actuator/jolokia
actuator/logfile
actuator/loggers
actuator/loggingConfig
actuator/liquibase
actuator/metrics
actuator/mappings
actuator/scheduledtasks
actuator/swagger-ui.html
actuator/prometheus
actuator/refresh
actuator/registeredServices
actuator/releaseAttributes
actuator/resolveAttributes
actuator/scheduledtasks
actuator/sessions
actuator/springWebflow
actuator/sso
actuator/ssoSessions
actuator/statistics
actuator/status
actuator/threaddump
actuator/trace
actuator/env.css
artemis-portal/artemis/env
artemis/api
artemis/api/env
auditevents
autoconfig
api
api.html
api/actuator
api/index.html
api/swagger-ui.html
api/v2/api-docs
api/v2;%0A/api-docs
api/v2;%252Ftest/api-docs
api-docs
beans
caches
cloudfoundryapplication
conditions
configprops
distv2/index.html
docs
druid
druid/index.html
druid/login.html
druid/websession.html
dubbo-provider/distv2/index.html
dump
decision/login
entity/all
env
env.css
env/(name)
eureka
flyway
gateway/actuator
gateway/actuator/auditevents
gateway/actuator/beans
gateway/actuator/conditions
gateway/actuator/configprops
gateway/actuator/env
gateway/actuator/health
gateway/actuator/httptrace
gateway/actuator/hystrix.stream
gateway/actuator/info
gateway/actuator/jolokia
gateway/actuator/logfile
gateway/actuator/loggers
gateway/actuator/mappings
gateway/actuator/metrics
gateway/actuator/scheduledtasks
gateway/actuator/swagger-ui.html
gateway/actuator/threaddump
gateway/actuator/trace
gateway/routes
health
httptrace
hystrix
info
integrationgraph
jolokia
jolokia/list
jeecg/swagger-ui
jeecg/swagger/
liquibase
list
logfile
loggers
liquibase
metrics
mappings
monitor
nacos
prod-api/actuator
prometheus
portal/conf/config.properties
portal/env/
refresh
scheduledtasks
sessions
spring-security-oauth-resource/swagger-ui.html
spring-security-rest/api/swagger-ui.html
static/swagger.json
sw/swagger-ui.html
swagger
swagger/codes
swagger/doc.json
swagger/index.html
swagger/static/index.html
swagger/swagger-ui.html
swagger-dubbo/api-docs
swagger-resources
swagger-resources/configuration/ui
swagger-resources/configuration/security
swagger-ui
swagger-ui.html
swagger-ui.html;
swagger-ui/html
swagger-ui/index.html
system/druid/index.html
system/druid/webseesion.html
threaddump
template/swagger-ui.html
trace
users
user/swagger-ui.html
version
v1/api-docs/
v2/api-docs/
v3/api-docs/
v1/swagger-resources
v2/swagger-resources
v3/swagger-resources
v1.1/swagger-ui.html
v1.1;%0A/api-docs
v1.2/swagger-ui.html
v1.2;%0A/api-docs
v1.3/swagger-ui.html
v1.3;%0A/api-docs
v1.4/swagger-ui.html
v1.4;%0A/api-docs
v1.5/swagger-ui.html
v1.5;%0A/api-docs
v1.6/swagger-ui.html
v1.6;%0A/api-docs
v1.7/swagger-ui.html
v1.7;%0A/api-docs
v1.8/swagger-ui.html
v1.8;%0A/api-docs
v1.9/swagger-ui.html
v1.9;%0A/api-docs
v2.0/swagger-ui.html
v2.0;%0A/api-docs
v2.1/swagger-ui.html
v2.1;%0A/api-docs
v2.2/swagger-ui.html
v2.2;%0A/api-docs
v2.3/swagger-ui.html
v2.3;%0A/api-docs
v1/swagger.json
v2/swagger.json
v3/swagger.json
v2;%0A/api-docs
v3;%0A/api-docs
v2;%252Ftest/api-docs
v3;%252Ftest/api-docs
webpage/system/druid/websession.html
webpage/system/druid/index.html
webroot/decision/login
webjars/springfox-swagger-ui/swagger-ui-standalone-preset.js
webjars/springfox-swagger-ui/swagger-ui-standalone-preset.js?v=2.9.2
webjars/springfox-swagger-ui/springfox.js
webjars/springfox-swagger-ui/springfox.js?v=2.9.2
webjars/springfox-swagger-ui/swagger-ui-bundle.js
webjars/springfox-swagger-ui/swagger-ui-bundle.js?v=2.9.2
%20/swagger-ui.html

5.5 使用工具 

1. SpringBoot-Scan

        这款工具是曾哥开发的一款对于Sprinboot未授权访问的一款工具,当然,如果自己没有判断前,可以尝试用这个工具判断一下是否为spring的站

        工具包含对spring的识别,以及进行延时扫,避免扫崩站点,自己写脚本也很简单,但是有写好的好用的工具,当前用工具咯

     工具会将泄露的端点以红色显示出来,无法访问的会以黄色404显示出来,出现紫色的话代表存在页面,但是因为权限的原因,无法获取到信息 

2. 存在误报的情况

如果出现扫描的页面,存在页面长度一致的

3.  出现端点泄露站点

 

4. 进一步利用

4.1 heapdump泄露

 如何进行进一步利用,目前我个人只尝试过两种利用方式,如果下面两个其中之一的端点泄露的话

        尝试搜索一些关键的数据库比如mysql或是redis,看是否存在泄露,会出现脱敏现象,我们需要借助另一个端点,其中redis和mysql数据库等秘钥信息泄露,后面会使用工具将脱敏的秘钥获取到明文,只要能成功接管,那么就是高危

/actuator/./env/actuator/env 
# 这个是进一步利用需要借助的端点 
/actuator/heapdump

                                        下面就通过我遇到过的一个站点做演示 

直接Ctrl+F全局搜索,一些关键的数据库,或是自己一点一点去查看 

redis 

 mysql

 

接下来访问这个路径,进行下载

/actuator/heapdump

Heap Dump文件泄露,访问路径会返回一个GZip压缩的JVM堆dump,其中是jvm heap信息,

null

        尝试使用JVisualVM:JDK 自带工具,供开发者用于监视,故障排除。

null

打开工具在左上角,的文件处将heapdump文件导入,点击堆的概述部分,在概述部分的下面点击系统属性,可以看到一部分敏感信息泄露

null

null

然后点击OQL控制台,然后在查询编辑器中输入select s.value.toString() from java.util.Hashtable$Entry s where /password/.test(s.key.toString())进行查询,可以发现

null

null

        切换至类标签,在下方输入框限制检索条件java.util.Hashtable,点击结果中第一项java.util.Hashtable$Entry

        依次查看其中的敏感信息,然后this后面的值代表第几个实例例如我下面的#494,#498,按照我的经验来基本账户密码信息都在靠后的实例中,发现了root用户,以及最初查询到的密码,还有数据库名

null

null

null

null

null

经过使用不同工具查询,目前根据返回的密码信息,发现返回多个密码信息均为Passw0rd@123

null

        如果想看更加详细的文章的话可以看下面这篇文章,当然很多人接触时会看不懂,我也一样 

【web安全】Spring boot heapdump获取敏感信息_Java_H_InfoQ写作社区icon-default.png?t=N7T8https://xie.infoq.cn/article/a4a4287321b98f5d07febc716

4.2 SwaggerUI泄露

        具体就是这个接口文档泄露,出现接口泄露时,可以通过尝试调用不同接口组合来获取信息,我之前遇到过一个站点,就是通过获取到不同的接口后,需要配合其他接口获取到的id和其他的信息来进一步利用,也可以尝试通过使用工具来进行参数fuzz,当然注意删除和增加的数据接口,不要乱测试

详细的介绍太多了,这里仅做记录,如果需要进一步利用的师傅可以看下面师傅的利用,比较详细

Swagger ui接口自动化批量漏洞测试_swagger 漏洞-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/qq_44159028/article/details/127878364 

/actuator/swagger-ui.html

 6.总结

        对自己之前测试过程中遇到的Springboot页面的常见漏洞进行回顾,同时通过上心师傅的讲解,让我对druid有了进一步利用的思路,之前只是通过简单的未授权和弱口令,对于接口的利用知道但不会利用,慢慢学习,慢慢成长.

相关文章:

上心师傅的思路分享(二)

Druid monitor 与Springboot常见报错界面渗透小技巧 目录 前言 1.Druid monitor介绍 2.Druid未授权(1rank) 3.druid弱口令 4.Druid进一步利用 4.1 URL监控 4.2 Session监控 利用思路 EditThisCookie(小饼干插件) 5.SpringBoot Actuator未授权访问漏洞 5.1 简介 5…...

116页 | 2024年中国金融行业网络安全研究报告(免费下载)

以上是资料简介和目录,如需下载,请前往星球获取!!!...

基于fabric封装一个简单的图片编辑器(vue 篇)

介绍 前言vue demo版本react 版本 前言 对 fabric.js 进行二次封装,实现图片编辑器的核心功能。核心代码 不依赖 ui响应式框架vue ,react 都适用。 只写了核心编辑相关代码便于大家后续白嫖二次开发 核心代码我就没有打包发布 会 和 业务代码一起放到项目中。 vu…...

Linux中 .PHONY 和 all 在 Makefile 中的作用

1 .PHONY 和 all .PHONY 是 GNU make 工具中的一个特殊指令,用于指示某个目标是一个伪目标。伪目标并不对应于实际的文件,而是用来执行一系列命令的标识符。使用 .PHONY 的好处包括避免与现有文件同名造成的冲突,以及提高 make 的执行效率&am…...

Flutter 中的 FlexibleSpaceBar 小部件:全面指南

Flutter 中的 FlexibleSpaceBar 小部件:全面指南 Flutter 是一个由 Google 开发的跨平台 UI 框架,它提供了丰富的组件来帮助开发者构建高性能、美观的移动、Web 和桌面应用。在 Flutter 的组件库中,FlexibleSpaceBar 是一个与 SliverAppBar …...

每天一个数据分析题(三百五十四)-分析报表

分析报表的主要作用是通过可视化图表的形式将各种分析结果完整、准确地呈现给阅读者,帮助阅读者读懂数据,从而进一步发现数据背后隐藏的业务问题。下列说法正确的是? A. 静态报表的主要载体是电子表格工具 B. BI报表的数据源获取方式是应用…...

卫星通信频段有哪些

卫星通信使用到的频段涵盖L, S, C, Ku, Ka等,而最常用的频段是C(4~8GHz)和Ku(12~18GHz)频段,而Ka(27-40GHz)频段是后起之秀。目前地球赤道上空有限的地球同步卫星轨位几乎已被各国占满,C和Ku频段内的频率资源被大量使用,而Ka频段的…...

RobotMaster编程语言:深度探索与实践挑战

RobotMaster编程语言:深度探索与实践挑战 RobotMaster编程语言,作为机器人编程领域的一颗璀璨明珠,其独特性与复杂性吸引了无数探索者的目光。本文将从四个方面、五个方面、六个方面和七个方面深入剖析这一编程语言的奥秘,同时揭…...

Ascend训练软件栈了解

一.分布式大模型训练的完整流程及注意事项 1. 迁移分析 模型选取与约束说明 : 确保模型能在GPU或CPU上运行并获取性能基线,了解不支持场景,如DP模式、APEX库、bmtrain框架等。支持度分析 : 使用msFmkTransplt工具分析模型算子、…...

官网万词霸屏推广 轻松实现百度万词霸屏源码系统 带完整的安装代码包以及搭建教程

系统概述 官网万词霸屏推广源码系统是一款基于先进技术研发的综合性 SEO 工具。它的设计理念是通过智能化的算法和策略,帮助用户快速提升网站在百度等搜索引擎中的排名,实现大量关键词的霸屏效果。该系统整合了多种优化技术,包括关键词研究、…...

Linux 36.3 + JetPack v6.0@jetson-inference之图像分类

Linux 36.3 JetPack v6.0jetson-inference之图像分类 1. 源由2. imagenet2.1 命令选项2.2 下载模型2.3 操作示例2.3.1 单张照片2.3.2 视频 3. 代码3.1 Python3.2 C 4. 参考资料5. 补充5.1 第一次运行模型本地适应初始化5.2 samba软连接 1. 源由 从应用角度来说,图…...

重庆公司记账代理,打造专业财务管理解决方案的领先企业

重庆公司记账代理,作为专业的财务管理服务提供商,我们的目标是为公司的经营管理和决策提供科学、准确的财务数据支持,我们通过长期的专业经验和对市场的深入理解,为您提供一站式的记账服务和财务咨询。 专业团队 我们拥有一支由经…...

transformers 阅读:Llama 模型

正文 学习一下 transformers 库中,Llama 模型的代码,学习过程中写下这篇笔记,一来加深印象,二来可以多次回顾。 笔者小白,里面错误之处请不吝指出。 层归一化 LlamaRMSNorm transformers 中对于 LlamaRMSNorm 类的…...

python绘制piper三线图

piper三线图 Piper三线图是一种常用于水化学分析的图表,它能够帮助我们理解和比较水样的化学成分。该图表由三个部分组成:两个三角形和一个菱形。两个三角形分别用于显示阳离子和阴离子的相对比例,而菱形部分则综合显示了这些离子比例在水样…...

咖啡机器人如何精准控制液位流量

在如今快节奏的生活中,精确控制液位流量的需求愈发迫切,特别是在咖啡机器人等精密设备中。为了满足这一需求,工程师们不断研发出各种先进的技术,以确保液体流量的精准控制。其中,霍尔式流量计和光电式流量计就是两种常…...

Go go-redis应用

go-redis 是 Go 语言的一个流行的 Redis 客户端库,它提供了丰富的功能来与 Redis 数据库进行交互。 1、简单应用 package mainimport ("context""fmt""log""github.com/redis/go-redis/v9" )func main() {ctx : context…...

从混乱到有序:PDM系统如何优化物料编码

在现代制造业中,物料管理是企业运营的核心。物料编码作为物料管理的基础,对于确保物料的准确性、唯一性和高效性至关重要。随着产品种类的不断增加和产品变型的多样化,传统的物料编码管理方式已经不能满足企业的需求。本文将探讨产品数据管理…...

npm发布自己的插件包

要发布自己的插件包到npm,可以按照以下步骤进行操作: 1.创建一个新项目 首先确保你已经安装了Node.js和npm。然后,在你的项目目录中初始化一个新的npm项目:npm init命令会引导你创建一个package.json文件,其中包含你插件包的基本…...

Pygame:新手指南与入门教程

在游戏开发领域,pygame 是一个广受欢迎的 Python 库,它提供了开发二维游戏的丰富工具和方法。这个库让开发者可以较少地关注底层图形处理细节,更多地专注于游戏逻辑和玩法的实现。本文将详细介绍 pygame,包括其安装过程、基本概念、主要功能和一个简单游戏的开发流程。 一…...

动态IP与静态IP的优缺点

在网络连接中,使用动态和静态 IP 地址取决于连接的性质和要求。静态 IP 地址通常更适合企业相关服务,而动态 IP 地址更适合家庭网络。让我们来看看动态 IP 与静态 IP 的优缺点。 1.静态IP的优点: 更好的 DNS 支持:静态 IP 地址在…...

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板,载入页面后,会显示引导弹窗,适用于引导用户使用页面,点击完成后,会显示下一个引导弹窗,直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...

conda相比python好处

Conda 作为 Python 的环境和包管理工具,相比原生 Python 生态(如 pip 虚拟环境)有许多独特优势,尤其在多项目管理、依赖处理和跨平台兼容性等方面表现更优。以下是 Conda 的核心好处: 一、一站式环境管理&#xff1a…...

Linux 文件类型,目录与路径,文件与目录管理

文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...

【网络安全产品大调研系列】2. 体验漏洞扫描

前言 2023 年漏洞扫描服务市场规模预计为 3.06(十亿美元)。漏洞扫描服务市场行业预计将从 2024 年的 3.48(十亿美元)增长到 2032 年的 9.54(十亿美元)。预测期内漏洞扫描服务市场 CAGR(增长率&…...

【第二十一章 SDIO接口(SDIO)】

第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...

[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...

深度学习习题2

1.如果增加神经网络的宽度,精确度会增加到一个特定阈值后,便开始降低。造成这一现象的可能原因是什么? A、即使增加卷积核的数量,只有少部分的核会被用作预测 B、当卷积核数量增加时,神经网络的预测能力会降低 C、当卷…...

让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比

在机器学习的回归分析中,损失函数的选择对模型性能具有决定性影响。均方误差(MSE)作为经典的损失函数,在处理干净数据时表现优异,但在面对包含异常值的噪声数据时,其对大误差的二次惩罚机制往往导致模型参数…...

深入浅出深度学习基础:从感知机到全连接神经网络的核心原理与应用

文章目录 前言一、感知机 (Perceptron)1.1 基础介绍1.1.1 感知机是什么?1.1.2 感知机的工作原理 1.2 感知机的简单应用:基本逻辑门1.2.1 逻辑与 (Logic AND)1.2.2 逻辑或 (Logic OR)1.2.3 逻辑与非 (Logic NAND) 1.3 感知机的实现1.3.1 简单实现 (基于阈…...

Kafka入门-生产者

生产者 生产者发送流程: 延迟时间为0ms时,也就意味着每当有数据就会直接发送 异步发送API 异步发送和同步发送的不同在于:异步发送不需要等待结果,同步发送必须等待结果才能进行下一步发送。 普通异步发送 首先导入所需的k…...