20145308 《网络对抗》Web安全基础实践 学习总结
20145308 《网络对抗》 Web安全基础实践 学习总结
实验内容
本实践的目标理解常用网络攻击技术的基本原理。Webgoat实践下相关实验。
基础问题回答
- (1)SQL注入攻击原理,如何防御
- 通过在文本框中输入的字符串与web中事先定义好的SQL语句结合,构成注入攻击的SQL实现攻击
- 主要还是通过编程时多多实现对输入字符串的合法性检验
- (2)XSS攻击的原理,如何防御
- 通过对网页注入可执行代码,实现攻击
- 通过网页编程实现对输入内容的过滤
- (3)CSRF攻击原理,如何防御
- 跨站请求伪造,通过伪装受信任用户的请求利用受信任网站,利用用户在可信网站上没有登出的COOKIE做恶意操作
经常删除保存的COOKIE
实验总结与体会
这次实验在WebGoat里做了SQL注入的10个相关实践,从上周学习的简单通过文本框中输入字符串构造SQL语句进行SQL注入到在文本框中提交文本或者发送邮件做XSS攻击,还有利用;邮件发送含有恶意URL请求的HTML对象来利用用户的COOKIE做非法操作
实践过程记录
开启webgoat
- 最小化启动页面
- 浏览器访问WebGoat
SQL注入
Numeric SQL Injection
- 构造SQL语句,显示出数据库中不应该显示的信息
- 首先开启BurpSuite
- 设置代理,添加8888端口
- BurSuite捕获到数据包
修改station值,让SQL语句变为
SELECT * FROM weather_data WHERE station = 101 or 1=1
点击
GO
,修改成功
一激动,成功了忘截图,只剩一个小钩钩了
关闭BurSuite并设置浏览器不使用代理
Log Spoofing
- 构造字符串,用显示的登录信息欺骗登陆的用户,以为自己的登陆成功
- 在登陆界面的用户名处输入
%0d%0aLogin Succeeded! admain
显示的其实还是登录失败的信息,只不过在视觉上欺骗了用户
String SQL Injection
- 通过构造SQL语句显示数据库中所有信用卡的信息
- 修改语句构造
SELECT * FROM user_data WHERE last_name = '' or 1=1;--'
显示全部信息
DataBase Backdoors stage1
- 输入
101 or 1=1;update employee set salary=3;
构造SQL语句,创建了salary字段
DataBase Backdoors stage2
- 通过题目给的SQL语句注入,实现创建一个后门,一旦添加一个新用户,就将新用户的邮箱修改为john@hackme.com
Blind Numeric SQL Injection
- 通过SQL注入,在pins表中找到cc_number值为1111222233334444的pin值为多少
- 输入101 AND ((SELECT pin FROM pins WHERE cc_number='1111222233334444')>500);尝试大于500,成功;小于1000,失败;所以应该大于1000,一直用二分法尝试
最后逼近到2364,猜测为2364,成功
输入2364
Blind String SQL Injection
- 原理基本上和Blind Numberic SQL Injection相同,这次是查询登录名是什么,也是构造能够查询登录名的SQL语句,一点点猜
- 构造SQL字符串101 AND (SUBSTRING((SELECT name FROM pins WHERE cc_number='4321432143214321'),1,1)<'M');查询第一个字母是否小于M,成功;查询小于B,失败
- 依次尝试,最后试出来是Jill
XSS攻击
Reflected XSS Attacks
- 通过在文本框中输入,注入JS代码
<script>alert(document.cookie);</script>
,获得cookies
Stored XSS Attacks
- 通过网站文本框输入,注入js代码,尝试盗走用户cookies
- 输入一段JS代码
<script>alert(document.cookie);</script>
提交 - 点击提交的文本
CSRF 攻击
Cross SSite Request Foregery(CSRF)
- 在文本框中提交一个有URL恶意请求的代码,<img src='attack?Screen=278&menu=900&transFunds=100000' width='1', height='1'>,其中scr=278,menu=900,点击就会执行
CSRF Prompt By-Pass
- 与上个实验类似,除了转账金额还增加了确认转账,同样构造两个包含恶意URL的图片,此次scr=268,增加
<img src='attack?Screen=268&menu=900&transFunds=CONFIRM' width='1', height='1'>
提交后点击
成功列表
20145308 《网络对抗》Web安全基础实践 学习总结的更多相关文章
- 20145334赵文豪网络对抗Web安全基础实践
1.SQL注入攻击原理,如何防御? SQL注入攻击就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意SQL命令的目的. 对于SQL注入攻击的防范,我觉 ...
- 20145308 《网络对抗》 MSF基础应用 学习总结
20145308 <网络对抗> MSF基础应用 学习总结 实验内容 掌握metasploit的基本应用方式,掌握常用的三种攻击方式的思路.具体需要完成(1)一个主动攻击,如ms08_067 ...
- 2018-2019 20165221 网络对抗 Exp5 MSF基础
2018-2019 20165221 网络对抗 Exp5 MSF基础 实践内容: 重点掌握metassploit的基本应用方式,重点常用的三种攻击方式的思路.具体需要完成: 一个主动攻击实践,如ms0 ...
- 20145306 网路攻防 web安全基础实践
20145306 网络攻防 web安全基础实践 实验内容 使用webgoat进行XSS攻击.CSRF攻击.SQL注入 XSS攻击:Stored XSS Attacks.Reflected XSS At ...
- 20145308 《网络对抗》 逆向及BOF基础实践 学习总结
20145308 <网络对抗> 逆向及BOF基础实践 学习总结 实践目的 通过两种方法,实现程序能够运行原本并不会被运行的代码 实践原理 利用foo函数的Bof漏洞,构造一个攻击输入字符串 ...
- 20155326《网络对抗》Web安全基础实践
20155326<网络对抗>Web安全基础实践 实验后回答的问题 SQL注入攻击原理,如何防御? 原理:SQL注入攻击指的是在Web应用对后台数据库查询语句处理存在的安全漏洞,通过构建特殊 ...
- 20145203盖泽双 《网络对抗技术》实践九:Web安全基础实践
20145203盖泽双 <网络对抗技术>实践九:Web安全基础实践 1.实践目标 1.理解常用网络攻击技术的基本原理. 2.Webgoat下进行相关实验:SQL注入攻击.XSS攻击.CSR ...
- 20145236《网络对抗》Exp9 web安全基础实践
20145236<网络对抗>Exp9 web安全基础实践 一.基础问题回答: SQL注入攻击原理,如何防御 SQL Injection:就是通过把SQL命令插入到Web表单递交或输入域名或 ...
- 20145325张梓靖 《网络对抗技术》 Web安全基础实践
20145325张梓靖 <网络对抗技术> Web安全基础实践 实验内容 使用webgoat进行XSS攻击.CSRF攻击.SQL注入 XSS攻击:Stored XSS Attacks.Ref ...
随机推荐
- centos7安装Amber16 && AmberTools
Centos7 安装amber16 1.准备下载好的amber(Amber16.tar.bz2)及tools(AmberTools16.tar.bz2)安装包: $ cd MySoftware_hom ...
- 部署一个不依赖tomcat容器的应用
一个task项目,应用里边都是一些定时任务.我和新入职的高开商定程序部署不依赖于tomcat. 计划赶不上变化,任务开发完成还没等上线呢,哥们要离职了.工作交接时大概说了一下上线怎么部署. 结果呢,当 ...
- 记录一则ORA-600 [13011]错误
环境:Solaris 10 + Oracle 11.2.0.1 现象:alert告警日志定期出现ORA-600 [13011]错误 1.故障现象 2.初步分析 3.匹配MOS 4.定位解决 1.故障现 ...
- eclipse显示xml提示
当网速比较慢时,可以添加本地的dtd. window下的preferces,输入xml,找到xml catalog 接着
- Sift中尺度空间、高斯金字塔、差分金字塔(DOG金字塔)、图像金字塔
转自:https://blog.csdn.net/dcrmg/article/details/52561656 一. 图像金字塔 图像金字塔是一种以多分辨率来解释图像的结构,通过对原始图像进行多尺度像 ...
- 018-AJAX异步请求XMLHttpRequest
创建XMLHttpRequest对象 一.先来创建XMLHttpRequest对象在IE.Firefox.safari和Opera中创建该对象的JavaScript代码为: var xhr = new ...
- pandas常用函数
1. df.head(n): 显示数据前n行,不指定n,df.head则会显示所有的行 2. df.columns.values获取所有列索引的名称 3. df.column_name: 直接获取列c ...
- idea上更新文件到github上
1.不是最新文件,那么文件颜色就不一样.操作如下: 2.本地提交 .提交文件列表,提交说明,文件前后对比,确定了后就提交 3.推送到github. (1) (2)
- anacoda 安装默认源中没有的包
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 1 安装失败 conda install pygame 2 搜索 anaconda se ...
- python 爬qidian小说
import re import urllib.request from bs4 import BeautifulSoup import time url=input("第一章网址:&quo ...