20145302张薇 《网络对抗技术》 web安全基础实践

实验问题回答

1.SQL注入攻击原理,如何防御

  • 原理:攻击者把SQL命令插入到网页的各种查询字符串处,达到欺骗服务器执行恶意的SQL命令。
  • 防御:在网页设计时对文本框的输入进行限制,比如说长度限制、不能出现#号等

2.XSS攻击的原理,如何防御

  • 原理:攻击者在可输入域插入一些html或脚本语言使服务器执行那些代码
  • 防御:关键字防御,比如过滤<script>这种敏感词汇,减少被攻击的风险

3.CSRF攻击原理,如何防御

  • 原理:一般人A在登陆后,在自己的主机页面点击的各类请求都是以A的名义发送的,即A有A的权限;攻击者B在网页注入一个恶意的CSRF攻击URL地址,在A点击后,B借用A的身份进行非法操作,即B有了A的权限
  • 防御:1.cookie的保存时间不宜过长;2.服务器要求用户输入相对应的验证码;3.服务器尽量在表单中使用post方法

实验总结与体会

  • 在提交博客的时候发现:博客园没对xss攻击进行防御啊……使用<iframe>标签,后面的内容直接就被眯掉了,还有<br>换行……直接就在网页换行了啊兄弟……
  • 还有<script>也不行啊!!!
  • 想实现SQL注入,首先要对SQL语句了解
  • 想实现xss攻击,我们需要了解网页前端如何编写
  • 想实现CSRF攻击,我们需要了解cookie的原理

实践过程记录

1.phishing with XSS

  • 跨站脚本钓鱼攻击

  • 这道题我们只做出登陆的界面是无法通过的,我们需要使用script语言来捕获用户输入的用户名与密码

2.Stored XSS Attacks

  • 储存式XSS攻击
  • <Script Language="JavaScript"> alert("20145302what??????????"); </Script>

  • 这就是简单的xss攻击啊,在信息框输入我们想要的操作就行

3.Reflected XSS Attacks

  • 反射型XSS攻击

  • 代码只在Enter your three digit access code:这个框输入攻击有效

4.Cross Site Request Forgery (CSRF)

  • 跨站请求伪造
  • 这道题的题意是攻击者发一个帖子,用户点进去后被攻击者盗用身份进行一些恶意的行为
  • 题中告诉我们需要找到screen和menu这两个信息,这两个信息在网页右侧有显示;并告知恶意行为是转5000;另外,为了让用户没有察觉,我们把恶意攻击行为隐藏在一个用户看不见的图片中
  • <img src='attack?Screen=278&menu=900&transferFunds=5000' width='1' height='1'>
  • 点进我们的帖子,左侧就会显示绿色的小对勾了,帖子显示如下:

  • 可以看到message处没有什么东西的感觉,为了观察明显,我们再发一个帖子,并将图片的长度与宽度调为10:

  • 很明显的观察到了我们的小图片

5.CSRF Prompt By-Pass

  • 题意要求转账与确认转账两部分,而且给了格式
  • test anzunayinger!<img src='attack?Screen=266&menu=900&transferFunds=5000' width='1' height='1'><img src='attack?Screen=266&menu=900&transferFunds=CONFIRM' width='1' height='1'>

  • 点进帖子即可成功,除了用观察不到的图片外,我们可以使用<iframe>标签来插入恶意代码(<iframe>标签不是所有浏览器都支持)

6.String SQL Injection

  • 很简单的

7.Database Backdoors

  • 这道题用了上一道题的表,所以输入一个101 or 1=1;试一下:

  • 出现了所有人的信息,但是还没成功,我又读了一下题,发现得更新工资栏,所以输入:101 or 1=1;update employee set salary=5302;

8.Numeric SQL Injection

  • 这道题的特点是用户不能在文本框内输入,只能选择按钮,所以我们需要用到代理服务器
  • 我们将捕捉到的信息send to repeater,随后我们在send to repeater标签内将Params表格的位置数据改为永真式,这样我们就可以将四个位置的温度都显示出来了
  • 之前我试了直接在Raw标签内修改,这种方法是错误的,因为我们可以看到在Params表格内修改后Raw的数据不是普通的十进制数字,而是ASCII码的形式
  • 在右侧,可以观察到SQL语句更变为查找了永真式:

  • 我们将代理服务器拦截关闭后回到webgoat题目部分,即成功

9.Log Spoofing

  • ……刚做这个用永真式试了半天一直不对……看了提示才发现……这道题是假装登陆成功
  • <br>Welcome!admin! You Login succeeded!</br>
  • 嘻嘻,这是一个致命的错误,用<br>一辈子也成功不了……
  • 我们应该使用%0d%0a这个回车换行符号来进行欺骗

10.stage 1: String SQL Injection

  • 这道题先尝试在密码框输入:' or 1 = 1 --,发现密码框被设置只能输入8位,这样登陆是失败的
  • 所以我们在密码框处右键进入Inspect Element,将其长度改为16,格式改为text便于我们查看自己输入的东西:

  • 输入' or 1 = 1 --,登陆成功,用户名是larry:)

