能正常安装、启停Apache。理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML。javascript
理解JavaScript的基本功能,理解DOM。编写JavaScript验证用户名、密码的规则。php
3.Web后端:MySQL基础:正常安装、启动MySQL,建库、建立用户、修改密码、建表html
4.Web后端:编写PHP网页,链接数据库,进行用户认证前端
功能描述:用户能登录,登录用户名密码保存在数据库中,登录成功显示欢迎页面。java
答:表单通常是网页中负责收集数据的一种模块。表单包括两个部分:一部分是HTML源代码用于描述表单,另外一部分是脚本或应用程序用于处理提交的信息。mysql
答:浏览器能够解析运行HTML/CSS/JSP。web
答:WebServer支持ASP、PHP和JSP三种动态开发语言。sql
sudo apt-get install apache2
安装apache,可是显示我已经安装完毕。apachectl start
启动apache,而且使用netstat -aptn
查看开放的端口号。同时咱们在在/var/www/html
这个路径里使用vi test.txt
建立一个测试文件,咱们在这个txt文件里输入本身的学号,而后在浏览器中访问ip地址/test.txt
,而后就会看到咱们输入的学号,证实apache是可用的。
数据库
没有输入密码的状况。
apache
1.首先咱们先使用sudo apt-get install mysql
安装SQL,可是显示没法定位软件包,不过咱们尝试运行数据库的时候发现数据库已经安装好了。
mysql -u root -p
使用默认的root用户进入数据库,默认的密码是p@ssw0rd
。而后咱们使用use mysql;
来选择默认的数据库。(PS:咱们在数据库里输入命令之后都要在结束的时候打一个;
)update user set password=PASSWORD("新密码") where user='root';
来修改密码,而后输入flush privileges;
来更新权限。以后咱们输入quit
来退出数据库使用更新之后的密码来登录数据库,发现成功登录,说明修改密码成功。
create database test
建立一个test数据库,并输入show databases
进行查看。create table 表名 (字段设定列表);
这个格式来建一个表,用来存储咱们准备在网页登录界面使用的用户名和密码。(结尾记得输入;
哦)insert into 表名 values('值1','值2','值3'...);
这个格式来插入数据。最后使用select * from 表名
来查看表内的数据。
grant select(insert,update,delete) on 数据库.* to 用户名@登陆主机 identified by "密码";
建立新的用户,而且将test的库绑定到这个用户上。尝试登录,成功。
1.一样的咱们在/var/www/html
这个路径里建立一个php文件,输入学号并在浏览器里进行测试。
而后咱们将以前的html文件中的一个action的值更改为咱们编写的php文件。
3.若是咱们以前没有在数据库中建立一个新的用户的话会出现下面链接失败的状况。
4.最后咱们编写完成之后尝试登录,分别输入正确的密码和错误的密码,都能成功链接数据库,而且进行用户名与密码的验证。
1.最后这个阶段咱们进行SQL注入攻击(终于进入总体了)。首先咱们在用户名中输入' or 1=1#
,密码随便输入,咱们会发现咱们能够直接登录?原始是咱们输入的用户名中有一个#
,与后面的查询语句合成之后会变成select * from lxmtable where username='' or 1=1#' and password=''
,#
会把后面的password的判断给注释掉,而以前的1=1
是永真式,因此这个条件成立,因而能够成功登录。
if ($result = $mysqli->query($query_str))
改为if ($result = $mysqli->multi_query($query_str))
,而后在用户名中输入';insert into testtable values('yh','123456','20155313');#
,接着咱们到终端查看输入先后的表单的区别,发现添加用户成功。注:SQL注入,就是经过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。具体来讲,它是利用现有应用程序,将(恶意的)SQL命令注入到后台数据库引擎执行的能力,它能够经过在Web表单中输入(恶意)SQL语句获得一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句。
<img src="jordan.jpg" />20155313</a>
,而后随便输入密码点击登录,发现显示登录失败,判断多是代码的安全性过高了,所以没法实现攻击。而后我在同窗主机上使用她的代码进行测试,发现攻击成功。注:XSS攻击:跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆。故将跨站脚本攻击缩写为XSS。XSS是一种常常出如今web应用中的计算机安全漏洞,它容许恶意web用户将代码植入到提供给其它用户使用的页面中。好比这些代码包括HTML代码和客户端脚本。攻击者利用XSS漏洞旁路掉访问控制——例如同源策略(same origin policy)。这种类型的漏洞因为被骇客用来编写危害性更大的phishing攻击而变得广为人知。对于跨站脚本攻击,黑客界共识是:跨站脚本攻击是新型的“缓冲区溢出攻击“,而JavaScript是新型的“ShellCode”。