20145216史婧瑶《网络对抗》Web基础
20145216史婧瑶《网络对抗》Web基础
实验问题回答
(1)什么是表单
表单在网页中主要负责数据采集功能。一个表单有三个基本组成部分: 表单标签、表单域、表单按钮。
(2)浏览器可以解析运行什么语言
支持HTML、XML、PHP、Javascript等脚本语言。
(3)WebServer支持哪些动态语言
JavaScript、ASP、PHP、Ruby等脚本语言。
实验总结与体会
这次实验让我重温了上学期的网络安全编程基础,编写代码简直花了我百分之八十的精力,主要是在编写代码的过程中出现了一些问题,然后我就一遍一遍的调试,眼睛都看花了,不过这次实验学到的东西还是很多,比如对Web前端后端代码的编写、数据库的连接以及SQL注入、XSS攻击测试都有所掌握,所以,要始终相信付出总会有回报的。
实践过程记录
Web前端HTML
1.输入指令apachectl start 开启apache服务,使用netstat -aptn 查看端口占用,发现被进程602占用,使用命令sudo vi /etc/apache2/ports.conf 将配置文件中默认监听端口改为8080。(后面实验我又改为了5216)


2.再次打开Apacheservice apache2 restart ,登录localhost:8080可以看见上次生成的钓鱼网站

3.在虚拟机/var/www/html 文件夹下新建一个含有表单的html,在这里编写登录页面的代码


4.由于没有编写html_form_action.php,输入用户名密码,显示404

Web前端javascipt
1.使用javascript编写一段验证用户名及密码的规则,在这里设定的是用户名和密码不能为空

2.打开浏览器登录页面验证一下,当输入的用户名或密码为空时会弹出窗口

Web后端:MySQL基础
1.输入/etc/init.d/mysql start 开启mysql服务

2.输入mysql -u root -p ,并输入密码p@ssw0rd 进入mysql

3.修改密码:输入use mysql; ,选择mysql数据库;输入update user set password=PASSWORD("新密码") where user='root'; ,修改密码;输入flush privileges; ,更新权限

4.接着输入quit退出mysql,重新进入,使用新密码登录成功,说明修改成功

5.输入create database 库名; 建立一个数据库;输入show databases; 查看存在的数据库;输入use 库名; 使用我们创建的数据库

6.在mysql中建立库表,并向新建立的表中添加用户


Web后端:编写PHP网页
1.在/var/www/html 目录下新建一个php测试文件

2.在浏览器中打开localhost:5216/test.php ,可以看到如下界面

3.简单测试完成后,我们可以利用php和mysql结合之前编的登录网页进行简单的用户身份认证,这里可以参考老师给的代码编写login.php,代码如下所示:

4.现状可以在浏览器中访问自己的登陆页面,如果输入的用户名和密码与数据库中存有的用户名和密码相一致,则登录成功,否则登录失败


SQL注入
1.使用永真式进行注入。因为1恒等于1,所以条件恒成立,注入成功

2.通过sql注入将用户名和密码保存到数据库

用注入的用户名和密码进行登录显示登陆成功

XSS攻击测试
在登录的用户名中输入:<img src="20145216.jpg" />20145216</a> 即可读取/var/www/html文件夹下的图片

