自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 资源 (1)
  • 收藏
  • 关注

转载 软件安全实验(四)SEEDubuntu--Buffer Overflow Vulnerability Lab(转载)

文章目录 一、实验要求二、 实验环境三、 实验步骤(一) 准备工作(二) 实验任务:Task 1 : Running ShellcodeTask 2:Exploiting the VulnerabilityTask 3: Defeating dash’s Counterme...

2020-12-22 11:41:11 2168

原创 数字电路与逻辑设计大实验-单周期CPU设计与实现(二)

功能实现 根据指令译码器的功能可知:当SM = 1时,输入信息:需执行指令IR[7..0]对应一个指令控制信号。指令译码器需要完成指令机器码和指令控制信号的一一对应。VHDL的实现如下所示: 分析与综合( Analysis & Synthesis ),适配( Fitter ),编程( Assembler ),时序分析Classical Timing Analysis )均通过。如下所示:RTL如下所示: 功能的...

2020-12-22 10:57:53 536

原创 数字电路与逻辑设计大实验-单周期CPU设计与实现(一)

模型机设计报告班级 信安1801 姓名 姜旭 学号 201808060125 一、设计目的 完整、连贯地运用《数字电路与逻辑设计》所学到的知识,熟练掌握 EDA工具基本使用方法,为学习好后续《计算机原理》课程做铺垫。二、设计内容按给定的数据格式和指令系统,使用EDA工具设计一台用硬连线逻辑控制的简易计算机系统; 要求灵活运用各方面知识,使得所设计的计算机系统具有较佳的性能; 对所做设计的性能指标进行分析,整理出设计报告。简易计算机系统数据格...

2020-12-21 18:55:54 1015

原创 操作系统实验三——银行家算法

银行家算法银行家算法概述我们可以把操作系统看作是银行家,操作系统管理的资源相当于银行家管理的资金,进程向操作系统请求分配资源相当于用户向银行家贷款。操作系统按照银行家制定的规则为进程分配资源。当进程首次申请资源时,要测试该进程对资源的最大需求量,如果系统现存的资源可以满足它的最大需求量则按当前的申请量分配资源,否则就推迟分配。当进程在执行中继续申请资源时,先测试该进程已占用的资源数与本次申请的资源数之和是否超过了该进程对资源 的最大需求量。若超过则拒绝分配资源,若没有超过则再测试系统现存的资源能否满足

2020-12-20 16:40:45 3452

原创 操作系统实验三——生产者-消费者问题

生产者消费者问题基本原理在 Linux 操作系统用 C 实现经典同步问题:生产者—消费者,具体要求如下:① 一个大小为 10 的缓冲区,初始状态为空。② 2个生产者,随机等待一段时间,往缓冲区中添加数据,若缓冲区已满,等待消费者取走数据之后再添加,重复 10 次。③ 2个消费者,随机等待一段时间,从缓冲区中读取数据,若缓冲区为空,等待生产者添加数据之后再读取,重复 10 次。实验要求本实验的主要目的是模拟操作系统中进程同步和互斥。在系统进程并发执行异步推进的过程中,由于资源共享和进程间合作而造

2020-12-20 16:40:36 19605 2

原创 密码学复习(1)

密码学基础研究内容发展史古代密码隐写 scytale古典密码凯撒密码轮转密码近代密码对称 非对称加密分类密钥数量单双钥体制变换操作代替 换位明文处理方式流密码 分组密码密码攻击分类密码分析学穷举破译法完全试凑法分析法确定分析统计分析密码学的数学引论...

2020-12-20 16:38:24 314 1

原创 软件安全实验(四)SEEDubuntu--Buffer Overflow Vulnerability Lab(机翻)

缓冲区溢出漏洞实验2020年1月11日更新版权所有2006 - 2016杜,雪城大学。本文件的开发部分由美国国家科学基金会资助,授予编号。1303306和1318814.本作品根据知识共享属性-非商业共享相似4.0国际许可授权。本许可证的人类可读摘要(而非替代)如下:您可以自由复制和重新分发任何媒体或格式的材料。你必须给予适当的信任。如果你对素材进行混音、转换或构建,你必须在与原作相同的许可下发布你的作品。您不得将该材料用于商业目的。实验概述本实验的学习目标是让学生通过将他们从课堂上学

2020-12-20 16:25:50 799

原创 论文分析:VoltJockey: Breaching TrustZone by Software-Controlled Voltage Manipulation over

2020-12-16 15:04:56 257 1

