18、越狱

news2024/7/4 5:39:09

一、越狱

1.1 越狱

    • 通过iOS系统安全启动链漏洞,从而禁止掉信任链中负责验证的组件.拿到iOS系统最大权限Root权限

1.2 iOS系统安全启动链

    • 当启动一台iOS设备时,系统首先会从只读的ROM中读取初始化指令,也就是系统的引导程序(事实上所有的操作系统启动时都要经过这一步,只是过程略有不同).这个引导ROM包含苹果官方权威认证的公钥,它会验证底层启动加载器LLB的签名,一旦通过验证后就启动系统.LLB会做一些基础工作,然后验证第二引导程序iBoot.iBoot启动后,设备就可以进入恢复模式或启动内核. 在iBoot验证完内核签名的合法性之后,整个启动程序开始步入正轨: 加载驱动程序、验证驱动程序、检测设备、启动系统守护进程. 这个信任链会确保所有的系统组件都有苹果官方写入、签名、分发、不能来自第三方机构.

  • 越狱的工作原理正是攻击这一信任链.所有的越狱工具的作者都需要找到这一信任链上的漏洞,从而禁止掉信任链中负责验证的组件.拿到iOS系统最大权限ROOT权限.

1.3 完美越狱与非完美越狱

根据越狱的情况不同可以分为如下两种越狱:

  • 完美越狱
    • 所谓完美越狱就是破解iOS系统漏洞之后,每次系统重启都能自动调用注入的恶意代码,达到破坏安全验证,再次获得ROOT权限
  • 非完美越狱
    • 所谓非完美越狱是指,越狱系统后,并没有完全破解安全链,有部分信息或功能应用不佳;比如: 关机以后必须去连接越狱软件来引导开机; 或者重启会导致越狱的实效;这样的越狱称为“不完美越狱”.

1.4 越狱工具

    • uncOver越狱,详情可查看:官方文档
    • Odyssey越狱,详情可查看:官方文档
    • chackra1n越狱
  • 推荐使用 uncOver,下载.ipa包,用重签名脚本直接运行到手机上即可.
  • uncOver中的设置项:
  • Dark Mode:适配暗黑模式
  • Load Tweaks:开启此功能,在越狱激活时,会让越狱顺便加载越狱环境,通常都是维持开启状态。那何时可以关闭呢?当发生装完新插件后,导致插件冲突造成安全模式,那在激活越狱时先将此功能关闭,再激活越狱,就可进入Cydia来移除有冲突的插件
  • Refresh Icon Cache:桌面上暂存的白色图示导致无法删除,通过此功能开启就可清除
  • Disable Auto Updates:屏蔽自动升级,可以关闭iOS内的OTA升级提醒。这功能是no beta alert插件来完成,有装描述档来防堵iOS升级者,不需要删除或关闭,依旧都保持安装描述档和维持打开即可
  • Export TFP0:输出TFP0(不安全)。Export TFP0是iOS一个漏洞,可以让所有App利用此漏洞来获取root权限,因此开发者也特别用括号提醒不安全,没事时候请勿开启
  • Restore RootFs:清理越狱,清除所有插件并且撤销越狱工具注入的文件
  • (Re)Install OpenSSh:重装OpenSSh。有了OpenSSh,可以用来远程连接设备
  • Reinstall Cydia:重装Cydia。如发生激活越狱环境后,造成Cydia闪退或是Cydia消失,可以打开此功能重装Cydia
  • Hide Log Windows:隐藏Log讯息。如果将此功能开启,会导致越狱时,无法看见黑色讯息内的Log信息
  • Share OS Crash Logs:共享操作系统崩溃日志
  • 使用uncOver越狱的好处:
    • 在设置中,选择Restore RootFS,可清理越狱环境,删除所有插件并撤销越狱工具注入的文件
    • 越狱成功后,如果设备重启过,需要使用uncOver重新越狱
    • 在重新越狱过程中,如果屡次失败,可尝试勾选Reinstall Cydia,再进行重新越狱
  • 使用Odyssey越狱,需要注意一点,在断开网络的情况下,开始执行越狱。在越狱过程中,按照提示链接网络。大致流程和uncOver一样.
  • 越狱成功后,在Cydia中,添加常用软件源:
    • 自带源:https://apt.bingner.com/
    • 蜜蜂源:https://apt.cydiami.com/
    • 雷锋源:https://apt.abcydia.com/

