- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Web开发常见漏洞解决方法
基本上,参加的安全测试(渗透测试)的网站,可能或多或少存在下面几个漏洞:SQL
注入漏洞、跨站脚本攻击漏洞、登陆后台管理页面、IIS 短文件/文件夹漏洞、系统敏感信息
泄露。
1、测试的步骤及内容
这些安全性测试,据了解一般是先收集数据,然后进行相关的渗透测试工作,获取到网
站或者系统的一些敏感数据,从而可能达到控制或者破坏系统的目的。
第一步是信息收集,收集如IP 地址、DNS 记录、软件版本信息、IP 段等信息。可以采
用方法有:
1)基本网络信息获取;
2 )Ping 目标网络得到IP 地址和TTL 等信息;
3 )Tcptraceroute 和Traceroute 的结果;
4 )Whois 结果;
5 )Netcraft 获取目标可能存在的域名、Web 及服务器信息;
6 )Curl 获取目标Web 基本信息;
7 )Nmap 对网站进行端口扫描并判断操作系统类型;
8 )Google、Yahoo、Baidu 等搜索引擎获取目标信息;
9 )FWtester 、Hping3 等工具进行防火墙规则探测;
10)其他。
第二步是进行渗透测试,根据前面获取到的数据,进一步获取网站敏感数据。此阶段如
果成功的话,可能获得普通权限。采用方法会有有下面几种:
1)常规漏洞扫描和采用商用软件进行检查;
2 )结合使用ISS 与Nessus 等商用或免费的扫描工具进行漏洞扫描;
3 )采用SolarWinds 对网络设备等进行搜索发现;
4 )采用Nikto 、Webinspect 等软件对Web 常见漏洞进行扫描;
5 )采用如AppDetectiv 之类的商用软件对数据库进行扫描分析;
6 )对Web 和数据库应用进行分析;
7 )采用WebProxy、SPIKEProxy、Webscarab、ParosProxy、Absinthe 等工具进行分析;
8 )用Ethereal 抓包协助分析;
9 )用Webscan、Fuzzer 进行SQL 注入和XSS 漏洞初步分析;
10)手工检测SQL 注入和XSS 漏洞;
11)采用类似OScanner 的工具对数据库进行分析;
12)基于通用设备、数据库、操作系统和应用的攻击;采用各种公开及私有的缓冲区溢
出程序代码,也采用诸如MetasploitFramework 之类的利用程序集合。
13)基于应用的攻击。基于Web、数据库或特定的B/S 或C/S 结构的网络应用程序存
在的弱点进行攻击。
14)口令猜解技术。进行口令猜解可以采用X-Scan、Brutus、Hydra、溯雪等工具。
第三步就是尝试由普通权限提升为管理员权限,获得对系统的完全控制权。在时间许可
的情况下,必要时从第一阶段重新进行。采用方法
1)口令嗅探与键盘记录。嗅探、键盘记录、木马等软件,功能简单,但要求不被防病
毒软件发觉,因此通常需要自行开发或修改。
2 )口令破解。有许多著名的口令破解软件,如L0phtCrack、John the Ripper、Cain 等。
以上一些是他们测试的步骤,不过我们不一定要关注这些过程性的东西,我们可能对他
们反馈的结果更关注,因为可能会爆发很多安全漏洞等着我们去修复的。
2、SQL 注入漏洞的出现和修复
1)SQL 注入定义:
SQL 注入攻击是黑客对数据库进行攻击的常用手段之一。随着B/S 模式应用开发的发
展,使用这种模式编写应用程序的程序员也越来越多。但是由于 程序员的水平及经验也参
差不齐,相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,
使应用程序存在安全隐患。用户可以提交一段数 据库查询代码,根据程序返回的结果,获
得某些他想得知的数据,这就是所谓的SQL Injection,即SQL 注入。
SQL 注入有时候,在地址参数输入,或者控件输入都有可能进行。如在链接后加入’号,
页面报错,并暴露出网站的物理路径在很多时候,很常见,当然如果关闭了Web.Config 的
CustomErrors 的时候,可能就不会看到。
另外,Sql 注入是很常见的一个攻击,因此,如果对页面参数的转换或者没有经过处理,
直接把数据丢给Sql 语句去执行,那么可能就会暴露敏感的信息给对方了
原创力文档


文档评论(0)