20145230熊佳炜《网络对抗》实验九:web安全基础实践

webgoat

  • webgoat的中文是代罪羔羊的意思,而它是一个有很多漏洞的web应用程序,我们可以利用它来研究关于web应用程序的安全性。
  • 在我们的kali虚拟机中输入java -jar webgoat-container-7.0.1-war-exec.jar即可运行我们的webgoat。
  • webgoat默认使用的是8080端口,打开火狐浏览器,可以进入到webgoat的主页,我们可以找到自己感兴趣的题目进行练习。

Phishing with XSS

  • 首先我们需要在搜索栏中输入攻击代码,输入完毕之后点击search。
  • search完毕之后它会要求我们输入用户名和密码。
  • 输入完毕之后选择确定就可以成功攻击了。

Stored XSS Attacks

  • 我们需要创建一个帖子,然后让它在弹出的窗口中显示出来。
  • 在标题栏可以随便输入任何指令,消息那一栏需要写入我们的代码。
  • 然后点击我们刚才创建的帖子就会看到弹窗,表面攻击成功。

Reflected XSS Attacks

  • 还是感觉和上一个Stored XSS攻击的方法差不多。
  • 在access那一栏输入一个攻击代码,点击purchase后,如果弹出我们输入的代码的内容,就表示我们攻击成功了。

Cross Site Request Forgery

  • CSRF就是冒名登录,用代码伪造请求。
  • 写一个URL诱使其他用户点击,从而触发CSRF攻击。
  • 还是通过在消息栏输入攻击代码,然后用户点击后会显示我们已经攻击成功了。

CSRF Prompt By-Pass

  • 这个和上一个题目攻击方法也是相对比较类似的,但在消息栏输入我们的攻击代码并不能成功。
  • 所以只能通过浏览器输入,输入后会看到confirm选项,点击它。
  • 最后刷新一下网页,会发现我们已经成功转账。

String SQL Injection

  • 这个题目相对来说极其简单,就是我们在web基础里面SQL也用到的' or 1=1 --'这个式子,因为这个式子是一个永真式,所以输入完后点击go,会发现会显示出所有的结果。

LAB:SQL Injection(Stage 1:String SQL Injection)

  • 这个题目原理还是要求我们利用' or 1=1 --'这个永真式,但是没有上一题那样简单。
  • 这一题我们登陆密码换成了1=1也无济于事,因为网页源码中限制了密码最大长度。
  • 我们通过查看网页源码,将最大密码长度修改之后,再登录,便会发现我们成功。

Database Backdoors

  • 这是一个关于修改后台数据的一道题目。
  • 我们先输入101可以查看到larry的信息,然后我们可以通过攻击代码修改larry的工资信息。
  • 在username那我们还可以新建一个后门,将自己的用户名和邮箱应用于数据库中所有用户,这就表明攻击成功。

Log Spoofing

  • 这个题目其实顾名思义,就是登陆欺骗用户。
  • 原理就是我们输入错误的用户名后,它返回给我们的信息还是我们登陆成功。也就是我们要在用户名那写一个SQL的字符串。

Command Injection

  • 这个界面可以执行系统命令并返回给用户。
  • 所以我们可以用BurpSuite拦截到一个请求,然后修改其中的参数。最后我们在网页中可以看到修改过后要我们显示的结果。

感受

  • 不知道为什么,做这次最后一次实验的时候电脑会出奇的卡,写了很久的东西,眼看快要完成了,电脑莫名其妙的未响应,一天连续出现了好几次。反正很烦,甚至想砸电脑,可能是天气太热了,电脑可能温度太高了吧。自己大概了解了关于SQL和XSS攻击的一些套路吧,但感觉要想更加深入了解,需要自己花很多功夫,不是模仿其他人做几道练习就能成功的。希望自己能控制好自己的情绪,努力学习吧。

基础问答

1.实验后回答问题

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

答:

原理:就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。

防御: 普通用户与系统管理员用户的权限要有严格的区分, 要强迫使用参数化语句,加强对用户输入的验证,多多使用SQL Server数据库自带的安全参数,必要的情况下使用专业的漏洞扫描工具来寻找可能被攻击的点。

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

答:

原理:XSS是一种网站应用程序的安全漏洞攻击,是代码注入的一种。它允许恶意用户将代码注入到网页上,其他用户在观看网页时就会受到影响。这类攻击通常包含了HTML以及用户端脚本语言。

防御:对用户输入数据进行输入检查,也要进行输出检查,对用户输入的html 标签及标签属性做白名单过滤,也可以对一些存在漏洞的标签和属性进行专门过滤。  

(3)CSRF攻击原理,如何防御

答:

原理:CSRF通过伪装来自受信任用户的请求来利用受信任的网站。

防御:将持久化的授权方法切换为瞬时的授权方法,在form中包含秘密信息、用户指定的代号作为cookie之外的验证。

