20145312袁心《网络对抗》Web基础实践
20145312袁心《网络对抗》Web基础实践
问题回答
1.什么是表单:
- 表单在网页中主要负责数据采集功能。
- 一个表单有三个基本组成部分:
表单标签:这里面包含了处理表单数据所用CGI程序的URL以及数据提交到服务器的方法。
表单域:包含了文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文件上传框等。
表单按钮:包括提交按钮、复位按钮和一般按钮;用于将数据传送到服务器上的CGI脚本或者取消输入,还可以用表单按钮来控制其他定义了处理脚本的处理工作。
2.浏览器可以解析运行什么语言:
- 超文本标记语言:HTML
- 可扩展标记语言:XML
- 脚本语言:ASP、PHP、Script、JavaScript
3.WebServer支持哪些动态语言:
- ASP语言,PHP语言和JSP语言
实验总结
- 这次实验让我了解了编写网页的流程,实践内容丰富有一定的难度,并且有很强的实用性,虽然现在我只能实现网页的简单功能,但只要认真摸索,我一定能实现一个界面友好,功能强大的网页。
实验过程
环境配置
-
通过
apachectl start
开启Apach,使用netstat -aptn
查看端口占用:在这里apach2占用端口5312
-
测试apache是否正常工作:在kali的火狐浏览器上输入
localhost:5312
(打开的是上一个实验伪装的Google登录网页)
网页编写
-
在Apache工作目录/var/www/html新建一个20145312.html文件,编写一个含有表单的html
-
打开浏览器访问:localhost:5312/20145312.html,成功出现如下界面
-
点击
Submit
,数据会传送到 "html_form_action.php" 的页面,由于没有对此页面进行编辑,出现404 Not Found
PHP测试
- 新建一个PHP测试文件vi /var/www/html/test.php,用浏览器打开localhost:5312/test.pgp,可以看见如下界面,测试成功
MySQL基础
-
开启sql服务
/etc/init.d/mysql start
-
输入
mysql -u root –p
,并根据提示输入密码,默认密码为p@ssw0rd
,进入MySQL
-
在Mysql中建库建表
-
向数据库添加一条新纪录
实现登录网页编写
-
在/var/www/html文件夹下输入
vim 5312login.html
,编写登录网页 -
在同样的目录下输入
vim login.php
,通过php实现对数据库的连接
-
在火狐浏览器中输入localhost:5312/5312login.html,就可以访问自己的登陆页面
-
在登录页面中输入数据库中存有的用户名和密码并点击提交进行用户认证登录成功,输入数据库中没有的就会认证失败
SQL注入
-
SQL注入的产生原因通常是将用户输入的字符串,当成了 “sql语句” 来执行,通过SQL注入将用户名和密码保存在数据库中:
';insert into users(userid,username,password,enabled) values(5,'yuanxin',password("yuanxin"),"TRUE");#
-
此时在登录页面输入用户名
yuanxin
密码yuanxin
,成功
XSS攻击(跨站脚本攻击)
-
输入
<img src="5312.jpg" />haha</a>
先进行简单的测试
-
点击登录就会出现图片5312.jpg的超链接
会话管理实践
-
建立一个利用cookie统计登录次数的页面session.html进行简单的测试:
-
通过使用cookie保存信息,实现登录页面不需再次登陆的功能,如果想要退出登录,点击
log out
即可
登陆发帖功能
-
登陆成功
-
点击
start a new post
发帖,进入如下界面
-
提交之后跳转到如下界面,可以选择查看发过的帖子、继续发帖、返回或者退出登录