原创 软件安全--Environment Variable and Set-UID Program Lab (2)

实验要求·Task 3·Task 4·Task 5实验环境SEEDUbuntu(Ubuntu 16.04)实验步骤Task3Step1编译并运行以下程序。描述观察到的实验结果。该程序简单地调用了/usr/bin/env,该系统调用能够打印出当前进程的环境变量。 1. 保存和编译文件task3,发现执行结果为空,没有输出环境变量。2. 原因分析:查询函数execve()的作用,其调用格式如下:int exec...

2020-12-09 16:44:34 345 1

原创 软件安全--Environment Variable and Set-UID Program Lab

实验要求实验环境SEEDUbuntu(Ubuntu 16.04)实验步骤Task8Step1编译上面的程序,把它的所有者变成它的所有者,并将它更改为一个Set-UID程序。该程序将使用system()来调用该命令。如果你是鲍勃,你能破坏系统的完整性吗?例如,您能删除一个不能写入的文件吗?首先把task8中的代码程序保存并编译,然后在root状态下,更改其所有者为root并将其设置为SETUID程序。并查看其权限和详细信息。创建一个test.c文件,输入信息

2020-12-09 16:42:28 740 1

原创 HNU计算机系统第八、九章作业

题8.18解答:A C E是可能的题目分析过程:Fork函数在父进程中调用会创建一个新的子进程,这个函数只被调用一次,但是返回两次,在父进程中返回子进程的pid,在子进程中返回0。因此题目中的函数调用时的情况可以如下表示(本人自己手画的)第一次fork创建出一个子进程,然后在两个进程中又调用一次fork最后一共有四个进程。其中第一次fork创建的子进程中执行atexit指令,因此在这个子进程中又fork创建的子进程和它本身最后在exit后都会调用end函数输出2.第二次for

2020-12-03 18:58:45 3581

原创 HNU计算机系统作业第七章

题7.6解答:题目分析过程:buf:符号buf在本段代码中是一个对外部符号的引用,因此有符号表条目,因为是对外部全局变量的引用,所以他的类型是全局符号,不在本模块定义,应该在main.o中定义,处在.data节。bufp0:符号bufp0是在本模块定义的一个全局变量并且进行了初始化,因此有符号表条目,类型是全局符号,在swap.o中定义,因为进行了初始化,所以是处在.data节。bufp1:符号bufp1是带有static属性的全局变量,因此是一个本地符号,有符号表条目,类型是本地符号,在

2020-12-03 18:58:03 3658

原创 HNU计算机系统作业第六章

题6.32解答:题目分析过程:高速缓存是4路组相连的,块大小为4个字节,有8组。地址宽为13位。因此对高速缓存的地址格式来说,因为块的大小为4个字节,而且存储每次访问1个字节,所以最低的2位第0到1位是块偏移;又因为一共有8个组,所以需要3位二进制做组索引,所以第2到4位是组索引,剩下的5到12位是标记位。因为引用的地址是0x0718写成二进制是0000011100011000,因此取低13位做缓存地址格式也就是0 0 1 1 1 0 0 0 1 1 0 0 0其中最...

2020-12-03 18:57:25 3734

原创 HNU计算机系统作业第三章