二、连接设备

  • 通过OpenSSH插件可以连接手机,进行远程控制,或者传送文件
    • 如果在越狱时,未勾选(Re)Install OpenSSH,需要在越狱成功后,在Cydia中安装OpenSSH。目的是在设备上开启SSH登录服务
    • 安装后,可以在Cydia的已安装中查看

连接设备

    • 通过插件,使用Wifi连接手机: ssh 用户名@手机IP地址
ssh root@192.168.124.12
The authenticity of host '192.168.124.12 (192.168.124.12)' can't be established.
RSA key fingerprint is SHA256:pPnsbMAtXRq2zeZwsMsa2ENP1y4nYLEraoKL1oT8kdM.
This host key is known by the following other names/addresses:
    ~/.ssh/known_hosts:1: 192.168.1.100
    ~/.ssh/known_hosts:3: 192.168.1.101
    ~/.ssh/known_hosts:5: 192.168.0.104
//首次登录,会出现下面提示
Are you sure you want to continue connecting (yes/no/[fingerprint])? y
Please type 'yes', 'no' or the fingerprint: yes
//输入yes后,要求输入密码
Warning: Permanently added '192.168.124.12' (RSA) to the list of known hosts.
root@192.168.124.12's password:
Holothurian6P:~ root#
    • 提示输入密码:
      • 默认密码是: alpine, 这里输入我之前修改过的密码,就成功登录到手机设备上,并且处于设备的root目录下.
  • iOS设备下,有两个用户: root和mobile
    • root用户: 最高权限用户,可以访问任意文件
    • mobile用户: 普通用户,只能访问该用户/var/Mobile目录下的文件
  • 登录手机设备的root用户,可以查看很多隐私内容
    • 例如,查看手机上运行的进程
Holothurian6P:~ root# ps -A
  PID TTY           TIME CMD
    1 ??         0:00.00 /sbin/launchd -s
   35 ??         0:00.00 /usr/libexec/fseventsd
   36 ??         0:00.00 /usr/sbin/mediaserverd
   42 ??         0:00.00 /usr/libexec/configd
   45 ??         0:00.00 /System/Library/CoreServices/powerd.bundle/powerd
   47 ??         0:00.00 /usr/sbin/WirelessRadioManagerd
   53 ??         0:00.00 /usr/libexec/logd
   59 ??         0:00.00 /System/Library/PrivateFrameworks/IDS.framework/identityservices
   61 ??         0:00.00 /usr/sbin/syslogd
   67 ??         0:00.00 /usr/sbin/wirelessproxd
   ......
  • 筛选出指定App的进程
Holothurian6P:~ root# ps -A | grep WeChat
33021 ttys002    0:00.00 grep WeChat
  • 修改登录密码
    • 登录手机设备的默认密码为alpine,使用passwd可以对其进行修改
    • root用户,可以修改所有用户的密码: passwd 用户名
Holothurian6P:~ root# passwd root
Changing password for root.
New password:
Retype new password:
Holothurian6P:~ root#
    • 输入两次新密码,确认修改.因为是登录状态,所以不能输入原始密码
  • 断开设备连接
    • 使用 exit命令,可以断开设备的连接
Holothurian6P:~ root# exit
logout
Connection to 192.168.124.12 closed.

三、OpenSSH

  • OpenSSH是SSH(Secure Shell)协议的免费开源实现,SSH协议可以用来进行远程控制,或在计算机之间传送文件
  • OpenSSH
    • 它是一款软件,应用非常广泛
  • SSH
    • SSH是一种网络协议,用于计算机之间的加密登录
    • 1995年,芬兰学者Tatu Ylonen设计了SSH协议,将登录信息全部加密,成为互联网安全的一个基本解决方案,迅速在全世界获得推广,目前已经成为Linux系统的标准配置
  • 中间人攻击
    • 冒充服务器,将生成的虚假公钥发给客户端。那么它将获得客户端连接服务
    • 中间人:例如手机和电脑连接的黑客WiFi
    • 当手机发送给Mac电脑的公钥被中间人截获,然后由中间人生成一对公钥和私钥,将伪造的公钥转发给Mac电脑
    • Mac电脑会通过伪造的公钥加密登录密码,然后返回给中间人
    • 中间人利用自己的私钥将其解密,使用截获的手机公钥加密,再将其发送给手机流程结束后,用户可以照常登录,但黑客已经截获了登录密码
  • 服务器保护
    • 为了避免中间人攻击,SSH在首次登录时,除了返回公钥,还会给出密钥的SHA256指纹
    • 指纹的作用:服务器生成的有效指纹,会在网站上公布。用户首次登录时,可以人工核对该指纹的合法性。如果返回的指纹和公布的指纹不一致,可能出现中间人的伪造,立刻终止登录行为
    • 首次登录的合法性,需要依靠人工核对。服务器在第一次登录时,会让客户端保存IP地址和公钥
    • 当再次登录时,客户端发现相同IP地址对应的公钥发生变化,会给出疑似中间人攻击的警告,并阻止登录
    • 公钥在Mac端保存的位置: ~/.ssh 目录下的known_hosts文件
