20145302张薇 <Java程序设计>第一周学习总结 教材学习内容总结 第一章 1995年,java被公认诞生.java第一开始为了消费性数字产品(如手机)而设计,所以java本身有很多为了节省资源而作的设计.随着java的版本演进,Sun公司对于java 的推进变得艰难,最终2010年,Oracle并购Sun,Java正式成为Oracle所属. java的三大平台:Java SE,Java EE,Java ME.SE是学习各平台应用的基础,初学者从这里开始学习.EE以SE为基础,主要用于…
北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计 班级:1351  姓名:李畅宇  学号:20135129 成绩:             指导教师:娄嘉鹏      实验日期:2015.4.15 实验密级:         预习程度:         实验时间: 仪器组次:          必修/选修:            实验序号: 实验名称:       Java开发环境的熟悉 实验目的与要求:实验内容1.使用JDK编译.运行简单的Java程…
20145302张薇<Java程序设计>实验三:敏捷开发与XP实践 实验内容 使用git上传代码 使用git实现代码开发实践 实现代码的重载 使用git上传代码 git init git add . git commit -m "注释" git push origin master 出现error:fetch-first解决办法:git pull origin master之后git push origin master 出现error:non-first-forward解…
20145302张薇<Java程序设计>实验二:Java面向对象程序设计 使用TDD的方式设计实现复数类:Complex 测试代码 import org.junit.Test; public class ComplexNumberTest { @Test public void TestFunction1() { ComplexNumber complexnumber = new ComplexNumber(1, 3); ; assert complexnumber.m_dRealPart =…
20145302张薇 实验五:Java网络编程及安全 实验内容 掌握Socket程序的编写: 掌握密码技术的使用: 设计安全传输系统. 实验要求 基于Java Socket实现安全传输 基于TCP实现客户端和服务器,结对编程一人负责客户端,一人负责服务器 使用Git进行版本控制 选择对称算法进行数据加解密 选择非对称算法对对称加密密钥进行密钥分发 选择合适的Hash算法进行完整性验证 选择合适的算法对Hash值进行签名/验证 实验步骤 我负责客户端 结对伙伴:孙文馨负责服务器.博客地址:http…
20145302张薇<Java程序设计>第三周学习总结 教材学习内容总结 第四章 定义类 一个原始码中有多少类就会有多少.class文档. 标准类 使用java.util.scanner让用户输入数据,在开头使用import偷懒吧 变量名=scanner.nextxxx(); 使用java.math.BigDecimal提高浮点数计算的精确度,在开头用import偷懒,BigDecimal提供加减乘除等计算方法,而且可以叠加使用 op1.add(op2).subtract(op3).multi…
20145302张薇 <Java程序设计>第一周学习总结 教材学习内容总结 第三章 第三章讲的是基本类型,变量,运算符和基本条件语句. 基本类型分为: 整数:short(2 byte),int(4 byte),long(8 byte): 字节:byte,可表示整数范围为:-128~127,在需要逐字节处理数据时(如图像处理)使用: 浮点数:float(4 byte),double(8 byte): 字符:char每个字符占两字节: 布尔:ture表示逻辑真,false表示逻辑假. 常用格式控制…
20145302张薇 <网络对抗> web基础 实验问题回答 1.什么是表单 表单在网页中主要负责数据采集功能:一般网页上需要用户输入.选择的地方都会用到表单 表单标签:即,用于确定表单所控制的范围 表单域:包含了文本框.密码框.隐藏域.多行文本框.复选框.单选框.下拉选择框和文件上传框等 表单按钮:包括提交按钮.复位按钮和一般按钮 因为表单可以从用户那里获取信息,所以DOM可以连接表单来使用获取的信息 2.浏览器可以解析运行什么语言 超文本标记语言:HTML 可扩展标记语言:XML 脚本语言…
20145302张薇 <网络对抗技术> web安全基础实践 实验问题回答 1.SQL注入攻击原理,如何防御 原理:攻击者把SQL命令插入到网页的各种查询字符串处,达到欺骗服务器执行恶意的SQL命令. 防御:在网页设计时对文本框的输入进行限制,比如说长度限制.不能出现#号等 2.XSS攻击的原理,如何防御 原理:攻击者在可输入域插入一些html或脚本语言使服务器执行那些代码 防御:关键字防御,比如过滤<script>这种敏感词汇,减少被攻击的风险 3.CSRF攻击原理,如何防御 原理…
20145302张薇 <网络对抗>MSF应用基础 实验内容 掌握metasploit的基本应用方式 1.主动攻击--ms08_067 2.针对浏览器的攻击--ms11_050 3.针对客户端的攻击--Adobe 4.成功应用一个辅助模块--scanner/discovery/arp_sweep&scanner/http/cert 实验问题回答 1.exploit就是我去攻击你 2.payload就是攻击使用的武器 3.encode就是包装武器,把武器伪装成棒棒糖 实验总结与体会 学习需…
20145302张薇<网络对抗技术>PC平台逆向破解 实验任务 1.简单shellcode注入实验 2.Return-to-libc 攻击实验 实验相关原理 Bof攻击防御技术 从防止注入的角度来看:在编译时,编译器在每次函数调用前后都加入一定的代码,用来设置和检测堆栈上设置的特定数字,以确认是否有bof攻击发生. 如GCC中的编译器有堆栈保护技术,参考链接:http://www.ibm.com/developerworks/cn/linux/l-cn-gccstack/index.html…
20145302张薇 <网络对抗技术>逆向及BOF基础实践 实验内容 实践对象:名为20145302的linux可执行文件. 该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户输入的字符串. 该程序同时包含另一个代码片段,getShell,会返回一个可用Shell.但是正常情况下这个代码是不会被运行的.我们实践的目标就是想办法运行这个代码片段. 实践两种方法: 手工修改可执行文件,改变程序执行流程,直接跳转到getShell函数. 利用foo函数的Bof漏洞,构造一个攻…
20145302张薇<课程设计>数据恢复--WinHex实践 实践内容 使用WinHex破损一个U盘 使用WinHex通过DBR备份数据来修复已损坏U盘 实践详细步骤 1.准备一个文件格式为NTFS的U盘 2.使用WinHex以物理方式打开此U盘 WinHex->Tools->Open disk 由此,出现Boot区NTFS文件格式的数据 我们可以看到其offset为:001FBE0000 3.损坏boot区破损U盘 选中这一区域,右键选择Edit->Fill Block 在…
课程:Java程序设计实验   班级:1353  姓名:符余佳源  学号:20135321 成绩:                           指导教师:娄嘉鹏      实验日期:2015.6.9 实验密级:无            预习程度:                   实验时间:15:30~18:00 仪器组次:  21                    必修/选修: 选修                  实验序号:5 实验名称:TCP传输及加解密 产品托管地址:ht…
南邮JAVA程序设计实验1  综合图形界面程序设计 实验目的: 学习和理解JAVA SWING中的容器,部件,布局管理器和部件事件处理方法.通过编写和调试程序,掌握JAVA图形界面程序设计的基本方法. 实验内容: 设计和编写一个用于将人民币转换为等值的美元的程序,界面要求能够输入人民币的金额并能够得到转换后的结果.(每100美元等值买入人民币数:619.72) 实验代码: import java.awt.*; import java.awt.event.*; import java.math.*…
20145302 <Java程序设计>实验一:Java开发环境的熟悉 实验内容 使用dos命令行编译.运行简单的Java程序: 使用IDEA编辑.编译.运行.调试Java程序. 1.命令行下java程序开发 md创建文件夹 cd进入文件夹 cd..退回上一层文件夹 cd\退回根目录 javac用于编译.java文件,编译后出现.class文件,如下图: 用dos命令行来编译.执行程序: 下图为用记事本创建,改拓展名为.java的文件的内容: 2.IDEA下java程序调试 调试程序 断点测试…
20145325张薇 实验四:Andoid开发基础 实验内容 使用 Android Studio 设计"Hello" 设计过程 首先创建项目 选择.xml中的`Design 选中Widgets中的Large Text修改文本信息 设计效果如图:…
20145302 <Java程序设计>第十六周课程总结 实验报告链接汇总 实验一 Java开发环境的熟悉 实验二 Java面向对象程序设计 实验三 敏捷开发与XP实践 实验四 Andoid开发基础 实验五 Java网络编程及安全 代码托管链接 代码托管链接 课程收获与不足 自己的收获 通过学习java这门课程,认识到了java这种面向对象的程序设计语言与C语言这种面向过程的程序设计语言在思想上是有很大不同的 自己需要改进的地方 其实在看书的过程中,有时候有很多疑惑不解的地方,不懂得时候就问问同…
20145302 <Java程序设计>第十周学习总结 客户端和服务器端功能 客户端程序功能列表: 接收用户控制台输入 判断输入内容是否合法 按照协议格式发送数据 根据服务器端的反馈给出相应提示 服务器端程序功能列表: 接收客户端发送数据 按照协议格式解析数据 判断发送过来的数字和随机数字的关系 根据判断结果生产协议数据 将生产的数据反馈给客户端 客户端程序协议格式如下: 将用户输入的数字转换为字符串,然后转换为byte数组 发送"quit"字符串代表退出 服务器端程序协议格…
20145302 <Java程序设计>第九周学习总结 教材学习内容总结 第十六周 JDBC简介 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC目的:让Java程序设计人员在撰写数据库操作程序时可以有个统一的接口,无须依赖特定的数据库API,"写一个Java程序,操作所有数据库" 连接数据库 联机数据库,需要在classpath中设定JDBC驱动程序 基本数据库操作相关JDBC接口或类是为位于java.sql包中 Connection接口的操作…
20145302 <Java程序设计>第八周学习总结 教材学习内容总结 第十五章 日志API简介 使用日志的起点是Logger类,要取得Logger类,必须使用Logger的静态方法getLogger(),Logger.log()方法可以用来输出信息. 默认的Logger还会记录时间.类.方法等信息,Logger是记录信息的起点,还会经过一些过滤才会输出信息,输出信息实际上是由Handler负责. Logger有层级关系,每个Logger处理完自己的日志动作后,回想父Logger传播,让父Lo…
20145302 <Java程序设计>第七周学习总结 教材学习内容总结 第十三章 时间的度量 Greenwich Mean Time,格林威治时间,简称GMT时间,由观察太阳而得来: Universal Time,世界时,UT: International Atomic Time,国际原子时,TAI: Coordinated Universal Time,世界协调时间,UTC: Unix时间,以1970年1月1日00:00:00为起点: epoch:java.util.Date epoch毫秒…
20145302 <Java程序设计>第六周学习总结 教材学习内容总结 第十章 串流设计的概念 无论来源和目的地实体形式是什么,只要取得InputStream和OutputStream实例后,就只是调用InputStream和OutputStream的相关方法. 如果要将数据写入目的地,可以使用输出串流. dump()方法 import java.io.*; public class IO { public static void dump(InputStream src, OutputStr…
20145302 <Java程序设计>第五周学习总结 教材学习内容总结 第八章 try catch JVM会先尝试执行try区块中的内容,若发生错误且与catch后面的类型相符,则执行catch区块中的代码. 若想在捕捉(catch)错误之后恢复程序正常执行流程,可以将try.catch区块放入while循环中. 由于JVM是尝试执行try区块,所以一旦发生错误被捕捉,那么这一次的try区块就相当于没有执行. 异常继承架构 编译程序认为调用System.in.read()时可能发生错误,故要求…
20145302 <Java程序设计>第四周学习总结 教材学习内容总结 第六章 继承共同行为 面向对象中,子类继承父类,避免重复的行为定义,不过并非为了避免重复定义行为就使用继承. 程序代码重复在程序设计上就是不好的信号,多个类间出现重复的程序代码时,设计上可考虑的改进方式之一,就是把相同的程序代码提升为父类. 在java中,继承时使用extends关键字,private成员也会被继承,只不过子类无法直接存取,必须通过父类提供的方法来存取(若父类愿意提供访问方法的话). 多态与is-a 在ja…
北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计   班级:1353       姓名:李海空  学号:20135329 成绩:             指导教师:娄嘉鹏      实验日期: 实验密级:         预习程度:             实验时间: 仪器组次:          必修/选修:选修       实验序号:3 实验名称:                敏捷开发与XP实践 实验目的与要求: 完成实验.撰写实验报告,实验报告…
北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计 班级:1353  姓名:李海空  学号:20135329 成绩:             指导教师:娄嘉鹏      实验日期:2015.5.7 实验密级:         预习程度:         实验时间: 仪器组次:          必修/选修:            实验序号: 实验名称:       Java面向对象程序设计 实验目的与要求:实验内容 1. 初步掌握单元测试和TDD 2.…
北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计 班级:1353  姓名:李海空  学号:20135329 成绩:             指导教师:娄嘉鹏      实验日期:2015.4.14 实验密级:         预习程度:         实验时间: 仪器组次:          必修/选修:            实验序号: 实验名称:       Java开发环境的熟悉 实验目的与要求:实验内容1.使用JDK编译.运行简单的Java程…
实     验    报     告 课程:Java 班级: 1353    姓名:李海空   学号:20135329 成绩:              指导教师:娄嘉鹏   实验日期:2015.6.12 实验密级:          预习程度:          实验时间:15:30~18:00 仪器组次:           必修/选修:选修     实验序号:05 实验名称: 网络编程与安全 实验目的与要求:    1.掌握Java网络编程的方法: 2.掌握Java安全编程的方法: 3.能…
GDB堆栈跟踪与汇编调试 堆栈跟踪 源代码 使用gcc - g example.c -o example -m32指令在64位的机器上产生32位汇编,然后使用gdb example指令进入gdb调试器: 在main函数处设置一个断点,再run运行 使用disassemble获取汇编代码 用info registers指令查看各寄存器的值 由上图知此时主函数的栈基址为0xbffff324 用x 0xbffff324指令查看内存地址中的值 使用display /i $pc:在每次执行下一条汇编语句时…