Web前端的认识和理解教学文稿.doc
《Web前端的认识和理解教学文稿.doc》由会员分享,可在线阅读,更多相关《Web前端的认识和理解教学文稿.doc(18页珍藏版)》请在咨信网上搜索。
1、精品文档Web前端认识班级:0441104姓名:夏维 ;王波 学号:2011211830 ;2011211832授课教师:董涛 对Web前端的认识由于网络技术日趋成熟,黑客们也将注意力从以往对网络服务器的攻击逐步转移到了对Web应用的攻击上。根据Gartner的最新调查,信息安全攻击有75%都是发生在Web应用而非网络层面上。同时,数据也显示,三分之二的Web站点都相当脆弱,易受攻击。然而现实确是,绝大多数企业将大量的投资花费在网络和服务器的安全上,没有从真正意义上保证Web应用本身的安全,给黑客以可乘之机。一、Web的介绍1、 web的起源Web是World Wide Web的简称,中文称之
2、为万维网,是用于发布、浏览、查询信息的网络信息服务系统,由许多遍布在不同地域内的Web服务器有机地组成2、 Web架构的精妙处从技术层面上看,Web架构的精华有三处:用超文本技术(HTML)实现信息与信息的连接;用统一资源定位技术(URL)实现全球信息的精确定位;用新的应用层协议(HTTP)实现分布式的信息共享。3、 Web技术涉及的技术Web是一种典型的分布式应用架构。Web应用中的每一次信息交换都要涉及到客户端和服务端两个层面。因此,Web开发技术大体上也可以被分为客户端技术和服务端技术两大类。(1)客户端技术HTML语言的诞生Web客户端的主要任务是展现信息内容,HTML语言是信息展现的
3、最有效载体之一。作为一种实用的超文本语言, 1990年,第一个图形化的Web浏览器World Wide Web终于可以使用一种为Web度身定制的语言-HTML来展现超文本信息了。从静态信息到动态信息最初的HTML语言只能在浏览器中展现静态的文本或图像信息,随后由静态技术向动态技术逐步转变。1997年,Microsoft发布了IE 4.0,并将动态HTML标记、CSS和动态对象模型发展成了一套完整、实用、高效的客户端开发技术体系,Microsoft称其为DHTML。同样是实现HTML页面的动态效果,DHTML技术无需启动Java虚拟机或其他脚本环境,可以在浏览器的支持下,获得更好的展现效果和更高
4、的执行效率。为了在HTML页面中实现音频、视频等更为复杂的多媒体应用,又引入了对QuickTime插件的支持。Real player插件、Microsoft自己的媒体播放插件Media Player也被预装到了各种Windows版本之中。随后Flash插件的横空出世。(2)服务端技术与客户端技术从静态向动态的演进过程类似,Web服务端的开发技术也是由静态向动态逐渐发展、完善起来的。二、漏洞挖掘 漏洞挖掘技术一直是网络攻击者最感兴趣的问题,漏洞挖掘的范围也在随着技术的提升而有所变化.在前期针对缓冲区溢出 格式化字符串 堆溢出 lib库溢出等技术都是针对ELF文件或者PE文件的漏洞挖掘技术.在针对
5、ELF文件 PE文件如*.exe与*.dl的漏洞挖掘过程中,出现了很多的漏洞挖掘技术,但是针对PE文件 ELF文件的漏洞挖掘始终停留在了黑盒测试(包括单元黑盒测试)源代码审计等办法.通过RATS等源代码审计软件可以找到部分源代码级别的漏洞信息,但是毕竟源代码审计软件寻找的多数为strcpy memcpy等存在缓冲区溢出遗患的C函数,所以通过审计源代码的办法来进行漏洞挖掘是一个可能性系数很小的漏洞挖掘技术,而针对软件的黑盒子测试虽然也能找到一些软件的漏洞,但可能性系数也会较小,在国外的一些进行漏洞挖掘的办法已经慢慢的提升为自己写黑盒子测试代码,然后针对系统或软件的某个功能模块进行模块化的漏洞挖掘
6、技术.例如Linux内核的很多漏洞都是通过fuzzing技术找到的,fuzzing即模糊测试的意思,大家可以理解为类似SQL盲注入类型的攻击技术.网络安全的界限在不断的提升,目前缓冲区溢出漏洞已经如MS SQL注入般的被很多人堵死,而在进行网络入侵渗透的过程中,很多人渗透成功的着力点都是通过WEB开始的,当然有些人是通过MS SQL注入,有些人通过其它的WEB漏洞技术一步步的走到了入侵成功的步骤.我们下面将会讨论一些WEB漏洞挖掘的简单技术,通过这些简单技术的规则,然后配合经验的提高,大家或许会得到意想不到的效果.WEB漏洞的分类1、 SQL注入SQL注入漏洞,是依靠存在弱点的WEB脚本代码,
7、来实现通过浏览器执行任意SQL语句,从而实现最终获取某种权限的攻击技术.SQL注入的关键部分在于对元数据的利用,所谓元数据即数据库的基础数据.例如我们可以通过database() version()来获得数据库的名称及版本,而我们通过SQL内置函数获得的这些内容都属于数据库元数据的内容.理解了元数据的概念,在后面的章节我会给大家简单的讲解下通过元数据来获取MySQL的数据表.2、文件包含类型,如PHP的的远程 本地文件包含漏洞 文件包含漏洞是PHP程序特有的一个弱点攻击,原理就是在使用include时没有安全的编程,而能够找到文件包含漏洞则是入侵一个WEB系统的很重要的因素,有了文件包含漏洞则
8、可以很快速的达到上传WEBSHELL,然后本地提升权限的作用.3、 XSSXSS漏洞是被很多人遗忘的漏洞,但是XSS也是一个比较危险的安全隐患,我看到很多国内介绍XSS漏洞的文章大部分在如何欺骗管理员获得后台登陆帐户或者管理员的cookies文件.但这些仅仅是XSS漏洞的简单用法,如果寻找到的XSS漏洞可以任意执行任Javascript脚本,那安全性也是不容忽视的.通过Javascript脚本其实也可以做一些恶意的攻击,甚至可以获得一些WEB程序的源代码,当然这个要看大家对Javascript脚本的熟悉程度.例如我们这几天公布的这个可跨站执行任意Javascript脚本的漏洞,最后我也通过这个
9、漏洞给客户演示了如何获取他们的服务器信息,并最终实现得到其一定权限的方法.同时例如session骗 cookies欺骗,目前我也把这些规入了XSS漏洞的范围,当然仅仅研究这两个技术也是很值得大家去深入的进行漏洞挖掘的.二、WEB漏洞挖掘规则漏洞挖掘规则需要一个WEB浏览器,如IE Firefox等即可,无需读取WEB程序的源代码,只要某个规则符合了漏洞规则的要求,即可以采取相关的漏洞攻击技术进行相应的漏洞攻击办法例如:http:/website/index1.php?id=alert(111),如果对方的代码过滤了双引号,那么可以通过http:/website/index1.php?id=al
10、ert(111),采用单引号测试,若单引号也过滤呢?OK,我们这样来测试http:/website/index1.php?id=alert(111),使用数字提交,这样测试XSS的漏洞就扩展到了三条,通过构造HTML语句来实现XSS漏洞的挖掘等等. XSS的漏洞挖掘规则http:/website/index1.php?id=alert(111)http:/website/index1.php?id=alert(111)http:/website/index1.php?id=alert(111)http:/website/index1.php?id=http:/website/index1.ph
11、p?id=http:/website/index1.php?id=http:/website/index1.php?id=http:/website/index1.php?id=http:/website/index1.php?id=http:/website/index1.php?id=http:/website/index1.php?id=http:/website/index1.php?id=http:/website/index1.php?id=http:/website/index1.php?id=使用上面的这些简单漏洞规则,如果模糊测试一些站点的话,可以找到一些XSS漏洞。下面的这
12、四个语句判断是否存在mysql注入,其中号类型的测试已经不是很可行,特别在PHP5和mysql5的环境下:)http:/website/index1.php?id=1http:/website/index1.php?id=1and 1=1http:/website/index1.php?id=1and 1=2http:/website/index1.php?id=1order by 4 /4为判断该表的列数,直到猜测到为止下面的语句来获取mysql的一些信息,这里我们假设我们使用order by语句判断出的列数为4http:/website/index1.php?id=1and 1=1 uni
13、on select 1,2,3,4http:/website/index1.php?id=1and 1=1 union select version(),database(),user(),4http:/website/index1.php?id=1and 1=1 union select 1/*http:/website/index1.php?id=1and 1=1 union select version()/*http:/website/index1.php?id=1and 1=1 union select databse()/*猜测表名:http:/website/index1.php
14、?id=1and 1=1 union select 1,2,3,4 from database.table where 1=2/where 1=2 不打印猜测表的内容admin user articles news必须在指定select的字段个数再使用,否则mysql会报错.http:/website/index1.php?id=1and 1=1 union select table_schema,table_name,table_rows,table_count from information_schema.tables /上面使用数据库的元数据来获取mysql的信息,前提是系统管理员没有
15、禁止mysql普通用户对元数据库的表查询,如果禁止了则该办法是无效的.在开始分析mysql数据库到底可以执行到那种程度的注入情况下分析了mysql的系统架构,最终发现通过information_schema数据库提供给mysql用户的元数据可以得到一些mysql数据库的基本信息,例如得到数据库的各个表信息等,还可以得到数据库的权限设置等信息, information_schema数据库用到的表的具体字段1: KEY_COLUMN_USAGE表constraint_schema: 存放数据库名table_schema: 存放数据库名table_name: 存放数据库表信息column_name:
16、 存放数据库的字段信息,一般可以获取第一个字段或者自增字段的信息2: SCHEMA表schema_name: 存放数据库名default_charater_set_name: 存放charset类型default_collation_name: 存放charset相关信息3: SCHEMA_PRIVILEGES表grantee: 存放数据库用户名table_schema: 表名privilege_type: 权限4: STATISTICS表table_schema: 存放数据库名table_name: 存放表名index_schema: 数据库名index_name: 是否缩引column_n
17、ame: 存放索引自增字段5: TABLES表table_schema: 存放数据库名table_name: 存放表名table_type: 表类型 SYSTEM or BASE TABLEengin: MEMORY MYISAM InnoDBversion:table_rows:表的行数auto_increment: 自增的总行数create_time: 创建表的时间update_time: 更新表的时间create_options: 创建表时的约束条件有了这些以后,如果对方系统管理员忽略了这些,则可以达到我们不需要猜测表名而直接获取数据库表名的结果. 猜测列名:http:/website/
18、index1.php?id=1and 1=1 union select username,2,3,4 from user where 1=2按照这个规则依次类推,如果我们猜测到user表存在username字段,则程序执行是正常的,否则程序会出错,也可以使用where 1=1来打印表的信息,通过这样的办法就可以获取mysql数据库的某些关键表的字段信息,如:admin与password:)C: 文件包含漏洞文件包含漏洞的测试,有以下几个比较简单且有效的办法.1: 新建一个简单的php代码,如:,保存为*.txt格式2: 新建一个简单的php代码,如:,保存为无后缀格式然后我们测试时只需要采取下
19、面简单的办法即可,这里我们假设我们下面的文件URL为漏洞规则http:/website/file.php?inc=http:/website/file.php?inc=http:/website/file.php?inc=http:/website/file.php?inc=使用上面的简单规则即可实现文件包含漏洞的测试,当然得根据具体的返回信息来判断.例如从XSS漏洞的检测规则可能会发现包含文件漏洞,如果知道PHP的某个函数存在缓冲区溢出,我们假设这个PHP的内置函数为phphtml(char *str),假设http:/website/file.php?inc=test,这里的参数inc经过
20、PHP代码时使用了phphtml内置函数,则可以使用下面的办法来触发漏洞http:/website/file.php?inc=11111111111.n(n为触发漏洞的最大字符数)当然类似这样的漏洞是需要写程序来自动运行的,然后来触发溢出并执行shellcode.但这里也存在一个问题,即一般情况下,类似PHP本身的溢出漏洞的利用是有些难度存在的.三:XSS的概述最重要的要了解XSS漏洞的是,他们是目前为止发现的,在所有网站超过80比例的定制Web应用程序中最常见的漏洞。虽然跨站点脚本在一段时间内一直被认为是中等程度的的漏洞,但XSS蠕虫和病毒的出现,已经提高了XSS的评估。软件开发人员和安全专
21、业人员需要知道它是多么简单,以防止代码开发过程中出现XSS漏洞,并且一经查出,他们是多么容易解决。XSS是一种攻击技术,它使得一个网站,写出攻击者提供的可执行代码,然后加载在用户的Web浏览器。也就是说,当黑客使用存在漏洞的网站作为攻击的通道时,用户是预定的受害者。1、非持久性xss 想想看,一个黑客想使用“http:/victim/”网站对用户进行XSS攻击。黑客会采取的第一个步骤是在http:/victim/找出一个XSS漏洞,然后构造一个特制的URL,也被称为链接。要做到这一点,黑客会搜寻网站上的客户端提供的数据可以被发送到Web服务器,然后回显到屏幕上的任何功能,比如搜索框。常见的在线
22、发布的博客。XSS漏洞往往出现在搜索框表单。在搜索字段中输入“test search”,响应页面将用户输入的文本在显示在三个不同的位置,查询字符串中包含值为“test+search”的“search”参数。这个URL值可以在运行时更改,甚至包括HTML / JavaScript的内容。http:/victim/ ,http:/victim/search.pl?search=test+search其3展示了原来的搜索词被替换为下面的HTML / JavaScript代码时会发生什么:Example 1.”alert(XSS%20Testing)结果页面弹出了一个无害的警告对话框。根据提示,提交的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Web 前端 认识 理解 教学 文稿
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。