DFX 安全测试-- 告诉你什么是XSS、sql注入?POST和GET的区别....
1、用户权限测试
(1) 用户权限控制
1) 用户权限控制主要是对一些有权限控制的功能进行验证
2) 用户A才能进行的操作,B是否能够进行操作(可通过窜session,将在下面介绍)
3)只能有A条件的用户才能查看的页面,是否B能够查看(可直接敲URL访问)
(2) 页面权限控制
1) 必须有登陆权限的页面,是否能够在不登陆情况下进行访问
2)必须经过A——B——C的页面,是否能够直接由A——C?
2、URL安全测试
(1)适用范围: URL中含有参数,也就是通过GET方式传递的HTTP请求
(2)什么叫GET方式?
HTTP 定义了与服务器交互的不同方法,最基本的方法是 GET 和 POST。
GET方式在客户端通过URL提交数据,数据在URL中可以看到,例如在日常中订购服务:
http://www.cnblogs.com/javame/index.htm?servId=2
POST方式,数据放置在HTML HEADER内提交,数据在URL中看不到
GET只能传输比较少的数据,安全性较低,POST传输数据较多,安全性也比GET高
(3)测试关注点:
1) URL 参数检查:
A: 对URL中参数信息检查是否正确
如:URL中的订单号、金额允许显示出来的话,需要验证其是否正确
B: 对于一些重要的参数信息,不应该在URL中显示出来
如:用户登陆时登录名、密码是否被显示出来了 ,
2) URL参数值篡改
修改URL中的数据,看程序是否能识别:
如:对于以下URL,修改其中planId,看是程序是否可以识别:
http://www.cnblogs.com/javame/index.htm?planId=878
又如:对于URL中包含金额参数的,修改金额看是否能够提交成功(可能导致用户把2元金额改成1元金额能提交),还有修改订单号等重要信息看是否会报错
3) URL中参数修改进行XSS注入:
什么是XSS?
XSS的全称是Cross Site Script(跨站点脚本)
XSS的原理很简单,即进行脚本注入,URL执行时即把此脚本进行了执行,一般都是JavaScript脚本。
如“http://www.cnblogs.com/javame/index.asp?IDClass=2&ClassName=abc”
改成“http://www.cnblogs.com/javame/index.asp?IDClass=2&ClassName=abc<script>alert("hello");</script>”
看看有没弹出对话框显示hello,有的话就有跨站漏洞。
在URL中进行XSS注入,也就是把URL中的参数改成JS脚本。
4) URL参数中进行SQL 注入
什么是SQL注入?
SQL注入全称是SQL Injection ,当应用程序使用输入内容来构造动态sql语句以访问数据库时,会发生sql注入攻击,如查询、插入数据时。
测试方法: URL中写入SQL注入语句,看是否被执行
如:www.cnblogs.com/javame这个网站中,选择登陆
设置用户名为 admin ' or '1'='1 密码为任意数字 ,点击登录就可以登陆。
一般情况下要进行SQL注入攻击,需要对数据库类型、表名、判断逻辑、查询语句等比较清楚才能够写出有效的SQL注入语句。
3、表单提交安全测试
适用范围:有表单提交的地方、有HTTP请求的地方(包括GET、POST请求)
测试关注点:
1) 表单中注入XSS脚本
什么是XSS?这已在上一节中说明。URL中需要检测XSS注入,表单中更需要验证
测试方法:即在表单填写框中直接注入JS脚本
如在表单中输入XSS脚本,程序是不应该让脚本执行的
2) 表单中注入SQL 脚本
与URL中参数进行SQL注入类似,就是在表单中写入SQL注入脚本提交看是否会有问题
4、Session测试
(1)Session是客户端与服务器端建立的会话,总是放在服务器上的,服务器会为每次会话建立一个sessionId,每个客户会跟一个sessionID对应。
并不是关闭浏览器就结束了本次会话,通常是用户执行“退出”操作或者会话超时时才会结束。
(2)测试关注点:
1)Session互窜
Session互窜即是用户A的操作被用户B执行了。
验证Session互窜,其原理还是基于权限控制,如某笔订单只能是A进行操作,或者只能是A才能看到的页面,但是B的session窜进来却能够获得A的订单详情等。
Session互窜方法:
多TAB浏览器,在两个TAB页中都保留的是用户A的session记录,然后在其中一个TAB页执行退出操作,登陆用户B,此时两个TAB页都是B的session,然后在另一个A的页面执行操作,查看是否能成功。预期结果:有权限控制的操作,B不能执行A页面的操作,应该报错,没有权限控制的操作,B执行了A页面操作后,数据记录是B的而不是A的。
2)Session超时
基于Session原理,需要验证系统session是否有超时机制,还需要验证session超时后功能是否还能继续走下去。
测试方法:
1、打开一个页面,等着10分钟session超时时间到了,然后对页面进行操作,查看效果。
2、多TAB浏览器,在两个TAB页中都保留的是用户A的session记录,然后在其中一个TAB页执行退出操作,马上在另外一个页面进行要验证的操作,查看是能继续到下一步还是到登录页面。
DFX 安全测试-- 告诉你什么是XSS、sql注入?POST和GET的区别....的更多相关文章
- csrf xss sql注入
1.输入框 sql注入 测试直接在输入框输入1' ,看sql会不会拼接出错 xss攻击 csrf攻击 测试直接在输入框输入 <script>alert(123)</script> ...
- Django csrf,xss,sql注入
一.csrf跨站请求伪造(Cross-site request forgery) CSRF的攻击原理:简单说就是利用了高权限帐号(如管理员)的登录状态或者授权状态去做一些后台操作,但实际这些状态并没有 ...
- 《Web安全攻防渗透测试实战指南》 各类型 SQL注入 实验过程整理
Union注入 https://www.jianshu.com/p/8a11bf55aaee Boolean注入 https://www.jianshu.com/p/e4086f59812d 报错注入 ...
- 总结了关于PHP xss 和 SQL 注入的问题(转)
漏洞无非这么几类,XSS.sql注入.命令执行.上传漏洞.本地包含.远程包含.权限绕过.信息泄露.cookie伪造.CSRF(跨站请求)等.这些漏洞不仅仅是针对PHP语言的,本文只是简单介绍PHP如何 ...
- Spring MVC 如何防止XSS、SQL注入攻击
在Web项目中,通常需要处理XSS,SQL注入攻击,解决这个问题有两个思路: 在数据进入数据库之前对非法字符进行转义,在更新和显示的时候将非法字符还原 在显示的时候对非法字符进行转义 如果项目还处在起 ...
- 通过BurpSuite和sqlmap配合对dvwa进行sql注入测试和用户名密码暴力破解
0x1 工具和环境介绍 dvwa:渗透测试环境 BurpSuite:强大的WEB安全测试工具 sqlmap:强大的sql注入工具 以上工具和环境都在kali linux上安装和配置. 0x2 步骤说明 ...
- 关于PHP xss 和 SQL 注入的问题
漏洞无非这么几类,XSS.sql注入.命令执行.上传漏洞.本地包含.远程包含.权限绕过.信息泄露.cookie伪造.CSRF(跨站请求)等.这些漏洞不仅仅是针对PHP语言的,PHP如何有效防止这些漏洞 ...
- 360在线网站安全检测,web安全测试AppScan扫描工具,XSS常用的攻击手法
360在线网站安全检测,web安全测试AppScan扫描工具,XSS常用的攻击手法 如何做好网站的安全性测试 360网站安全检测 - 在线安全检测,网站漏洞修复,网站后门检测http://websca ...
- 【转载】XSS攻击和sql注入
XSS攻击: https://www.cnblogs.com/dolphinX/p/3391351.html 跨站脚本攻击(Cross Site Script为了区别于CSS简称为XSS)指的是恶意攻 ...
随机推荐
- ASP.NET MVC系列:为视图添加查询功能
首先,在MoviesController里添加一个查询方法,代码如下 public ActionResult SearchIndex(string title) { //查询数据库中的电影表 var ...
- ASP.Net中防止页面刷新重复提交的几种方法
[摘要] 目前很多网站都要提交页面插入或更新数据库,比如留言本,一个用户提交留言后,如果按F5,就会重新提交一遍留言,导致数据库出现两条一模一样的留言,本文介绍了几种防止页面刷新,导致重复提交数据的方 ...
- 了解WP的传感器
之前看到老大的一个QQ签名,说想写一个WP的程序,可是后来,后来就没有后来了.我去年打算学一下WP程序开发的,一年了也无任何进展,我可不想后来,后来就没有后来.于是抽时间来接触一下.虽然都是用CShs ...
- Windows Server 2008 R2 负载平衡入门篇
一.简单介绍负载均衡 负载均衡也称负载共享,它是指负载均衡是指通过对系统负载情况进行动态调整,把负荷分摊到多个操作节点上执行,以减少系统中因各个节点负载不均衡所造成的影响,从而提高系统的工作效率.在常 ...
- .net项目引用C++ 动态链接库.dll
项目开发时可能需要调用其动态链接库,如C++动态链接库,实现相应功能,那么在C#里怎么调用C++库里的方法呢,如下提供两种方式. 方式一:建立一个C++项目,选择dll动态链接库如下. //stdaf ...
- 孙鑫MFC学习笔记18:ActiveX
18 1.容器和服务器程序 2.InvalidateControl重绘控件 3. 4.GetBackColor获取背景色 5.GetForeColor获取前景色 6.TranslateColor进行颜 ...
- Go学习笔记之基础数据类型
http://studygolang.com/articles/1348 1 整数 在 Go 语言中,如果不加特殊前缀,都是10进制表示,例如:“100” 整数可以直接用指数形式,例如:“1E9”,意 ...
- Oracle数据库,非空约束、主键约束、外键约束、唯一约束
非空约束:设置列时,可为空默认可为空,去掉对号之后设置数据不可为空: 唯一约束:在键中设置,唯一约束名称.类型Unique.列名:设置应用完成之后,此列数据具有唯一性:即数据不可重复(类型:Uniqu ...
- WordPress For SAE 移植
因应用商店中的自带的wordpress版本太旧,有需要用到官网上下载的最新版的,就要考虑移植了. 第一步 配置文件 网站根目录下,修改wp-config.php 数据库连接配置 第二步 附件/图片无法 ...
- 2016年湖南省第十二届大学生计算机程序设计竞赛---Parenthesis(线段树求区间最值)
原题链接 http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1809 Description Bobo has a balanced parenthes ...