2019春第十二周作业Compile Summarize】的更多相关文章

这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 这里 我在这个课程的目标是 能按自己的想法解出题目 这个作业在那个具体方面帮助我实现目标 能朝着软件工程师方向发展 参考文献与网址 C语言程序设计II(第三版) C语言的教学 题目一 本题要求实现一个函数,用于计算有n个元素的指针数组s中最长的字符串的长度. 函数接口定义: int max_len( char *s[], int n ); 其中n个字符串存储在s[]中,函数max_len应返回其中最长字符串的长度. 裁判测试程序样例:…
<Linux内核原理与分析>第十二周作业 一.本周内容概述: 通过编程理解 Set-UID 的运行机制与安全问题 完成实验楼上的<SET-UID程序漏洞实验> 二.本周学习内容: 1.学习<SET-UID程序漏洞实验>的背景和理论知识 1.1 实验简介 Set-UID 是 Unix 系统中的一个重要的安全机制.当一个 Set-UID 程序运行的时候,它被假设为具有拥有者的权限.例如,如果程序的拥有者是root,那么任何人运行这个程序时都会获得程序拥有者的权限.Set-U…
<linux内核原理与设计>第十二周作业 Sql注入基础原理介绍 分组: 和20179215袁琳完成实验 一.实验说明   SQL注入攻击通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作,本章课程通过 LAMP 搭建 Sql 注入环境,两个实验分别介绍 Sql 注入爆破数据库.Sql 注入绕过验证两个知识点. 首先通过下面命令将代码下载到实验楼环境中,作为参照对比进行学习. $ wget http://labfil…
回顾1 (1)回想一下你曾经对计算机专业的畅想 当初你是如何做出选择计算机专业的决定的?经过一个学期,你的看法改变了么,为什么? 你认为过去接触到的课程是否符合你对计算机专业的期待,为什么?经过一个学期,你的看法改变了么,为什么? 你觉得计算机是你喜欢的领域吗,它是你擅长的领域吗?经过一个学期,你的看法改变了么,为什么? (注:不可以回答 "不是","是".请把这当成以后工作时面试题,需要回答足够长度,提供足够信息,让对方了解你.比如,给出为什么.) 高考的时候因分…
这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 在这里 我在这个课程的目标是 能够对C语言的编写更加得心应手 这个作业在那个具体方面帮助我实现目标 结构体更进一步 参考文献与网址 C语言程序设计II(第三版) C语言的教学 题目:这篇博客下面的评论中,请列出你最感到有共鸣的三条 1.颜晋南 | October 18, 2015 at 10:56 am | Reply 读好书是如此的重要,因为好书往往带领你去到更好的书,更大的世界. 我想加上一句,有些公认的好书你读起来没有感触,那么…
这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 这里 我在这个课程的目标是 能更加进一步的够熟练掌握指针的用法 这个作业在那个具体方面帮助我实现目标 能解更多的题 参考文献与网址 C语言程序设计II(第三版) C语言的教学 题目:按等级统计学生成绩 本题要求实现一个根据学生成绩设置其等级,并统计不及格人数的简单函数. 函数接口定义: int set_grade( struct student *p, int n ); 其中p是指向学生信息的结构体数组的指针,该结构体的定义为: st…
这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 在这里 我在这个课程的目标是 能更加进一步的够熟练掌握指针的用法 这个作业在那个具体方面帮助我实现目标 指针对于高阶题目的做法 参考文献与网址 C语言程序设计II(第三版) C语言的教学 题目:函数实现字符串逆序 本题要求实现一个字符串逆序的简单函数. 函数接口定义: void f( char *p ); 函数f对p指向的字符串进行逆序操作.要求函数f中不能定义任何数组,不能调用任何字符串处理函数. 裁判测试程序样例: #includ…
这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 在这里 我在这个课程的目标是 能更加进一步的够熟练掌握指针的用法 这个作业在那个具体方面帮助我实现目标 指针对于基础题目的做法 参考文献与网址 C语言程序设计II(第三版) 菜鸟教程中关于C语言的教学 基础题目一:每个单词的最后一个字母改成大写 函数fun的功能是:将p所指字符串中每个单词的最后一个字母改成大写.(这里的"单词"是指由空格隔开的字符串). 函数接口定义: void fun( char *p ); 其中 p 是…
这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 在这里 我在这个课程的目标是 能够熟练掌握指针的用法 这个作业在那个具体方面帮助我实现目标 对指针的使用更加得心应手 参考文献与网址 C语言程序设计II(第三版) 菜鸟教程中关于指针的教学 编程题一 6-1 求两数平方根之和 (10 分) 函数fun的功能是:求两数平方根之和,作为函数值返回.例如:输入12和20,输出结果是:y = 7.936238. 函数接口定义: double fun (double *a, double *b)…
这个作业属于哪个课程 C语言程序设计II 这个作业要求在哪里 在这里 我在这个课程的目标是 能够精通关于数组内部运作原理 这个作业在哪个具体方面帮助我实现目标 如何输出一行的连续字符 参考文献与网址 C语言程序设计II 中国专业计算机社区 国内编程师视频网址 题目:第五周预习选择题 预习的主要内容: 1:了解什么是C语言之心-----指针 2:变量,内存单元与地址之间的关系 3:如何使用指针变量 第一题 第二题 第三题 第四题 第五题 第六题 第七题 预习中产生的问题 问题1:指针作为函数参数的…
这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 这里 我在这个课程的目标是 能按自己的想法解出题目 这个作业在那个具体方面帮助我实现目标 能朝着软件工程师方向发展 参考文献与网址 C语言程序设计II(第三版) C语言的教学 题目:汉诺塔问题 汉诺塔是一个源于印度古老传说的益智玩具.据说大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘,大梵天命令僧侣把圆盘移到另一根柱子上,并且规定:在小圆盘上不能放大圆盘,每次只能移动一个圆盘.当所有圆盘都移…
    这个作业属于那个课程 C语言程序设计II 这个作业要求在哪 https://edu.cnblogs.com/campus/zswxy/computer-scienceclass3-2018/homework/3237 我在这个课程的目标 能运用单向链表去解决实际问题 这个作业在那个具体方面帮助我实现目标 通过练习去解决实际问题 计算最长的字符串长度 本题要求实现一个函数,用于计算有n个元素的指针数组s中最长的字符串的长度. 函数接口定义: int max_len( char *s[],…
