码迷,mamicode.com
首页 > Web开发 > 详细

20155207 《网络对抗》 Exp9 Web安全基础

时间:2018-06-03 19:50:23      阅读:231      评论:0      收藏:0      [点我收藏+]

标签:匹配   oca   code   语言   搜索   代码   技术分享   user   攻击   

20155207 《网络对抗》 Exp9 Web安全基础

实验内容

  • 关于WebGoat
  • Cross-Site Scripting(XSS)练习
  • Injection Flaws练习
  • CSRF攻击

实验总结与体会

这次实验在WebGoat里做了SQL注入的10个相关实践,从上周学习的简单通过文本框中输入字符串构造SQL语句进行SQL注入到在文本框中提交文本或者发送邮件做XSS攻击,还有利用;邮件发送含有恶意URL请求的HTML对象来利用用户的COOKIE做非法操作

基础问题回答

  • (1)SQL注入攻击原理,如何防御?
    ```
  • 原理:SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作,使非法数据侵入系统。

  • 防御:

1.对用户的输入进行校验,可以通过正则表达式,双"-"进行转换等。
2.不要使用动态拼装sql,可以使用参数化的sql或者直接使用存储过程进行数据查询存取。
3.不要使用管理员权限的数据库连接,为每个应用使用单独的权限有限的数据库连接。
4.不要把机密信息直接存放,加密或者hash掉密码和敏感的信息。
5.应用的异常信息应该给出尽可能少的提示。
6.采取辅助软件或网站平台来检测sql注入。


- XSS攻击的原理,如何防御?
  • 原理:XSS是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码(如,HTML代码和客户端脚本)植入到提供给其它用户使用的页面中,攻击者可以利用XSS漏洞旁路掉访问控制。

  • 防御:

1.特征匹配方式,在所有提交的信息中都进行匹配检查,一般会对“javascript”这个关键字进行检索,一旦发现提交信息中包含“javascript”,就认定为XSS攻击。
2.对所有用户提交内容进行可靠的输入验证,包括对URL、查询关键字、HTTP头、POST数据等,仅接受指定长度范围内、采用适当格式、采用所预期的字符的内容提交,对其他的一律过滤。
3.实现Session标记(session tokens)、CAPTCHA系统或者HTTP引用头检查,以防功能被第三方网站所执行。


- (3)WebServer支持哪些动态语言
- ASP、PHP、JSP、Python

## 实验过程记录

### webgoat

- 开启webgoat:```java -jar webgoat-container-7.0.1-war-exec.jar```
- 在浏览器上访问```localhost:8080/WebGoat```,登录

![](https://images2018.cnblogs.com/blog/1071578/201806/1071578-20180602165111495-1976490617.png)


### XSS攻击

#### Phishing with XSS

- 这个题目我们要在搜索框中输入XSS攻击代码:









This feature requires account login:





Enter Username:



Enter Password:












```

  • 在搜索框中输入攻击代码后点击搜索,会看到一个要求输入用户名密码的表单,然后输入用户名密码,点击登录,WebGoat会将你输入的信息捕获并反馈给你:

技术分享图片

Reflected XSS 反射型XSS攻击

  • code框中输入```

20155207 《网络对抗》 Exp9 Web安全基础

标签:匹配   oca   code   语言   搜索   代码   技术分享   user   攻击   

原文地址:https://www.cnblogs.com/lnaswxc/p/9129824.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!