Exp 8 Web基础

一、基础问题回答

(1)什么是表单

  • 表单在网页中主要负责数据采集功能。一个表单有三个基本组成部分: 表单标签:这里面包含了处理表单数据所用CGI程序的URL以及数据提交到服务器的方法。 表单域:包含了文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文件上传框等。 表单按钮:包括提交按钮、复位按钮和一般按钮;用于将数据传送到服务器上的CGI脚本或者取消输入,还可以用表单按钮来控制其他定义了处理脚本的处理工作。

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

  • html/CSS/js

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

    php/jsp/asp

二、实践总结

(1).Web前端HTML

1.正能正常安装、启停Apache。输入service apache2 start,若无事发生,表示成功启动。

2.打开浏览器输入127.0.0.1。

3.理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML。在/var/www/html这个路径下,建立一个html文件,我编写了一个查询的表单。

4.代码

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

Insert title here

斯坦利·库布里克电影查询

电影名称:

a1 qwe
wwww33 asd ssx
222 ssss

(2).Web前端javascipt

  1. 理解JavaScript的基本功能,理解DOM。编写JavaScript验证用户名、密码的规则。

  2. 在var/html/www的路径下输入,vi login.html代码:

    Login

Login



3.在网页中打开

(3).Web后端:MySQL基础:正常安装、启动MySQL,建库、创建用户、修改密码、建表

1.mysql在kali上以及安装,所以直接使用root身份启动。

2.show databases查看数据库。

3.create database zqh ,新建数据库,名称为zqh。show databases;,看到新建的zqh。

4.use zqh,开始使用zqh。show tables;查看该数据库中的表,可以看到新建的表login。

5.使用sql语句插入新的条目,name为20165213@126.com,pwd为20165213zqh。

6.select * from zqh。可以看见刚插入的信息。

7.grant select,insert,update,delete on zqh.* to zqh@localhost identified by "20165213"(该部分图忘记截了,但是稍后的login.php的代码中会提到授权的用户用户名和密码信息。)

(4).Web后端:编写PHP网页,连接数据库,进行用户认证

1.首先在/var/www/html下新建,login.php,代码在修改后如下。

<?php
$uname=$_POST["Email"];
$pwd=$_POST["Password"];
echo $uname;
$query_str="SELECT * FROM login where name='$uname' and pwd='$pwd';";
$mysqli = new mysqli("127.0.0.1", "zqh", "20165213", "zqh");
$query_str1="use zqh;";

/* check connection /
if ($mysqli->connect_errno) {
printf("Connect failed: %s\n", $mysqli->connect_error);
exit();
}
echo "connection ok!";
/
Select queries return a resultset /
if ($result = $mysqli->query($query_str1))
echo"
Success into database!";
echo$uname;
if ($result = $mysqli->query($query_str)) {
if ($result->num_rows > 0 ){
echo "
{$uname}:Welcome!!!
";
}
else {
echo "
login failed!!!!
" ; }
/
free result set */
$result->close();
}
$mysqli->close();
?>

2.在网页中登陆127.0.0.1/login.php,得到连接数据库成功。

3.由于没有登陆,因此在login.html中输入正确的密码后得到,得到正确登陆信息。

(5).最简单的SQL注入,XSS攻击测试

1.借鉴之前web编程的经验,利用逻辑上的漏洞,只要在登录名处输入' or 1=1#' ,即可登陆成功。

2.将图片置于var/www/html的目录下,在用户名出输入即可登陆成功。

实验总结

通过这次实验我学会了简单的php使用,对于如何在kali中使用mysql也有初步了解,以及学会了如何做最简单的sql注入。

