软件安全及典型服务安全

上传人:油条 文档编号:37068801 上传时间:2018-04-06 格式:PDF 页数:85 大小:654.27KB
返回 下载 相关 举报
软件安全及典型服务安全_第1页
第1页 / 共85页
软件安全及典型服务安全_第2页
第2页 / 共85页
软件安全及典型服务安全_第3页
第3页 / 共85页
软件安全及典型服务安全_第4页
第4页 / 共85页
软件安全及典型服务安全_第5页
第5页 / 共85页
点击查看更多>>
资源描述

《软件安全及典型服务安全》由会员分享,可在线阅读,更多相关《软件安全及典型服务安全(85页珍藏版)》请在金锄头文库上搜索。

1、软件安全及典型服务安全软件安全及典型服务安全软件安全及典型服务安全软件安全及典型服务安全软件安全及典型服务安全软件安全及典型服务安全软件安全及典型服务安全软件安全及典型服务安全文伟平 博士 副教授文伟平 博士 副教授 i ikdi ikdw we ei ip pi ingwenngwenss.pss.pk ku.eu.ed 北京大学软件与微电子学院信息安全系 北京大学软件与微电子学院信息安全系 网络与软件安全保障教育部重点实验室网络与软件安全保障教育部重点实验室网络与软件安全保障教育部重点实验室网络与软件安全保障教育部重点实验室内容提要内容提要软件安全现状软件安全现状软件安全现状软件安全现状

2、 软件逆向分析软件逆向分析软件逆向分析软件逆向分析 软件漏洞分析软件漏洞分析 典型软件安全典型软件安全务安全务安全典型软件安全典型软件安全Web服服务安全务安全信息网络安全根源信息网络安全根源为什么带来众多的安全问题为什么带来众多的安全问题?为什么带来众多的安全问题为什么带来众多的安全问题 安全状况越来越糟安全状况越来越糟 安全威胁越来越大安全威胁越来越大 主要根源是什么?主要根源是什么? 安全管理的问题安全管理的问题? 安全管理的问题安全管理的问题? 硬件和软件脆弱性的问题!硬件和软件脆弱性的问题!主要根源:主要根源: 我们的软件存在太多安全漏洞我们的软件存在太多安全漏洞?!?!我们的软件存

3、在太多安全漏洞我们的软件存在太多安全漏洞?!?!软件漏洞发展趋势软件漏洞发展趋势漏洞数量日益增多,且危害日益严重。漏洞数量日益增多,且危害日益严重。 美国国家漏洞库美国国家漏洞库NVD收集的漏洞数量平均每天收集的漏洞数量平均每天16个,其中高 度危险的漏洞占近个,其中高 度危险的漏洞占近50%,且每年基本都呈递增趋势。,且每年基本都呈递增趋势。 著名的安全公司著名的安全公司IBM Internet Security Systems的的X Force小组小组 著名的安全公司著名的安全公司IBM Internet Security Systems的的X-Force小组小组 在其在其2007年趋势统

4、计报告中指出,年趋势统计报告中指出,2007年年X-Force收录的漏洞 数量虽比收录的漏洞 数量虽比2006年减少了年减少了5.4%,但威胁等级为高的安全漏洞数,但威胁等级为高的安全漏洞数 量却增加了量却增加了28%量却增加了量却增加了28%。 漏洞存在的范围日益扩大。漏洞存在的范围日益扩大。 操作系统的安全漏洞仍是信息系统当前面临的主要问题操作系统的安全漏洞仍是信息系统当前面临的主要问题 操作系统的安全漏洞仍是信息系统当前面临的主要问题操作系统的安全漏洞仍是信息系统当前面临的主要问题。 应用程序的漏洞逐年增多,尤其是国产软件应用程序的漏洞逐年增多,尤其是国产软件软件漏洞发展趋势软件漏洞发展

5、趋势漏洞利用趋于简单化漏洞利用趋于简单化 网络搜索引擎可以很容易搜索各种攻击代码网络搜索引擎可以很容易搜索各种攻击代码 网络搜索引擎可以很容易搜索各种攻击代码网络搜索引擎可以很容易搜索各种攻击代码。 攻击程序已模块化攻击程序已模块化 漏洞利用趋于快速化漏洞利用趋于快速化漏洞利用趋于快速化漏洞利用趋于快速化蠕虫名称发布时间大规模爆发时间时间间隔蠕虫名称发布时间大规模爆发时间时间间隔尼姆达尼姆达Worm NimdaWorm Nimda20002000 1010 1717 MSMS0000 07807820012001 0909 1818336336天天尼姆达尼姆达WormWorm_ _NimdaN

6、imda20002000- -1010- -1717 MSMS0000- -07807820012001- -0909- -1818336336天天Worm_Slammer2002-07-24 MS02-0392003-01-25185天冲击波Worm_Blaster2003-07-16 MS03-0262003-08-1126天Worm_Slammer2002-07-24 MS02-0392003-01-25185天冲击波Worm_Blaster2003-07-16 MS03-0262003-08-1126天震荡波Worm_Sasser2004-04-13 MS04-0112004-05-0

7、118天狙击波Worm_Zotob.a2005-08-09 MS05-0392005-08-134天震荡波Worm_Sasser2004-04-13 MS04-0112004-05-0118天狙击波Worm_Zotob.a2005-08-09 MS05-0392005-08-134天魔波魔波Worm MocbotWorm Mocbot20062006- -0808- -0808 MSMS0606- -04004020062006- -0808- -12124 4天天魔波魔波WormWorm_ _MocbotMocbot20062006 0808 0808 MSMS0606 0400402006

