2017-2018-2 20155225《网络对抗技术》实验八 Web基础

1、Web前端HTML

输入命令apachectl start打开apahce,并使用netstat -aptn查看端口号,确认apache启动成功,如图所示,监听端口是80:

在浏览器里输入http://127.0.0.1,可以访问到Apache默认页面,证明Apache可以正常工作。

.测试:apache可读取工作目录下的文件

在/var/www/html/目录下,写一个测试的txt文档,在浏览器里打开127.0.0.1/test.txt,可看到test.txt的内容,如图:

写一个有表单提交的网页:

在/var/www/html/目录下,写一个html文件:

<html>
<body> <form action="/demo/demo_form.asp">
User name:<br>
<input type="text" name="un" value="20155225">
<br>
Password:<br>
<input type="password" name="pw" >
<br><br>
<input type="submit" value="Submit">
</form> </body>
</html>

用浏览器打开效果如下:

再给它增加一个彩色的css:

	<head>
<meta charset="utf-8">
<style>
body
{
background-color:#d0e4fe;
}
input
{
color:orange;
text-align:center;
}
</style>
</head>

效果如图:

2、web前端,JavaScript

用JavaScript检查一下,用户名密码的位数有没有超过规定值。

	<script>

function inputTest(){

	if (document.getElementById("1").value.length<=8){
return true
} else {
alert("The student number cannot exceed 8!")
return false;
} } </script>

学号不能超过8位,如果超过8位会提示:

3、web后端,php

在/var/www/html/目录下,写一个test.php,进行测试:

<?php
echo "我的第一段 PHP 脚本!";
?>

尝试写了一个php,接受前端传过来的用户名,并打印出来:

<html>
<body> Welcome <?php echo $_POST["un"]; ?><br> </body>
</html>

成功跳转到php,如图所示:

4、web后端,mysql

开启MySQL服务,使用root权限进入,默认的密码是password

使用create database user;新建user数据库,并用show databases;查看数据库

使用use user;命令使用user数据库,同时,使用create table login (字段设定列表);建立数据库表,并设置字段基本信息:

使用insert into login values('201155225','jzy123');插入数据:

grant select on user.login to river@localhost identified by "1";将对user.login进行查询的权限赋给本机登录的River用户。

5、php+mysql

综合运用php和mysql,实现将前端用户名和口令,传到后端php,在php中连接数据库,进行查询,并返回查询结果。

<?php
$uname=$_POST["un"];
$pwd=$_POST["pw"];
echo "welcome";
echo $uname;
$query_str="SELECT * FROM login where username='$uname' and password='$pwd';";
$mysqli = new mysqli("127.0.0.1", "river", "1", "user"); /* check connection */
if ($mysqli->connect_errno) {
printf("Connect failed: %s\n", $mysqli->connect_error);
exit();
} /* Select queries return a resultset */
if ($result = $mysqli->query($query_str)) {
if ($result->num_rows > 0 ){
echo "<br> login success! <br> ";
}
else {
echo "<br> login failed! <br> " ; }
/* free result set */
$result->close();
}
$mysqli->close();
?>

登录成功!

6、SQL注入和XSS攻击

  1. sql注入:

后台sql语句为SELECT * FROM login where username='$uname' and password='$pwd';

如果输入用户名时,输入为20155225'#,那后面口令就被注释掉了。

  1. xss攻击:

在用户名输入框输入 < img src="20155225.jpg" />,对应到php中,就是echo < img src="20155225.jpg" /> ,然后既可以查看到图片了。

开始尝试的时候,攻击成功了,但图片一直加载不出来,后来给图片加上权限就可以了。

实验问题回答

1.什么是表单

表单可以收集用户的信息和反馈意见,是网站管理者与浏览者之间沟通的桥梁。

一个表单有三个基本组成部分: 表单标签

表单域:包含了文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文件上传框等

表单按钮:包括提交按钮、复位按钮和一般按钮.

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

超文本标记语言:HTML

可扩展标记语言:XML

脚本语言:ASP、PHP、Script、JavaScript、VBScript、Perl、Python、ColdFusion、Java、JSP等

3.WebServer支持哪些动态语言

比较常用的有PHP语言和JSP语言。

实验总结与体会

第一次接触了SQL注入、XSS注入攻击,这些注入非常巧妙,简直防不胜防,所以web安全有非常广阔的探索空间,进一步学习web安全,要更加努力了!