20145216史婧瑶《网络对抗》Web基础的更多相关文章
- 20145216史婧瑶《网络对抗》Web安全基础实践
20145216史婧瑶<网络对抗>Web安全基础实践 实验问题回答 (1)SQL注入攻击原理,如何防御 攻击原理: SQL注入攻击指的是通过构建特殊的输入作为参数传入web应用程序,而这些 ...
- 20145216史婧瑶 《网络对抗》 MSF基础应用
20145216史婧瑶 <网络对抗> MSF基础应用 实验回答问题 用自己的话解释什么是exploit,payload,encode. exploit:渗透攻击模块,测试者利用它来攻击一个 ...
- 20145216史婧瑶《网络对抗》逆向及Bof进阶实践
20145216史婧瑶<网络对抗>逆向及Bof进阶实践 基础知识 Shellcode实际是一段代码,但却作为数据发送给受攻击服务器,将代码存储到对方的堆栈中,并将堆栈的返回地址利用缓冲区溢 ...
- 网络对抗——web基础
网络对抗--web基础 实践内容 (1)Web前端HTML (2)Web前端javascipt (3)Web后端:MySQL基础:正常安装.启动MySQL,建库.创建用户.修改密码.建表 (4)Web ...
- 20145216史婧瑶《Java程序设计》第10周学习总结
20145216 <Java程序设计>第10周学习总结 教材学习内容总结 网络编程 一.网络概述 网络编程就是两个或多个设备(程序)之间的数据交换. 识别网络上的每个设备:①IP地址②域名 ...
- 20145216史婧瑶《Java程序设计》第五次实验报告
20145216 实验五<Java网络编程> 实验内容 1.掌握Socket程序的编写 2.掌握密码技术的使用 3.设计安全传输系统 实验要求 1.基于Java Socket实现安全传输 ...
- 20145216史婧瑶《Java程序设计》第9周学习总结
20145216 <Java程序设计>第9周学习总结 教材学习内容总结 第十六章 整合数据库 16.1 JDBC入门 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找. ...
- 20145216史婧瑶《Java程序设计》第8周学习总结
20145216 <Java程序设计>第8周学习总结 教材学习内容总结 第十五章 通用API 15.1 日志 java.util.logging 包提供了日志功能相关类与接口,不必额外配置 ...
- 20145216史婧瑶《Java程序设计》第7周学习总结
20145216 <Java程序设计>第7周学习总结 教材学习内容总结 第十三章 时间与日期 13.1 认识时间与日期 就目前来说,即使标注为GMT(无论是文件说明,或者是API的日期时间 ...
随机推荐
- SCSI共享磁盘
服务器端: [root@scsi ~]# fdisk -l Disk /dev/sda: 32.2 GB, 32212254720 bytes 255 heads, 63 sectors/track, ...
- Oracle备份恢复之热备份恢复及异机恢复
原理: 数据库必须运行在归档模式下,否则备份没有意义.备份前冻结块头,使scn号不变化,然后cp物理文件,最后解冻块头.此过程dml语句可以正常执行,动作被写在日志文件里面,当解冻scn号后,日志文件 ...
- mysqli_report
MYSQLI_REPORT_OFF Turns reporting off MYSQLI_REPORT_ERROR Report errors from mysqli function calls M ...
- _cs, _ci, or _bin,
High Performance MySQL, Third Edition by Baron Schwartz, Peter Zaitsev, and Vadim Tkachenko http:/ ...
- 带宽bandwidth,也叫频宽
1.两种意义 (1)在数字设备中,带宽通常以bps(bit per second)或bit/s或b/s表示. (2)在模拟设备中,带宽通常以每秒传送周期或赫兹 (Hz)来表示.如传送模拟信号(连续变化 ...
- 帝国cms栏目别名怎样调用?栏目名称太短了
在用帝国cms创建栏目时一般会填写栏目名称(较短)和栏目别名(为空则与栏目名相同),栏目别名可以设置长一些作为栏目标题,可是如何调用帝国cms栏目别名呢?默认的模板标题调用是<title> ...
- 全局ID的重要性
全局ID的重要性 体现在sharding的时候 gtid MySQL:global transaction id uuid:universally unique identifier guid:glo ...
- 安装HDF5及在VS下配置HDF5
最近要用到HDF5来存储数据,想要安装尝试用一下.发现网上有两种安装方式,一种是obtain518.html:获取最新的HDF5-1.8软件;另一种是cmakebuild518.html:使用CMAK ...
- android 代码edittext删除或者替换光标处的字串
https://stackoverflow.com/questions/3609174/android-insert-text-into-edittext-at-current-position Cp ...
- excel用法
1:求大于某一值的个数:使用COUNTIF(区间,标准) 要大写 =COUNTIF(B2:B48,">=95") 2:求某一区间的个数用:大区间个数减小区间个数 =CO ...