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的日期时间 ...
随机推荐
- HIT 2715 - Matrix3 - [最小费用最大流][数组模拟邻接表MCMF模板]
题目链接:http://acm.hit.edu.cn/hoj/problem/view?id=2715 Time limit : 5 sec Memory limit : 64 M Zhouguyue ...
- python的笔记
np.argsort(x):返回数据x从小到大的索引值,记住是一个索引值.当你想获取从小到大的数据的时候,用到这个 data[::-1]:对数据data进行倒转 a=[0,1,2,3,4,5] a[: ...
- 0000python中文乱码解决方案
#!/usr/bin/env python # coding=utf-8
- 静默方式安装10g数据库软件+升级patch+手工建库
通常我们安装Oracle数据库软件,都是用OUI图形界面来完成的,但有些Unix/Linux系统中并未安装图形系统,也就无法使用图形界面来安装Oracle的产品了,对于这种场景,就只能采用静默方式来安 ...
- 希尔排序之python
希尔排序( Shell sort) 插入排序的改进版本,其核心思想是将原数据集合分割成若干个子序列,然后再对子序列分别进行直接插入排序,使子序列基本有序,最后再对全体记录进行一次直接插入排序. 我的面 ...
- div+css网页标准布局实例教程(三)
前边两节学完后,前台工作基本上完成了,下边的任务该程序员添加程序了.为什么说是基本完成呢?因为要做的工作还很多,不但要把首页做出来,其它的列表页详细页等页面也得做.还要配合程序员把整个网站完成,这样才 ...
- php表单身份验证
1. index.php <form method="post" action="dbtest.php"> 姓名: ...
- SQLServerDBA十大必备工具---让生活轻松点
原贴:http://www.cnblogs.com/fygh/archive/2012/04/25/2469563.html 国外整理拓展帖:http://weblogs.sqlteam.com/ml ...
- [py][mx]django城市-教学机构-教师模型设计
分析下城市-教学机构-教师模型设计 CourseOrg 课程信息 Teacher 教师信息 CityDict 城市信息 代码 from datetime import datetime from dj ...
- libsvm使用
先挖个坑,有空重写svm_scale, svm_train, svm_predict几个代码,给的实在写的不敢恭维 package org.ml.svm; import java.io.File; i ...