1.本实践的具体要求有:

(1).Web前端HTML(0.5分)

能正常安装、启停Apache。理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML。

(2).Web前端javascipt(0.5分)

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

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

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

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

2.1.基础问题回答

(1)什么是表单

  记录用户需要填写的信息、传递给后端

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

  html、python、java等等

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

  php、Java Server Pages、ASP

3.1实验步骤

1上次实验中已经用过了apache2,这次就直接打开

然后测试一下,在浏览器中输入127.0.0.1

apache2服务正常开启

然后进入/var/html/www目录,建立一个新的表格

代码如图

 1 <html>2 <head>3 <title>Login in</title>4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />5 </head>6 <body>7     <h2 align="center">Login</h2><center>8         <form action="login" method="post">9             <input placeholder="E-mail" name="Name" class="user" type="email">
10             <br>
11             </br>
12             <input  placeholder="Password" name="Password" class="pass" type="password">
13             <br>
14             </br>
15             <input type="submit" value="Login">
16         </form>
17 </body>
18 </html>

在浏览器打开,可以看到效果

3.2Web前端JavaScript

在原有基础上,添加一段JavaScript代码在form之后,以判断用户是否填写用户名和密码。

<html>2 <head>3 <title>Login</title>4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />5 </head>6 <body>7     <h2 align="center">Login</h2>8     <center>9         <form action="login" method="post" name="form_login">
10             <input placeholder="E-mail" name="Name" class="user" type="email" οnfοcus="if (this.value=='Your email') this.value='';" />
11             <br>
12             </br>
13             <input  placeholder="Password" name="Password" class="pass" type="password" οnfοcus="if (this.value=='Your password') this.value='';"/>
14             <br>
15             </br>
16             <input type="submit" value="Login"  onClick="return validateLogin()"/>
17         </form>
18     </center>
19 <script language="javascript">
20     function validateLogin(){
21         var sUserName = document.form_login.Name.value ;
22         var sPassword = document.form_login.Password.value ;
23         if ((sUserName =="") || (sUserName=="Your email")){
24         alert("User Email!");
25         return false ;
26         }
27         if ((sPassword =="") || (sPassword=="Your password")){
28         alert("Password!");
29         return false ;
30         }
31     }
32 </script>
33 </body>
34 </html>

效果如图

3.3Web后端:MySQL基础使用/etc/init.d/mysql start命令开启mysql服务

使用mysql -u root -p命令,并输入默认密码password登录,进入mysql中

使用show database查看数据库信息

好像哪有点问题,那么我们新建数据库

然后use BreakingDoge对新建的库进行调用

调用之后创建一个新的数据表MHY

再使用insert into 表名 values('值1','值2','值3');命令,在数据表中填写相应的数据

使用grant select,insert,update,delete on 数据库.* to 用户名@登录主机 identified by "密码";命令 在数据库中增加新的用户。

最后更改密码,使用update user set password=PASSWORD("4318") where user='root';将密码改为4318

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

我们用PHP和MYSQL两者结合再加上之前编写的简单的登陆网页进行身份验证

可以看到效果

3.5最简单的SQL注入,XSS攻击测试

SQL注入:通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。

将SQL查询语句改为select * from wyhy where username='' or 1=1#' and password='',此时在用户名输入框中输入' or 1=1#

因为#直接把后面的判断注释掉,直接成功。。。。

3.5.2XSS攻击测试

将一张图片放在/var/www/html目录下。

在用户名输入框输入<img src="*.jpg" />

但是不知道为什么失败了。。。。

4实验心得

这次实验似乎更加贴近与生活了,我之前在新闻里面看到的入侵的手法也在这次的实验中有所体现,感觉很有意思啊。

转载于:https://www.cnblogs.com/breakingdoge/p/10885541.html

