- 博客(64)
- 收藏
- 关注
原创 计算机组成原理头歌logisim——8位可控加减法器/原码一位乘法器设计/算术逻辑运算单元ALU/汉字字库存储芯片扩展实验/寄存器文件设计/微程序地址转移逻辑设计
这个需要前置设备。
2025-12-11 17:05:16
146
原创 初识ConfyUI——本地生成你的第一张图片
将你的模型下载好,放入\ComfyUI\models\checkpoints,在网页端选择,并输入正反提示词,就可以开始生成你的第一张图了。在 Stable Diffusion 的世界里,图像不是直接在像素空间(我们看到的 RGB 图像)中生成的,而是在一个更抽象、更高效的。12.0 是一个偏高的值,适合要求严格遵循提示词的场景。○ 数值过低: AI 会更自由发挥,可能忽略提示词的关键内容(比如“泳装”)。● 功能: 指定使用的去噪算法。● 功能: 这是一个随机数种子,用于控制生成过程中的随机性。
2025-10-30 16:08:46
702
2
原创 buuctf——web刷题第5页
若让eval()去执行trigger_event(),并且在后面跟着buy和get_flag,那么buy_handler()和get_flag_handler()便先后进入队列,那么这时consume_point_function()就会在get_flag_handler()之后。、>、\n都不是base64编码的范围,所以base64解码的时候会自动将其忽略,所以解码之后就剩php//exit了,9个字节,但是呢base64算法解码时是4个字节一组,所以我们还需要在前面加3个字符。$data = "<?
2025-08-27 13:06:51
1545
1
原创 buuctf——web刷题第四页
异或:((%8D%9A%9E%9B%99%96%93%9A)^(%FF%FF%FF%FF%FF%FF%FF%FF))(((%9A%91%9B)^(%FF%FF%FF))(((%8C%9C%9E%91%9B%96%8D)^(%FF%FF%FF%FF%FF%FF%FF))(%D1^%FF)));然后prototype这些被过滤了的,可以用 [`${`${`prototyp`}e`}`] 或者 [`p`,`r`,`o`,`t`,`o`,`t`,`y`,`p`,`e`],"
2025-08-27 12:57:31
1834
原创 HarmonyOS中AppStorageV2信息储存使用案例
connect方法,用于将键值对数据存储在应用内存中。如果给定的key已经存在于AppStorageV2中,返回对应的值;否则,通过获取默认值的构造器构造默认值,并返回。user.ets (这里是储存信息的格式)注意这个user.ets是不用放到main_pages.json的。remove方法可以从AppStorageV2中删除指定的键值对数据。是全局唯一的存储键名,用于在应用内跨组件访问同一数据。比如我们想要在不同页面实现信息储存使用。这就是一个基本的信息储存了。——导入Person类。
2025-08-19 09:53:11
328
原创 yolov11入门——如何自己训练模型及如何搞出label标注
本文介绍了使用YOLO模型进行水果目标检测的完整流程。首先配置fruit_data.yaml文件,指定训练集和验证集路径,设置3个检测类别(苹果、香蕉、橙子)。训练代码使用YOLOv11n预训练模型,设置50个epoch和640x640图像尺寸。对于数据标注,采用labelImg工具手动标注图像生成YOLO格式的txt文件,解决了工具运行时的类型错误问题。训练完成后,使用best.pt模型进行推理测试。整个过程包括数据准备、模型训练、验证评估和部署使用,为小规模目标检测项目提供了实用指导。
2025-08-05 17:46:07
485
原创 [BSidesCF 2020]Hurdles
源码,抓包,robots.txt都没东西,看看这个 /hurdlesPUT访问在结尾加个!那就是/hurdles/!get=flag这里是让我们get提交 &=&=& 这个参数,直接bp写肯定不行的,我们就url编码:要等于%00加一个换行符(这里的另外一个'在下一行),还是url编码需要认证,已知username=player。
2025-08-05 15:15:31
411
原创 yolov11的简单实例
ultralytics-main和ultralytics-main.zip只是我把他直接下载下来了,实际上可以直接pip安装ultralytics。这里我的workers=0,实际上这个可以根据电脑情况自己调整,我这里是默认8的情况下占用太大。cat.jpg就是随便在网络上找的猫的图片,然后就可以开始运行代码了。然后我们训练好了怎么用呢?这里演示py,所以我们就用best.pt。这是我们运行一次文件之后会出来的东西。然后下面比较容易懂的就是。
2025-07-29 20:30:19
360
原创 使用docker(ubuntu)搭建web环境(php,apahce2)
ok我们成功实现了在虚拟机用docker搭建ubuntu容器实现网站访问了,就可以随便出题了(不是)至于怎么在kali上装docker,每个人的kali都有点不同,这里就给个我装dcoker的参考。因为我们拉的这个ubuntu是一个精简版,所以环境工具啥的要自己装。然后访问http://localhost:8080/info.php。service apache2 start 启动apache2服务。关闭原本的,新搞一个,使用first_ubuntu镜像。然后我们就进入容器的终端了。在 Docker 中,
2025-07-22 17:15:42
474
原创 ctfshow——web入门334~338
eval=require('child_process').spawnSync('cat',['fl00g.txt']).stdout.toString() //不能通配符。eval=require('fs').readFileSync('/app/routes/index.js','utf-8')所以这里的common.js就很像例子中的。
2025-07-21 15:33:28
735
原创 安装kali时出现“安装步骤失败“如何解决及后续软件安装
然后ctrl+x,然后会跳出来一个文件命名,直接enter。就要强制重新安装桌面核心包和lightdm服务。然后安装桌面和lightdm服务。大概就是在这一步的时候过不去了。然后继续,就可以直接安装成功。重启即可进入图形化界面。
2025-07-20 15:42:15
1705
1
原创 下载了docker但是VirtualBox突然启动不了了
它一旦启用,就会接管 CPU 的虚拟化支持(VT-x),其他虚拟化软件(如 VirtualBox、VMware)就无法再使用这些资源。就好了,然后重启电脑就ok,只能说windows的模拟还是有问题,docker肯定不能直接搞在windws了。今天下docker后发现 eNSP 路由器,防火墙启动不了了。所以要禁用hyper-v。
2025-07-17 22:44:30
397
原创 buuctf——web刷题第三页
向PHP发送含有文件区块的数据包时,让PHP异常崩溃退出,POST的临时文件就会被保留,临时文件会被保存在upload_tmp_dir所指定的目录下,默认为tmp文件夹。加上那个数字即可,在Linux系统中,如果一个程序用 open() 打开了一个文件,但是最终没有关闭它,即使从外部(如:os.remove(SECRET_FILE))删除这个文件之后,在/proc这个进程的 pid目录下的fd文件描述符目录下还是会有这个文件的文件描述符,通过这个文件描述符我们即可以得到被删除的文件的内容。
2025-07-16 13:11:24
1309
原创 华为eNSP防火墙实验(包含详细步骤)
防火墙FW1默认账号密码为:用户名为:admin,密码为:Admin@123。访问https://192.168.0.11:8443,即可出现图形化界面。这时用undo portswitch将该接口切换到3层。可以看到这是防火墙反过来ping不行。然后输入后根据要求修改密码。然后就可以主机ping通了。这里要加一个nat转化。
2025-07-09 00:10:03
2474
原创 eNSP实验——搭建小型局域网(包含详细命令)
配置完成后用display port vlan来查看配置。PC6,PC8,PC10为192.168.2。PC9,PC11为192.168.3。这里我们可以先测试一下静态路由。这里我建立了2个vlan。这个可以自己选择接口。
2025-07-02 11:31:05
791
原创 数据结构学习——图/拓扑排序算法/关键路径算法
本文介绍了基于邻接矩阵实现的图算法,包括无向图/有向图的构建、深度优先遍历、Prim最小生成树算法和Floyd最短路径算法。主要内容包括:1. 邻接矩阵的无向图实现,展示了图的创建、边添加和矩阵打印;2. 加权有向图的邻接表实现;3. 深度优先遍历的递归实现;4. Prim算法求最小生成树的详细过程,包括权重更新和父节点记录;5. Floyd算法计算所有顶点间最短路径的动态规划实现。所有算法均提供完整的C++代码实现和关键步骤的注释说明,涵盖了图的存储、遍历和经典算法应用。
2025-07-01 14:00:30
233
原创 数据结构学习——KMP算法
在我们4比完后,j=2对应next数组为2,我们直接用2号位[第三个字母]去和之前p对应去比,1是因为第一项不符合直接过,4是因为我构造的是aaad,所以他每次都要判断4次才能确定。发现可以,那么值需要接着我往下比就好了,str的1,2字母无须比较,故为2,少比两个。如果是暴力算法,次数为1+4+4+4+4=17。如果是kmp,次数为1+4+2+2+2=11。next即为需找位置得str的next。我们来分析一下次数是怎么来的。aaad的next为0120。这里我还写了一个暴力破解的。
2025-06-20 18:55:19
250
原创 数据结构学习——栈/两栈共享空间/栈的实际应用(四则运算)
/栈//使用链表实现动态栈int data;Node* next;Node* top;//初始化栈//入栈//就是链表的next指针的指向s.top,也就是原本的栈顶//更新栈顶//出栈cout << "栈为空" << endl;return;//这里的s.top->next就是原本的栈顶的下一个元素cout << "出栈元素为:" << data << endl;cout << "栈为空" << endl;
2025-06-12 14:50:49
282
原创 [De1CTF 2019]SSRF Me
如果我们想要读flag.txt,就需要进行scan和read操作,而这两个操作在Tack类中需要checkSign检查(对比md5值),那我们就可以用/geneSign知道该md5值(有·return)这里出flag的逻辑就是通过scan扫到flag.txt然后写入result.txt文件,再用read把result.txt的文件内容读出来。这里就是把我们的action(readscan)和param(flag.txt)传进去得到的结果和我们传进去的sign比较。和上文得到的md5值一致。
2025-05-26 21:16:25
467
原创 “轩辕杯“云盾砺剑 CTF挑战赛web方向题解
into outfile '/var/www/html/1.php' - 这是SQL的文件写入操作,将查询结果写入到服务器的 /var/www/html/1.php 文件中。看到这个,直接访问getflag.php,POS提交score =100000000000。在/var/db.sql这里找到flag的base64编码后的值。最后在/proc/1/environ找到flag。我们可以用\符号开头,它不会影响函数的运行。emmmm,我是用fenqing一把嗦的。空格的话这里%09和/**/都可以绕过。
2025-05-22 20:00:47
743
原创 ctfshow——web入门254~258
结果:O:11:"ctfShowUser":3:{s:8:"username";结果:O:11:"ctfShowUser":3:{s:8:"username";然后我们怎么调用他呢,看到ctfShowUser类中的 __destruct,但是如果照他的源代码,class=new info()简单分析就是传入的username和password的值回去当作login方法的参数,然后只要让他们和类中的值一样就好了。
2025-05-17 19:49:36
1263
原创 ctfshow——web入门351~356
这个写全了,但是这个禁止的是127.0形式的,也就是127.1.1.1就可以绕过。emmm这题怎么说呢,过滤的语句不完全,上题的payload照样可以用。对host长度进行了限制,即主机名小于等于5。使用解析到127.0.0.1的url绕过。(这两个是其他师傅提供的可以用的)(127开头的都行)
2025-05-12 20:24:46
864
原创 ctfshow——web入门361~368
最近练习ssti当 Web 应用程序使用模板引擎动态生成 HTML 页面或其他类型的输出时,如果用户输入未经过充分验证或转义就被直接嵌入到模板中,就可能发生 SSTI 攻击。攻击者可以利用这个弱点注入恶意模板代码,该代码将在服务器端执行。eg: {{}}在Jinja2中作为变量包裹标识符,Jinja2在渲染的时候会把{{}}包裹的内容当做变量解析替换。比如{{2*2}}会被解析成4。因此才有了现在的模板注入漏洞。往往变量我们使用{{恶意代码}}。
2025-05-05 20:58:26
715
原创 ctfhow——web入门214~218(时间盲注开始)
是一个时间延迟或资源消耗的操作,至于判断的时间要根据自己的电脑进行调试,显示出来的flag有可能会有误差。benchmark(count,expr),重复执行 count 次 expr 表达式,使得处理时间很长。如:where id =from_base64(0)payload。看了下大佬的payload,我们可以使用 benchmark,base64编码,但是我们可以直接用)来闭合。时间大概是3秒,然后开始写脚本。benchmark被禁了。
2025-04-24 20:25:20
264
原创 ctfhow——web入门195~200(堆叠注入)
row[0] 表示从数据库查询结果中提取的某一行的第一个字段值,我们可以使用 select 来设置 $row[0] 的值,再提交我们设置的 password 满足两者相等。我们已经知道了有个表叫ctfshow_user,故show tables里面一定有ctfshow_user,SHOW命令用于显示数据库中的元数据信息,例如数据库、表、列、索引等的信息。SHOW INDEX FROM table_name:显示指定表中的所有索引。SHOW TABLES:显示指定数据库中的所有表。
2025-04-23 09:20:29
751
原创 ctfshow——web入门191~194
用于获取单个字符的 Unicode 码点(code point)。这意味着它接受一个长度为 1 的字符串(即单个字符),并返回该字符对应的整数值。right()返回具有指定长度的字符串的右边部分,用法同上。eft()返回具有指定长度的字符串的左边部分。这里过滤了ascii,我们可以使用ord。逻辑和前几题一样,只不过过滤了ord。我们可以用mid或者lpad。改成ord的形式就可以了。但字母数字都放出来了。
2025-04-16 20:48:05
342
原创 VMware虚拟机Ubuntu磁盘扩容
会进入到类似这个界面(每个人的电脑不一样,我这个根目录再sda5中,sda5又在sha2下,所以我要先挂2再挂5)然后sudo apt-get install gparted——安装工具。可以看到我们有20G的未分配空间,要求要挂载到/dev/sda5上。我们把它拉满(即之前/之后可用空间都为0),然后点击下方调整大小。同样的操作对/dev/sda5再进行一次。选择要扩容的虚拟机,点击编辑虚拟机设置。操作为:点击需挂载的磁盘,然后点击。打开后点击磁盘——>点击扩展(点击上图的扩展——>确定。
2025-04-11 20:13:37
2231
原创 ctfshow——web入门186~190
ffifdyop的MD5加密结果是276f722736c95d99e921722cf9ed621c,经过MySQL编码后会变成’or’6xxx, 只要第一位是非零数字即可被判定为True,后面的会在MySQL将其转换成整型比较时丢掉 使SQL恒成立,相当于万能密码,可以绕过md5()函数的加密。在这个查询中,因为username是个字符串,我们只要令$username=0, 因为弱比较,username就会转化为0,成立。密码错误的Unicode 编码为\u5bc6\u7801\u9519\u8bef。
2025-04-09 15:36:50
268
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