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基础的更多相关文章

  1. 20145216史婧瑶《网络对抗》Web安全基础实践

    20145216史婧瑶<网络对抗>Web安全基础实践 实验问题回答 (1)SQL注入攻击原理,如何防御 攻击原理: SQL注入攻击指的是通过构建特殊的输入作为参数传入web应用程序,而这些 ...

  2. 20145216史婧瑶 《网络对抗》 MSF基础应用

    20145216史婧瑶 <网络对抗> MSF基础应用 实验回答问题 用自己的话解释什么是exploit,payload,encode. exploit:渗透攻击模块,测试者利用它来攻击一个 ...

  3. 20145216史婧瑶《网络对抗》逆向及Bof进阶实践

    20145216史婧瑶<网络对抗>逆向及Bof进阶实践 基础知识 Shellcode实际是一段代码,但却作为数据发送给受攻击服务器,将代码存储到对方的堆栈中,并将堆栈的返回地址利用缓冲区溢 ...

  4. 网络对抗——web基础

    网络对抗--web基础 实践内容 (1)Web前端HTML (2)Web前端javascipt (3)Web后端:MySQL基础:正常安装.启动MySQL,建库.创建用户.修改密码.建表 (4)Web ...

  5. 20145216史婧瑶《Java程序设计》第10周学习总结

    20145216 <Java程序设计>第10周学习总结 教材学习内容总结 网络编程 一.网络概述 网络编程就是两个或多个设备(程序)之间的数据交换. 识别网络上的每个设备:①IP地址②域名 ...

  6. 20145216史婧瑶《Java程序设计》第五次实验报告

    20145216 实验五<Java网络编程> 实验内容 1.掌握Socket程序的编写 2.掌握密码技术的使用 3.设计安全传输系统 实验要求 1.基于Java Socket实现安全传输 ...

  7. 20145216史婧瑶《Java程序设计》第9周学习总结

    20145216 <Java程序设计>第9周学习总结 教材学习内容总结 第十六章 整合数据库 16.1 JDBC入门 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找. ...

  8. 20145216史婧瑶《Java程序设计》第8周学习总结

    20145216 <Java程序设计>第8周学习总结 教材学习内容总结 第十五章 通用API 15.1 日志 java.util.logging 包提供了日志功能相关类与接口,不必额外配置 ...

  9. 20145216史婧瑶《Java程序设计》第7周学习总结

    20145216 <Java程序设计>第7周学习总结 教材学习内容总结 第十三章 时间与日期 13.1 认识时间与日期 就目前来说,即使标注为GMT(无论是文件说明,或者是API的日期时间 ...

随机推荐

  1. HFTP Guide

    Introduction(说明) HFTP is a Hadoop filesystem implementation that lets you read data from a remote Ha ...

  2. python数据结构之树(二叉树的遍历)

    树是数据结构中非常重要的一种,主要的用途是用来提高查找效率,对于要重复查找的情况效果更佳,如二叉排序树.FP-树. 本篇学习笔记来自:二叉树及其七种遍历方式.python遍历与非遍历方式实现二叉树 介 ...

  3. mongo_action

    https://docs.mongodb.com/manual/introduction/ { name: "sue", age: 3, status: "A" ...

  4. Linux执行Cron Job失败,在Shell sh下执行却能成功 - 环境变量?

    博客分类: Linux linuxcrontabpermissionetc/profile环境变量  一.我们常常碰到在shell下执行某个命令能够成功,比如执行一个java程序: java -jar ...

  5. Thymeleaf模板引擎的初步使用

    在springboot中,推荐使用的模板引擎是Thymeleaf模板引擎,它提供了完美的Spring MVC的支持.下面就简单的介绍一下Thymeleaf模板引擎的使用. 在controller层中, ...

  6. MongoDB的数据恢复

    当MongoDB正在插入或更新数据时,若突然出现断电或者不可逆转的摧毁性事件发生时,MongoDB没有像oracle或sql server这种关系型数据库提供事物机制,所以会产生垃圾数据.但Mongo ...

  7. LightOj 1030 - Discovering Gold(dp+数学期望)

    题目链接:http://lightoj.com/volume_showproblem.php?problem=1030 题意:在一个1*n 的格子里,每个格子都有相应的金币数,走到相应格子的话,就会得 ...

  8. Java并发包中CyclicBarrier的源码分析和使用

    CyclicBarrier的介绍和源码分析 CyclicBarrier的字母意思是可循环(Cyclic)使用的屏障(Barrier).它要做的事情是,让一组线程到达一个屏障(也可以叫做同步点)时被阻塞 ...

  9. 混淆矩阵在Matlab中PRtools模式识别工具箱的应用

    声明:本文用到的代码均来自于PRTools(http://www.prtools.org)模式识别工具箱,并以matlab软件进行实验. 混淆矩阵是模式识别中的常用工具,在PRTools工具箱中有直接 ...

  10. zabbix 微信报警脚本

    不知道是什么原因直接用Python脚本zabbix无法执行脚本,需要一个shell来启动 #! /bin/bash userid=$ content=$ python /data/zabbix/ale ...