安全测试分享文档课件_第1页
安全测试分享文档课件_第2页
安全测试分享文档课件_第3页
安全测试分享文档课件_第4页
安全测试分享文档课件_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

安全测试分享目前企业安全测试方法静态的代码安全测试动态的渗透测试程序数据扫描常见的软件安全性缺陷和漏洞有哪些?SQL注入:攻击者把SQL命令插入到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令。XSS和它有什么不一样?几种SQL注入的特征1.2输入中增加;and1=1或;and1=2如上例中的url,id参数输入id=12

and1=1或者id=12

and1=2

这是较常见的1=1,1=2测试方法,如果程序不可以进行SQL注入,对于一个整型参数,这两类输入一般都会有程序定义的错误提示或者类型转换错误提示,或直接跳转到错误url页面。若可以进行SQL注入,1=1输入与正常输入id=12的显示应无差异,而1=2可能会导致提示无记录,页面显示为空的情况。

几种SQL注入的特征1.3尝试大小写不同的输入,尝试特殊字符对应ASCII码有些程序中会过滤select等关键词,但是忘记区分大小写,此时可以用selecT等尝试进行注入。或者尝试ASCII码来绕过程序中对特殊字符的过滤,也可以达到测试的目的。

SQL注入利用的是程序过滤不严格,或者某个参数忘记检查所导致的,在做安全测试时需要对引起该漏洞的代码片段有一定认知,能快速准确的发现问题所在。

例子一个登录模块,让你输入用户名密码。我们一般都会老老实实的输入我们的用户名和密码。但如果我们刻意的去绕过登录认证呢?猜想下面这个SQL语句,单说用户名,开发人员很可能会这样去数据库里对比:

Select*from

sys_user

where

username=‘XXX’

当然可能更复杂,假如我们在输入框里输入下面一句特殊的字符会如何?’or‘1=1这是段神奇的字符,因为这样这个sql就变成:

Select*from

sys_user

whereusername=‘’or‘1=1’

这样我们就跳过了用户名的验证,实现了入侵,是不是很简单,看到这里大家不妨动手尝试一下吧。

另外一个查询的例子SELECT*FROMUsers

WHERE((Username='$username')AND(Password=MD5('$password')))

在这个例子中,存在两个问题,一个是括号的用法,还有一个是MD5哈希函数的用法。对于第一个问题,我们很容找出缺少的右括号解决,对于第二个问题,我们可以想办法使第二个条件失效。我们在查询语句的最后加上一个注释符以表示后面的都是注释,常见的注释起始符是/*(在Oracle中是--),也就是说,我们用如下的用户名和密码:$username=1'or'1‘='1'))/*

$password=foo

那么整条SQL语句就变为:

SELECT*FROMUsersWHERE((Username='1'or'1'='1'))/*')AND(Password=MD5('$password')))

那么看看URL请求就变为:/index.php?username=1'%20or%20'1'%20=%20'1'))/*&password=foo

常见的软件安全性缺陷和漏洞有哪些?跨站脚本攻击:XSS又叫CSS,英文缩写为CrossSiteScript,中文意思为跨站脚本攻击,具体内容指的是恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意用户的特殊目的。为了和页面样式的CSS做区分,命名为XSS。

XSS漏洞会导致的后果是说让不支持富文本的区域支持了富文本的执行,简单说在编辑内容时,文本部分不支持富文本,但由于对输入没有做处理,导致可以在文本中嵌入变颜色、加粗等HTML代码,当然攻击者可以嵌入恶意javascript,获取cookie等隐私信息。盗取cookie后果很严重啊!!!常见的软件安全性缺陷和漏洞有哪些?缓冲区溢出:缓冲区溢出已成为软件安全的头号公敌,许多实际中的安全问题都与它有关。造成缓冲区溢出问题通常有以下两种原因。①设计空间的转换规则的校验问题。即缺乏对可测数据的校验,导致非法数据没有在外部输入层被检查出来并丢弃。非法数据进入接口层和实现层后,由于它超出了接口层和实现层的对应测试空间或设计空间的范围,从而引起溢出。②局部测试空间和设计空间不足。当合法数据进入后,由于程序实现层内对应的测试空间或设计空间不足,导致程序处理时出现溢出。常见的软件安全性缺陷和漏洞有哪些?数据传输安全:

1.

客户端请求动态密钥(DynamicKey),客户端向服务器端请求动态密钥(DKey)。服务器端生成动态密钥发送给客户端。动态密钥内容格式根据需要自己设计,例如双方支持的加密算法(MD5)、随机码和密钥有效期等,并且在服务器保存该动态密钥,保持形式可以是Session(推荐)、数据库或文件等,例如动态密钥格式为(MD5+

123456

+2010/9/23/12:00:00),最简单的形式只有一个随机码。2.

客户端提交数据,客户端获得动态密钥后,用动态密钥中的加密算法加密需要发送到服务器的数据(如:帐号和密码)和随机码,客户端把加密好的数据发送给服务器:3.

服务器验证应答,

服务器把收到的加密好的客户端数据,和服务器端用动态密钥中的加密算法对服务器端数据(如保证在数据库的密码)和随机码进行加密,生成加密好的服务器端数据(Serverencrypteddata)进行比较,相等则认证成功,

服务器删除动态密钥(DKey)。一个完整的数据安全传输结束。

更安全的传输方式比如ht

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论