20165213 Exp 8 Web基础的更多相关文章

  1. 20155312 张竞予 Exp 8 Web基础

    Exp 8 Web基础 目录 基础问题回答 (1)什么是表单 (2)浏览器可以解析运行什么语言. (3)WebServer支持哪些动态语言 实践过程记录 1.Web前端:HTML 2.Web前端jav ...

  2. Exp 8 Web基础

    Exp 8 Web基础 20154305 齐帅 一.实践要求: (1).Web前端HTML 能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML. ...

  3. 20155205 郝博雅 Exp 8 Web基础

    20155205 郝博雅 Exp 8 Web基础 一.实验目标 (1).Web前端HTML(0.5分) 能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写一个含有表单 ...

  4. 20155209 林虹宇 Exp 8 Web基础

    Exp 8 Web基础 Web前端HTML 正常安装.启停Apache kali本机自带apache,上个实验已经使用过,直接使用 查看80端口. 127.0.0.1 编写一个含有表单的html 在浏 ...

  5. 20155220 《网络对抗》Exp 8 Web基础

    20155220 <网络对抗>Exp 8 Web基础 基础问题回答 实践内容 1.Web前端HTML 配置环境 正常安装.启动Apache 安装:sudo apt-get install ...

  6. 20155226 《网络对抗》Exp 8 Web基础

    20155226 <网络对抗>Exp 8 Web基础 实践内容 1.Web前端HTML 配置环境 正常安装.启动Apache 安装:sudo apt-get install apache2 ...

  7. 20155310 《网络对抗》Exp 8 Web基础

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

  8. 20155334 《网络攻防》 Exp 8 Web基础

    20155334 <网络攻防> Exp 8 Web基础 一.基础问题回答 1. 什么是表单? 表单在网页中主要负责数据采集功能,一个表单有三个基本组成部分: 部分 内容 表单标签 这里面包 ...

  9. 20145307陈俊达《网络对抗》Exp 8 Web基础

    20145307陈俊达<网络对抗>Exp 8 Web基础 基础问题回答 1.什么是表单? 表单是一个包含表单元素的区域,表单元素是允许用户在表单中输入信息的元素,表单在网页中主要负责数据采 ...

随机推荐

  1. Gephi简单导入数据

    使用工具 Gephi-0.9.2 事前要导入的数据 Node.csv 节点:名称可以所以定,格式.csv Edge.csv 边:名称可以所以定,格式.csv 导入操作 新建项目 导入节点 新建列要与表 ...

  2. C# 基础 字符串 集合 文件操作

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  3. idea中安装git后,代码颜色代表的含义

    idea中安装git以后,代码文件出现了不同的颜色 它们分别表示的含义: 绿色,已经加入控制暂未提交 红色,未加入版本控制 蓝色,加入,已提交,有改动 白色,加入,已提交,无改动 灰色:版本控制已忽略 ...

  4. Nginx返回大长度的JSON数据被截断

    1 添加Nginx参数,增加缓存字符串大小 head{ proxy_buffers 16 512k; //此处值代表nginx 设置 16个 512k 的块进行缓存,总共大小为16*512k prox ...

  5. MySQL数据库 、数据表、数据的增删改查简版

    数据库操作 # 增 CREATE(DATABASE | SCHEMA)[IF NOT EXISTS] db_name [[DEFAULT] CHARACTER SET[=]charset_name] ...

  6. web开发中的支付宝支付和微信支付

    https://www.jianshu.com/p/155757d2b9eb <!-- wxPay --SDK--> <script src="https://res.wx ...

  7. Asp.Net MVC4 使用Unity 实现依赖注入

    项目创建参考 上一篇   <<Asp.Net  MVC5  使用Unity 实现依赖注入>>, 不同的是这里是 Unity.MVC4 装好后会出现 然后示例说在这里写对应关系 ...

  8. “美登杯”上海市高校大学生程序设计赛B. 小花梨的三角形(模拟,实现)

    题目链接:https://acm.ecnu.edu.cn/contest/173/problem/B/#report9 Problem B B . 小 花梨 的 三角形 时间限制:1000ms 空间限 ...

  9. 配置LANMP环境(7)-- 配置nginx反向代理,与配置apache虚拟主机

    一.配置nginx反向代理 1.修改配置文件 vim /etc/nginx/nginx.conf 在35行http下添加一下内容: include /data/nginx/vhosts/*.conf; ...

  10. FutureWarning: get_value is deprecated and will be removed in a future release. Please use .at[] or .iat[] accessors instead print(labels_df.get_value(patients,col=1))

    这是因为pandas的版本高了,0.21之后就已经将这个方法干掉了.直接装成0.20之前的就好