20145304 Exp8 Web基础

实验后回答问题

(1)什么是表单

表单用于搜集不同类型的用户输入,由三个基本组成部分表单标签、表单域、表单按钮。表单提交有两种方法,分别是get和post,使用get时表单数据在页面地址栏中可见,使用post时,表单数据在页面地址栏中不可见。表单域:包含了文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文件上传框等;表单按钮可提供提交、复位等功能。

(2)浏览器可以解析运行什么语言。

HTML、XML、JSP、Python、Java、Script、JavaScript、VBScript、Perl等

(3)WebServer支持哪些动态语言

PHP、JSP等

实验总结与体会

此次实验使我们学会了自己如何编写一个登陆网站,其中涉及到了WEB前端、后端以及数据库的使用,以及简单的SQL注入攻击和XSS攻击。

通过自己实践,了解到了GET和POST的差别,不断地修改代码,排查错误,使自己对网络编程的部分有了较深的印象。

实践过程记录

Apache环境配置

1.上次实验apache使用的端口为80,此次实验将端口设置为8088

2.测试apache,用Kali的火狐浏览器打开网页时出现了闪退,不确定是谁的原因,用本机360打开网页成功,显示的是上次实验的伪装网页。

3.测试Apache是否可读取工作目录下的文件(我就敲了一个20145304,按ESC就多了好多)。

4.测试完成。

Web前端html

1.进入Apache工作目录,新建5304form.html

2.编写html

刚开始使用了汉字,出现了乱码

修改后

3.用浏览器访问该HTML文件

4.点击提交,默认使用的是GET,表单数据在页面地址栏中可见

5.修改代码,使用POST方法提交

6.表单数据在页面地址栏中不可见,因为应答页面未编写,所以无法访问。

Web前端javascipt

1.设置输入不能为空,js代码如下:

function validate_required(field,alerttxt)
{
with (field)
{
if (value==null||value=="")
{alert(alerttxt);return false}
else {return true}
}
} function validate_form(thisform)
{
with (thisform)
{
if (validate_required(grade,"grade must be filled out!")==false)
{grade.focus();return false}
else if (validate_required(number,"number must be filled out!")==false)
{number.focus();return false}
}
}

2.用浏览器访问测试

MySQL基础

1.开启sql服务

2.登录mysql

3.查看基本信息(注意命令后的封号!!)

4.建库、建表。

5.添加用户。

6.修改密码(补充,与下面的实验无关,看要求发现需要修改)

编写PHP网页,连接数据库,进行用户认证

PHP测试

1.在/var/www/html下新建一个.php文件。

2.用浏览器访问,成功。

正式实验

1.在/var/www/html下新建一个5304login.php文件,编写代码。

2.将前面使用过的5304form.html提交的网页改为5304login.php。

3.刚开始无法读取用户输入的数据,修改.html和.php的提交方式一致

4.登录认证成功。。

5.测试一个不存在的数据。

SQL注入

