2018-2019-2 20165209 《网络对抗技术》Exp8: Web基础
1 基础问题回答和实验内容
1.1基础问题回答
- (1)什么是表单
- (2)浏览器可以解析运行什么语言。
- HTML
- XML
- Python,PHP,JavaScript,ASP等脚本语言。
- (3)WebServer支持哪些动态语言
- Javascript、ASP、PHP、Ruby等脚本语言
1.2 实验内容
- Web前端HTML
- Web前端javascipt
- 最简单的sql注入,XSS攻击测试
2 实验步骤
2.1 Web前端HTML
- 输入
service apache2 start
打开Apache服务 - 浏览器访问
127.0.0.1
如果可以打开Apache的默认网页,则开启成功
如果打开失败,输入
netstat -tupln |grep 80
查看80端口被占用情况,再输入kill+进程ID
杀死进程输入
vi /var/www/html/5209/ login.html
在Apache工作目录下建立一个含有表单的html文件。访问结果如下。
//login.html <html> <head> <title>Login</title> <style type="text/css"> .divForm{ position: absolute;/*绝对定位*/ width: 400px; height: 200px; border: 1px solid white; background: #ffffff; text-align: center;/*(让div中的内容居中)*/ top: 50%; left: 50%; margin-top: -200px; margin-left: -200px; } </style> </head> <body style="background:url(blue.jpg) repeat-x #fff;" > <center><h1>Welconme To Login</h1></center> <div class="divForm"> <form action="login" method="post"> <p>User Login</p> <p> UserName<input type="text" name="username"/><br><br> </p> <p> Password <input type="password" name="userpwd"/><br> </p> <input type="submit" value="Submit"/> </form> </div> </body> </html>
2.2 Web前端javascipt
//login2.html <html> <head> <title>Login</title> <style type="text/css"> .divForm{ position: absolute;/*绝对定位*/ width: 400px; height: 200px; border: 1px solid white; background: #ffffff; text-align: center;/*(让div中的内容居中)*/ top: 50%; left: 50%; margin-top: -200px; margin-left: -200px; } </style> <script language="javascript"> function check(){ if(document.name.username.value == ""){ alert("Please check your UserName"); return false ; } if(document.name.userpwd.value == ""){ alert("Please check your Password"); return false ; } } </script> </head> <body style="background:url(blue.jpg) repeat-x #fff;" > <center><h1>Welconme To Login</h1></center> <div class="divForm"> <form name="name" action="login" method="post"> <p>User Login</p> <p> UserName<input type="text" name="username"/><br><br> </p> <p> Password <input type="password" name="userpwd"/><br> </p> <input type="submit" value="Submit" onClick="return check()"/> </form> </div> </body> </html>
2.3 Web后端(MysqL基础)
- 输入
/etc/init.d/MysqL start
开启MysqL服务 - 输入
MysqL -u root -p
使用root权限进入,默认密码为password - 输入
show databases;
查看数据库基本信息 - 输入
use MysqL;
选择MysqL数据库 - 输入
select user,password,host from user;
查看当前用户信息 - 输入
update user set password=PASSWORD("20165209") where user=‘root‘;
修改密码 - 输入
flush privileges;
更新权限 - 输入
exit
退出数据库,使用新的密码登录
- 输入
create database csb;
建立数据库 - 输入
use csb;
使用刚刚创建的数据库 - 输入
create table csbtable (userid VARCHAR(45),username VARCHAR(45),password VARCHAR(45),enabled VARCHAR(45));
建立数据表 - 输入
show tables;
查看存在的数据表 - 输入
insert into csbtable(userid,username,enabled) values(1,‘20165209‘,‘5209‘,"TRUE");
在表中添加内容 - 输入
select * from csbtable;
查询表中的数据 - 输入
grant select,insert,update,delete on csb.* to [email protected] identified by "20165209";
增加新用户,将数据库csb的root权限(包括select,delete)授权给当前用户
2.4 Web后端PHP
-
在/var/www/html目录下新建一个test1.PHP
//test.PHP <?PHP echo ($_GET["a"]); include($_GET["a"]); echo "This is PHP test page!<br>"; ?>
在浏览器中输入
localhost/test1.PHP
进行查看,结果如下
//login2.PHP <?PHP $uname=$_POST["username"]; $pwd=$_POST["userpwd"]; echo $uname; $query_str="SELECT * FROM csbtable where username='$uname' and password='$pwd';"; $MysqLi = new MysqLi("127.0.0.1","csb","20165209","csb"); /* check connection */ if ($MysqLi->connect_errno) { printf("Connect Failed: %s\n",$MysqLi->connect_error); exit(); } echo "connection ok!"; /* Select queries return a resultset */ if ($result = $MysqLi->query($query_str)) { if ($result->num_rows > 0 ){ echo "<br> {$uname}:Welcome!!! <br> "; } else { echo "<br> login Failed!!!! <br> " ; } /* free result set */ $result->close(); } $MysqLi->close(); ?>
2.5 最简单的sql注入,XSS攻击测试
sql注入:通过在Web表单中输入(恶意)sql语句得到一个存在安全漏洞的网站上的数据库,通过把sql命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的sql命令。
在用户名中输入
‘ or 1=1#
密码任意输入,可登陆成功。因为合成后的SQL查询语句为select * from lxmtable where username=‘‘ or 1=1#‘ and password=‘‘,
# 相当于注释符,会把后面的内容都注释掉,而1=1是永真式,这个条件恒成立,所以能够成功登陆。
实验总结与体会
本次实验是和以往的实验有点不同,主要是对整个WEB各部分都分别进行了尝试,最后还进行了sql注入。这个实验在我感觉也更有趣。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。