Exp 8 Web基础
8.1 基础问题回答
(1)什么是表单
表单就是在网页中包含各种表单元素的区域,其中允许用户将信息通过表单元素来输入数据,其主要功能是采集数据传到逻辑运算中。表单中一般有3个元素:表单标签、表单域、表单按钮。其中表单标签有数据所用程序的url以及提交方式,表单域中主要是一些控件,表单按钮主要是一些按钮,负责处理表单中脚本,控制提交、取消、以及一些自定义功能。
(2)浏览器可以解析运行什么语言
浏览器可以解析HTML、XML、PHP、javascript、ASP、python等。
(3)WebServer支持哪些动态语言
webserver支持JSP、ASP、PHP语言,ASP是一个WEB服务器端的开发环境,利用它可以产生和执行动态的、互动的、高性能的WEB服务应用程序。PHP是一种跨平台的服务器端的嵌入式脚本语言。它大量地借用C,Java和Perl语言的语法,支持目前绝大多数数据库。JSP是比较新的语言,JSP可以在Servlet和JavaBean的支持下,完成功能强大的站点程序。
8.2 实验内容
Web前端HTML
- 首先我们先打开我们虚拟机中已经安装好的Apache服务器
-
然后创建一个HTML文档,写一个简单的登陆界面保存为test1.html
-
将这个文件放入到虚拟机中的var/www/html中,这时候我们可以输入127.0.0.1/test1.html来看到效果。
Web前端JavaScript
-
修改我们之前写好的代码,加入JavaScript代码来处理一按钮,执行逻辑。
-
当用户名为空时提示用户名不能为空,当密码为空时提示重新输入
- 保存为test2.html放入到之前的文件夹中,浏览器中运行。
MySQL基础
-
输入etc/init.d/mysql start启动MySQL,mysql -u root -p进入root用户,默认密码为空
-
然后我们使用create database login创建数据库
- use login;操作数据库
- create table login(username VARCHAR(20),password VARCHAR(20));创建表
- insert into login values ("zhaozhongkai","20165103");插入一条数据
- grant select,insert,update,delete on login.* to zzk@localhost identified by "20165103";新建一个用户后将权限赋予给新用户
编写PHP网页,连接数据库,进行用户认证
- 在之前的文件夹中创建一个php文件,输入一些简单语句,我们在浏览器中看一下
- 之后将之前的代码简单修改一下,然后重新写一下php文件,主要功能是获取前段传送到后台的表单,然后到数据库中查询。
- 成功构建出登陆功能的网页,输入用户名密码后正确登陆
最简单的SQL注入,XSS攻击测试
sql注入
- 利用SQL查询语句的漏洞,在用户名框中输入' or 1=1#后任意密码都可登陆,主要原因是输入后相当于select * from users where username='' or 1=1#' and password=''语句,导致验证永真保证通过。
xss攻击
- 将一张图片放入到之前的文件夹中,然后我们在用户名框中输入img src="miao33.png" />
- 然后就成功读取图片了。