20145316许心远《网络对抗》EXP8 Web基础
实验后回答问题
什么是表单
- 来自百度百科的官方定义:表单在网页中主要负责数据采集功能。一个表单有三个基本组成部分:
- 表单标签:这里面包含了处理表单数据所用CGI程序的URL以及数据提交到服务器的方法。
- 表单域:包含了文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文件上传框等。
表单按钮:包括提交按钮、复位按钮和一般按钮;用于将数据传送到服务器上的CGI脚本或者取消输入,还可以用表单按钮来控制其他定义了处理脚本的处理工作。
浏览器可以解析运行什么语言
- 超文本标记语言:HTML
- 可扩展标记语言:XML
脚本语言:ASP、PHP、Script、JavaScript、VBScript、Perl、Python、ColdFusion、Java、JSP等
WebServer支持哪些动态语言
ASP语言,PHP语言和JSP语言
实验总结与体会
这次实验虽有上学期刘念老师《网络安全编程基础》的知识基础,但新知识量还是比较大,理应耗时较长,幸在天晨同学博客写的非常好,搬用她的代码做实验没有用太长时间。但我知道这是远远不够的,因为很多理论知识的理解还有欠缺,代码也理解的不够充分,希望通过周四刘老师的课加深理解!
实践过程记录
一、Web前端HTML(1分)
- 要求:能正常安装、启停Apache。理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML
- 1.输入
sudo vi /etc/apache2/ports.conf
查看apache端口情况,将80改成自己想用的数字,我用的是8080
- 2.通过
apachectl start
开启Apache,使用netstat -aptn
查看端口占用:在这里apach2确实占用了端口8080,可以进行下一步了
- 3.浏览器中输入
localhost:8080
,测试apache是否正常工作,因为上次实验我假冒的网站是dzjw,所以现在弹出来的是dzjw
- 4.编写一个含有表单的html,新建在Apache工作目录
/var/www/html
下。我用了上学期刘念老师网络安全编程基础作业的表单代码试验了一下,除了编码方式不同的问题有乱码,功能没有问题。
- 5.又试一下天晨同学的代码,让提交按钮的action指向
5316action.php
6.因为没有编写相应action的php,所以submit之后指向404
二、Web前端javascipt(1分)
- 要求:理解JavaScript的基本功能,理解DOM。编写JavaScript验证用户名、密码的规则。
- 1.JavaScript基本功能:简单粗暴,如下图
- 2.DOM概念:在网页上,组织页面(或文档)的对象被组织在一个树形结构中,用来表示文档中对象的标准模型就称为DOM。
- 3.编写验证用户名和密码的规则:(用户名和密码不为空)
4.实现一个javascript(表单验证)
三、Web后端:MySQL基础:正常安装、启动MySQL,建库、创建用户、修改密码、建表(1分)
- 1.开启sql服务
/etc/init.d/mysql star
- 2.输入
mysql -u root –p
,并根据提示输入密码,默认密码为p@ssw0rd
,进入MySQL - 3.输入
show databases
;,可以查看基本信息
4.更改密码的方式
- 输入use mysql;,选择mysql数据库
- 输入select user, password, host from user;,mysql库中的user表中存储着用户名、密码与权限
- 输入UPDATE user SET password=PASSWORD("新密码") WHERE user='root';
- 输入flush privileges;,更新权限
- 输入quit退出
- 5.重新输入
mysql -u root –p
,检测新密码能否成功使用,能成功登录即可 - 6.在Mysql中建库建表,依次输入如下:(注意方框内写自己想给新建数据库取的名字)
7.向表中添加用户,接下来的php实验需要借助数据库存储的用户
四、Web后端:编写PHP网页,连接数据库,进行用户认证(1分)
- 1.先写个前端的登陆login.html,很简单
- 2.再写个后端login.php,通过php连接数据库,这里用的罗天晨同学的代码作为基础
- 3.浏览器内输入
localhost:8080/login.html
,访问到刚刚写的html网页
- 4.用户名和密码写自己刚刚mysql数据库最后一步新增的那个用户名和密码,匹配成功则显示如下:
5.若密码错误则显示如下:
五、最简单的SQL注入,XSS攻击测试(1分)
- 1.永真式攻击(最简单)
- 2.普通sql攻击:修改代码(在罗天晨同学的代码基础上)
- 3.普通sql攻击:用户名处输入
';insert into users(userid,username,password,enabled) values(777,'5316',password("5316"),"TRUE");#
- 4.普通sql攻击:出现如下界面
- 5.普通sql攻击:返回到刚刚的登陆界面,输入用户名密码,都为刚刚那条注入语句的5316,登陆成功。
- 6.XSS攻击:利用DOM不经过后端,选择一幅自己喜欢的图片,直接在登陆界面输入如下指令
<img src="nanshen.jpg" />haha</a>
7.密码任意,点击登陆就出现男神照片了,是不是很神奇~
20145316许心远《网络对抗》EXP8 Web基础的更多相关文章
- 20145312袁心《网络对抗》Web基础实践
20145312袁心<网络对抗>Web基础实践 问题回答 1.什么是表单: 表单在网页中主要负责数据采集功能. 一个表单有三个基本组成部分: 表单标签:这里面包含了处理表单数据所用CGI程 ...
- 20145316许心远《网络对抗》EXP7网络欺诈技术防范
20145316许心远<网络对抗>EXP7网络欺诈技术防范 实验后回答问题 通常在什么场景下容易受到DNS spoof攻击 公共共享网络里,同一网段可以ping通的网络非常容易被攻击 在日 ...
- 20145316许心远《网络对抗》Exp6信息搜集与漏洞扫描
20145316许心远<网络对抗>Exp6信息搜集与漏洞扫描 实验后回答问题 哪些组织负责DNS.IP的管理? 全球根服务器均由美国政府授权的ICANN统一管理,负责全球的域名根服务器.D ...
- 20145316许心远《网络对抗》MSF基础应用
20145316许心远<网络对抗>MSF基础应用 实验后回答问题 用自己的话解释什么是exploit,payload,encode. exploit:顾名思义就是攻击嘛,因为是个动词,所以 ...
- 20145316许心远《Java学习笔记(第8版)》课程总结
20145316许心远<Java学习笔记(第8版)>课程总结 每周读书笔记链接汇总 ▪ 第一周读书笔记 ▪ 第二周读书笔记 ▪ 第三周读书笔记 ▪ 第四周读书笔记 ▪ 第五周读书笔记 ▪ ...
- 20145316许心远《Java程序设计》第4周学习总结
20145316许心远<Java程序设计>第4周学习总结 教材学习内容总结 6.继承与多态 1.继承共同行为 * 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需 ...
- 20145316许心远《Java学习笔记》第三周总结
20145316许心远<Java程序设计>第3周学习总结 教材学习内容总结 一.定义类: 类定义时使用class关键字 如果要将x绑定到新建的对象上,可以使用"="制定 ...
- 20145219《网络对抗》Web基础
20145219<网络对抗>Web基础 基础问题回答 什么是表单? HTML表单用于收集用户输入,用<form>元素定义,包含不同类型的 input元素.复选框.单选按钮.提交 ...
- 20145239杜文超《网络对抗》- Web基础
20145239杜文超<网络对抗>- Web基础 基础问题回答 1.什么是表单? 表单是一个包含表单元素的区域. 表单元素是允许用户在表单中(比如:文本域.下拉列表.单选框.复选框等等)输 ...
- 20145326蔡馨熤《网络对抗》—— Web基础
20145326蔡馨熤<网络对抗>—— Web基础 1.实验后回答问题 (1)什么是表单. 表单是一个包含表单元素的区域,表单元素是允许用户在表单中输入信息的元素,表单在网页中主要负责数据 ...
随机推荐
- iOS - 开源框架、项目和学习资料汇总(UI篇)
上下拉刷新控件 1. MJRefresh --仅需一行代码就可以为UITableView或者CollectionView加上下拉刷新或者上拉刷新功能.可以自定义上下拉刷新的文字说明.(推荐)2. SV ...
- vim上下左右键输出A B
(转)vim上下左右键不能用 把下面这段话存到~/.vimrc就可以了. " An example for a vimrc file. " " Maintainer: B ...
- Django---渲染到模板
简单的路由操作: from index import views urlpatterns = [ path('admin/', admin.site.urls), path('index/', vie ...
- UVA 12304 - 2D Geometry 110 in 1! - [平面几何基础题大集合][计算几何模板]
题目链接:https://cn.vjudge.net/problem/UVA-12304 题意: 作为题目大合集,有以下一些要求: ①给出三角形三个点,求三角形外接圆,求外接圆的圆心和半径. ②给出三 ...
- HDU 2187 - 悼念512汶川大地震遇难同胞——老人是真饿了 - [大水题]
讲真,这么水的题,我都不怎么好意思扔到博客上来,但是没办法啊,我总得证明一下今天上午我不是在寝室里瞎玩浪费掉的…… 思路就是,把米按单价从小到大排个序,便宜的买的越多越好,直到钱花光为止……我真的都不 ...
- ECNU 3263 - 丽娃河的狼人传说
一定要纪念一下第一道在比赛中自己做出来的贪心. 题目链接:http://acm.ecnu.edu.cn/problem/3263/ Time limit per test: 1.0 seconds T ...
- python3学习笔记(2)_list-tuple
# !/usr/bin/env python3 # -*- coding:utf-8 -*_ #list 和 tuple #list 是有序集合,可以用索引(下标)访问lsit中的每一个元素 #最后一 ...
- 【爬坑】python3+pyqt5+pyinstaller 打包成exe的各种问题
windows系统+python3+pyqt5+pyinstaller打包,经常会出现各种打包异常情况.如果代码没有特别异常,那么综合原因,大抵都是这四个元素之间的匹配问题,引起的.作者:一心狮链接: ...
- mysql 实时统计脚本 QPS,TPS和线程连接数等
#!/bin/bash mysqladmin -uroot -p'root' extended-status -i1|awk 'BEGIN{local_switch=0;print "QPS ...
- ios 工作日志
1.设计模式 1.1 想用一个controllerK控制多个页面的切换 但是每一个页面必须要引用这个controller,这样才能控制进度, 所以必须是弱引用.controller必须被某一个实例强引 ...