8、2006 0808 12124 4天天Exploit.Win32.MS08 -067.g2008-10-23 MS08-0672008-10-23前0 And (select count(*) from sysobjects)0表名的猜解表名的猜解运气运气经验积累经验积累运气运气经验积累经验积累And (Select count(*) from 表名表名)0 A di t(ltt(*) f表名表名And exist(select count(*) from 表名表名http:/ 49 And (Select Count(*) from Admin)=0( ) f)如果页面与如果页面与ID=49

9、相同,说明附加条件成立,即表相同,说明附加条件成立,即表 Admin存在,反之,即不存在。如此循环,直至猜存在,反之,即不存在。如此循环,直至猜 到表名为止到表名为止字段名的猜解字段名的猜解字段名的获取原理同表名字段名的获取原理同表名字段名的获取原理同表名字段名的获取原理同表名And (Select count(字段名字段名) from 表名表名)0 And exist(select 字段名字段名 from 表名)表名)字段名的猜解字段名的猜解ASCII逐字解码法获取字段值逐字解码法获取字段值判定字段长度判定字段长度 判定字段长度判定字段长度 http:/ and (select top 1

10、len(username) from Admin)01 len(username) from Admin)0 当当username长度大于长度大于0,则条件成立;接着,则条件成立;接着1、 2 n继续测试,直到条件不成立时,继续测试,直到条件不成立时,n为为usename的长度。的长度。 http:/ and (select top 1 asc(mid(username,1,1) from users)0 n一一般取般取48 12248是数字是数字0122是是zn般取般取48-122,48是数字是数字0,122是是z Asc(mid(username,m,1)猜解记录内容猜解记录内容确定记录条

11、数确定记录条数确定记录条数确定记录条数And (select count(*) from 表名表名)=n 这里的这里的n是猜解的记录条数是猜解的记录条数 确定确定记录记录字段字段长长度度确定字段度确定字段度And (select top 1 len(列名列名) from表名表名)=n 这里的这里的n是猜解的长度数是猜解的长度数这里的这里的n是猜解的长度数是猜解的长度数控制系统控制系统利用已得到的用户名及口令进入管理后利用已得到的用户名及口令进入管理后利用已得到的用户名及口令进入管理后利用已得到的用户名及口令进入管理后 台,上传台,上传ASP木马木马 当数据库的连接用户为当数据库的连接用户为sa

12、时,可使用系时,可使用系 统存储过程执行命令统存储过程执行命令统存储过程执行命令统存储过程执行命令常用工具常用工具Domain 3.5 啊啊 注入工具注入工具啊啊D注入工具注入工具 NBSI实际案例演示与分析实际案例演示与分析某网站为例某网站为例某网站为例某网站为例 DEMO视频文件视频文件DEMO视频文件视频文件 测试其是否为可注入点测试其是否为可注入点,并进行手动注入并进行手动注入 获取数据库信息获取数据库信息,获取数据库信息获取数据库信息SQL注入的防范注入的防范在编程中对用户输入进行检查。对一些特殊字符,比如单在编程中对用户输入进行检查。对一些特殊字符,比如单 引号引号,双引号双引号,

13、分号分号,逗号逗号,冒号冒号,连接号等进行转换或连接号等进行转换或引号引号,双引号双引号,分号分号,逗号逗号,冒号冒号,连接号等进行转换或连接号等进行转换或 者过滤;使用强数据类型,比如你需要用户输入一个整数 ,就要把用户输入的数据转换成整数形式;限制用户输入者过滤;使用强数据类型,比如你需要用户输入一个整数 ,就要把用户输入的数据转换成整数形式;限制用户输入 的长度等等的长度等等这些检查要放在这些检查要放在运行运行提交的任提交的任的长度等等的长度等等。这些检查要放在这些检查要放在server运行运行,client提交的任提交的任 何东西都是不可信的。何东西都是不可信的。 数据库表名列名不要用

14、常用的字符数据库表名列名不要用常用的字符特别是存储用户名和特别是存储用户名和数据库表名列名不要用常用的字符数据库表名列名不要用常用的字符。特别是存储用户名和特别是存储用户名和 密码的表名、字段名,不要使用例如密码的表名、字段名,不要使用例如Admin、adminlist、 password、pwd等常用的字符等常用的字符。password、pwd等常用的字符等常用的字符。 网站后台管理目录和登录文件名要使用不常用的字符,不网站后台管理目录和登录文件名要使用不常用的字符,不 要使用例如要使用例如/admin/login.asp,或者或者/guanli/denglu.asp,等文等文要使用例如要使

15、用例如gp,或者或者 ggp等文等文 件名。件名。SQL注入的防范注入的防范最小权限原则。特别是不要用最小权限原则。特别是不要用dbo或者或者sa账账 户户为不同的类型的动作或者组建使用不为不同的类型的动作或者组建使用不户户,为不同的类型的动作或者组建使用不为不同的类型的动作或者组建使用不 同的账户。同的账户。 使用存储过程使用存储过程如果定要使用如果定要使用语句语句使用存储过程使用存储过程,如果如果一一定要使用定要使用sq语句语句, 那么用标准的方式组建, 那么用标准的方式组建sql语句,比如可以语句,比如可以 利用利用对象对象避免用字符串直接避免用字符串直接利用利用parameters对象对象,避免用字符串直接避免用字符串直接 拼拼sq命令。命令。 当当sql运行出错时,不要把数据库返回的错运行出错时,不要把数据库返回的错 误信息全部显示给用户误信息全部显示给用户,错误信息经常会错误信息经常会误信息全部显示给用户误信息全部显示给用户,错误信息经常会错误信息经常会 透露一些数据库设计的细节。透露一些数据库设计的细节。 利用评测软件检测网站利用评测软件检测网站例如例如NBSI利用评测软件检测网站利用评测软件检测网站。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号