格式化字符串漏洞实验 格式化字符串漏洞是由像 printf(user_input) 这样的代码引起的,其中 user_input 是用户输入的数据,具有 Set-UID root 权限的这类程序在运行的时候,printf 语句将会变得非常危险. 实验一: 找出 secret[1]的值 输入命令: ls vi test.c gcc -z execstack -fno-stack-protector -o djw test.c 其中test.c的代码为 include <stdlib.h> inc…
1.本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 2.书面作业 将Student对象(属性:int id, String name,int age,double grade)写入文件student.data.从文件读出显示. Q1. 字符流与文本文件:使用 PrintWriter(写),BufferedReader(读) 1.1 生成的三个学生对象,使用PrintWriter的println方法写入student.txt,每行一个学生,学生的每个属性之间用|…
主题: 需求: 用户角色,讲师\学员, 用户登陆后根据角色不同,能做的事情不同,分别如下讲师视图 管理班级,可创建班级,根据学员qq号把学员加入班级 可创建指定班级的上课纪录,注意一节上课纪录对应多条学员的上课纪录, 即每节课都有整班学员上, 为了纪录每位学员的学习成绩,需在创建每节上课纪录是,同时 为这个班的每位学员创建一条上课纪录 为学员批改成绩, 一条一条的手动修改成绩学员视图提交作业查看作业成绩一个学员可以同时属于多个班级,就像报了Linux的同时也可以报名Python一样, 所以提交作…
C语言实现Linux网络嗅探器 一.知识准备 1.一般情况下,网络上所有的机器都可以"听"到通过的流量,但对不属于自己的数据包则不予响应.如果某个工作站的网络接口处于混杂模式,那么它就可以捕获网络上所有的数据包和帧. 2.为了绕过标准的TCP/IP堆栈,网卡就必须设置为混杂模式.一般情况下,要激活这种方式,内核需要root权限来运行这种程序,所以Sniffer需要root身份安装. 3.当一个黑客成功地攻陷了一台主机,并拿到了root权限,而且还想利用这台主机去攻击同一网段上的其他主机…
Return-to-libc 攻击实验 一.实验描述 缓冲区溢出的常用攻击方法是用 shellcode 的地址来覆盖漏洞程序的返回地址,使得漏洞程序去执行存放在栈中 shellcode.为了阻止这种类型的攻击,一些操作系统使得系统管理员具有使栈不可执行的能力.这样的话,一旦程序执行存放在栈中的 shellcode 就会崩溃,从而阻止了攻击.不幸的是上面的保护方式并不是完全有效的,现在存在一种缓冲区溢出的变体攻击,叫做 return-to-libc 攻击.这种攻击不需要一个栈可以执行,甚至不需要一…
Sql注入基础原理介绍 分组:和20179205王雅哲共同完成实验 一.实验说明 1.1 sql注入  SQL注入攻击通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作.  SQL注入即是指web应用程序对用户输入数据的合法性没有判断,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据信息.  ●SQL注入威胁表现形式可…
格式化字符串漏洞实验 格式化字符串攻击原理是利用格式化函数(如printf())的沿着堆栈指针向下打印的特性,通过只提供格式化字符串但不提供对应的变量,读取栈内空间的内容. 更进一步,通过将某个要攻击的目标地址放入栈中,就可以利用格式化字符串读写里面的值. 因此,它的攻击分为两步: (1)第一步,将目标地址放入栈中: (2)第二步,设计格式化字符串,读写目标地址里的值. 格式化字符串漏洞是由像 printf(user_input) 这样的代码引起的,其中 user_input 是用户输入的数据,…
ShellShock攻击实验 一.实验简介 2014年9月24日,Bash中发现了一个严重漏洞shellshock,该漏洞可用于许多系统,并且既可以远程也可以在本地触发 二.预备知识 1.shellshock介绍 Shellshock,又称Bashdoor,是在Unix中广泛使用的Bash shell中的一个安全漏洞,首次于2014年9月24日公开.许多互联网守护进程,如网页服务器,使用bash来处理某些命令,从而允许攻击者在易受攻击的Bash版本上执行任意代码.这可使攻击者在未授权的情况下访问…
缓冲区溢出漏洞实验 (一)何为缓冲区溢出漏洞 缓冲区溢出是指程序试图向缓冲区写入超出预分配固定长度数据的情况.这一漏洞可以被恶意用户利用来改变程序的流控制,甚至执行代码的任意片段.这一漏洞的出现是由于数据缓冲器和返回地址的暂时关闭,溢出会引起返回地址被重写. (二)实验初始设置 1.Ubuntu 和其他一些 Linux 系统中,使用地址空间随机化来随机堆(heap)和栈(stack)的初始地址,这使得猜测准确的内存地址变得十分困难,而猜测内存地址是缓冲区溢出攻击的关键.因此本次实验中,我们使用以…
ShellShock攻击实验 一.环境搭建 下载 $ sudo su $ wget http://labfile.oss.aliyuncs.com/bash-4.1.tar.gz 安装 $ tar xf bash-4.1.tar.gz $ cd bash-4.1 $ ./configure $ make && make install 链接 $ rm /bin/bash $ ln -s /usr/local/bin/bash /bin/bash 到这里就安装完毕,下面检测是否存在shell…
SET-UID程序漏洞实验 一.实验简介 Set-UID是Unix系统中的一个重要的安全机制.当一个Set-UID程序运行的时候,它被假设为具有拥有者的权限.例如,如果程序的拥有者是root,那么任何人运行这个程序时都会获得程序拥有者的权限.Set-UID允许我们做许多很有趣的事情,但不幸的是,它也是很多坏事情的罪魁祸首. 因此本次实验的目标有两点: 欣赏好的方面,理解为什么Set-UID是需要的,以及它是如何被执行的. 注意坏的方面,理解它潜在的安全性问题. 二.实验内容 1.没有Set-UI…
格式化字符串漏洞实验 一. 实验描述 格式化字符串漏洞是由像 printf(user_input) 这样的代码引起的,其中 user_input 是用户输入的数据,具有 Set-UID root 权限的这类程序在运行的时候,printf 语句将会变得非常危险,因为它可能会导致下面的结果: 使得程序崩溃 任意一块内存读取数据 修改任意一块内存里的数据(这种结果是非常危险的,因为它允许用户修改 set-UID root 程序内部变量的值,从而改变这些程序的行为) 本实验将会提供一个具有格式化漏洞的程…
一.实验简介 竞态条件是指多个线程同时访问或者操作同一块数据,运行的结果依赖于不同线程访问数据的顺序.如果一个拥有root权限的程序存在竞态条件漏洞的话,攻击者可以通过运行一个平行线程与漏洞程序竞争,以此改变该程序的行为. 在本实验中学生将利用竞态条件漏洞获得root权限.除了攻击之外,学生还将学习如何制定保护方案抵御该类攻击. 系统用户名seed,密码dees 二.实验引导 1.两个可能的攻击目标 利用vulp.c中的竞态条件漏洞可以做很多事情.其中一种是利用漏洞在 /etc/passwd 和…
缓冲区溢出 2019/12/4 11:33:45 首先是安装一些用于编译的32位C程序e148 $ sudo apt-get update $ sudo apt-get install -y lib32z1 libc6-dev-i386 $ sudo apt-get install -y lib32readline-gplv2-dev 关闭地址随机化 $ sudo sysctl -w kernel.randomize_va_space=0 设置zsh文件 $ sudo su $ cd /bin…
图片一 用内部存储实现文件写入和读取功能 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="htt…
Return-to-libc 攻击实验 缓冲区溢出的常用攻击方法是用 shellcode 的地址来覆盖漏洞程序的返回地址,使得漏洞程序去执行存放在栈中 shellcode.为了阻止这种类型的攻击,一些操作系统使得系统管理员具有使栈不可执行的能力.这样的话,一旦程序执行存放在栈中的 shellcode 就会崩溃,从而阻止了攻击. 不幸的是上面的保护方式并不是完全有效的,现在存在一种缓冲区溢出的变体攻击,叫做 return-to-libc 攻击.这种攻击不需要一个栈可以执行,甚至不需要一个 shel…
本周选做的信息安全实验为Python实现Zip文件的暴力破解 实验预备: 这次实验我们需要用到的库为zipfile.下来我们先来了解一下这个模块. 首先我们的重点是对zip文件的操作,而zipfile就是本次实验的核心.zipfile模块是python中自带的模块,提供了对zip文件的创建读.写.追加.解压以及列出zip文件列表的工具.这里我们主要用到ZipFile对象的extractall 方法来解压zip文件,现在我们看一下ZipFile的文档,在shell中运行Python交互环境,并使用…
Collabtive 系统 SQL 注入实验 实验介绍 SQL注入漏洞的代码注入技术,利用web应用程序和数据库服务器之间的接口.通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令. 预备知识 1. SQL语言 结构化查询语言(Structured Query Language)简称SQL:是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询.更新和管理关系数据库系统:同时也是数据库脚本文件的扩展名. 2.SQL…