20145230熊佳炜《网络对抗》实验九:web安全基础实践的更多相关文章

  1. 20145233《网络对抗》Exp9 Web安全基础实践

    20145233<网络对抗>Exp9 Web安全基础实践 实验问题思考 SQL注入攻击原理,如何防御? SQL注入攻击就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符 ...

  2. 20145209刘一阳《网络对抗》Exp9 Web安全基础实践

    20145209刘一阳<网络对抗>Exp9 Web安全基础实践 基础问题回答 1.SQL注入攻击原理,如何防御? SQL注入攻击就是通过把SQL命令插入到Web表单递交或输入域名或页面请求 ...

  3. 20155324《网络对抗技术》web安全基础实践

    20155324<网络对抗技术>web安全基础实践 实验内容 使用webgoat进行XSS攻击.CSRF攻击.SQL注入 实验问答 SQL注入攻击原理,如何防御 ①SQL注入攻击是攻击者在 ...

  4. 20145236《网络对抗》Exp9 web安全基础实践

    20145236<网络对抗>Exp9 web安全基础实践 一.基础问题回答: SQL注入攻击原理,如何防御 SQL Injection:就是通过把SQL命令插入到Web表单递交或输入域名或 ...

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

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

  6. 20145208 蔡野 《网络对抗》Exp9 web安全基础实践

    20145208 蔡野 <网络对抗>Exp9 web安全基础实践 本实践的目标理解常用网络攻击技术的基本原理.Webgoat实践下相关实验. 实验后回答问题 (1)SQL注入攻击原理,如何 ...

  7. 20145311王亦徐 《网络对抗技术》 Web安全基础实践

    2014531王亦徐 <网络对抗技术> Web安全基础实践 实验内容 利用WebGoat平台尝试了一些XSS.CSRF.SQL注入攻击 基础问题回答 1.SQL注入攻击原理,如何防御原理: ...

  8. 20145325张梓靖 《网络对抗技术》 Web安全基础实践

    20145325张梓靖 <网络对抗技术> Web安全基础实践 实验内容 使用webgoat进行XSS攻击.CSRF攻击.SQL注入 XSS攻击:Stored XSS Attacks.Ref ...

  9. 20155202《网络对抗》Exp9 web安全基础实践

    20155202<网络对抗>Exp9 web安全基础实践 实验前回答问题 (1)SQL注入攻击原理,如何防御 SQL注入产生的原因,和栈溢出.XSS等很多其他的攻击方法类似,就是未经检查或 ...

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

    20155204<网络对抗>Exp9 Web安全基础实践 一.基础问题回答 SQL注入攻击原理,如何防御? 原理: SQL注入即是指web应用程序对用户输入数据的合法性没有判断,攻击者可以 ...

随机推荐

  1. SpringMVC笔记——Spring+MyBatis组合开发简单实例

    简介 SSH框架很强大,适合大型项目开发.但学无止境,多学会一门框架组合开发会让自己增值许多. SSM框架小巧精致,适合中小型项目快速开发,对于新手来说也是简单上手的.在SSM框架搭建之前,我们先学习 ...

  2. AngularJS 解决 SEO 问题

    由于 AngularJS 返回的是HTML模板,实际的内容需要执行JS以后才会填充进去,导致百度抓取蜘蛛抓不到,因此产生了 AngularJS 的 SEO 问题.经过几天的研究试验,我们的解决方案是这 ...

  3. ZOJ 3932 Deque and Balls

    There are n balls, where the i-th ball is labeled as pi. You are going to put n balls into a deque. ...

  4. Exchange Management Console Error

    Exchange 2010 error solved : The WS-Management service cannot process the request. The system load q ...

  5. transform的妙用---实现div不定宽高垂直水平居中

    transform的兼容性 transform的兼容性还是比较乐观的.IE9以下不兼容,IE9支持代替的-ms-transform属性不过只支持2D转换. 谷歌和Safari支持代替的-webkit- ...

  6. 统计学习方法笔记 -- KNN

    K近邻法(K-nearest neighbor,k-NN),这里只讨论基于knn的分类问题,1968年由Cover和Hart提出,属于判别模型 K近邻法不具有显式的学习过程,算法比较简单,每次分类都是 ...

  7. Spark 源码分析 – BlockManagerMaster&Slave

      BlockManagerMaster 只是维护一系列对BlockManagerMasterActor的接口, 所有的都是通过tell和askDriverWithReply从BlockManager ...

  8. Flume简介及使用

    一.Flume概述 1)官网地址 http://flume.apache.org/ 2)日志采集工具 Flume是一种分布式,可靠且可用的服务,用于有效地收集,聚合和移动大量日志数据.它具有基于流数据 ...

  9. MySQL优化(三):优化数据库对象

    二.优化数据库对象 1.优化表的数据类型 应用设计的时候需要考虑字段的长度留有一定的冗余,但不推荐很多字段都留有大量的冗余,这样既浪费磁盘空间,也在应用操作时浪费物理内存. 在MySQL中,可以使用函 ...

  10. 浅析Android View(二)

    深入理解Android View(一) View的位置參数信息 二.View的绘制过程 View的绘制过程一共分为三个部分: - measure(測量View的大小) - layout(确定View的 ...