Exp 8 Web基础 20164318 毛瀚逸相关推荐

  1. 2018-2019-2 网络对抗技术 20165329 Exp 8 Web基础

    2018-2019-2 网络对抗技术 20165329 Exp 8 Web基础 原理与实践说明 实践内容概述 基础问题回答 实践过程记录 1.Web前端:HTML 2.Web前端:javascipt ...

  2. Exp 8 Web基础 20164302 王一帆

    1.实践具体要求 (1)Web前端HTML(0.5分) 能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML. (2)Web前端javascipt ...

  3. Exp 8 Web基础

    一.实验要求 (1).Web前端HTML(0.5分) 能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML. (2).Web前端javascipt ...

  4. Exp6 信息搜集与漏洞扫描 20164318 毛瀚逸

    1.实践内容 (1)各种搜索技巧的应用  (2)DNS IP注册信息的查询  (3)基本的扫描技术:主机发现.端口扫描.OS及服务版本探测.具体服务的查点(以自己主机为目标)  (4)漏洞扫描:会扫, ...

  5. 2018-2019-2 网络对抗技术 20165318 Exp 9 Web安全基础

    2018-2019-2 网络对抗技术 20165318 Exp 9 Web安全基础 基础问题回答 实践过程记录 WebGoat安装 SQL注入攻击 1.命令注入(Command Injection) ...

  6. 全栈 - 20 Web 基础 网页的血肉 CSS

    这是全栈数据工程师养成攻略系列教程的第二十期:20 Web基础 网页的血肉CSS. HTML决定了网页中包含哪些内容,而CSS则决定了这些内容所呈现的样式. 什么是CSS CSS全拼是Cascadin ...

  7. web 向java_Java web基础

    Java web基础 一.C\S架构 1.概念 C是英文单词"Client"的首字母,即客户端的意思,C/S就是"Client/Server"的缩写,即&quo ...

  8. # EXP8 Web基础

    EXP8 Web基础 基础问题回答 1.什么是表单? 表单:表单在网页中主要负责数据采集功能. 基本组成部分: 表单标签:这里面包含了处理表单数据所用CGI程序的URL以及数据提交到服务器的方法. 表 ...

  9. 20145233《网络对抗》Exp8 Web基础

    20145233<网络对抗>Exp8 Web基础 实验问题思考 什么是表单? 表单在网页中主要负责数据采集功能 一个表单有三个基本组成部分: 表单标签 表单域:包含了文本框.密码框.隐藏域 ...

最新文章

  1. 客户端相关知识学习(一)之混合开发,为什么要在App中使用H5页面以及应用场景、注意事项...
  2. 五十三、开始算法刷题磨练
  3. 如何做简单的访客统计JQ+PHP
  4. SAP UI5 main page design
  5. React开发(114):不建议用setstate回调
  6. python 读取、写入 pkl文件
  7. CentOS 7.4 安装Teamviewer 14
  8. 采购订单模板_金蝶KIS商贸版(采购模块)常见问题汇总
  9. 思科 mds 虚拟服务器,Cisco MDS系列交换机VSAN功能简介
  10. Go语言URL编码方案
  11. 下载代码去 pudn.com每个编程人员都需要的网站
  12. 爱上文案——如何写出有销售力的广告文案
  13. Pull request 团队合作开发使用详解
  14. MySQL的基本操作(五)
  15. 判定平方数(Python)
  16. error C2533: “XXX::{ctor}”: 构造函数不能有返回类型
  17. Opencv__模板匹配(上)
  18. getText()和getText().toString()
  19. 数据结构之KH[第七章] -->选择题 (二)
  20. [.NET基础]走进各种位运算

热门文章

  1. 2022年5月20号对数据库的操作课时二:
  2. Web全栈开发学习笔记—Part2 与服务端通信—d.在服务端将数据Alert出来
  3. 李宏毅机器学习笔记第14周_生成式对抗网络(GAN)
  4. 发送writely和orkut邀请
  5. 新海诚画集[秒速5センチメートル:樱花抄·铁道]...
  6. 彻底删除Win7任务栏通知区域已卸载程序图标
  7. HTTP之URL详解
  8. 服务器无法显示url,遇到“您所请求的网址(URL)无法获取”的解决办法
  9. REDIS哨兵【Sentinel】模式+哨兵的核心知识点+redis哨兵主从切换的数据丢失问题+上一章铺垫的【异步复制数据丢失问题】+【集群脑裂】
  10. Fleet 1.9.231发布,支持window10 version 1809及以上版本,MacOs支持,但win7不支持