vi ~/.ssh/known_hosts

    • 公钥在手机中保存的位置:
Holothurian6P:~ root# cd /etc/ssh
Holothurian6P:/etc/ssh root# ls
moduli  ssh_config  ssh_host_dsa_key  ssh_host_dsa_key.pub  ssh_host_rsa_key  ssh_host_rsa_key.pub  sshd_config
Holothurian6P:/etc/ssh root# cat ssh_host_dsa_key
-----BEGIN OPENSSH PRIVATE KEY-----
b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAABsQAAAAdzc2gtZH
NzAAAAgQCLcTHtWg9VQSoIU3BK7/KX/BGrx8TiGQ7DwetzL1JDgZD9kicN/j8AQY5qcwW6
7vAdNZ4Ht8MqdaK+xJ1pIt3VcaBBHB22B6lMEq0nJz49T1ZqFwUl5mxfHQpGvUOo80eSi7
t9QIjfVJq97yMrp1MbPaKSyk1aG8K6mlHOGoq5PwAAABUA/v+RXpoCKnzt5E5KIuKEPkk5
nCkAAACAZPTqcCg3bXV7NHCxqghSnLnlFBQ1H+KPcnTTBy4WXYaECiWTTfI6ez0ItNTJGz
aN/nna6WyJPfs9iJ6k/jUv0jhjjEWBLbIEZjwk2cMvIk2vEKz0b4eXC5liw/9hmUVCynUq
kTZ8E29AfTC2ACBQ19Xh27jZUaGP63Gq/ZZ5k4IAAACAbEQOb4+mJO3U5FuSv6nH4Rc6Nt
MNylf6Z9sYpGcH5C0Rv3dtR5L1WCx0gRCPOEFhHJaxHGSj5qady2Et+kq+sFI3lDhkNqvx
UOZwkAmSXjq2XqfxRSm5kiLwCrp1dBnr4hd/GjVU1oYNM9ZKSeaJKbedpgWXuJMgyCs6wg
enRJcAAAHYJ5l9mieZfZoAAAAHc3NoLWRzcwAAAIEAi3Ex7VoPVUEqCFNwSu/yl/wRq8fE
4hkOw8Hrcy9SQ4GQ/ZInDf4/AEGOanMFuu7wHTWeB7fDKnWivsSdaSLd1XGgQRwdtgepTB
KtJyc+PU9WahcFJeZsXx0KRr1DqPNHkou7fUCI31Save8jK6dTGz2ikspNWhvCuppRzhqK
uT8AAAAVAP7/kV6aAip87eROSiLihD5JOZwpAAAAgGT06nAoN211ezRwsaoIUpy55RQUNR
/ij3J00wcuFl2GhAolk03yOns9CLTUyRs2jf552ulsiT37PYiepP41L9I4Y4xFgS2yBGY8
JNnDLyJNrxCs9G+HlwuZYsP/YZlFQsp1KpE2fBNvQH0wtgAgUNfV4du42VGhj+txqv2WeZ
OCAAAAgGxEDm+PpiTt1ORbkr+px+EXOjbTDcpX+mfbGKRnB+QtEb93bUeS9VgsdIEQjzhB
YRyWsRxko+amncthLfpKvrBSN5Q4ZDar8VDmcJAJkl46tl6n8UUpuZIi8Aq6dXQZ6+IXfx
o1VNaGDTPWSknmiSm3naYFl7iTIMgrOsIHp0SXAAAAFBwiXHjr9P5dHpeQ7IwD9XmOtqGn
AAAAAAECAw==
-----END OPENSSH PRIVATE KEY-----
Holothurian6P:/etc/ssh root#
  • 免密登录
    • 免密登录:也称之为“公钥登录”
    • 原理:客户端将自己的公钥,储存在远程主机上。登录时,服务器会向客户端发送一段随机的字符串。客户端用自己的私钥加密后,再发回来。服务器用事先储存的公钥进行解密,如果成功,就证明用户是可信的,直接允许登录,不再要求密码
    • 拷贝公钥给SSH服务器: ssh-copy-id 用户名@服务器IP地址
 $ ssh-copy-id root@192.168.124.12
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/Users/chenxi/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@192.168.124.12's password:
Number of key(s) added:        1
Now try logging into the machine, with:   "ssh 'root@192.168.124.12'"
and check to make sure that only the key(s) you wanted were added.
$ ssh 'root@192.168.124.12'
Holothurian6P:~ root#
  • 公钥拷贝成功后,再次登录手机,就可以直接登录,不再要求密码
  • 公钥在Mac端保存的位置:
% cd ~/.ssh
$ ls
id_rsa      id_rsa.pub  known_hosts
$ cat id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC4fYdDP5bzzU5gJEPvbX3P1QCgNPTJFlpUZim3PxlNeJN8I8uFaaTEqmQqXpnpg1ZA8sj6IszNyiyFt23BOIYPUHmlZzkjDYftvItBB7H0gT4qdVwVGEO3HZrQdzc51pE5l8onLyyQkztiy3LXQY4Fe20iwozMxo9wiqQcwzFVlid0Hsl8MKt79rDZ5/HmthovIZmlVTT3hVdUE3EntZ+HTT4QYISOUwXuxeFBAkPzOgWsqCVbEwgdmRHXjBnefDWR39jP/ykDyBkJwUYNk36C41dK6TTg/6XW3m5JLT11/KBddQgiZ/MwPMoLTB86Xzvz7z2bytNDDMOq2cziTDyQ61haYZY3pfK/gqVSVKPLy1FNw+k8fROOBc9C5Pmv/Ee6xTnJYVIxF7hnRLm01fg5mci7Brc8tjlihTuse8YQTxxdReFHA8bCmYhnqS3JRP4mAM1ciPup5jv9xYcoUYqtyMKSETOGV0BpuEJx2sTZ9yjTlXIhWZ+D/ITCp+jyh3k= herrychenx@gmail.com
  • 公钥在手机中保存的位置: ~/.ssh目录下的authorized_keys文件
$ ssh 'root@192.168.124.12'
Holothurian6P:~ root# cd ~/.ssh
Holothurian6P:~/.ssh root# ls
authorized_keys
Holothurian6P:~/.ssh root# cat authorized_keys
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC4fYdDP5bzzU5gJEPvbX3P1QCgNPTJFlpUZim3PxlNeJN8I8uFaaTEqmQqXpnpg1ZA8sj6IszNyiyFt23BOIYPUHmlZzkjDYftvItBB7H0gT4qdVwVGEO3HZrQdzc51pE5l8onLyyQkztiy3LXQY4Fe20iwozMxo9wiqQcwzFVlid0Hsl8MKt79rDZ5/HmthovIZmlVTT3hVdUE3EntZ+HTT4QYISOUwXuxeFBAkPzOgWsqCVbEwgdmRHXjBnefDWR39jP/ykDyBkJwUYNk36C41dK6TTg/6XW3m5JLT11/KBddQgiZ/MwPMoLTB86Xzvz7z2bytNDDMOq2cziTDyQ61haYZY3pfK/gqVSVKPLy1FNw+k8fROOBc9C5Pmv/Ee6xTnJYVIxF7hnRLm01fg5mci7Brc8tjlihTuse8YQTxxdReFHA8bCmYhnqS3JRP4mAM1ciPup5jv9xYcoUYqtyMKSETOGV0BpuEJx2sTZ9yjTlXIhWZ+D/ITCp+jyh3k= herrychenx@gmail.com
Holothurian6P:~/.ssh root#
  • SSH取别名
    • 作为逆向工程师,分别会使用完美越狱和非完美越狱两台手机.在更换设备时,切换登录的过程还是比较麻烦的.
    • 我们可以在 ~/.ssh目录下,创建一个config文件.内部可以配置SSH登录的别名
    • 使用vi config命令,配置config文件
Host 6P
Hostname 192.168.124.12
User root
Port 22
      • Host: 别名
      • Hostname: IP地址
      • User: 用户名
      • Port: 端口号
    • 配置成功,使用别名登录
