实验内容

  • (1)Web前端HTML
  • (2)Web前端javascipt
  • (3)Web后端:MySQL基础:正常安装、启动MySQL,建库、创建用户、修改密码、建表
  • (4)Web后端:编写PHP网页,连接数据库,进行用户认证
  • (5)最简单的SQL注入,XSS攻击测试

基础问题回答

  • (1)什么是表单
  • 在网页中负责信息采集,在网页中用户输入信息,通过表单能够提交到后台进行相应的处理
  • (2)浏览器可以解析运行什么语言
  • HTML、CSS,JS脚本会调用JS脚本引擎来处理,PHP的解释执行是在服务器端进行的
  • (3)WebServer支持哪些动态语言
  • ASP、PHP、JSP、Python

实验总结与体会

  • 这次实验做的是Web相关的编程、攻击,之前有接触过HTML编程,所以这部分相对简单,但是没有接触过PHP脚本编程,都是看别人的代码例子,自己理解的来学习的,连接数据库的部分也是,自己理解的占大多数
  • 这次实验在五一假期之后,所以从心理上就有些懈怠,又全部是代码,所以自己先把自己吓了一跳,后来做实验的时候发现也没有那么难,果然自己才是最大的敌人

实践过程记录

Apache

  • 启动apache,查看端口占用
    20145308 《网络对抗》 Web应用 学习总结

  • 检测apache是否正常工作,fierfox访问localhost:80,显示Apache截获的google登陆页面
    20145308 《网络对抗》 Web应用 学习总结

编写网页

  • 测试:apache读取工作目录下的文件
    20145308 《网络对抗》 Web应用 学习总结

  • 输入字符串

  • 浏览器打开localhost:80/test.txt
    20145308 《网络对抗》 Web应用 学习总结

前端编程

  • 编写简单的用于login的HTML页面
    20145308 《网络对抗》 Web应用 学习总结

20145308 《网络对抗》 Web应用 学习总结

  • method参数是GET,所以输入值会在URL中显示、提交
  • javascript,编写测试输入密码是否为空的代码
<html>
<head>
<meta charset ="UTF-8">
<script type="text/javascript">
function check_pwd()
{
        var Pwd = document.form.password.value ;    
        
        if (Pwd ==""){  
            alert("password input cannot be empty!");  
            return false ;  
        }  
}
</script>
<body bgcolor="#aaFFFFF">
<h1>login</h1>
<form name="form" action ="5308_login.php" method="GET" onclick="return inputshow()">
<input type="text" name="username" >
<br>
<input type="password" name="password" >
<br>
<button type="submit" onclick="disp_alert()"  value="submit" />submit</button>
</form>
</body>
</html>
  • 测试,输入空的密码
    20145308 《网络对抗》 Web应用 学习总结

  • 弹出对话框
    20145308 《网络对抗》 Web应用 学习总结

后端编程PHP

  • 安装PHP

  • 测试PHP
    20145308 《网络对抗》 Web应用 学习总结

  • 编写PHP尝试获得表单数据
    20145308 《网络对抗》 Web应用 学习总结

20145308 《网络对抗》 Web应用 学习总结

  • form使用POST方法提交,需要修改PHP也用POST方法
    20145308 《网络对抗》 Web应用 学习总结

20145308 《网络对抗》 Web应用 学习总结

MySQL

  • 安装启动Mysql

  • 进入mysql
    20145308 《网络对抗》 Web应用 学习总结

  • 修改密码

  • 在数据库中建表

  • 表名users 四个字段userid、username、password、enabled 主键userid
    20145308 《网络对抗》 Web应用 学习总结

  • 向表中添加账户
    20145308 《网络对抗》 Web应用 学习总结

PHP+mysql

  • 编写PHP连接数据库,这就开始了艰难的查错之旅,一直也没查出代码的错误,最后发现是自己写代码时数据库的变量名一开始定义的是"mysql",但是调用的时候却写成了"mysali",哈,一个小字母,网页编程又不能报错。。。我能怎么办,我也很无奈啊。。。
  • 测试,用数据库中的用户名密码登录,成功;否则失败
    20145308 《网络对抗》 Web应用 学习总结

20145308 《网络对抗》 Web应用 学习总结

SQL注入

  • 用户名输入' or 1=1#,密码任意,就能登录成功
    20145308 《网络对抗》 Web应用 学习总结

  • 修改代码,允许多条执行,SQL注入将用户名和密码保存在数据库中
    20145308 《网络对抗》 Web应用 学习总结

  • 查询数据库发现已经修改成功
    20145308 《网络对抗》 Web应用 学习总结

  • 登录
    20145308 《网络对抗》 Web应用 学习总结

XSS攻击

  • 插入恶意脚本,用图片groot.jpg
    20145308 《网络对抗》 Web应用 学习总结

相关文章:

  • 2021-08-15
  • 2022-01-11
  • 2021-11-26
  • 2021-09-12
  • 2022-01-17
  • 2021-12-15
  • 2021-12-04
  • 2022-02-04
猜你喜欢
  • 2021-05-28
  • 2021-10-01
  • 2021-10-10
  • 2021-07-25
  • 2022-01-25
  • 2021-12-24
相关资源
相似解决方案