1.基础问题回答
1.1.什么是表单
1.2.浏览器可以解析运行什么语言
1.3.WebServer支持哪些动态语言
2.实践总结与体会
3.实践过程记录
----3.1.Web前端:HTML基础
----3.2.Web前端:javascipt基础
----3.3.Web后端:MySQL基础
----3.4.Web后端:PHP基础
----3.5.SQL注入
----3.6XSS攻击测试
1.基础问题回答
1.1.什么是表单
1.2.浏览器可以解析运行什么语言
1.3.WebServer支持哪些动态语言
2.实践总结与体会
3.实践过程记录
----3.1.Web前端:HTML基础
1.使用指令apachectl start打开Apache服务
2.使用netstat -tupln |grep 80指令查看80端口被哪些进程占用,如果有的话,用kill+进程ID杀死进程
3.cd ..之后vi /var/www/html/ test.thml在Apache工作目录下建立一个含有表单的html文件
4.使用浏览器登录localhost:80查看
----3.2.Web前端:javascipt基础
1.使用JavaScript来编写一个验证用户名、密码的规则,重命名为test-1.html,其实主要是增加了一段javascript的代码,如下:
<script language="javascript"> ?????function validateLogin(){ ?????????var sUserName = document.frmLogin.username.value ; ?????????var sPassword = document.frmLogin.password.value ; ???????????if ((sUserName =="") || (sUserName=="Your name")){ ?????????????alert("Please enter the username!"); ?????????????return false ; ?????????} ????????if ((sPassword =="") || (sPassword=="Your password")){ ?????????????alert("Please enter the password!"); ?????????????return false ; ?????????} ?????} ?</script>2.重新登录localhost:80之后不填写用户名,会有如下提示
----3.3.Web后端:MySQL基础
0.kali目前使用的是MariaDB因为mysql有从开源变为闭源的趋势,所以创建了MariaDB这个分支用来规避风险
1.使用/etc/init.d/mysql start开启mysql服务,输入mysql -u root -p,并根据提示输入密码,默认密码为p@ssw0rd,进入mysql
2.输入use mysql进入mysql数据库,输入update user set password=PASSWORD("******") where user=‘root‘;,修改密码;输入flush privileges;,更新权限
3.使用create database test_db;建立一个数据库;使用show databases;查看存在的数据库;使用use test_db;使用我们创建的数据库
7.用create table test_table (username VARCHAR(20), password VARCHAR(20));建立数据表,show tables查看数据表
8.使用insert into 表名 values(‘zenglin‘,‘20154312‘);插入数据;使用select * from test_table查询表中的数据
9.增加一个名为zenglin的新mysql用户,使用grant select(insert,update,delete) on test_db.* to zenglin@localhost identified by "*******";指令进行
----3.4.Web后端:PHP基础
1.vi /var/www/html test.php新建一个名为test的php文件,使用一些基础的语法
2.在浏览器窗口使用localhost:80/test.php?a=/etc/passwd可以看到etc/passwd文件中的内容
3.使用老师ExpGuide中的代码新建一个login_page.php,进行简单的用户认证
4.修改test-1.html中form的action属性改为login.php,实现跳转到login.php,输入localhost/test-1.html进行访问
5.输入zenglin以及20154312就能顺利连接上去,并提示登录成功
----3.5.SQL注入
1.在用户名输入框中输入‘ or 1=1#,密码随意,这时SQL查询语句变为select * from test_table where username=‘‘ or 1=1#‘ and password=‘‘,#相当于注释符,会把后面的内容注释掉,or后跟着的1=1永远为真,所以必然登录成功
2.使用多条sql语句进行攻击,将if ($result = $mysqli->query($query_str))中的query()改为multi_query,再在Username中输入‘insert into test_table values(‘admin‘,‘123456‘);#,由于分隔符后的#把后面的内容注释掉了,所以执行的其实是insert into lxmtable values(‘admin‘,‘123456‘);接着登录就会出现如下页面
----3.6XSS攻击测试
20154312 曾林 Exp8 web基础
原文地址:https://www.cnblogs.com/zl20154312/p/9038313.html