- 博客(50)
- 资源 (13)
- 收藏
- 关注
原创 密钥派生标签特性与内存特征
其任务,是从一个高熵秘密(如 Diffie-Hellman 共享密钥)或一个低熵秘密(如用户口令)出发,按协议规定派生出用途各异、彼此隔离的对称密钥、初始化向量与校验数据。为此,TLS 1.3 引入了带标签的密钥派生机制——HKDF-Expand-Label,将“用途字符串”原样写入工作区,既实现了密钥域隔离,也在进程内存中留下了可检索的稳定特征。其“标签”等价物几乎没有,但有一个极其鲜明的内存特征:短时间内出现大量重复填充的 1024 字节块(BlockMix 的中间态),且这些块彼此高度相关。
2026-09-13 10:03:26
319
原创 探测木马地址常用指令(linux)
2.如果是从 Wireshark 等工具中提取的、不带地址偏移的纯十六进制载荷,使用。3.用系统函数查看程序函数表。可以查看木马的回连地址。
2026-09-06 16:19:23
46
原创 去除vmdk linux镜像密码
1.在 VMware 中:关闭你的 Ubuntu 虚拟机编辑虚拟机设置 → 添加硬盘 → 使用现有磁盘 → 选择 VMDK 镜像2.启动虚拟机在虚拟机内挂载:bashsudo fdisk -l # 查看新磁盘(如 /dev/sdb)sudo mount /dev/sdbx /mnt/forensic #x修改为自己的sdb编号。
2026-09-03 20:45:14
202
原创 CTFshow pwn03「stack1」题解
远程程序跑起来后,这个值就是 libc 里的 puts 地址,减去 puts 在 libc 里的固定偏移,就是 libc 基址。第一步,先泄露一个 libc 函数的真实地址。程序自己调过 puts,它的 PLT/GOT 表项里就存着 puts 在 libc 里的真实地址,让程序自己把它打印出来就行——用溢出调用 puts(puts@got)。第二步,用这个地址算出 libc 基址,再加上 system 和 /bin/sh 在 libc 里的固定偏移,第二次溢出执行 system("/bin/sh")。
2026-09-01 22:45:21
333
原创 CTFshow pwn02「stack」题解
流程:连上靶机 → 等 "32bits" 标语 → 发 payload → 程序执行完 pwnme 后 ret 到 stack(),system("/bin/sh") 起 shell → 直接 cat /flag。能看到 fgets 的三个参数:lea eax, [ebp+s](s = byte ptr -9,即 ebp-0x9)、push 32h(0x32 = 50)、stdin。32 位程序没有高位随机化,这 4 个字节里没有 \x00 也没有 \x0a,不会被 fgets 截断,很舒服。
2026-09-01 06:41:15
356
原创 PCTF2025取证题
flag = md5(五问答案顺序拼接) 的 32 位小写。按(若不对,常见变体:经纬度顺序交换 →;空格分隔经纬度 →。
2026-08-31 16:26:27
212
原创 BurpSuite Pro教育版在linux系统中配置
网上流传的BurpSuite教育版多为windows版本,现在我们将windows版本转换为linux版本使用。
2026-08-30 22:27:27
216
原创 好靶场杯第一届-古法 流量包分析
攻击机.pcapng服务器.pcapng陈小明.pcapng(三台机器各自网卡上的抓包,同一个 192.168.39.0/24 网段)+(TLS 会话密钥,用来解密 C2 的 HTTPS 流量)。工具:Wireshark 4.6(手工看图)、tshark(命令行批量提取)、Python 3(解码 base64/XOR)、记事本(看 bat)。先给结论表,后面是每一步怎么操作、怎么验证。
2026-08-29 17:25:41
293
原创 实现基于模块的文件系统(修改ext3或ext4的源代码,实现新的文件系统)
文章目录分析与设计思路(1)分析(2)设计主要数据结构和流程(1)内核的下载和安装(2)新文件系统诞生(3)挂载文件系统(4)卸载文件系统实验测试结果及结果分析课程设计答辩记录分析与设计思路(1)分析文件系统系统的源码在内核中,我需要结合linux目录结构来找出ext4和ext3的源码所在位置,并将其复制到内核之外,进行相应的修改。文件系统是操作系统向用户提供一套存取数据的抽象数据结构,方便用户管理一组数据。如果没有文件系统,防止在磁盘中的数据将是一个庞大的数据主体,用户无法分辨出一个数据从哪里停止
2022-01-28 19:33:45
2932
原创 nuxt和vue-admin-template部署
vue-admin-template部署到服务器1.安装nginx新建文件夹mkdir develop下载nginx包wget http://nginx.org/download/nginx-1.9.9.tar.gztar -zxvf nginx-1.9.9.tar.gzcd nginx-1.9.9./configuremakemake installcd nginxvim confvim nginx.conf#编辑输入: location / {
2021-11-22 16:04:40
2046
原创 使用第三方panthumb上传完成后缩略图无法正常显示解决方法
使用第三方panthumb上传完成后缩略图无法正常显示解决方法 <!-- 头衔缩略图 --> <pan-thumb :image="stu.avatar"/> <!-- 文件上传按钮 --> <el-button type="primary" icon="el-icon-upload" @click="imagecropperShow=true">更换头像 </el-but
2021-10-11 20:15:20
1350
转载 本地nodejs和npm版本过高,无法正常使用npm下载低npm版本项目所需依赖,不降级解决办法
本地nodejs和npm版本过高,无法正常使用npm下载低npm版本项目所需依赖,不降级解决办法这里需要使用到cnpm:1.导入下载好到的项目2.安装cnpm: npm install cnpm -g3.安装 node-sass: cnpm install node-sass4.继续安装:cnpm i node-sass -D5.删除项目中出现的 node_modules文件夹6.根据package.json重新安装依赖: cnpm install7.在开发环境中启动项目:npm run d
2021-10-10 09:34:15
4576
原创 跨域问题 No ‘Access-Control-Allow-Origin‘ header is present on the requested resource
Access to XMLHttpRequest at ‘xxxxxxxxxxxxxx’ has been blocked by CORS policy: Response to preflight request doesn’t pass access control check: No ‘Access-Control-Allow-Origin’ header is present on the requested resource.此问题是跨域问题,跨域问题出现的三种情况:端口跳转http和h
2021-10-10 09:22:24
701
原创 3.6组管理和权限管理
组管理和权限管理1. Linux组基本介绍Linux中每个用户属于一个组,不能独立于组以外。所以在Linux中每个文件存在组的概念:所有者所在组其他组改变用户所在组2. 文件/目录所有者一般为文件的创建者,谁创建了该文件,就自然的称为该文件的所有者。查看文件所有者:ls -ahl修改文件所有者:chown (用户名) (文件名)3. 文件/目录所在组当某个用户创建了一个文件之后,默认之歌文件所在组就是该用户所在的组查看文件所有者:ls -ahl修改文件所在
2021-09-29 08:26:29
170
原创 3.5实用指令
实用指令1. 运行级别(七个级别)在配置文件目录下有一个inittab文件/etc/inittab,用于专门存储系统的运行级别,当Linux系统启动时,会查询这个运行级别。0.关机1.单用户模式【可用于找回丢失密码】2.多用户状态没有网络服务3.多用户状态有网络服务4.系统未使用保留给用户5.图形界面6.系统重启系统的运行级别配置文件:/etc/inittab切换到指定运行级别的指令:init [0-6之间某个数]2. 帮助指令2.1 man
2021-09-29 08:24:41
228
原创 3.4用户管理
用户管理1. 基本用户管理Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。每个用户账号都拥有一个唯一的用户名和各自的口令。要完成的工作主要有如下几个方面:用户账号的添加、删除与修改。用户口令的管理。用户组的管理。1.1 添加用户添加用户
2021-09-29 08:19:59
390
原创 3.2vi和vim编辑器
vi和vim编辑器1. vi和vim的基本介绍所有Linux系统都会内置vi文本编辑器vim是vi的升级版,可以主动以字体颜色分辨语法的正确性,代码补完和编译,错误跳转等功能。2. vi和vim的三种模式2.1 正常模式在正常模式下,我们可以使用快捷键。用vim打开一个文件就直接进入一般模式可以使用【删除字符】或【删除整行】来处理文档内容,也可以使用【复制黏贴按钮】2.2 插入/编辑模式在这个模式下,可以编辑文件内容。按下i,I,o,O,a,A,r,R等字母就可进入编辑模式
2021-09-29 08:18:29
348
原创 2.3Linux目录结构
Linux基本目录结构1. 基本介绍Linux的文件系统采用级层式子的树状目录结构,最上层是根目录“/”Linux世界里,一切皆文件。2. 目录用途/bin: 是Binary的缩写,这个目录存放着最经常使用的命令。/sbin:s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。/home:存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。/root:该目录为系统管理员,也称作超级权限者的用户主目录。/lib:
2021-09-29 08:17:11
209
原创 模拟秒杀并发状态(redis)
文章目录一个模拟秒杀的页面redis连接池设置:service层调用lua脚本,解决库存遗留问题web层使用反射调用需要调用的方法一个模拟秒杀的页面失败情况:成功情况:页面代码:<%@ page contentType="text/html;charset=UTF-8" language="java" %><html><% String basePath = request.getScheme() + "://"
2021-09-26 16:37:56
282
原创 Springboot连接redis配置
Springboot连接redis配置application.properties#Redis服务器地址spring.redis.host=192.168.233.128#Redis服务器连接端口spring.redis.port=6379#Redis数据库索引(默认为0)spring.redis.database= 0#设置密码spring.redis.password=#连接超时时间(毫秒)spring.redis.timeout=1800000#连接池最大连接数(使用负值表示没
2021-09-25 17:23:32
4489
原创 使用redis模拟验证码发送
使用redis模拟验证码发送maven引入依赖 <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>3.2.0</version> </dependency> <dependency
2021-09-25 17:06:29
326
原创 创建和使用插件
创建和使用插件创建插件这里创建一个拦截StatementHandler对象的插件/** * 完成插件签名,让MyBatis知道当前插件用来拦截那个对象的方法 */@Intercepts({ @Signature(type=StatementHandler.class,method="parameterize",args=java.sql.Statement.class)})public class MyFirstPlugin implements Interceptor { /**
2021-09-21 17:04:38
159
原创 MyBatis逆向工程配置
MyBatis逆向工程配置通过MyBatis逆向工程,可以很方便地自动生成java代码。使用MyBatis逆向工程,需要从官网下载jar包将jar包添加在lib后,在工程目录下新建mbg.xml文件打开mgb.xml文件,做如下配置:<generatorConfiguration> <!-- targetRuntime="MyBatis3Simple":生成简单版的CRUD MyBatis3:豪华版 --> <context id="DB
2021-09-21 10:49:38
391
原创 SSM框架整合与使用
SSM框架整合与使用一、SSM框架SSM框架是三个框架:Spring、SpringMVC、Mybatis三大框架的简称,是标准的MVC模式,即将项目划分为四个层次:service层、view层、controller层、Dao层。其中,Spring MVC 负责请求的转发和视图管理,spring实现业务对象管理,mybatis作为数据对象的持久化引擎。二、需要用到的jar包这些jar包可以从mybaits项目中下载。三、目录结构四、整合web.xml文件中的配置<!--Spring配
2021-09-21 09:35:07
639
原创 類的多態性與包裝類
類的多態性與包裝類文章目录類的多態性與包裝類一、類的多態性重寫和重載的區別封裝類一、類的多態性Java類的多態性的存有三個條件作爲前提: 繼承 重寫重寫和重載的區別重載的定義:一個類中有一個方法A,你又在這個類中創建了一個方法B,方法B的名字和A一樣,返回值也一樣,但是參數的類型或個數不同,此時B重載了A。重寫的定義:一個類M繼承另一個類N,N中有一個方法A,這時你在M寫了一個方法B,方法B的名字、返回值以及參數都和A一樣,此時B重寫了A。從編譯運行的角度看:重載:是指允許存在多個
2021-08-07 12:52:39
174
原创 C#连接SQL Server数据库
使用高级语言操作数据库,需首先在SQL Server中建立数据库,例如我在SQL Server中建立名为“Baokan”的数据库,其次在VS2019中选择新建窗体应用创建解决方之后,找到解决方案资源管理器新建一个C#类打开新建后的“ConSQL”类可以看到默认给出的代码using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Task
2021-07-29 22:50:34
5461
2
原创 Ripes将risc指令转为机器代码
当需要编写转移指令的机器代码时,可以采用两种方式,一种按照risc手册手编,另一种是采用ripes进行转换。使用ripes:打开ripes后,点击红方框标注的地方然后再Source code输入指令,右边自动就会出现相应的机器代码如果程序中包含转移指令,需要使用标记如上图中的 j型指令 后面有一个end, 需要在转移的目标地址前面加上“end:”不然会提示:-qENfYRV4-1624935175916)]导致无法正常转换!...
2021-06-29 10:53:38
6695
5
原创 verilog定义别名增加代码可读性
比较清晰的译码格式输入太多数次,一会比较繁琐,而是会出错,采用定义别名的方式,能减少出错率,增加代码的可读性。module ALU #(parameter LUI = 7'b0110111, parameter AUIPC = 7'b0010111, parameter JAL = 7'b1101111, parameter JALR = 7'b1100111)( //输入输出信号列表);always@(*) begin
2021-06-28 20:34:52
605
原创 The page build failed for the GitPages branch with the following error Unable to build page
The page build failed for the GitPages branch with the following error: Unable to build page.博客本地预览正常,提交Github后出现网站无法被建立经查阅资料和邮件咨询Github,该问题出现大致有三种可能:第一种可能,GitHub正在进行相关更新,可以访问 GitHub Status 查看GitHub的状态,如果出现就说明Github服务器没有出问题,而是其他方面的问题。第二种可能,Git提交
2021-06-03 19:20:26
244
原创 认识RISC-V
认识RISC-V文章转载自 原文地址文章目录认识RISC-V一、RISC-V指令集特点(R-type)(S-type)(I-type)(U-type)二、设计简单的RISC-V指令流水线指令附表RISC-V常用寄存器调用名关于R、I、U、S简单解释RISC-V手册摘要指令类型基本指令集==文章转载自== [原文地址](https://timephoenix.github.io/2021/05/31/%E8%AE%A4%E8%AF%86RISC-V/)一、RISC-V指令集特点RISC-V拥有规整的指
2021-06-01 17:06:00
1216
原创 数据库学习笔记
数据库文章目录数据库触发器DML(数据操作语言)触发器DDL(数据定义语言)触发器登陆触发器insert触发器update 触发器替代触发器delete触发器嵌套触发器递归触发器查看已建立的触发器(1)查看数据库中所有的触发器(2)删除触发器触发器DML(数据操作语言)触发器DML是附加在特定表或视图上的操作代码,当数据库操作语言事件时执行这些操作。常用的DML触发器有三种:insert触发器delete触发器update触发器DML触发器适用范围:通过数据中的相关表实现级联更改防
2021-05-29 17:47:35
261
2
原创 硬布线控制(Verilog HDL虚拟实验)
硬布线控制文章目录硬布线控制一、何为硬布线?二、顶层模块RegFile模块ALU模块一、何为硬布线?硬布线控制器是早期计算机设计方法之一。硬布线把控制部件看作产生专门固定时序控制信号的逻辑电路,而此逻辑电路以使用最少元件和取得最高操作速度作为设计目标。值得注意的是,一旦控制部件构成后,除非重新设计和物理上对它重新布线,否则要想增加新的控制功能是不可能的。这种逻辑电路是一种由门电路和触发器构成的复杂树形逻辑网路,故称之为硬布线控制器。#mermaid-svg-N3sAdsPvH4ZljeVM .la
2021-05-27 18:49:57
3293
原创 微程序控制器(Verilog HDL虚拟实验)
微程序控制器文章目录微程序控制器一、什么是微程序控制器?二、设计简单的微程序控制器方案(1)采用指令译码为方案(2)采用指令译码为一、什么是微程序控制器?微程序控制器是一种控制器,同组合逻辑控制器相比较,具有规整性、灵活性、可维护性等一系列优点,因而在计算机设计中逐渐取代了早期采用的组合逻辑控制器,并已被广泛地应用。在计算机系统中,微程序设计技术是利用软件方法来设计硬件的一门技术 。二、设计简单的微程序控制器信息流设计:1615—1098—765—43—0F0:B
2021-05-21 17:29:15
2523
1
原创 存储器RAM与ROM(Verilog HDL 虚拟实验)
索引RAM设计利用ROM存取七段数码管的真值RAM设计利用ROM存取七段数码管的真值ROM实现示例:module ROM#( parameter ADDRWIDTH = 4, parameter DATAWIDTH = 8)( input logic [ADDRWIDTH-1:0] iAddress, output logic [DATAWIDTH-1:0] oData); localparam MEMDEPTH = 1<<ADDRWIDTH;
2021-05-14 21:15:02
2135
原创 计算机组成原理cpu数据通路(Verilog HDL虚拟实验)
数据通路的作用数据在功能部件之间传送的路径称为数据通路,建立数据通路的任务是由“控制部件"来完成的内部数据通路:CPU内部的数据传送通路,用于在寄存器之间或寄存器ALU之间传送数据。外部数据通路:一般借助系统总线,将寄存器(MAR和MDR)与存储器和I/O模块连接起来。内部总线:是指同一部件,如CPU内部连接各寄存器及运算部件之间的总线系统总线:是指同一台计算机系统的各部件,如CPU、内存、通道和各类I/O接口间互相连接的总线。快速索引数据通路的作用一、多周期实现示例二、单周期实现示例GRS
2021-05-04 18:12:32
4342
原创 SQL Server数据库创建数据库、用户、表和插入数据(Transact-SQL)
SQLServer建数据库并、创建用户、创建模式、建表并插入数据一、建数据库并创建用户首先使用刷新左侧“对象资源管理器”,刷新后新建的数据库会出现在数据库列表中接下来就该创建数据库的用户,步骤如下:1.首先,点击“us1”左侧的“+”,会出现隐藏的内容,点击刚刚显示出来的内容中的“安全性”左侧的“+”号2.选中“安全性”下方的“用户”,右击用户,选中“新建用户”
2021-04-29 19:33:37
9870
原创 算术逻辑单元ALU(Verilog HDL虚拟实验)
Verilog HDL实现算术逻辑单元(ALU)一级目录二级目录三级目录一级目录二级目录三级目录
2021-04-25 20:14:26
3776
实现一个小型编译程序(能编译pascal语言,生成四元式,编译原理)
2022-06-16
手机新闻系统andriod开发
2022-01-28
多功能数字时钟.zip
2021-01-20
(练习)使用vhdl编写的组合逻辑 时钟.zip
2022-01-04
书库管理系统.zip
2021-01-04
远程FPGA虚拟实验之彩灯控制器虚拟实验面板.jvp
2021-04-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