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

常用Nmap脚本

端口扫描类脚本
Nmap是一款非常流行的端口扫描工具,它可以帮助渗透测试工程师识别目标网络上开放的端口,并提供有关这些端口的详细信息。Nmap还提供了一系列基于脚本的功能,这些脚本可以扩展Nmap的功能,使其能够更深入地探测目标网络上的漏洞。在本文中,我们将讨论Nmap端口扫描类脚本的使用方法和一些常见的用例,以帮助渗透测试工程师更好地了解如何使用这些脚本。

一、Nmap端口扫描

在开始讨论Nmap的端口扫描类脚本之前,我们需要了解一些Nmap的基础知识。Nmap是一款开源的端口扫描工具,它可以帮助渗透测试工程师扫描目标网络上的主机和端口,并提供详细的信息,例如主机操作系统类型、开放的端口和服务等。Nmap支持多种扫描类型,包括TCP SYN扫描、TCP Connect扫描、UDP扫描和SCTP INIT扫描等。通过使用这些扫描类型和Nmap的一些高级选项,渗透测试工程师可以识别目标网络上的漏洞和安全问题。

Nmap的基本用法非常简单,只需要在命令行中输入要扫描的目标IP地址或主机名即可。例如,要扫描IP地址为192.168.1.1的主机,可以使用以下命令:

nmap 192.168.1.1

这将执行一个标准的TCP SYN扫描,扫描目标主机上所有开放的TCP端口,并输出结果到命令行界面。如果要执行更高级的扫描,可以使用Nmap的一些选项,例如:

nmap -sS -p 1-65535 -A -T4 192.168.1.1

这将执行一个更复杂的扫描,包括TCP SYN扫描、端口范围从1到65535、操作系统探测和版本检测,并使用T4速度级别来加快扫描速度。

二、Nmap端口扫描类脚本

Nmap的一个强大功能是其基于脚本的扩展能力。Nmap提供了大量的端口扫描类脚本,这些脚本可以帮助渗透测试工程师识别目标网络上的漏洞和安全问题。这些脚本通常是由社区成员编写的,它们可以通过Nmap的脚本引擎执行,以增强扫描结果和提高渗透测试工程师的效率。

Nmap的脚本引擎是一个内置的解释器,它可以加载和执行Nmap脚本。脚本通常是用Lua编写的,这是一种快速而灵活的脚本语言。通过使用脚本引擎,渗透测试工程师可以在扫描期间执行自定义的脚本,以扩展Nmap的功能和提供更多的信息。

Nmap的端口扫描类脚本通常被组织成不同的类别,例如“安全”、“漏洞”、“服务识别”和“脆弱性”等。每个类别都包含一系列脚本,这些脚本可以帮助渗透测试工程师识别目标网络上的不同类型的漏洞和安全问题。下面介绍几个常见的脚本类别和它们的用例。

  1. 安全类脚本

安全类脚本通常用于检测目标网络上的一些安全设置和配置,例如防火墙规则、IDS/IPS检测、SSL配置和弱口令等。这些脚本可以帮助渗透测试工程师识别目标网络上的安全问题,并提供有关这些问题的详细信息。

例如,以下是一些安全类脚本的示例:

  • firewall-bypass.nse:尝试绕过目标网络上的防火墙规则,以探测隐藏的服务和开放的端口。
  • http-enum.nse:枚举目标网络上的Web服务器,并识别它们的配置和漏洞。
  • ssl-enum-ciphers.nse:识别目标网络上的SSL配置,并检查是否存在弱加密算法和证书问题。
  • ssh-brute.nse:尝试猜测目标网络上的SSH服务的用户名和密码。
  1. 漏洞类脚本

漏洞类脚本通常用于检测目标网络上已知的漏洞和安全问题。这些脚本可以帮助渗透测试工程师识别目标网络上的漏洞和弱点,并提供有关这些漏洞的详细信息。

例如,以下是一些漏洞类脚本的示例:

  • smb-vuln-ms17-010.nse:检测目标网络上是否存在EternalBlue漏洞,并提供有关该漏洞的详细信息。
  • http-vuln-cve2015-1635.nse:检测目标网络上是否存在MS15-034漏洞,并提供有关该漏洞的详细信息。
  • ftp-vuln-cve2010-4221.nse:检测目标网络上是否存在ProFTPD漏洞,并提供有关该漏洞的详细信息。
  • smtp-vuln-cve2010-4344.nse:检测目标网络上是否存在Exim漏洞,并提供有关该漏洞的详细信息。
  1. 服务识别类脚本