题3.54解答:代码:int decode(int x, int y, int z) { int temp; z = y - z; // movl 16(%ebp), %edx subl 12(%ebp), %edx temp = z; // movl %edx, %eax temp <<= 15; // sall $15, %eax temp >>= 15; // sa...

2020-12-03 18:54:45 3554 1

原创 HNU计算机系统作业第二章

题2.58解答:代码:int is_little_endian(){ int a=1; char *p = (char *) &a; return (int)(*p);}实现思路:大端法和小端法高低位存储的方向相反,小端法地址低位存低位,大端法地址高位存低位,因此可以定义一个int型数据的1,它的最低位为1,最高位为0,如果是小端法则最低地址存的数据是1,如果是大端法则最低地址存的数据是0,通过将指向该数据首地址的指针强制转换成c...

2020-12-03 18:53:48 4398

原创 ICS计算机系统实验--buflab

实验内容及操作步骤:实验步骤1.实验题目分析和准备 本次实验共分为5个部分,在基于ubuntu12.04虚拟机环境下进行实验。本实验在linux环境下进行,方便使用用gdb调试方法进行实验,因为本次实验反汇编出的汇编代码很长,在命令行中有时会显示不全,因此我们可以通过指令objdump -d bufbomb > bufbomb.txt 可以将反汇编出的汇编代码导入到一个txt文件,然后进行分析。2.实验步骤和分析过程Level 0 Candle 题目中给出了...

2020-12-02 17:31:20 4328

原创 ICS计算机系统实验--bomblab

实验内容及操作步骤:实验步骤1.实验题目分析和准备首先分析bomb.c的C语言代码,我们可以得知本实验共分为六个部分外加一个隐藏关卡,每一部分都要求输入一个字符串,如果输入的字符串不正确则会触发炸弹爆炸实验失败,因此本实验的主要目标就是找到这几个合法的字符串,但是我们会发现无法直接阅读C语言的函数,不能从C语言代码中获得信息。但是题目中还有一个可执行文件,因此我们能想到可以反汇编可执行文件从反汇编出的汇编代码中获得操作的信息从而解决问题。本实验在linux环境下进行,方便使用用gdb调试方法进

2020-12-02 17:26:40 5519

原创 ICS计算机系统实验--datalab实验

实验内容及操作步骤:一.代码完善及代码思路说明/* * bitAnd - x&y using only ~ and | * Example: bitAnd(6, 5) = 4* Legal ops: ~ |* Max ops: 8* Rating: 1*/int bitAnd(int x, int y) { return (~((~x)|(~y)));}代码思路:根据德摩根律,我们可以得出两个数的相与等于其的反相...

2020-12-02 17:22:55 5580

原创 软件安全实验-SEEDubuntu-Shellshock Attack Lab

实验要求Task 1Task 2Task 3Task 4Task 5Task 6实验环境SEEDUbuntu(Ubuntu 16.04)实验步骤Task1Bash的版本:在本书提供的SEED Ubuntu 16.04虚拟机中,有两个版本的Bash程序位于/bin目录中。一个版本就叫Bash,这个版本已经打了补丁,所以不会受Shellshock攻击的影响。终端中运行的shell程序就是这个安全的Bash版本,它在函数传递的行为方面做了改变。另外一个版本叫bash_shells

2020-11-30 17:12:00 2354 2

原创 论文阅读:VoltJockey: Breaching TrustZone by Software-Controlled Voltage Manipulation over

这里写目录标题论文题目TrustzoneDVFSSoC基于电压的硬件故障攻击方法论文题目VoltJockey: Breaching TrustZone by Software-Controlled Voltage Manipulation over Multi-core FrequenciesSide ChannelsCCS ’19, November 11–15, 2019, London, United KingdomVoltJockey:通过软件控制的多核频率电压操作突破TrustZone

2020-11-28 20:57:12 4646

原创 湖南大学离散数学实验——代码(一)

目录实验代码合法检测真值表自然推理系统消解推理系统实验代码合法检测#include"string.h"#include"stdio.h"void rule1(char a[],int i) { //如果是单个字符为合法表达式则为1 if((a[i]>='a')&&(a[i]<='z')) { a[i]='1'; } //若为常量则为合法表达式则返回1 else if(a[i]=='0') { a[i]='1'; }}int rule2(char

2020-11-28 20:26:34 5350

原创 湖南大学离散数学实验——代码(二)

目录实验代码代数集合与关系图论实验代码代数#include<bits/stdc++.h> //修改1:万能头文件 using namespace std;#define N 100//基本函数int printYsh(char a[]) { //由于集合保存在一个字符串,显示时在各元素之间加入逗号,及返回长度 //int nLen=0; //int i=0; //nL

2020-11-28 20:26:05 5636

原创 操作系统实验二——进程调度算法(FCFS、RR)

目录进程调度算法FCFS算法代码RR算法代码进程调度算法FCFS算法代码#include <stdio.h>#include <string.h>#include <stdlib.h>#include <vector>using namespace std;/* 先来先服务(FCFS) */// 定义先来先服务结构体、参数struct fcfs{ char name[10];// 进程名称 float daod

2020-11-28 19:45:41 5494

SPEC-CPU2006

specCPU2006基准测试,SPEC是标准性能评估公司(Standard Performance Evaluation Corporation)的简称。SPEC是由计算机厂商、系统集成商、大学、研究机构、咨询等多家公司组成的非营利性组织,这个组织的目标是建立、维护一套用于评估计算机系统的标准。 在早些年,业界使用的是其上一个版本SPEC CPU 2000。和SPEC CPU 2000一样,SPEC CPU 2006包括了CINT2006和C FP2006两个子项目,前者用于测量和对比整数性能,而后者则用于测量和对比浮点性能,SPEC CPU 2006中对SPEC CPU 2000中的一些测

2020-11-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除