1.最简单的永真式``` ' or 1=1#````

2.修改代码,使其可通过SQL注入将班级和学号保存到数据库中,并进行登录。

XSS攻击

1.当图片格式为.png时,刚开始试,图片加载不出来,就换了.jpg格式,后来再试,就成功了。

2.当图片格式为.jpg时

20145304 Exp8 Web基础的更多相关文章

  1. 20155326《网路对抗》Exp8 WEB基础实践

    20155326<网路对抗>Exp8 WEB基础实践 实践内容 (1).Web前端HTML(0.5分) 能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写 ...

  2. 2017-2018-2 20155314《网络对抗技术》Exp8 Web基础

    2017-2018-2 20155314<网络对抗技术>Exp8 Web基础 目录 实验内容 实验环境 基础问题回答 预备知识 实验步骤 1 macOS下Apache的配置 2 macOS ...

  3. 20145236《网络对抗》Exp8 WEB基础实践

    20145236<网路对抗>Exp8 WEB基础实践 一.基础问题回答 什么是表单 表单在网页中主要负责数据采集功能 一个表单有三个基本组成部分: 表单标签 表单域:包含了文本框.密码框. ...

  4. 20145215《网络对抗》Exp8 Web基础

    20145215<网络对抗>Exp8 Web基础 基础问题回答 什么是表单? 表单是一个包含表单元素的区域,表单元素是允许用户在表单中(比如:文本域.下拉列表.单选框.复选框等等)输入信息 ...

  5. 20145208 蔡野 《网络对抗》Exp8 Web基础

    20145208 蔡野 <网络对抗>Exp8 Web基础 本实践的具体要求有: (1).Web前端HTML(1分) 能正常安装.启停Apache.理解HTML,理解表单,理解GET与POS ...

  6. 20155202《网络对抗》Exp8 Web基础

    20155202<网络对抗>Exp8 Web基础 基础问题回答 什么是表单? 表单是一个包含表单元素的区域,表单元素是允许用户在表单中(比如:文本域.下拉列表.单选框.复选框等等)输入信息 ...

  7. 20155204《网络对抗》Exp8 Web基础

    20155204<网络对抗>Exp8 Web基础 一.基础问题回答 1.什么是表单 表单在网页中主要负责数据采集功能.一个表单有三个基本组成部分: 表单标签:这里面包含了处理表单数据所用C ...

  8. 20155206 Exp8 WEB基础实践

    20155206 Exp8 WEB基础实践 基础问题回答 (1)什么是表单 表单在网页中主要负责数据采集功能. 一个表单有三个基本组成部分: 表单标签:这里面包含了处理表单数据所用CGI程序的URL以 ...

  9. 20155207 EXP8 Web基础

    20155207 EXP8 Web基础 实验内容 (1)Web前端HTML (2)Web前端javascipt (3)Web后端:MySQL基础:正常安装.启动MySQL,建库.创建用户.修改密码.建 ...

随机推荐

  1. Codeforces Beta Round #2

    A题,神题意题.. #include <iostream> #include <cstdio> #include <cstring> #include <st ...

  2. Spring Boot 探索系列 - 自动化配置篇

    26. Logging Prev  Part IV. Spring Boot features  Next 26. Logging Spring Boot uses Commons Logging f ...

  3. python笔记:#007#变量

    变量的基本使用 程序就是用来处理数据的,而变量就是用来存储数据的 目标 变量定义 变量的类型 变量的命名 01. 变量定义 在 Python 中,每个变量 在使用前都必须赋值,变量 赋值以后 该变量 ...

  4. docker安装小笔记

    作者:邓聪聪 yum update Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker docker卸载旧版本(如 ...

  5. Mysql数据库表被锁定处理

    1.查进程,查找被锁表的那个进程的ID show processlist; command 为waitting的就是锁住的表,info为执行某条语句的信息,id为进程. 2.kill掉锁表的进程ID ...

  6. 在线自动创建springboot工程

    https://start.spring.io/

  7. Jenkins与网站代码上线解决方案【转】

    转自 Jenkins与网站代码上线解决方案 - 惨绿少年 https://www.nmtui.com/clsn/lx524.html 1.1 前言 Jenkins是一个用Java编写的开源的持续集成工 ...

  8. Python调用C/C++程序

    编程中会遇到调用其他语言到库,这里记录一下Python调用C++. Python底层是C, 所以调用C还是比较方便.调用C++有些麻烦. Python提供了ctypes, 方便将Python类型转为C ...

  9. User-Defined Table Types 用户自定义表类型

    Location 数据库--可编程性--类型--用户定义表类型 select one database--> programmability-->types-->user--defi ...

  10. liunx screen使用简单实验

    liunx screen使用 今天因工作需要使用到screen工具,感觉挺有意思,记录一下 GNU Screen是一款由GNU计划开发的用于命令行终端切换的自由软件.用户可以通过该软件同时连接多个本地 ...