服务识别类脚本通常用于识别目标网络上的不同类型的服务和应用程序。这些脚本可以帮助渗透测试工程师识别目标网络上的服务和应用程序,并提供有关这些服务和应用程序的详细信息。

例如,以下是一些服务识别类脚本的示例:

  • http-title.nse:获取目标网络上Web页面的标题,并识别Web应用程序的类型和版本。
  • snmp-info.nse:获取目标网络上SNMP服务的信息,并识别SNMP代理的类型和版本。
  • msrpc-enum.nse:枚举目标网络上的RPC服务,并识别它们的类型和版本。
  • dns-zone-transfer.nse:尝试从目标网络上的DNS服务器中获取区域传输信息。
  1. 脆弱性类脚本

脆弱性类脚本通常用于检测目标网络上的脆弱性和安全问题。这些脚本可以帮助渗透测试工程师识别目标网络上的脆弱性和安全问题,并提供有关这些问题的详细信息。

例如,以下是一些脆弱性类脚本的示例:

  • ssl-heartbleed.nse:检测目标网络上是否存在Heartbleed漏洞,并提供有关该漏洞的详细信息。
  • http-shellshock.nse:检测目标网络上是否存在Shellshock漏洞,并提供有关该漏洞的详细信息

这些示例是用于漏洞扫描和安全评估的脚本。它们使用Nmap脚本引擎(NSE)编写,可以检测目标系统中是否存在已知的漏洞,并提供有关这些漏洞的详细信息。这些脚本可以帮助安全专业人员评估目标系统的安全性,并确定需要采取哪些措施来降低风险。

ssl-heartbleed.nse脚本用于检测目标系统是否存在Heartbleed漏洞。Heartbleed漏洞是OpenSSL库中的一个漏洞,它允许攻击者从目标系统的内存中读取敏感信息。该脚本可以执行一些测试,以确定目标系统是否存在Heartbleed漏洞,并提供有关该漏洞的详细信息,例如漏洞的CVE编号、危害级别等。

http-shellshock.nse脚本用于检测目标系统是否存在Shellshock漏洞。Shellshock漏洞是Bash shell中的一个漏洞,允许攻击者通过恶意构造的环境变量注入攻击代码。该脚本可以执行一些测试,以确定目标系统是否存在Shellshock漏洞,并提供有关该漏洞的详细信息,例如漏洞的CVE编号、危害级别等。

需要注意的是,这些脚本仅用于漏洞扫描和安全评估,使用时需要遵循相关法律法规和道德规范。另外,这些脚本只能检测已知的漏洞,因此不能保证目标系统的绝对安全。

操作系统检测类脚本
Nmap是一款功能强大的开源网络扫描工具,它提供了许多用于扫描和评估目标系统的功能。其中之一是操作系统检测,这是通过一些专门的Nmap脚本实现的。在本文中,我将从渗透测试工程师的角度详细介绍Nmap操作系统检测类脚本,包括其原理、使用方法以及实例分析等方面。

一、Nmap操作系统检测脚本原理

Nmap操作系统检测脚本的基本原理是通过发送一些特定的网络数据包,然后分析目标系统的响应来推断其运行的操作系统类型。具体来说,这些脚本会发送一些模拟操作系统特征的网络数据包,例如TCP/IP协议栈实现、TCP窗口大小、MSS值等。然后,它们会分析目标系统的响应数据包,查看其中的标识信息,例如TCP标志位、IP标识等,以推断其运行的操作系统类型。

这种操作系统检测的技术称为“操作系统指纹识别”。它基于相同操作系统的网络堆栈实现通常具有特定的行为和响应模式。因此,通过发送不同的数据包并分析响应,可以推断目标系统的操作系统类型。当然,这种识别过程并不是完美的,因为有些系统可能会模拟其他操作系统的行为和响应模式,以隐藏其真实的操作系统类型。

二、Nmap操作系统检测脚本使用方法

使用Nmap操作系统检测脚本非常简单,只需要通过命令行或Nmap GUI界面启动Nmap,并使用相应的脚本选项即可。在命令行中,可以使用“-O”选项来启用操作系统检测,例如:

nmap -O target_ip

这将对目标IP地址执行操作系统检测,并在扫描结束后显示结果。

另外,可以使用“-sV”选项来启用版本检测,这可以提供更详细的操作系统信息。例如:

nmap -sV -O target_ip

这将对目标IP地址执行版本检测和操作系统检测,并在扫描结束后显示结果。

需要注意的是,操作系统检测需要发送一些特定的网络数据包,这可能会引起一些安全设备的警报,例如IDS/IPS等。因此,在进行操作系统检测时需要注意相关安全风险,并遵循相关法律法规和道德规范。

三、Nmap操作系统检测脚本实例分析

在这里,我将通过一些实例来演示如何使用Nmap操作系统检测脚本进行渗透测试。

实例1:使用Nmap操作系统检测脚本识别目标系统的操作系统类型

假设我们要评估一个网络中的目标系统的安全性,并尝试确定其运行的操作系统类型。我们可以使用Nmap来执行操作系统检测,并使用“-O”选项启用操作系统检测。例如,我们可以执行以下命令来对目标系统进行操作系统检测:

nmap -O target_ip

这将对目标IP地址执行操作系统检测,并在扫描结束后显示结果。例如:

Starting Nmap 7.91 ( https://nmap.org ) at 2023-04-14 16:00 CST
Nmap scan report for target_ip
Host is up (0.054s latency).
Not shown: 998 closed ports
PORT    STATE SERVICE
22/tcp  open  ssh
80/tcp  open  http
443/tcp open  https
MAC Address: 00:11:22:33:44:55 (Unknown)
Device type: general purpose
Running: Linux 2.6.X|3.X
OS CPE: cpe:/o:linux:linux_kernel:2.6 cpe:/o:linux:linux_kernel:3
OS details: Linux 2.6.32 - 3.10
Network Distance: 1 hopOS detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 10.03 seconds

如上所示,Nmap识别出目标系统运行的是Linux操作系统(版本范围为2.6.32-3.10),并提供了一些其他信息,例如开放的端口和设备类型等。

实例2:使用Nmap操作系统检测脚本识别目标系统的操作系统类型和版本

假设我们要进一步评估目标系统的安全性,并尝试确定其运行的操作系统类型和版本。我们可以使用Nmap来执行版本检测和操作系统检测,并使用“-sV”和“-O”选项启用版本检测和操作系统检测。例如,我们可以执行以下命令来对目标系统进行版本检测和操作系统检测:

nmap -sV -O target_ip

这将对目标IP地址执行版本检测和操作系统检测,并在扫描结束后显示结果。例如:

Starting Nmap 7.91 ( https://nmap.org ) at 2023-04-14 16:10 CST
Nmap scan report for target_ip
Host is up (0.054s latency).
Not shown: 998 closed ports
PORT    STATE SERVICE     VERSION
22/tcp  open  ssh         OpenSSH 7.6p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0)
80/tcp  open  http        nginx 1.14.0 (Ubuntu)
443/tcp open  ssl/http    nginx 1.14.0 (Ubuntu)
|_http-server-header: nginx/1.14.0 (Ubuntu)
|_http-title: Welcome to nginx!
Device type: general purpose
Running: Linux 4.X
OS CPE: cpe:/o:linux:linux_kernel:4
OS details: Linux 4.4 - 4.15
Network Distance: 1 hopOS detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 10.03 seconds

如上所示,Nmap识别出目标系统运行的是Linux操作系统(版本范围为4.4-4.15),并提供了一些其他信息,例如开放的端口、服务版本和设备类型等。

实例3:使用Nmap操作系统检测脚本绕过防御机制

在一些情况下,目标系统可能会采取一些措施来隐藏其真实的操作系统类型,以防止被攻击。例如,目标系统可能会使用防火墙或IDS/IPS等安全设备来阻止操作系统指纹识别。在这种情况下,我们可以使用Nmap操作系统检测脚本中的“-Pn”选项来绕过主机存活检测,以避免被安全设备检测到。例如:

nmap -O -Pn target_ip

这将对目标IP地址执行操作系统检测,并使用“-Pn”选项来绕过主机存活检测。这样,在扫描过程中,Nmap不会发送探测数据包来检测目标系统是否存活,从而避免被防御机制检测到。

需要注意的是,使用“-Pn”选项可能会导致Nmap无法检测到目标系统的真实状态。因此,在使用这个选项时需要谨慎,并尽可能使用其他技术来确认目标系统的存在和状态。

四、总结

Nmap操作系统检测脚本是一种非常有用的渗透测试工具,它可以帮助我们了解目标系统的操作系统。除了帮助我们了解目标系统的操作系统,Nmap操作系统检测脚本还可以帮助我们确定目标系统的一些其他信息,比如:

  1. 网络拓扑结构:通过扫描目标主机的端口和服务,可以帮助我们了解目标主机所在的网络拓扑结构,包括其他主机和路由器等设备。

  2. 开放的服务和端口:Nmap操作系统检测脚本可以帮助我们确定目标主机上开放的服务和端口,从而可以更好地了解目标系统的功能和安全风险。

  3. 安全漏洞:通过确定目标主机的操作系统和开放的服务,可以帮助我们确定目标系统是否存在已知的安全漏洞,从而有针对性地进行渗透测试和安全加固。

需要注意的是,Nmap操作系统检测脚本只是渗透测试工具的一部分,渗透测试人员还需要结合其他工具和技术,进行全面的渗透测试和安全评估。同时,渗透测试是一项具有风险的活动,需要遵循法律和道德规范,避免对目标系统造成不必要的损害。

服务识别类脚本
Nmap是一款常用的网络探测和扫描工具,可以在渗透测试和漏洞评估中发挥重要作用。在Nmap中,服务识别是一个重要的功能,可以帮助渗透测试工程师快速识别目标主机上运行的服务及其版本号,从而推断出可能存在的漏洞或攻击路径。本文将从渗透测试工程师的角度出发,详细阐述Nmap服务识别类脚本的使用方法、原理和实战应用,希望能对渗透测试工程师提供一些有用的参考和帮助。

一、Nmap服务识别的原理

在网络上,每个服务都有自己的端口号,例如HTTP服务通常在80端口上运行,SSH服务通常在22端口上运行,SMTP服务通常在25端口上运行等等。Nmap通过扫描目标主机的端口,获取端口上运行的服务,进而识别出目标主机上运行的服务及其版本号。Nmap服务识别的原理可以简单概括为以下几个步骤:

  1. Nmap发送一个特定的探测包到目标主机的某个端口。
  2. 目标主机接收到探测包后,根据不同的服务类型,返回不同的响应包。
  3. Nmap根据响应包的特征,识别出目标主机上运行的服务及其版本号。

Nmap服务识别的核心在于识别响应包的特征,不同的服务类型,响应包的特征也不同。Nmap提供了一系列服务识别类脚本,每个脚本针对不同的服务类型,通过发送不同的探测包和分析不同的响应包,来识别目标主机上运行的服务及其版本号。下面我们将详细介绍Nmap服务识别类脚本的使用方法和实战应用。

二、Nmap服务识别类脚本的使用方法

Nmap服务识别类脚本存放在Nmap安装目录下的“/usr/share/nmap/scripts/”目录下,其中以“*_service.nse”命名的脚本为服务识别类脚本。Nmap服务识别类脚本的使用方法非常简单,只需要在Nmap命令行中添加“-sV”参数即可启用服务识别功能,例如:

nmap -sV 192.168.1.1

上述命令将扫描192.168.1.1主机上所有开放的端口,并尝试识别每个端口上运行的服务及其版本号。Nmap默认使用所有服务识别类脚本进行探测,如果需要指定某些脚本进行探测,可以使用“–script”参数,例如:

nmap -sV --script=http-title,ssl-heartbleed 192.168.1.1

上述命令将只使用“http-title.nse”和“ssl-heartbleed.nse”两个脚本进行服务识别。

Nmap服务识别类脚本可以通过“–script-help”参数查看脚本的帮助信息,例如:

nmap --script-help=http-title

上述命令将显示“http-title.nse”脚本的帮助信息。Nmap服务识别类脚本的帮助信息通常包括脚本的用途、使用方法、参数说明、输出示例等内容。渗透测试工程师可以通过查看脚本的帮助信息,了解脚本的功能和使用方法,从而更有效地利用Nmap进行服务识别。

三、Nmap服务识别类脚本的实战应用

Nmap服务识别类脚本广泛应用于渗透测试和漏洞评估中,可以帮助渗透测试工程师更快速地识别目标主机上运行的服务及其版本号,从而推断出可能存在的漏洞或攻击路径。下面我们将介绍几种常见的Nmap服务识别类脚本的实战应用。

  1. http-title.nse

“http-title.nse”脚本用于识别HTTP服务的标题,即Web页面的标题信息。通过识别Web页面的标题信息,可以推断出Web应用程序的类型、版本等信息,从而查找可能存在的漏洞或攻击路径。例如:

nmap -sV --script=http-title 192.168.1.1

上述命令将扫描192.168.1.1主机上所有开放的端口,并尝试识别每个端口上运行的HTTP服务的标题信息。

  1. ssl-heartbleed.nse

“ssl-heartbleed.nse”脚本用于识别OpenSSL库中存在的心脏滴血漏洞(Heartbleed Vulnerability)。该漏洞可由攻击者远程利用,读取目标服务器上内存中的敏感信息,例如用户凭证、私钥等。通过使用该脚本,可以快速识别目标服务器是否存在心脏滴血漏洞。例如:

nmap -sV --script=ssl-heartbleed 192.168.1.1

上述命令将扫描192.168.1.1主机上所有开放的端口,并尝试识别每个端口上运行的SSL服务是否存在心脏滴血漏洞。

  1. smb-os-discovery.nse

“smb-os-discovery.nse”脚本用于识别SMB服务的操作系统信息。通过识别SMB服务的操作系统信息,可以推断出目标主机的操作系统类型及版本,从而查找可能存在的漏洞或攻击路径。例如:

nmap -sV --script=smb-os-discovery 192.168.1.1

上述命令将扫描192.168.1.1主机上所有开放的端口,并尝试识别每个端口上运行的SMB服务的操作系统信息。

  1. ftp-anon.nse

“ftp-anon.nse”脚本用于检测FTP服务是否允许匿名访问。通过检测FTP服务是否允许匿名访问,可以发现可能存在的敏感信息泄露漏洞。例如:

nmap -sV --script=ftp-anon 192.168.1.1

上述命令将扫描192.168.1.1主机上所有开放的端口,并尝试检测每个端口上运行的FTP服务是否允许匿名访问。

四、Nmap服务识别类脚本的注意事项

在使用Nmap服务识别类脚本时,需要注意以下几点:

  1. 在进行服务识别时,需要获取目标主机的充分授权。未经允许的渗透测试可能会触犯法律法规,造成不必要的法律风险。

  2. Nmap服务识别类脚本的识别结果并不是百分之百准确的,有时会出现误判或漏判的情况。因此,在进行渗透测试时,需要结合其他工具和手段,综合分析目标系统的安全状况。

  3. 在使用Nmap服务识别类脚本时,需要注意以下几点:

  4. Nmap服务识别类脚本只能识别已知的服务,对于未知的服务无法进行识别。因此,在进行渗透测试时,需要结合其他手段,如端口扫描、漏洞扫描等,综合分析目标系统的安全状况。

  5. 在使用Nmap服务识别类脚本时,需要注意脚本的版本和更新情况。由于新的漏洞和服务版本不断出现,旧版的脚本可能无法识别最新的服务和漏洞。因此,需要及时更新脚本以确保识别准确性。

  6. 在进行服务识别时,需要注意Nmap的扫描速度和频率。过于频繁的扫描可能会引起目标系统的警觉,导致扫描被检测到并被阻止。因此,需要适当调整扫描速度和频率,以避免被目标系统检测到。

  7. 在使用Nmap服务识别类脚本时,需要了解目标系统的网络拓扑和架构,以便更准确地识别服务。例如,在进行内部渗透测试时,需要了解内部网络的拓扑结构,以便更准确地识别服务和漏洞。

总之,在使用Nmap服务识别类脚本时,需要谨慎使用,并结合其他手段进行综合分析,以确保渗透测试的准确性和合法性。

相关文章:

常用Nmap脚本

端口扫描类脚本 Nmap是一款非常流行的端口扫描工具,它可以帮助渗透测试工程师识别目标网络上开放的端口,并提供有关这些端口的详细信息。Nmap还提供了一系列基于脚本的功能,这些脚本可以扩展Nmap的功能,使其能够更深入地探测目标网…...

在pom.xml中添加maven依赖,但是类里面import导入的时候报错

问题: Error:(27, 8) java: 类TestKuDo是公共的, 应在名为 TestKuDo.java 的文件中声明 Error:(7, 23) java: 程序包org.apache.kudu不存在 Error:(8, 23) java: 程序包org.apache.kudu不存在 Error:(9, 23) java: 程序包org.apache.kudu不存在 Error:(10, 30) jav…...

【NEON】学习资料汇总

一、资料链接 Guide : http://www.heenes.de/ro/material/arm/DEN0018A_neon_programmers_guide_en.pdf csdn博文1,基础案例: https://blog.csdn.net/kakasxin/article/details/103912832? csdn博文2,内部函数: ht…...

java中ReentrantLock的实现原理是什么?

ReentrantLock 的实现原理主要涉及到两个关键概念:同步器(Sync)和 AQS(AbstractQueuedSynchronizer,抽象队列同步器)。 ReentrantLock 使用 AQS 来实现可重入锁的机制。AQS 是 Java 并发包中的一个抽象基类…...

C语言精选——选择题Day40

第一题 1. int a[10] {2,3,5}, 请问a[3]及a[3]之后的数值是() A:不确定的数据 B:5 C:0 D:0xf f f f f f f f 答案及解析 C 数组的不完全初始化,会自动把没初始化的部分初始化为0; 第…...

大屏适配方案一scale()

背景 在做大屏可视化项目的时候,一般设计稿会设计成1920 * 1080,但是页面写死1920 * 1080在2k、4k等分辨率的屏幕下是不适配的。 方案一:css3的缩放属性transform以及scale() 在做项目之前我们需要搞清楚客户的数据可视化平台需要在什么屏幕…...

WordPress免费插件大全清单【2023最新】

WordPress已经成为全球范围内最受欢迎的网站建设平台之一。要让您的WordPress网站更具功能性、效率性,并提供卓越的用户体验,插件的选择与使用变得至关重要。 WordPress插件的作用 我们先理解一下插件在WordPress生态系统中的作用。插件是一种能够为Wo…...

支付宝小程序接口传参会默认排序

一:问题 描述:最近项目中的接口都加了签名,在同步到支付宝小程序上时,发现有些接口报错,经过排查,导致报错的原因是因为传参顺序被支付宝小程序默认排序了,比如: 设置的原始参数&a…...

Numpy数组的运算(第7讲)

Numpy数组的运算(第7讲)         🍹博主 侯小啾 感谢您的支持与信赖。☀️ 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ…...

node后端接口无法插入数据为emoji的表情的问题

原因 emoji的表情一般是这样的\xF0\x9F\x98\x80或者是\xF0\x9F\x98 ,事实上 一般数据库的utf8的编码类型都是能保存\xF0\x9F\x98 但是不能保存\xF0\x9F\x98\x80这种样的emoji,要将数据库编码格式为utf8mb4 也就是utf8的超集 另外,除了 数据库…...

Conda常用命令总结

使用conda或anaconda的小伙伴们都知道,图形界面时不靠谱的,而在命令行下,所有的操作就会稳定很多,且极少出现问题。因此,熟记conda的命令行就变得十分有用。但对于我这样近50岁依旧奋斗在代码第一线的大龄程序员而已&a…...

Oracle数据库如何实现自增-序列Sequence介绍(适合小白)

Oracle数据库中的Sequence是一种特殊的数据库对象,可以生成一组等间隔的数值,常用于为表中的行自动生成序列号。也常用于主键自增的情况。 下面我将以小白的视角带大家介绍下Oracle数据库序列Sequence: 一、创建简单序列 创建简单序列语法…...

ke14--10章-2JDBC例子

驱动forName,创建连接对象getConnection要三个参数,执行String sql "INSERT INTO等",创建执行SQL语句的PreparedStatement对象进行setString,然后执行preStmt.executeUpdate(); 为什么要preStmt conn.prepareStatement(sql);conn DriverManager.getConnection(url…...

04数据平台Flume

Flume 功能 Flume主要作用,就是实时读取服务器本地磁盘数据,将数据写入到 HDFS。 Flume是 Cloudera提供的高可用,高可靠性,分布式的海量日志采集、聚合和传输的系统工具。 Flume 架构 Flume组成架构如下图所示: A…...

Redis--13--缓存一致性问题

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 缓存一致性问题1、先更新缓存,再更新DB方案二:先更新DB,再更新缓存方案三:先删缓存,再写数据库推荐1&…...

12.7作业

1. #include "mywidget.h"MyWidget::MyWidget(QWidget *parent): QWidget(parent) {//***********窗口相关设置***********//设置窗体大小this->resize(540,410);this->setFixedSize(540,410);//取消菜单栏this->setWindowFlag(Qt::FramelessWindowHint);/…...

ssl什么是公钥和私钥?

公钥(Public Key)与私钥(Private Key)是通过加密算法得到的一个密钥对(即一个公钥和一个私钥,也就是非对称加密方式)。公钥可对会话进行加密、验证数字签名,只有使用对应的私钥才能解…...

github首次将文件合到远端分支,发现名字不是master,而是main

其中,暂存区和本地仓库的信息都存储在.git目录中 在自己的github上实践 1、刚开始,git clone gitgithub.com:lingze8678/my_github.git到本地 2、在克隆后的代码中加入一个pdf文件 3、在git bash中操作(当项目中有文件更改和删除&#xff…...

RTX 40 系彻底摆烂,NVIDIA 让三年老卡焕发第二春

AMD 前段时间发布的 RX 6750GRE 12/10G 两块新卡属实给了市场一波小小震撼。 有同学要说了,这不就是两年前的 RX 6700 系换皮嘛,典型的旧饭重恰它凭啥能火? 无他,性能合格,价格实惠,主打一个高性价比。 别…...

ELK技术栈介绍及简单使用实例

1. ELK技术栈介绍 引言 在当今数据驱动的世界里,有效地管理和分析大量日志数据变得至关重要。这里我们将深入探讨ELK技术栈,这是一种流行的日志管理解决方案,它结合了三个开源项目:Elasticsearch、Logstash和Kibana。ELK技术栈因…...

eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)

说明: 想象一下,你正在用eNSP搭建一个虚拟的网络世界,里面有虚拟的路由器、交换机、电脑(PC)等等。这些设备都在你的电脑里面“运行”,它们之间可以互相通信,就像一个封闭的小王国。 但是&#…...

<6>-MySQL表的增删查改

目录 一,create(创建表) 二,retrieve(查询表) 1,select列 2,where条件 三,update(更新表) 四,delete(删除表&#xf…...

【入坑系列】TiDB 强制索引在不同库下不生效问题

文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...

srs linux

下载编译运行 git clone https:///ossrs/srs.git ./configure --h265on make 编译完成后即可启动SRS # 启动 ./objs/srs -c conf/srs.conf # 查看日志 tail -n 30 -f ./objs/srs.log 开放端口 默认RTMP接收推流端口是1935,SRS管理页面端口是8080,可…...

镜像里切换为普通用户

如果你登录远程虚拟机默认就是 root 用户,但你不希望用 root 权限运行 ns-3(这是对的,ns3 工具会拒绝 root),你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案:创建非 roo…...

3-11单元格区域边界定位(End属性)学习笔记

返回一个Range 对象,只读。该对象代表包含源区域的区域上端下端左端右端的最后一个单元格。等同于按键 End 向上键(End(xlUp))、End向下键(End(xlDown))、End向左键(End(xlToLeft)End向右键(End(xlToRight)) 注意:它移动的位置必须是相连的有内容的单元格…...

Maven 概述、安装、配置、仓库、私服详解

目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

无人机侦测与反制技术的进展与应用

国家电网无人机侦测与反制技术的进展与应用 引言 随着无人机(无人驾驶飞行器,UAV)技术的快速发展,其在商业、娱乐和军事领域的广泛应用带来了新的安全挑战。特别是对于关键基础设施如电力系统,无人机的“黑飞”&…...

Caliper 配置文件解析:fisco-bcos.json

config.yaml 文件 config.yaml 是 Caliper 的主配置文件,通常包含以下内容: test:name: fisco-bcos-test # 测试名称description: Performance test of FISCO-BCOS # 测试描述workers:type: local # 工作进程类型number: 5 # 工作进程数量monitor:type: - docker- pro…...

LangFlow技术架构分析

🔧 LangFlow 的可视化技术栈 前端节点编辑器 底层框架:基于 (一个现代化的 React 节点绘图库) 功能: 拖拽式构建 LangGraph 状态机 实时连线定义节点依赖关系 可视化调试循环和分支逻辑 与 LangGraph 的深…...