20145302张薇 《网络对抗技术》 web安全基础实践的更多相关文章

  1. 20145326蔡馨熤《网络对抗》—— Web安全基础实践

    20145326蔡馨熤<网络对抗>—— Web安全基础实践 1.实验后回答问题 (1)SQL注入攻击原理,如何防御. 原理: SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程 ...

  2. 20145308 《网络对抗》Web安全基础实践 学习总结

    20145308 <网络对抗> Web安全基础实践 学习总结 实验内容 本实践的目标理解常用网络攻击技术的基本原理.Webgoat实践下相关实验. 基础问题回答 (1)SQL注入攻击原理, ...

  3. 20145216史婧瑶《网络对抗》Web安全基础实践

    20145216史婧瑶<网络对抗>Web安全基础实践 实验问题回答 (1)SQL注入攻击原理,如何防御 攻击原理: SQL注入攻击指的是通过构建特殊的输入作为参数传入web应用程序,而这些 ...

  4. 20145227鄢曼君《网络对抗》Web安全基础实践

    20145227鄢曼君<网络对抗>Web安全基础实践 实验后回答问题 1.SQL注入攻击原理,如何防御? SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是 ...

  5. 20145312 《网络对抗》 Web安全基础实践

    20145312 <网络对抗> Web安全基础实践 问题回答 SQL注入攻击原理,如何防御 原理:攻击者在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,把SQL语句当做 ...

  6. 20145217《网络对抗》 Web安全基础实践

    20145217<网络对抗> Web安全基础实践 一.实践任务 本实践的目标理解常用网络攻击技术的基本原理.Webgoat实践下相关实验. 二.实验后回答问题 (1)SQL注入攻击原理,如 ...

  7. 20155326《网络对抗》Web安全基础实践

    20155326<网络对抗>Web安全基础实践 实验后回答的问题 SQL注入攻击原理,如何防御? 原理:SQL注入攻击指的是在Web应用对后台数据库查询语句处理存在的安全漏洞,通过构建特殊 ...

  8. 20155206《网络对抗》Web安全基础实践

    20155206<网络对抗>Web安全基础实践 实验后问题回答 (1)SQL注入攻击原理,如何防御 攻击原理:SQL注入攻击就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查 ...

  9. 20155211 网络对抗 Exp9 Web安全基础实践

    20155211 网络对抗 Exp9 Web安全基础实践 基础问题回答 SQL注入攻击原理,如何防御? 原理:SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语 ...

  10. 20155305《网络对抗》Web安全基础实践

    20155305<网络对抗>Web安全基础实践 基础问题回答 SQL注入攻击原理,如何防御? 原理:SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL ...

随机推荐

  1. 2018-2019-2 20165330《网络对抗技术》Exp6 信息搜集与漏洞扫描

    目录 基础问题 相关知识 实验目的 实验内容 实验步骤 实验总结与体会 实验目的 掌握信息搜集的最基础技能与常用工具的使用方法. 返回目录 实验内容 各种搜索技巧的应用 使用搜索引擎 搜索网址目录结构 ...

  2. Oracle管理监控之检查数据库和日常维护数据库

    linux系统的系统日志一般位于/var/log目录下.linux的系统日志由一个叫syslog的进程管理的,如下日志都是由syslog服务驱动的. /var/log/ messages:记录linu ...

  3. hadoop第一部分-安装、测试

    一.hadoop安装(本地模式及伪分布式安装) hadoop历史版本下载网站:http://archive.apache.org/dist/运行模式:    本地模式    yarn模式 hadoop ...

  4. JS中"属性"的用法

    JS的属性和C#有相似之处  ! 使用get和set来进行属性的获取和设置 var obj={ a:"1", get age(){ return obj.a; }, set age ...

  5. Python开发【笔记】:加锁的最佳方案

    避开死锁 代码程序中,尽量要避免死锁的产生,下面分析常见的线程锁使用方式 :注:只有同一把锁才会产生互斥 1.常见的死锁方式(加锁时程序报错,锁未释放): import time import thr ...

  6. Vue中父子组件执行的先后顺序探讨

    前几天,朋友向我提出了一个关于Vue中父子组件执行的先后顺序问题,相信很多朋友在学习的过程中也会遇到这个问题,所以我就在此提出我自己的一些小看法. 问题如下:请问下图中父子组件执行的先后顺序? 首先, ...

  7. 洛谷P4438 道路 [HNOI/AHOI2018] 树形dp

    正解:树形dp 解题报告: 传送门! 昂首先看懂题目趴QwQ大概就是说有棵满二叉树,有n个叶子节点(乡村)和n-1个非叶子节点,然后这棵树的每个节点有三个属性abc,对每个非叶子节点可以从与子节点的两 ...

  8. Unity-反编译由IL生成的DLL文件

        本文由博主SunboyL原创,转载请注明出处:http://www.cnblogs.com/xsln/p/DLL_DeCompilation.html     在Unity实际开发过程中,我们 ...

  9. 理解SQL Server中索引的概念,原理

    转自:http://www.cnblogs.com/CareySon/archive/2011/12/22/2297568.html 简介 在SQL Server中,索引是一种增强式的存在,这意味着, ...

  10. openstack 部署笔记--glance

    控制节点 创建用户及服务 $ . admin-openrc $ openstack user create --domain default --password-prompt glance $ op ...