ssh 6P
Last login: Wed Apr 12 16:58:22 2023 from 192.168.124.13
Holothurian6P:~ root# 

四、总结

越狱概述

  • 通过破解 : iOS安全启动链的漏洞,拿到iOS的root权限
  • 完美越狱:每次系统重新启动,都会再次进入越狱状态
  • 非完美越狱:没有完全破解,一般重启后会失去越狱环境

OpenSSH

  • SSH是一种网络协议
  • OpenSSH是一款软件

SSH登录过程

  • 远程主机(服务器)收到用户的登录请求,将自己的公钥发给客户端
  • 客户端使用公钥,将自己登录的密码加密发送给服务器
  • 远程主机(服务器)使用私钥解密登录密码,如果密码正确,就同意登录

中间人攻击

  • 冒充服务器,将生产的虚拟公钥发送给客户端,它可以截获客户端连接服务器的密码

服务器保护

  • 一般SSH服务器会将自己的Hash值公布在网站上
  • 服务器在第一次登录时,会让客户端保存IP地址和公钥
  • 存放在~/.ssh/known_hosts中

免密登录

  • 使用ssh-copy-id,将公钥拷贝到ssh服务器
  • 原理
    • 客户端将公钥存储到远程服务器
    • 登录时,远程服务器会向客户端发送随机字符串
    • 客户端用自己的私钥加密后,发送给服务器
    • 服务器用事先存储的公钥进行解密,如果成功,就证明用户是可信的,直接允许登录,不再要求密码

SSH取别名

  • ~/.ssh目录中,有一个 config用来配置SSH
  • 配置config文件
    • Host:别名
    • Hostname:IP地址
    • User:用户名
    • Port:端口号

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

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

相关文章

Pytorch深度学习笔记(十一)卷积神经网络CNN

目录 1.概述 2.单通道卷积 3.多通道卷积 4.卷积层常见的参数 5.代码实现(卷积神经网络训练MNIST数据集) 推荐课程:10.卷积神经网络(基础篇)_哔哩哔哩_bilibili 1.概述 全连接神经网络:完全由线性层串…

最佳实践|如何写出简单高效的 Flink SQL?

摘要:本文整理自阿里巴巴高级技术专家、Apache Flink PMC 贺小令,在 Flink Forward Asia 2022 生产实践专场的分享。本篇内容主要分为三个部分: 1. Flink SQL Insight 2. Best Practices 3. Future Works Tips:点击「阅读原文」查…

android之 Launcher改造仿桌面排版的效果

一,背景 1.1 新接手一个灯光控制项目,其页面和效果还是比交复杂的,其中一个功能就是仿苹果桌面来排版灯具,支持拖拽,分组,分页。 拖动图标的时候判断是否空白位置还是已经有占位了,有的话就把…

pikachu靶场-RCE

RCE漏洞概述 可以让攻击者直接向后台服务器远程注入操作系统命令或者代码,从而控制后台系统。 远程系统命令执行 命令执行漏洞(Command Execution)即黑客可以直接在Web应用中执行系统命令,从而获取敏感信息或者拿下shell权限 更…

Linux离线状态下安装cuda、cudnn、cudatoolkit

目录 1. 下载与安装说明2. CUDA安装3. cuDNN安装4. cudatoolkit安装5. 测试安装成功 1. 下载与安装说明 工具包下载地址 CUDA历史版本下载地址:https://developer.nvidia.com/cuda-toolkit-archivecuDNN历史版本下载地址:https://developer.nvidia.com/r…

logback日志框架集成方式

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、logback是什么?二、使用步骤1.使用方式控制台输出配置文件输出配置html输出配置定期删除配置方式 总结 前言 提示:这里可以添加本文…

C++每日一练:最长递增区间 阿波罗的魔力宝石 投篮

文章目录 前言一、最长递增区间二、阿波罗的魔力宝石三、投篮总结 前言 今天的题太简单,甚至 “最长递增区间” 和 “投篮” 就是一个问题。实在没事干,也给做了!直接上代码算了… 提示:以下是本篇文章正文内容 一、最长递增区间…

LSSANet:一种用于肺结节检测的长、短切片感知网络

文章目录 LSSANet: A Long Short Slice-Aware Network for Pulmonary Nodule Detection摘要方法Long Short Slice GroupingLong Short Slice-Aware Network 实验结果 LSSANet: A Long Short Slice-Aware Network for Pulmonary Nodule Detection 摘要 提出了一个长短片感知网…

