2019-2020-2 20175204 张湲祯《网络对抗技术》Exp8 Web基础

时间:2020-05-24 11:54:19   收藏:0   阅读:59

2019-2020-2 20175204 张湲祯《网络对抗技术》Exp8 Web基础

一、实验目标与内容

1.实践目标:用户能登陆,登陆用户名密码保存在数据库中,登陆成功显示欢迎页面。

二、基础问题回答

1.什么是表单?

答:表单是一个包含表单元素的区域,在网页中主要负责数据采集功能。表单有三个基本组成部分:

2.浏览器可以解析运行什么语言?

答:支持HTML(超文本标记语言)、XML(可扩展标记语言)、Python、PHP、JavaScript、ASP等众多脚本语言。

3.WebServer支持哪些动态语言?

答:WebServer支持ASP、PHP、JSP。

三、实验内容

1.1Web前端HTML

<html>
<head>
<title>Login</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
    <h2 align="center">登录界面</h2>
<center>
    <form action="login" method="post">
       请输入用户名:<input placeholder="用户名" name="Name" class="user" type="username">
     <br>
     </br>
       请输入密码:<input  placeholder="密码" name="Password" class="pass" type="password">
     <br>
     </br>
     <input type="submit" value="登录">
     </form>
</center>
</body>
</html>

1.2Web前端:javascipt

<html>
<head>
<title>登录检测</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
	<h2 align="center">登录界面</h2>
<center>
	<form action="login" method="post" name="form_login">
	请输入用户名:<input placeholder="用户名" name="Name" class="user" type="username" onfocus="if (this.value==‘Your username‘) this.value=‘‘;" />
	<br>
	</br>
	请输入密码:<input  placeholder="密码" name="Password" class="pass" type="password" onfocus="if (this.value==‘Your password‘) this.value=‘‘;"/>
	<br>
	</br>
	<input type="submit" value="登录" onClick="return validateLogin()"/>
	</form>
</center>
<script language="javascript">  
    function validateLogin(){  
        var sUserName = document.form_login.Name.value ;  
        var sPassword = document.form_login.Password.value ;    
        if ((sUserName =="") || (sUserName=="Your username")){  
        alert("请输入用户名,用户名不能为空!");  
        return false ;  
        }  
        if ((sPassword =="") || (sPassword=="Your password")){  
        alert("请输入密码,密码不能为空!");  
        return false ;  
        }  
    }   
</script>  
</body>
</html>

1.3:Web后端:MySQL基础

1.4Web后端:编写PHP网页

<?php
echo ($_GET["a"]);
include($_GET["a"]);
echo "Hello word! This is 20175204ZYZ php test page!<br>";
?>
<?php
$uname=$_POST["Name"];
$pwd=$_POST["Password"];
echo $uname;
$query_str="SELECT * FROM login where username=‘$uname‘ and password=‘$pwd‘;";
$mysqli = new mysqli("127.0.0.1", "20175204zyz", "20175204", "5204zyz");
$query_str1="use 5204zyz;";
/* 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();
?>

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

四、实验问题及解决

五、实验体会

本次实验主要是编写web前端后台和执行一些简单的攻击方法,大部分内容都在上学期的网络安全编程课上学过,只有PHP语言等内容是需要新学习的,SQL注入攻击也在课上学过原理;通过本次实验感觉搭建好一个网站也是非常困难的,需要注意很多安全问题。再一次感觉kali功能真强大,连MySQL数据库环境都不需要太多配置。

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!