20174323张加欣-Exp8 Web基础

时间:2020-05-20
本文章向大家介绍20174323张加欣-Exp8 Web基础,主要包括20174323张加欣-Exp8 Web基础使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

1.实践内容与基础知识

1.1  实践内容

  • Web前端HTML:能正常安装、启停Apache。理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML。
  • Web前端javascipt:理解JavaScript的基本功能,理解DOM。编写JavaScript验证用户名、密码的规则。
  • Web后端:MySQL基础:正常安装、启动MySQL,建库、创建用户、修改密码、建表。

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

  • 最简单的SQL注入,XSS攻击测试:功能描述——用户能登陆,登陆用户名密码保存在数据库中,登陆成功显示欢迎页面。

1.2  基础知识

GET/POST

  • GET把参数包含在URL中,POST通过request body传递参数;

  • GET产生一个TCP数据包;POST产生两个TCP数据包;

  • GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。

SQL注入

  • 通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串达到欺骗服务器执行恶意的SQL命令,即利用现有应用程序,将(恶意的)SQL命令注入到后台数据库引擎执行的能力,可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句;
  • 输入的用户名 ' or 1=1# 中 # 相当于注释符,把后面的内容都注释掉,1=1 是永真式,条件永远成立,和代码中select语句组合后变成 select * from login5314_table where username='' or 1=1# ' and password='',不管密码是否输入正确,都能够成功登录。

XSS攻击

  • 跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets,CSS)的缩写混淆,XSS是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中,比如这些代码包括HTML代码和客户端脚本,攻击者利用XSS漏洞旁路掉访问控制——例如同源策略(same origin policy),这种类型的漏洞由于被黑客用来编写危害性更大的phishing攻击而变得广为人知。

2.Web前端HTML

  • 使用setoolkitservice apache2 start命令打开Apache服务,如果没有任何错误提示,即表明成功开启。
  • 在浏览器输入回环地址setoolkit127.0.0.1,如果可以打开Apache的默认网页,则开启成功。
  • cd /var/www/html进入Apache目录下,输入命令vi form.html内容如下:
  • 建一个简单的含有表单的html文件 form.html,内容如下:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>20174323/title>
<style type="text/css">
body {
background-image: url(bg3.png);
background-repeat: no-repeat;
}
</style> 
</head> 
<body>
<h2 align="center">L o g i n</h2>
<center>
<form action="login" method="post" name="form_login">
<div align="center">账    号</div>  <br></br> 
<input id="username" name="username" style="height:35px;width:180px;" />  <br></br>
<div align="center">密    码</div>  <br></br>
<input type="password" id="password" name="password" style="height:35px;width:180px;"/>  <br></br>
<div class="checkbox">
<label><div align="center"><input type="checkbox" value="remember-me" checked="checked">记住密码</div></label></div>  <br></br>
<div align="center">
<input type="submit" style="height:30px;width:100px;" value="登录" onClick="return validateLogin()"/></div>
</form>
</center>
</body>
</html>
  • 在浏览器打开如下:

3.Web前端javascipt

  • form.html中添加一段JavaScript代码,用于判断用户输入的用户名和密码是否正确。
  • 之后在浏览器打开form.html,当用户名和密码为空时会出现提示。

4.MySQL基础

  • 使用/etc/init.d/mysql start开启MySQL服务。
  • 输入sudo mysql -u root -p使用mysql,默认密码是password
  • 输入 databases,用来查看数据库的基本信息。
  • 使用use mysql,选择使用mysql数据库。
  • 使用update user set password=PASSWORD("20175317") where user='root';修改管理员密码;使用flush privileges;更新权限:

原文地址:https://www.cnblogs.com/174323jiaxin/p/12923392.html