【JAVA程序设计】(C00130)基于SpringBoot的社区养老医疗综合服务系统

基于SpringBoot的社区养老医疗综合服务系统 项目简介项目获取开发环境项目技术运行截图 项目简介 基于基于SpringBoot的社区养老医疗综合服务系统共分为三个角色:系统管理员、医生、用户 管理员角色包含以下功能: 用户管理、角色管理、部门管理、字典管…

【Java EE】-JavaScript详解

作者:学Java的冬瓜 博客主页:☀冬瓜的主页🌙 专栏:【JavaEE】 分享: 且视他人如盏盏鬼火,大胆地去走你的道路。——史铁生《病隙碎笔》 主要内容:HTML中引入JS的三种方式。JS语法分析,JS是动态弱…

【Linux高级篇】什么是shell脚本,什么是shell变量

目录 🍁什么是shell 🍂什么是shell脚本 🍂shell脚本能做什么 🍂学习shell需要哪些知识 🍂shell基本规范 🍂shell脚本五种运行方式 🍁shell变量 🍂变量命名规范 🍂shell变…

远程登录--SSH 你值得拥有

目录 一:SSH服务详解 1.什么是SSH 2.SSH服务认证类型 1)基于口令认证 2)基于密钥认证 3.SSH安装 二: 配置ssh服务端 1.ssh配置文件 2. ssh配置文件主要条目介绍 三:使用ssh客户端程序 1.使用ssh命令远程登录 ​2.使用scp远程复制 …

8086汇编之DIV除法指令

2023年4月22日,周六晚上。 今晚写汇编作业的时候,遇到了DIV指令,于是把学到的知识记录成一篇博客。此外,刚刚已经写了一篇关于MUL指令的博客了。 除数有8位和16位种,存放在寄存器或者内存中。 当除数为8位&#xff1a…

Linux离线状态下的Anaconda安装与Python环境创建

1 下载与安装说明 下载 下载地址:https://repo.anaconda.com/archive/版本:此处以版本为2020.11的anaconda作示例,其携带的python版本为3.8.5。下载:在上述链接查找下载 Anaconda3-2020.11-Linux-x86_64.sh 文件,也可以…

时序预测 | MATLAB实现WOA-LSTM鲸鱼算法优化长短期记忆网络时间序列预测

时序预测 | MATLAB实现WOA-LSTM鲸鱼算法优化长短期记忆网络时间序列预测 目录 时序预测 | MATLAB实现WOA-LSTM鲸鱼算法优化长短期记忆网络时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 MATLAB实现WOA-LSTM鲸鱼算法优化长短期记忆网络时间序列预测 基于鲸鱼…

图论-匈牙利算法学习

本文讲述的是匈牙利算法,即图论中寻找最大匹配的算法。解决的问题是从二分图中找到尽量多的匹配。 原题-华为-HJ28 素数伴侣 描述 题目描述 若两个正整数的和为素数,则这两个正整数称之为“素数伴侣”,如2和5、6和13,它们能应用…

【Vue】学习笔记-初始化脚手架

初始化脚手架 初始化脚手架说明具体步骤脚手架文件结构 初始化脚手架 说明 Vue脚手架是vue官方提供的标准化开发工具(开发平台)最新版本是4.x文档Vue CLI 具体步骤 如果下载缓慢请配置npm淘宝镜像 npm config set registry http://registry.npm.taoba…

有关态势感知(SA)的卷积思考

卷积是一种数学运算,其本质是将两个函数进行操作,其中一个函数是被称为卷积核或滤波器的小型矩阵,它在另一个函数上滑动并产生新的输出。在计算机视觉中,卷积通常用于图像处理和特征提取,它可以通过滤波器对输入图像进…

《Spring MVC》 第六章 MVC类型转换器、格式化器

前言 介绍MVC类型转换器、格式化器 1、使用场景 <form th:action"{/user/register}" method"post">用户名&#xff1a;<input type"text" name"userName"/><br/>密码&#xff1a;<input type"password&q…

对于Ubuntu服务器杀毒的一次记录

概述&#xff1a;叮咚&#xff01;您的主机有异常登录地&#xff0c;登录ip来自人类文明的标杆美丽国的加利福尼亚州&#xff0c;请注意排查。可恶的老美啊&#xff0c;又来入侵我华夏主机了&#xff0c;美帝亡我之心不死啊&#xff08;当然也有可能是境内中国人通过VPN操作境外…