2017-2018-2 20155225《网络对抗技术》实验八 Web基础的更多相关文章

  1. 20155201 网络攻防技术 实验八 Web基础

    20155201 网络攻防技术 实验八 Web基础 一.实践内容 Web前端HTML,能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML. We ...

  2. 2017-2018-2 20155314《网络对抗技术》Exp8 Web基础

    2017-2018-2 20155314<网络对抗技术>Exp8 Web基础 目录 实验内容 实验环境 基础问题回答 预备知识 实验步骤 1 macOS下Apache的配置 2 macOS ...

  3. 20145231熊梓宏 《网络对抗》 实验8 Web基础

    20145231熊梓宏 <网络对抗> 实验8 Web基础 基础问题回答 ●什么是表单? 表单是一个包含表单元素的区域,表单元素是允许用户在表单中输入信息的元素,表单在网页中主要负责数据采集 ...

  4. 20165101刘天野 2018-2019-2《网络对抗技术》Exp8 Web基础

    20165101刘天野 2018-2019-2<网络对抗技术>Exp8 Web基础 1.实验内容 1.1 Web前端HTML (1)输入命令service apache2 start启动A ...

  5. 20165214 2018-2019-2 《网络对抗技术》Exp8 Web基础 Week11—12

    <网络对抗技术>Exp8 Web基础 Week11-12 一.实验目标与内容 1.实践内容 (1).Web前端HTML 能正常安装.启停Apache.理解HTML,理解表单,理解GET与P ...

  6. 2018-2019-2 网络对抗技术 20165322 Exp8 Web基础

    2018-2019-2 网络对抗技术 20165322 Exp8 Web基础 目录 实验原理 实验内容与步骤 Web前端HTML Web前端javascipt Web后端:MySQL基础:正常安装.启 ...

  7. 2018-2019-2 20165210《网络对抗技术》Exp8 Web基础

    2018-2019-2 20165210<网络对抗技术>Exp8 Web基础 实验内容: Web前端HTML 能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法 ...

  8. 2018-2019-2 网络对抗技术 20165205 Exp8 Web基础

    2018-2019-2 网络对抗技术 20165205 Exp8 Web基础 1.原理与实践说明 1.1实践内容 Web前段HTML:能正常安装.启停Apache.理解HTML,理解表单,理解GET与 ...

  9. 2018-2019-2 20165235《网络对抗技术》Exp8 Web基础

    2018-2019-2 20165235<网络对抗技术>Exp8 Web基础 实践过程记录: (1).Web前端HTML 能正常安装.启停Apache.理解HTML,理解表单,理解GET与 ...

  10. 2018-2019 2 20165203 《网络对抗技术》Exp8 Web基础

    2018-2019 2 20165203 <网络对抗技术>Exp8 Web基础 实验要求 1.本实践的具体要求有: (1) Web前端HTML(0.5分) 能正常安装.启停Apache.理 ...

随机推荐

  1. IOS 获取系统通讯录中的联系人信息

    - (IBAction)getAllContactFromSystem { ABAddressBookRef ab = ABAddressBookCreateWithOptions(NULL, NUL ...

  2. JAVA记录-基础常识

    1.==与equals区别 1)==用于基本数据类型的比较,判断引用是否指向堆内存的同一地址.---引用地址 2)equals用于判断两个变量是否是对同一对象的引用,即堆中的内容是否相同,返回值为布尔 ...

  3. windows Zookeeper本地服务化

    ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是一个为分布式应用提供一致性服务的软件,提供的功 ...

  4. js 格式化时间、字符串指定长度、随机字符串

    格式化字符串长度 方法 function formatWidth(str, width){ str += '' if(str.length<width) '+str, width) else r ...

  5. 使用 CSS3 的 box-sizing 属性设置元素大小包含 border 与 padding

    Ø  默认情况下,内部元素(如:input)的宽度或高度,是不会包含元素的边框和内边距的,这时就需要使用 box-sizing 属性设置该元素. Ø  box-sizing 是 CSS3 的属性,可以 ...

  6. 工控安全入门之Ethernet/IP

    这一篇依然是协议层面的,协议层面会翻译三篇,下一篇是电力系统中用的比较多的DNP3.这一篇中大部分引用的资料都可以访问到,只有一篇reversemode.com上的writeup(http://rev ...

  7. Github安全整理(转载)

    刚好这两天对之前github上关注的一些比较有意思的项目进行了一下分类整理,在这里列出来分享给大家,希望能对大家寻找工具或者资源有所帮助. 大部分Repo是关于安全以及Python的,也有一些其他主题 ...

  8. collocation

    a collocation is two or more words that often go together. These combination just sound "right& ...

  9. C# cmd调用外部命令

    void test2() { Process process = new Process(); //C:\\Users\\Administrator\\Desktop\\ffmpeg\\bin\\ff ...

  10. The folder can’t be opened because you don’t have permission to see its contents.

    1 自己在windows上面copy过去的文件夹,在Mac下面无法查看 一开始以为是windows文件的权限问题,然后 自己赋予了everyone所有的权限,结果在Mac上面还是无法打开文件夹 2 最 ...